# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. # typed: true # frozen_string_literal: true module OpenApiSDK module Shared class UnifiedTicketingAttachmentOutput < ::OpenApiSDK::Utils::FieldAugmented extend T::Sig # The file name of the attachment field :file_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('file_name') } } # The file url of the attachment field :file_url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('file_url') } } # The uploader's UUID of the attachment field :uploader, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('uploader') } } # The UUID of the comment the attachment is tied to field :comment_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('comment_id') } } # The created date of the object field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } } # The custom field mappings of the attachment between the remote 3rd party & Panora field :field_mappings, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('field_mappings') } } # The UUID of the attachment field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id') } } # The modified date of the object field :modified_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('modified_at'), 'decoder': Utils.datetime_from_iso_format(true) } } # The remote data of the attachment in the context of the 3rd Party field :remote_data, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('remote_data') } } # The id of the attachment in the context of the 3rd Party field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('remote_id') } } # The UUID of the ticket the attachment is tied to field :ticket_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ticket_id') } } sig { params(file_name: ::String, file_url: ::String, uploader: ::String, comment_id: T.nilable(::String), created_at: T.nilable(::DateTime), field_mappings: T.nilable(T::Hash[Symbol, ::Object]), id: T.nilable(::String), modified_at: T.nilable(::DateTime), remote_data: T.nilable(T::Hash[Symbol, ::Object]), remote_id: T.nilable(::String), ticket_id: T.nilable(::String)).void } def initialize(file_name: nil, file_url: nil, uploader: nil, comment_id: nil, created_at: nil, field_mappings: nil, id: nil, modified_at: nil, remote_data: nil, remote_id: nil, ticket_id: nil) @file_name = file_name @file_url = file_url @uploader = uploader @comment_id = comment_id @created_at = created_at @field_mappings = field_mappings @id = id @modified_at = modified_at @remote_data = remote_data @remote_id = remote_id @ticket_id = ticket_id end end end end