import * as t from 'io-ts'; import { PendingApprovalData, TxRequestState } from '@bitgo/sdk-core'; import { Bip32Derivation } from 'bip174/src/lib/interfaces'; export declare const WithdrawStatusDelivered = "delivered"; export declare const WithdrawStatusFailed = "failed"; export declare const WithdrawStatus: t.UnionC<[t.LiteralC<"delivered">, t.LiteralC<"failed">]>; export declare const LightningOnchainWithdrawParams: t.IntersectionC<[t.IntersectionC<[t.TypeC<{ recipients: t.ArrayC>; }>, t.PartialC<{ satsPerVbyte: import("io-ts-types").BigIntFromStringC; numBlocks: t.NumberC; }>]>, t.TypeC<{ passphrase: t.StringC; }>, t.PartialC<{ sequenceId: t.UnionC<[t.Type, t.UndefinedC]>; comment: t.UnionC<[t.Type, t.UndefinedC]>; }>]>; export type LightningOnchainWithdrawParams = t.TypeOf; export declare const LndCreateWithdrawResponse: t.IntersectionC<[t.TypeC<{ status: t.UnionC<[t.LiteralC<"delivered">, t.LiteralC<"failed">]>; }>, t.PartialC<{ txid: t.StringC; failureReason: t.StringC; }>]>; export type LndCreateWithdrawResponse = t.TypeOf; export type LightningOnchainWithdrawResponse = { /** * Unique identifier for withdraw request submitted to BitGo. */ txRequestId: string; /** * Status of withdraw request submission to BitGo. * - `'delivered'`: Successfully received by BitGo, but may or may not have been sent to the Bitcoin network yet. * - For the actual withdraw status, track `transfer`. */ txRequestState: TxRequestState; /** * Pending approval details, if applicable. * - If present, withdraw has not been initiated yet. */ pendingApproval?: PendingApprovalData; /** * Current snapshot of withdraw status (if available). * - **`'delivered'`**: Withdraw request is delivered to the blockchain. * - **`'failed'`**: Withdraw failed. * This field is absent if approval is required before processing. */ withdrawStatus?: LndCreateWithdrawResponse; }; export declare const FundPsbtResponse: t.TypeC<{ fundedPsbt: t.StringC; changeOutputIndex: t.NumberC; }>; export type FundPsbtResponse = t.TypeOf; export declare const SignPsbtRequest: t.TypeC<{ fundedPsbt: t.StringC; txRequestId: t.StringC; userAuthKey: t.StringC; signature: t.StringC; signedRequest: t.StringC; }>; export type SignPsbtRequest = t.TypeOf; export declare const SignPsbtResponse: t.TypeC<{ signedPsbt: t.StringC; signedTxHex: t.StringC; }>; export type SignPsbtResponse = t.TypeOf; export declare const SendPsbtRequest: t.TypeC<{ signedTxHex: t.StringC; txRequestId: t.StringC; userAuthKey: t.StringC; signature: t.StringC; signedRequest: t.StringC; }>; export type SendPsbtRequest = t.TypeOf; export declare const SendPsbtResponse: t.IntersectionC<[t.TypeC<{ label: t.StringC; }>, t.PartialC<{ status: t.UnionC<[t.LiteralC<"delivered">, t.LiteralC<"failed">]>; failureReason: t.StringC; }>]>; export type SendPsbtResponse = t.TypeOf; export type WithdrawBaseOutputUTXO = { value: TNumber; change: boolean; address: string; bip32Derivation?: Bip32Derivation; }; //# sourceMappingURL=withdraw.d.ts.map