import * as z from "zod"; import { OpenEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** * The actual amount of the order, which is determined after the issuer accepts the order. May differ from the requested `notional_value`. */ export type AlternativeOrderCumulativeNotionalValue = { /** * The decimal value, as a string; Refer to [Google’s Decimal type protocol buffer](https://github.com/googleapis/googleapis/blob/40203ca1880849480bbff7b8715491060bbccdf1/google/type/decimal.proto#L33) for details */ value?: string | undefined; }; /** * Identifies the distribution type for buy side orders (that is, when `side` value = `BUY`). - Orders will be rejected if the alternative investment asset does not allow the requested distribution type. - Not relevant for sell orders (that is, when `side` value = `SELL`). - Confirm the asset’s `cash_distribution_allowed` and `reinvestment_distribution_allowed` properties to know what it allows. */ export declare enum AlternativeOrderDistributionType { DistributionTypeUnspecified = "DISTRIBUTION_TYPE_UNSPECIFIED", Cash = "CASH", Reinvestment = "REINVESTMENT" } /** * Identifies the distribution type for buy side orders (that is, when `side` value = `BUY`). - Orders will be rejected if the alternative investment asset does not allow the requested distribution type. - Not relevant for sell orders (that is, when `side` value = `SELL`). - Confirm the asset’s `cash_distribution_allowed` and `reinvestment_distribution_allowed` properties to know what it allows. */ export type AlternativeOrderDistributionTypeOpen = OpenEnum; /** * The actual filled share quantity of the order, which is determined after the issuer accepts the order. May differ from the requested `quantity`. */ export type AlternativeOrderFilledQuantity = { /** * The decimal value, as a string; Refer to [Google’s Decimal type protocol buffer](https://github.com/googleapis/googleapis/blob/40203ca1880849480bbff7b8715491060bbccdf1/google/type/decimal.proto#L33) for details */ value?: string | undefined; }; /** * Identifies which parameter value is used to identify the asset in the order. The value for that parameter is used in the `identifier` field. */ export declare enum AlternativeOrderIdentifierType { IdentifierTypeUnspecified = "IDENTIFIER_TYPE_UNSPECIFIED", AssetId = "ASSET_ID" } /** * Identifies which parameter value is used to identify the asset in the order. The value for that parameter is used in the `identifier` field. */ export type AlternativeOrderIdentifierTypeOpen = OpenEnum; /** * The requested notional value for the order. - Orders can specify only one of `full`, `notional_value`, or `quantity`. - The value must be positive. - Values are scaled to two decimal places. - Note that the issuer may allow only an order for less than the requested amount. */ export type AlternativeOrderNotionalValue = { /** * The decimal value, as a string; Refer to [Google’s Decimal type protocol buffer](https://github.com/googleapis/googleapis/blob/40203ca1880849480bbff7b8715491060bbccdf1/google/type/decimal.proto#L33) for details */ value?: string | undefined; }; /** * The order’s status at the time of the response. */ export declare enum AlternativeOrderOrderStatus { OrderStatusUnspecified = "ORDER_STATUS_UNSPECIFIED", Received = "RECEIVED", Filled = "FILLED", Rejected = "REJECTED", AwaitingSignature = "AWAITING_SIGNATURE", PendingSettlement = "PENDING_SETTLEMENT", Booked = "BOOKED" } /** * The order’s status at the time of the response. */ export type AlternativeOrderOrderStatusOpen = OpenEnum; /** * The requested quantity of shares for the order. - Orders can specify only one of `full`, `notional_value`, or `quantity`. - Only relevant to redemption orders. - The value must be positive. - Note that the issuer may allow only an order for less than the requested quantity. */ export type AlternativeOrderQuantity = { /** * The decimal value, as a string; Refer to [Google’s Decimal type protocol buffer](https://github.com/googleapis/googleapis/blob/40203ca1880849480bbff7b8715491060bbccdf1/google/type/decimal.proto#L33) for details */ value?: string | undefined; }; /** * The date the order will be/was settled. Value will be `null` until the issuer sets a settlement date. */ export type SettlementDate = { /** * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. */ day?: number | undefined; /** * Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. */ month?: number | undefined; /** * Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. */ year?: number | undefined; }; /** * The side of the order. */ export declare enum AlternativeOrderSide { SideUnspecified = "SIDE_UNSPECIFIED", Buy = "BUY", Sell = "SELL" } /** * The side of the order. */ export type AlternativeOrderSideOpen = OpenEnum; /** * An order for an alternative investment. */ export type AlternativeOrder = { /** * The ID of the account. */ accountId?: string | undefined; /** * The ID of the alternative investment order. */ alternativeOrderId?: string | undefined; /** * A client-supplied unique ID to enforce idempotency. Each ID must be unique within the account. * * @remarks * * If a create request includes a `client_order_id` that matches an existing order’s `client_order_id`, the service will respond with `ALREADY_EXISTS` and will not create a new order resource. */ clientOrderId?: string | undefined; /** * The date and time the order was created. Uses [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601). */ createTime?: Date | null | undefined; /** * The actual amount of the order, which is determined after the issuer accepts the order. May differ from the requested `notional_value`. */ cumulativeNotionalValue?: AlternativeOrderCumulativeNotionalValue | null | undefined; /** * The currency code of the order. Supports only "USD" and will default to "USD" if unspecified in the request. */ currencyCode?: string | undefined; /** * Identifies the distribution type for buy side orders (that is, when `side` value = `BUY`). - Orders will be rejected if the alternative investment asset does not allow the requested distribution type. - Not relevant for sell orders (that is, when `side` value = `SELL`). - Confirm the asset’s `cash_distribution_allowed` and `reinvestment_distribution_allowed` properties to know what it allows. */ distributionType?: AlternativeOrderDistributionTypeOpen | undefined; /** * The actual filled share quantity of the order, which is determined after the issuer accepts the order. May differ from the requested `quantity`. */ filledQuantity?: AlternativeOrderFilledQuantity | null | undefined; /** * Indicates whether this order is for a full redemption (as in, all shares redeemed). - Orders can specify only one of `full`, `notional_value`, or `quantity`. - Note that the issuer may allow only partial redemption. - Not relevant to subscription orders. */ full?: boolean | undefined; /** * The asset identifier value, dependent on enum value set for `identifier_type`. * * @remarks * * For example, if `identifier_type` = `ASSET_ID`, then the value for `identifier` is the `asset_id` value. */ identifier?: string | undefined; /** * Identifies which parameter value is used to identify the asset in the order. The value for that parameter is used in the `identifier` field. */ identifierType?: AlternativeOrderIdentifierTypeOpen | undefined; /** * The system-generated resource name of the alternative investment order. * * @remarks * * Format: accounts/{account}/alternativeOrders/{alternative_order} * * Note that `{account}` will be the `account_id` value and `{alternative_order}` will be the `alternative_order_id` value. */ name?: string | undefined; /** * The requested notional value for the order. - Orders can specify only one of `full`, `notional_value`, or `quantity`. - The value must be positive. - Values are scaled to two decimal places. - Note that the issuer may allow only an order for less than the requested amount. */ notionalValue?: AlternativeOrderNotionalValue | null | undefined; /** * The order’s status at the time of the response. */ orderStatus?: AlternativeOrderOrderStatusOpen | undefined; /** * The requested quantity of shares for the order. - Orders can specify only one of `full`, `notional_value`, or `quantity`. - Only relevant to redemption orders. - The value must be positive. - Note that the issuer may allow only an order for less than the requested quantity. */ quantity?: AlternativeOrderQuantity | null | undefined; /** * The date the order will be/was settled. Value will be `null` until the issuer sets a settlement date. */ settlementDate?: SettlementDate | null | undefined; /** * The side of the order. */ side?: AlternativeOrderSideOpen | undefined; /** * A system-generated, user-friendly message about the order’s status. */ statusMessage?: string | undefined; /** * The date and time the order was last updated. Uses [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601). */ updateTime?: Date | null | undefined; }; /** @internal */ export declare const AlternativeOrderCumulativeNotionalValue$inboundSchema: z.ZodType; /** @internal */ export type AlternativeOrderCumulativeNotionalValue$Outbound = { value?: string | undefined; }; /** @internal */ export declare const AlternativeOrderCumulativeNotionalValue$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderCumulativeNotionalValue$ { /** @deprecated use `AlternativeOrderCumulativeNotionalValue$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderCumulativeNotionalValue$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderCumulativeNotionalValue$Outbound` instead. */ type Outbound = AlternativeOrderCumulativeNotionalValue$Outbound; } export declare function alternativeOrderCumulativeNotionalValueToJSON(alternativeOrderCumulativeNotionalValue: AlternativeOrderCumulativeNotionalValue): string; export declare function alternativeOrderCumulativeNotionalValueFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const AlternativeOrderDistributionType$inboundSchema: z.ZodType; /** @internal */ export declare const AlternativeOrderDistributionType$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderDistributionType$ { /** @deprecated use `AlternativeOrderDistributionType$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderDistributionType$outboundSchema` instead. */ const outboundSchema: z.ZodType; } /** @internal */ export declare const AlternativeOrderFilledQuantity$inboundSchema: z.ZodType; /** @internal */ export type AlternativeOrderFilledQuantity$Outbound = { value?: string | undefined; }; /** @internal */ export declare const AlternativeOrderFilledQuantity$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderFilledQuantity$ { /** @deprecated use `AlternativeOrderFilledQuantity$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderFilledQuantity$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderFilledQuantity$Outbound` instead. */ type Outbound = AlternativeOrderFilledQuantity$Outbound; } export declare function alternativeOrderFilledQuantityToJSON(alternativeOrderFilledQuantity: AlternativeOrderFilledQuantity): string; export declare function alternativeOrderFilledQuantityFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const AlternativeOrderIdentifierType$inboundSchema: z.ZodType; /** @internal */ export declare const AlternativeOrderIdentifierType$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderIdentifierType$ { /** @deprecated use `AlternativeOrderIdentifierType$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderIdentifierType$outboundSchema` instead. */ const outboundSchema: z.ZodType; } /** @internal */ export declare const AlternativeOrderNotionalValue$inboundSchema: z.ZodType; /** @internal */ export type AlternativeOrderNotionalValue$Outbound = { value?: string | undefined; }; /** @internal */ export declare const AlternativeOrderNotionalValue$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderNotionalValue$ { /** @deprecated use `AlternativeOrderNotionalValue$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderNotionalValue$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderNotionalValue$Outbound` instead. */ type Outbound = AlternativeOrderNotionalValue$Outbound; } export declare function alternativeOrderNotionalValueToJSON(alternativeOrderNotionalValue: AlternativeOrderNotionalValue): string; export declare function alternativeOrderNotionalValueFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const AlternativeOrderOrderStatus$inboundSchema: z.ZodType; /** @internal */ export declare const AlternativeOrderOrderStatus$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderOrderStatus$ { /** @deprecated use `AlternativeOrderOrderStatus$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderOrderStatus$outboundSchema` instead. */ const outboundSchema: z.ZodType; } /** @internal */ export declare const AlternativeOrderQuantity$inboundSchema: z.ZodType; /** @internal */ export type AlternativeOrderQuantity$Outbound = { value?: string | undefined; }; /** @internal */ export declare const AlternativeOrderQuantity$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderQuantity$ { /** @deprecated use `AlternativeOrderQuantity$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderQuantity$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderQuantity$Outbound` instead. */ type Outbound = AlternativeOrderQuantity$Outbound; } export declare function alternativeOrderQuantityToJSON(alternativeOrderQuantity: AlternativeOrderQuantity): string; export declare function alternativeOrderQuantityFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const SettlementDate$inboundSchema: z.ZodType; /** @internal */ export type SettlementDate$Outbound = { day?: number | undefined; month?: number | undefined; year?: number | undefined; }; /** @internal */ export declare const SettlementDate$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace SettlementDate$ { /** @deprecated use `SettlementDate$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `SettlementDate$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `SettlementDate$Outbound` instead. */ type Outbound = SettlementDate$Outbound; } export declare function settlementDateToJSON(settlementDate: SettlementDate): string; export declare function settlementDateFromJSON(jsonString: string): SafeParseResult; /** @internal */ export declare const AlternativeOrderSide$inboundSchema: z.ZodType; /** @internal */ export declare const AlternativeOrderSide$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrderSide$ { /** @deprecated use `AlternativeOrderSide$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrderSide$outboundSchema` instead. */ const outboundSchema: z.ZodType; } /** @internal */ export declare const AlternativeOrder$inboundSchema: z.ZodType; /** @internal */ export type AlternativeOrder$Outbound = { account_id?: string | undefined; alternative_order_id?: string | undefined; client_order_id?: string | undefined; create_time?: string | null | undefined; cumulative_notional_value?: AlternativeOrderCumulativeNotionalValue$Outbound | null | undefined; currency_code?: string | undefined; distribution_type?: string | undefined; filled_quantity?: AlternativeOrderFilledQuantity$Outbound | null | undefined; full?: boolean | undefined; identifier?: string | undefined; identifier_type?: string | undefined; name?: string | undefined; notional_value?: AlternativeOrderNotionalValue$Outbound | null | undefined; order_status?: string | undefined; quantity?: AlternativeOrderQuantity$Outbound | null | undefined; settlement_date?: SettlementDate$Outbound | null | undefined; side?: string | undefined; status_message?: string | undefined; update_time?: string | null | undefined; }; /** @internal */ export declare const AlternativeOrder$outboundSchema: z.ZodType; /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export declare namespace AlternativeOrder$ { /** @deprecated use `AlternativeOrder$inboundSchema` instead. */ const inboundSchema: z.ZodType; /** @deprecated use `AlternativeOrder$outboundSchema` instead. */ const outboundSchema: z.ZodType; /** @deprecated use `AlternativeOrder$Outbound` instead. */ type Outbound = AlternativeOrder$Outbound; } export declare function alternativeOrderToJSON(alternativeOrder: AlternativeOrder): string; export declare function alternativeOrderFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=alternativeorder.d.ts.map