// Generated from ../../../../Fairmint/OpenCapTable/OCF/VestingTerms/module.daml /* eslint-disable @typescript-eslint/camelcase */ /* eslint-disable @typescript-eslint/no-namespace */ /* eslint-disable @typescript-eslint/no-use-before-define */ import * as jtv from '@mojotech/json-type-validation'; import * as damlTypes from '@daml/types'; import * as pkg9e70a8b3510d617f8a136213f33d6a903a10ca0eeec76bb06ba55d1ed9680f69 from '../../../../__bundled__/ghc-stdlib-DA-Internal-Template'; import * as Fairmint_OpenCapTable_Types_Core from '../../../../Fairmint/OpenCapTable/Types/Core/module'; export declare type OcfAllocationType = | 'OcfAllocationCumulativeRounding' | 'OcfAllocationCumulativeRoundDown' | 'OcfAllocationFrontLoaded' | 'OcfAllocationBackLoaded' | 'OcfAllocationFrontLoadedToSingleTranche' | 'OcfAllocationBackLoadedToSingleTranche' | 'OcfAllocationFractional' export declare const OcfAllocationType: damlTypes.Serializable & { readonly keys: OcfAllocationType[] } & { readonly [e in OcfAllocationType]: e } export declare type OcfVestingCondition = { id: string, trigger: OcfVestingTrigger, next_condition_ids: string[], description: damlTypes.Optional, portion: damlTypes.Optional, quantity: damlTypes.Optional, } export declare const OcfVestingCondition: damlTypes.Serializable export declare type OcfVestingConditionPortion = { numerator: damlTypes.Numeric, denominator: damlTypes.Numeric, remainder: boolean, } export declare const OcfVestingConditionPortion: damlTypes.Serializable export declare type OcfVestingDayOfMonth = | 'OcfVestingDay01' | 'OcfVestingDay02' | 'OcfVestingDay03' | 'OcfVestingDay04' | 'OcfVestingDay05' | 'OcfVestingDay06' | 'OcfVestingDay07' | 'OcfVestingDay08' | 'OcfVestingDay09' | 'OcfVestingDay10' | 'OcfVestingDay11' | 'OcfVestingDay12' | 'OcfVestingDay13' | 'OcfVestingDay14' | 'OcfVestingDay15' | 'OcfVestingDay16' | 'OcfVestingDay17' | 'OcfVestingDay18' | 'OcfVestingDay19' | 'OcfVestingDay20' | 'OcfVestingDay21' | 'OcfVestingDay22' | 'OcfVestingDay23' | 'OcfVestingDay24' | 'OcfVestingDay25' | 'OcfVestingDay26' | 'OcfVestingDay27' | 'OcfVestingDay28' | 'OcfVestingDay29OrLast' | 'OcfVestingDay30OrLast' | 'OcfVestingDay31OrLast' | 'OcfVestingStartDayOrLast' export declare const OcfVestingDayOfMonth: damlTypes.Serializable & { readonly keys: OcfVestingDayOfMonth[] } & { readonly [e in OcfVestingDayOfMonth]: e } export declare type OcfVestingPeriod = | { tag: 'OcfVestingPeriodDays'; value: OcfVestingPeriod.OcfVestingPeriodDays } | { tag: 'OcfVestingPeriodMonths'; value: OcfVestingPeriod.OcfVestingPeriodMonths } export declare const OcfVestingPeriod: damlTypes.Serializable & { OcfVestingPeriodDays: damlTypes.Serializable; OcfVestingPeriodMonths: damlTypes.Serializable; } export namespace OcfVestingPeriod { type OcfVestingPeriodDays = { length_: damlTypes.Int, occurrences: damlTypes.Int, cliff_installment: damlTypes.Optional, } type OcfVestingPeriodMonths = { length_: damlTypes.Int, occurrences: damlTypes.Int, day_of_month: OcfVestingDayOfMonth, cliff_installment: damlTypes.Optional, } } export declare type OcfVestingTrigger = | { tag: 'OcfVestingStartTrigger'; value: {} } | { tag: 'OcfVestingScheduleAbsoluteTrigger'; value: OcfVestingTrigger.OcfVestingScheduleAbsoluteTrigger } | { tag: 'OcfVestingScheduleRelativeTrigger'; value: OcfVestingTrigger.OcfVestingScheduleRelativeTrigger } | { tag: 'OcfVestingEventTrigger'; value: {} } export declare const OcfVestingTrigger: damlTypes.Serializable & { OcfVestingScheduleAbsoluteTrigger: damlTypes.Serializable; OcfVestingScheduleRelativeTrigger: damlTypes.Serializable; } export namespace OcfVestingTrigger { type OcfVestingScheduleAbsoluteTrigger = { date: damlTypes.Time, } type OcfVestingScheduleRelativeTrigger = { period: OcfVestingPeriod, relative_to_condition_id: string, } } export declare type VestingTerms = { context: Fairmint_OpenCapTable_Types_Core.Context, vesting_terms_data: VestingTermsOcfData, } export declare interface VestingTermsInterface { Archive: damlTypes.Choice & damlTypes.ChoiceFrom>; } export declare const VestingTerms: damlTypes.Template & damlTypes.ToInterface & VestingTermsInterface export declare type VestingTermsOcfData = { id: string, allocation_type: OcfAllocationType, description: string, name: string, comments: string[], vesting_conditions: OcfVestingCondition[], } export declare const VestingTermsOcfData: damlTypes.Serializable