# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. # typed: true # frozen_string_literal: true module StackOne module Shared class CreateHRISBenefit < ::StackOne::Utils::FieldAugmented extend T::Sig # The type of the benefit field :benefit_type, T.nilable(::StackOne::Shared::BenefitType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('benefit_type') } } # The date and time the benefit was created field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } } # The description of the benefit field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('description') } } # Unique identifier field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } } # The name of the benefit field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } } # The provider of the benefit field :provider, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('provider') } } # The date and time the benefit was last updated field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } } sig { params(benefit_type: T.nilable(::StackOne::Shared::BenefitType), created_at: T.nilable(::DateTime), description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), provider: T.nilable(::String), updated_at: T.nilable(::DateTime)).void } def initialize(benefit_type: nil, created_at: nil, description: nil, id: nil, name: nil, provider: nil, updated_at: nil) @benefit_type = benefit_type @created_at = created_at @description = description @id = id @name = name @provider = provider @updated_at = updated_at end end end end