import { B as BlindpayApiResponse, N as Network } from '../../index.d-Gvol1faW.js';
import { I as InternalApiClient } from '../../api-client-Bklw4zQi.js';

type GetBlockchainWalletMessage = string;
type GetBlockchainWalletMessageResponse = {
    message: string;
};
type ListBlockchainWalletsInput = string;
type ListBlockchainWalletsResponse = Array<{
    id: string;
    name: string;
    network: Network;
    address?: string;
    signature_tx_hash?: string;
    is_account_abstraction: boolean;
    receiver_id: string;
}>;
type CreateBlockchainWalletWithAddressInput = {
    receiver_id: string;
    name: string;
    network: Network;
    address: string;
};
type CreateBlockchainWalletWithHashInput = {
    receiver_id: string;
    name: string;
    network: Network;
    signature_tx_hash: string;
};
type GetBlockchainWalletInput = {
    receiver_id: string;
    id: string;
};
type DeleteBlockchainWalletInput = {
    receiver_id: string;
    id: string;
};
type GetBlockchainWalletResponse = {
    id: string;
    name: string;
    network: Network;
    address?: string;
    signature_tx_hash?: string;
    is_account_abstraction: boolean;
    receiver_id: string;
};
type CreateBlockchainWalletResponse = {
    id: string;
    name: string;
    network: Network;
    address?: string;
    signature_tx_hash?: string;
    is_account_abstraction: boolean;
    receiver_id: string;
};
type CreateAssetTrustlineInput = string;
type CreateAssetTrustlineResponse = {
    xdr: string;
};
type MintUsdbStellarInput = {
    address: string;
    amount: string;
    signedXdr: string;
};
type PrepareSolanaDelegationTransactionInput = {
    token_address: string;
    amount: string;
    owner_address: string;
};
type PrepareSolanaDelegationTransactionResponse = {
    success: boolean;
    transaction: string;
};
type MintUsdbSolanaInput = {
    address: string;
    amount: string;
};
type MintUsdbSolanaResponse = {
    success: boolean;
    signature: string;
    error: string;
};
declare function createBlockchainWalletsResource(instanceId: string, client: InternalApiClient): {
    list(receiver_id: ListBlockchainWalletsInput): Promise<BlindpayApiResponse<ListBlockchainWalletsResponse>>;
    createWithAddress({ receiver_id, ...data }: CreateBlockchainWalletWithAddressInput): Promise<BlindpayApiResponse<CreateBlockchainWalletResponse>>;
    createWithHash({ receiver_id, ...data }: CreateBlockchainWalletWithHashInput): Promise<BlindpayApiResponse<CreateBlockchainWalletResponse>>;
    getWalletMessage(receiver_id: GetBlockchainWalletMessage): Promise<BlindpayApiResponse<GetBlockchainWalletMessageResponse>>;
    get({ receiver_id, id, }: GetBlockchainWalletInput): Promise<BlindpayApiResponse<GetBlockchainWalletResponse>>;
    delete({ receiver_id, id, }: DeleteBlockchainWalletInput): Promise<BlindpayApiResponse<void>>;
    createAssetTrustline(address: CreateAssetTrustlineInput): Promise<BlindpayApiResponse<CreateAssetTrustlineResponse>>;
    mintUsdbStellar({ ...data }: MintUsdbStellarInput): Promise<BlindpayApiResponse<void>>;
    mintUsdbSolana({ ...data }: MintUsdbSolanaInput): Promise<BlindpayApiResponse<void>>;
    prepareSolanaDelegationTransaction({ ...data }: PrepareSolanaDelegationTransactionInput): Promise<BlindpayApiResponse<PrepareSolanaDelegationTransactionResponse>>;
};

export { type CreateAssetTrustlineInput, type CreateAssetTrustlineResponse, type CreateBlockchainWalletResponse, type CreateBlockchainWalletWithAddressInput, type CreateBlockchainWalletWithHashInput, type DeleteBlockchainWalletInput, type GetBlockchainWalletInput, type GetBlockchainWalletMessage, type GetBlockchainWalletMessageResponse, type GetBlockchainWalletResponse, type ListBlockchainWalletsInput, type ListBlockchainWalletsResponse, type MintUsdbSolanaInput, type MintUsdbSolanaResponse, type MintUsdbStellarInput, type PrepareSolanaDelegationTransactionInput, type PrepareSolanaDelegationTransactionResponse, createBlockchainWalletsResource };
