import { z } from 'zod'; import { AxiosInstance } from 'axios'; import { PaginatedData, Pagination } from '../payload/common.js'; export declare enum TransferType { DEPOSIT = "deposit", INTERNAL_DEPOSIT = "internal_deposit", INTERNAL_WITHDRAW = "internal_withdraw", WITHDRAW = "withdraw" } export declare const TransferInformationSchema: z.ZodObject<{ account_id: z.ZodString; amount: z.ZodString; canceled_at: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; completed_at: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; created_at: z.ZodString; currency: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; details: z.ZodObject<{ coinbase_account_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; coinbase_payment_method_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; coinbase_transaction_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; coinbase_withdrawal_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; crypto_address: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; crypto_transaction_hash: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; crypto_transaction_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; destination_tag: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; destination_tag_name: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; sent_to_address: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; tx_service_transaction_id: z.ZodOptional; }, "strip", z.ZodTypeAny, { coinbase_account_id?: string | null | undefined; coinbase_payment_method_id?: string | null | undefined; coinbase_transaction_id?: string | null | undefined; coinbase_withdrawal_id?: string | null | undefined; crypto_address?: string | null | undefined; crypto_transaction_hash?: string | null | undefined; crypto_transaction_id?: string | null | undefined; destination_tag?: string | null | undefined; destination_tag_name?: string | null | undefined; sent_to_address?: string | null | undefined; tx_service_transaction_id?: string | undefined; }, { coinbase_account_id?: string | null | undefined; coinbase_payment_method_id?: string | null | undefined; coinbase_transaction_id?: string | null | undefined; coinbase_withdrawal_id?: string | null | undefined; crypto_address?: string | null | undefined; crypto_transaction_hash?: string | null | undefined; crypto_transaction_id?: string | null | undefined; destination_tag?: string | null | undefined; destination_tag_name?: string | null | undefined; sent_to_address?: string | null | undefined; tx_service_transaction_id?: string | undefined; }>; id: z.ZodString; idem: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; processed_at: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; profile_id: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; type: z.ZodNativeEnum; user_id: z.ZodString; user_nonce: z.ZodUnion<[z.ZodNullable, z.ZodUndefined]>; }, "strip", z.ZodTypeAny, { type: TransferType; id: string; details: { coinbase_account_id?: string | null | undefined; coinbase_payment_method_id?: string | null | undefined; coinbase_transaction_id?: string | null | undefined; coinbase_withdrawal_id?: string | null | undefined; crypto_address?: string | null | undefined; crypto_transaction_hash?: string | null | undefined; crypto_transaction_id?: string | null | undefined; destination_tag?: string | null | undefined; destination_tag_name?: string | null | undefined; sent_to_address?: string | null | undefined; tx_service_transaction_id?: string | undefined; }; user_id: string; account_id: string; amount: string; created_at: string; currency?: string | null | undefined; profile_id?: string | null | undefined; canceled_at?: string | null | undefined; completed_at?: string | null | undefined; idem?: string | null | undefined; processed_at?: string | null | undefined; user_nonce?: string | null | undefined; }, { type: TransferType; id: string; details: { coinbase_account_id?: string | null | undefined; coinbase_payment_method_id?: string | null | undefined; coinbase_transaction_id?: string | null | undefined; coinbase_withdrawal_id?: string | null | undefined; crypto_address?: string | null | undefined; crypto_transaction_hash?: string | null | undefined; crypto_transaction_id?: string | null | undefined; destination_tag?: string | null | undefined; destination_tag_name?: string | null | undefined; sent_to_address?: string | null | undefined; tx_service_transaction_id?: string | undefined; }; user_id: string; account_id: string; amount: string; created_at: string; currency?: string | null | undefined; profile_id?: string | null | undefined; canceled_at?: string | null | undefined; completed_at?: string | null | undefined; idem?: string | null | undefined; processed_at?: string | null | undefined; user_nonce?: string | null | undefined; }>; export type TransferInformation = z.infer; export declare class TransferAPI { private readonly apiClient; static readonly URL: { TRANSFERS: string; }; constructor(apiClient: AxiosInstance); /** * Get a list of deposits/withdrawals from the profile of the API key, in descending order by created time. * * @param pagination - Pagination field * @see https://docs.cloud.coinbase.com/exchange/reference/exchangerestapi_gettransfers */ getTransfers(transferType: TransferType, profileId?: string, pagination?: Pagination): Promise>; /** * Get information on a single deposit/withdrawal. * * @param transferId - id of the requested resource * @see https://docs.cloud.coinbase.com/exchange/reference/exchangerestapi_gettransfer */ getTransfer(transferId: string): Promise; }