// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. import Foundation extension Operations { /// A model object public struct GetSearchResultsMediaContainer { public let identifier: String? public let mediaTagPrefix: String? @DecimalSerialized public private(set) var mediaTagVersion: Double? public let metadata: [Operations.GetSearchResultsMetadata]? public let provider: [Operations.Provider]? @DecimalSerialized public private(set) var size: Double? /// Creates an object with the specified parameters /// /// public init(identifier: String? = nil, mediaTagPrefix: String? = nil, mediaTagVersion: Double? = nil, metadata: [Operations.GetSearchResultsMetadata]? = nil, provider: [Operations.Provider]? = nil, size: Double? = nil) { self.identifier = identifier self.mediaTagPrefix = mediaTagPrefix self._mediaTagVersion = DecimalSerialized(wrappedValue: mediaTagVersion) self.metadata = metadata self.provider = provider self._size = DecimalSerialized(wrappedValue: size) } }} extension Operations.GetSearchResultsMediaContainer: Codable { enum CodingKeys: String, CodingKey { case identifier case mediaTagPrefix case mediaTagVersion case metadata = "Metadata" case provider = "Provider" case size } public init(from decoder: Decoder) throws { let container = try decoder.container(keyedBy: CodingKeys.self) self.identifier = try container.decodeIfPresent(String.self, forKey: .identifier) self.mediaTagPrefix = try container.decodeIfPresent(String.self, forKey: .mediaTagPrefix) self._mediaTagVersion = try container.decodeIfPresent(DecimalSerialized.self, forKey: .mediaTagVersion) ?? DecimalSerialized(wrappedValue: nil) self.metadata = try container.decodeIfPresent([Operations.GetSearchResultsMetadata].self, forKey: .metadata) self.provider = try container.decodeIfPresent([Operations.Provider].self, forKey: .provider) self._size = try container.decodeIfPresent(DecimalSerialized.self, forKey: .size) ?? DecimalSerialized(wrappedValue: nil) } public func encode(to encoder: Encoder) throws { var container = encoder.container(keyedBy: CodingKeys.self) try container.encodeIfPresent(self.identifier, forKey: .identifier) try container.encodeIfPresent(self.mediaTagPrefix, forKey: .mediaTagPrefix) if self.mediaTagVersion != nil { try container.encode(self._mediaTagVersion, forKey: .mediaTagVersion) } try container.encodeIfPresent(self.metadata, forKey: .metadata) try container.encodeIfPresent(self.provider, forKey: .provider) if self.size != nil { try container.encode(self._size, forKey: .size) } } } extension Operations.GetSearchResultsMediaContainer { var sizeWrapper: DecimalSerialized { return _size } var mediaTagVersionWrapper: DecimalSerialized { return _mediaTagVersion } }