// Generated from Fairmint/OpenCapTable/Types/Monetary.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';

export declare type OcfAddress = {
  address_type: OcfAddressType;
  country: string;
  city: damlTypes.Optional<string>;
  country_subdivision: damlTypes.Optional<string>;
  postal_code: damlTypes.Optional<string>;
  street_suite: damlTypes.Optional<string>;
};

export declare const OcfAddress:
  damlTypes.Serializable<OcfAddress> & {
  }
;


export declare type OcfAddressType =
  | 'OcfAddressTypeLegal'
  | 'OcfAddressTypeContact'
  | 'OcfAddressTypeOther'
;

export declare const OcfAddressType:
  damlTypes.Serializable<OcfAddressType> & {
  }
& { readonly keys: OcfAddressType[] } & { readonly [e in OcfAddressType]: e }
;


export declare type OcfTaxID = {
  country: string;
  tax_id: string;
};

export declare const OcfTaxID:
  damlTypes.Serializable<OcfTaxID> & {
  }
;


export declare type OcfMonetary = {
  amount: damlTypes.Numeric;
  currency: string;
};

export declare const OcfMonetary:
  damlTypes.Serializable<OcfMonetary> & {
  }
;

