# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT. # typed: true # frozen_string_literal: true require 'sorbet-runtime' require 'faraday' module StackOne module Shared # Value - The type of the attachment. class Value < T::Enum enums do RESUME = new('resume') GENERIC_FILE = new('generic_file') COVER_LETTER = new('cover_letter') AVATAR = new('avatar') UNMAPPED_VALUE = new('unmapped_value') end end class AttachmentType < ::StackOne::Utils::FieldAugmented extend T::Sig # The source value of the attachment type. field :source_value, T.nilable(Object), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } } # The type of the attachment. field :value, T.nilable(Shared::Value), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Shared::Value, true) } } sig { params(source_value: T.nilable(Object), value: T.nilable(Shared::Value)).void } def initialize(source_value: nil, value: nil) @source_value = source_value @value = value end end end end