import type { InferSchema } from '../schema-types.js'; import { transactionByIdParamsSchema } from './transactions.js'; export declare const holdEntryRequestSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["account_id", "direction", "amount_minor", "currency"]; readonly properties: { readonly account_id: { readonly type: "string"; readonly format: "uuid"; }; readonly direction: { readonly type: "string"; readonly enum: readonly ("DEBIT" | "CREDIT")[]; }; readonly amount_minor: { readonly type: "string"; readonly pattern: "^[1-9][0-9]*$"; }; readonly currency: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; }; }; export declare const createHoldRequestSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["ledger_id", "reference", "currency", "entries"]; readonly properties: { readonly ledger_id: { readonly type: "string"; readonly format: "uuid"; }; readonly reference: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; readonly currency: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; readonly description: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; readonly entries: { readonly type: "array"; readonly minItems: 2; readonly items: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["account_id", "direction", "amount_minor", "currency"]; readonly properties: { readonly account_id: { readonly type: "string"; readonly format: "uuid"; }; readonly direction: { readonly type: "string"; readonly enum: readonly ("DEBIT" | "CREDIT")[]; }; readonly amount_minor: { readonly type: "string"; readonly pattern: "^[1-9][0-9]*$"; }; readonly currency: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; }; }; }; }; }; export declare const commitHoldRequestSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["reference"]; readonly properties: { readonly reference: { readonly type: "string"; readonly pattern: "^(?=.*\\S).+$"; }; readonly amount_minor: { readonly type: "string"; readonly pattern: "^[1-9][0-9]*$"; }; }; }; export declare const createHoldResponseSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["hold_id", "created", "state", "remaining_amount_minor"]; readonly properties: { readonly hold_id: { readonly type: "string"; readonly format: "uuid"; }; readonly created: { readonly type: "boolean"; }; readonly state: { readonly type: "string"; readonly enum: readonly ["HELD", "APPLIED", "VOIDED"]; }; readonly remaining_amount_minor: { readonly type: "string"; readonly pattern: "^[0-9]+$"; }; }; }; export declare const commitHoldResponseSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["hold_id", "transaction_id", "created", "state", "remaining_amount_minor"]; readonly properties: { readonly hold_id: { readonly type: "string"; readonly format: "uuid"; }; readonly transaction_id: { readonly type: "string"; readonly format: "uuid"; }; readonly created: { readonly type: "boolean"; }; readonly state: { readonly type: "string"; readonly enum: readonly ["HELD", "APPLIED"]; }; readonly remaining_amount_minor: { readonly type: "string"; readonly pattern: "^[0-9]+$"; }; }; }; export declare const voidHoldResponseSchema: { readonly type: "object"; readonly additionalProperties: false; readonly required: readonly ["hold_id", "state", "voided", "remaining_amount_minor"]; readonly properties: { readonly hold_id: { readonly type: "string"; readonly format: "uuid"; }; readonly state: { readonly type: "string"; readonly enum: readonly ["VOIDED"]; }; readonly voided: { readonly type: "boolean"; }; readonly remaining_amount_minor: { readonly type: "string"; readonly pattern: "^[0-9]+$"; }; }; }; export { transactionByIdParamsSchema as holdByIdParamsSchema }; export type HoldEntryRequest = InferSchema; export type CreateHoldRequest = InferSchema; export type CreateHoldResponse = InferSchema; export type CommitHoldRequest = InferSchema; export type HoldByIdParams = InferSchema; export type CommitHoldResponse = InferSchema; export type VoidHoldResponse = InferSchema; //# sourceMappingURL=holds.d.ts.map