{
  "name": "ForgeMedia",
  "language": "swift",
  "version": "Swift package source snapshot",
  "description": "Swift ForgeMedia library product.",
  "manifest": "forge-swift/Package.swift",
  "manifestSha256": "8579cd038904d9101db7b7714fa006f94144a6f951c0535512114bb00d4a3128",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/swift/ForgeMedia",
  "features": {},
  "files": [
    {
      "path": "forge-swift/Sources/ForgeMedia/Image.swift",
      "sha256": "1417377e0ef714b84e6b2cf0bf4aa1da383f60e0b7d20f5f4b42c01df997377d",
      "artifactSha256": "85ca2e35c968025f9593035389d7fc979c3424d52d1a29a593e8f93c9e0aea99",
      "url": "/reference/source/forge-swift/Sources/ForgeMedia/Image.swift.txt",
      "declarations": [
        {
          "name": "public struct ImageGenerationResult: Sendable",
          "line": 10,
          "signature": "public struct ImageGenerationResult: Sendable",
          "documentation": ""
        },
        {
          "name": "public let data: String",
          "line": 12,
          "signature": "public let data: String\n/// The MIME type of the image.\npublic let mediaType: String\n/// The revised prompt (if the provider rewrote it).\npublic let revisedPrompt: String?\n/// Token usage (if applicable).\npublic let usage: Usage?\n\npublic init(data: String, mediaType: String, revisedPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public let mediaType: String",
          "line": 14,
          "signature": "public let mediaType: String\n/// The revised prompt (if the provider rewrote it).\npublic let revisedPrompt: String?\n/// Token usage (if applicable).\npublic let usage: Usage?\n\npublic init(data: String, mediaType: String, revisedPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public let revisedPrompt: String?",
          "line": 16,
          "signature": "public let revisedPrompt: String?\n/// Token usage (if applicable).\npublic let usage: Usage?\n\npublic init(data: String, mediaType: String, revisedPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public let usage: Usage?",
          "line": 18,
          "signature": "public let usage: Usage?\n\npublic init(data: String, mediaType: String, revisedPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public init(data: String, mediaType: String, revisedPrompt: String?;",
          "line": 20,
          "signature": "public init(data: String, mediaType: String, revisedPrompt: String?;",
          "documentation": ""
        },
        {
          "name": "public struct ImageGenerationOptions: Codable, Sendable",
          "line": 29,
          "signature": "public struct ImageGenerationOptions: Codable, Sendable",
          "documentation": ""
        },
        {
          "name": "public var size: String?",
          "line": 31,
          "signature": "public var size: String?\n/// The image quality (e.g., \"standard\", \"hd\").\npublic var quality: String?\n/// The number of images to generate.\npublic var count: Int?\n/// The response format (e.g., \"b64_json\", \"url\").\npublic var responseFormat: String?\n\npublic init(size: String?;",
          "documentation": ""
        },
        {
          "name": "public var quality: String?",
          "line": 33,
          "signature": "public var quality: String?\n/// The number of images to generate.\npublic var count: Int?\n/// The response format (e.g., \"b64_json\", \"url\").\npublic var responseFormat: String?\n\npublic init(size: String?;",
          "documentation": ""
        },
        {
          "name": "public var count: Int?",
          "line": 35,
          "signature": "public var count: Int?\n/// The response format (e.g., \"b64_json\", \"url\").\npublic var responseFormat: String?\n\npublic init(size: String?;",
          "documentation": ""
        },
        {
          "name": "public var responseFormat: String?",
          "line": 37,
          "signature": "public var responseFormat: String?\n\npublic init(size: String?;",
          "documentation": ""
        },
        {
          "name": "public init(size: String?;",
          "line": 39,
          "signature": "public init(size: String?;",
          "documentation": ""
        },
        {
          "name": "public protocol ImageProvider: Sendable",
          "line": 48,
          "signature": "public protocol ImageProvider: Sendable",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeMedia/Speech.swift",
      "sha256": "7c2399df94b564accb70f4f8ff247d4fdf3695580b4d941adfb3b46b83f3f78f",
      "artifactSha256": "5db70d223e68b10fe79d4d0e77cdf2d4568283ae64d69becb49ccfefac3fac1a",
      "url": "/reference/source/forge-swift/Sources/ForgeMedia/Speech.swift.txt",
      "declarations": [
        {
          "name": "public struct SpeechResult: Sendable",
          "line": 10,
          "signature": "public struct SpeechResult: Sendable",
          "documentation": ""
        },
        {
          "name": "public let audioData: Data",
          "line": 12,
          "signature": "public let audioData: Data\n/// The MIME type of the audio (e.g., \"audio/mp3\").\npublic let mimeType: String\n/// Duration of the audio in seconds.\npublic let duration: Double?\n\npublic init(audioData: Data, mimeType: String, duration: Double?;",
          "documentation": ""
        },
        {
          "name": "public let mimeType: String",
          "line": 14,
          "signature": "public let mimeType: String\n/// Duration of the audio in seconds.\npublic let duration: Double?\n\npublic init(audioData: Data, mimeType: String, duration: Double?;",
          "documentation": ""
        },
        {
          "name": "public let duration: Double?",
          "line": 16,
          "signature": "public let duration: Double?\n\npublic init(audioData: Data, mimeType: String, duration: Double?;",
          "documentation": ""
        },
        {
          "name": "public init(audioData: Data, mimeType: String, duration: Double?;",
          "line": 18,
          "signature": "public init(audioData: Data, mimeType: String, duration: Double?;",
          "documentation": ""
        },
        {
          "name": "public struct SpeechOptions: Codable, Sendable",
          "line": 26,
          "signature": "public struct SpeechOptions: Codable, Sendable",
          "documentation": ""
        },
        {
          "name": "public var voice: String?",
          "line": 28,
          "signature": "public var voice: String?\n/// The speed of speech (1.0;",
          "documentation": ""
        },
        {
          "name": "public var speed: Double?",
          "line": 30,
          "signature": "public var speed: Double?\n/// The output format (e.g., \"mp3\", \"opus\", \"aac\").\npublic var format: String?\n\npublic init(voice: String?;",
          "documentation": ""
        },
        {
          "name": "public var format: String?",
          "line": 32,
          "signature": "public var format: String?\n\npublic init(voice: String?;",
          "documentation": ""
        },
        {
          "name": "public init(voice: String?;",
          "line": 34,
          "signature": "public init(voice: String?;",
          "documentation": ""
        },
        {
          "name": "public protocol SpeechProvider: Sendable",
          "line": 42,
          "signature": "public protocol SpeechProvider: Sendable",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-swift/Sources/ForgeMedia/Transcription.swift",
      "sha256": "3b5657a0e37ae78f69f83dd396386a3820ec18445557ea7da63e09b55e737c63",
      "artifactSha256": "d304297e1c3d94f2024b9710674f9af575c8c42953cf2aa4c1e2b386d7572bed",
      "url": "/reference/source/forge-swift/Sources/ForgeMedia/Transcription.swift.txt",
      "declarations": [
        {
          "name": "public struct TranscriptionResult: Sendable",
          "line": 10,
          "signature": "public struct TranscriptionResult: Sendable",
          "documentation": ""
        },
        {
          "name": "public let text: String",
          "line": 12,
          "signature": "public let text: String\n/// The detected language (ISO 639-1 code).\npublic let language: String?\n/// Duration of the audio in seconds.\npublic let duration: Double?\n/// Per-segment timestamps (if available).\npublic let segments: [TranscriptionSegment]?\n\npublic init(text: String, language: String?;",
          "documentation": ""
        },
        {
          "name": "public let language: String?",
          "line": 14,
          "signature": "public let language: String?\n/// Duration of the audio in seconds.\npublic let duration: Double?\n/// Per-segment timestamps (if available).\npublic let segments: [TranscriptionSegment]?\n\npublic init(text: String, language: String?;",
          "documentation": ""
        },
        {
          "name": "public let duration: Double?",
          "line": 16,
          "signature": "public let duration: Double?\n/// Per-segment timestamps (if available).\npublic let segments: [TranscriptionSegment]?\n\npublic init(text: String, language: String?;",
          "documentation": ""
        },
        {
          "name": "public let segments: [TranscriptionSegment]?",
          "line": 18,
          "signature": "public let segments: [TranscriptionSegment]?\n\npublic init(text: String, language: String?;",
          "documentation": ""
        },
        {
          "name": "public init(text: String, language: String?;",
          "line": 20,
          "signature": "public init(text: String, language: String?;",
          "documentation": ""
        },
        {
          "name": "public struct TranscriptionSegment: Codable, Sendable",
          "line": 29,
          "signature": "public struct TranscriptionSegment: Codable, Sendable",
          "documentation": ""
        },
        {
          "name": "public let text: String",
          "line": 31,
          "signature": "public let text: String\n/// Start time in seconds.\npublic let start: Double\n/// End time in seconds.\npublic let end: Double\n\npublic init(text: String, start: Double, end: Double)",
          "documentation": ""
        },
        {
          "name": "public let start: Double",
          "line": 33,
          "signature": "public let start: Double\n/// End time in seconds.\npublic let end: Double\n\npublic init(text: String, start: Double, end: Double)",
          "documentation": ""
        },
        {
          "name": "public let end: Double",
          "line": 35,
          "signature": "public let end: Double\n\npublic init(text: String, start: Double, end: Double)",
          "documentation": ""
        },
        {
          "name": "public init(text: String, start: Double, end: Double)",
          "line": 37,
          "signature": "public init(text: String, start: Double, end: Double)",
          "documentation": ""
        },
        {
          "name": "public struct TranscriptionOptions: Codable, Sendable",
          "line": 45,
          "signature": "public struct TranscriptionOptions: Codable, Sendable",
          "documentation": ""
        },
        {
          "name": "public var language: String?",
          "line": 47,
          "signature": "public var language: String?\n/// Whether to include timestamps.\npublic var timestamps: Bool?\n/// The response format.\npublic var responseFormat: String?\n\npublic init(language: String?;",
          "documentation": ""
        },
        {
          "name": "public var timestamps: Bool?",
          "line": 49,
          "signature": "public var timestamps: Bool?\n/// The response format.\npublic var responseFormat: String?\n\npublic init(language: String?;",
          "documentation": ""
        },
        {
          "name": "public var responseFormat: String?",
          "line": 51,
          "signature": "public var responseFormat: String?\n\npublic init(language: String?;",
          "documentation": ""
        },
        {
          "name": "public init(language: String?;",
          "line": 53,
          "signature": "public init(language: String?;",
          "documentation": ""
        },
        {
          "name": "public protocol TranscriptionProvider: Sendable",
          "line": 61,
          "signature": "public protocol TranscriptionProvider: Sendable",
          "documentation": ""
        }
      ]
    }
  ]
}
