@fairmint/canton-node-sdk
Version:
Canton Node SDK
42 lines • 1.82 kB
TypeScript
import { LedgerJsonApiClient } from '../../clients/ledger-json-api';
import { ValidatorApiClient } from '../../clients/validator-api';
export interface TransferPreapprovalInfo {
/** Contract ID of the TransferPreapproval contract */
contractId: string;
/** Template ID of the TransferPreapproval contract */
templateId: string;
/** Created event blob of the TransferPreapproval contract */
createdEventBlob: string;
/** Synchronizer ID where the TransferPreapproval contract resides */
synchronizerId: string;
}
export interface TransferToPreapprovedParams {
/** Party ID sending the transfer */
senderPartyId: string;
/** Recipient party ID */
recipientPartyId: string;
/** TransferPreapproval contract information (required for disclosure) */
transferPreapproval: TransferPreapprovalInfo;
/** Amount to transfer */
amount: string;
/** Optional description for the transfer */
description?: string;
}
export interface TransferToPreapprovedResult {
/** Contract ID of the TransferPreapproval contract used */
contractId: string;
/** Domain ID where the transfer occurred */
domainId: string;
/** Transfer result summary */
transferResult: any;
}
/**
* Transfers coins to a party that has pre-approved transfers enabled
*
* @param ledgerClient - Ledger JSON API client for submitting commands
* @param validatorClient - Validator API client for getting network information
* @param params - Parameters for the transfer
* @returns Promise resolving to the transfer result
*/
export declare function transferToPreapproved(ledgerClient: LedgerJsonApiClient, validatorClient: ValidatorApiClient, params: TransferToPreapprovedParams): Promise<TransferToPreapprovedResult>;
//# sourceMappingURL=transfer-to-preapproved.d.ts.map