import type { KyInstance } from 'ky';
export declare const createUserRouter: (instance: KyInstance) => {
    deposit: (body: {
        amount: number;
    }) => Promise<{
        depositId: string;
        expiry: number;
        paymentRequest: string;
    }>;
    depositSyntheticUsd: (body: {
        amount: number;
        currency: import("./types.js").Currency;
    }) => Promise<{
        depositId: string;
        expiry: number;
        paymentRequest: string;
        syntheticUsdAmount: number;
    }>;
    get: () => Promise<import("./types.js").User>;
    getBitcoinAddresses: (searchParams: {
        current: boolean;
    }) => Promise<{
        address: string;
        creationTs: number;
        isUsed: boolean;
    }[]>;
    getDeposit: (params: {
        depositId: string;
    }) => Promise<import("./types.js").Deposit>;
    getDeposits: (searchParams?: {
        type: import("./types.js").DepositType;
    }) => Promise<import("./types.js").Deposit[]>;
    getWithdrawal: (params: {
        id: string;
    }) => Promise<import("./types.js").WithdrawalCondensed>;
    getWithdrawals: () => Promise<import("./types.js").WithdrawalCondensed[]>;
    newBitcoinAddress: (body: {
        format: "p2tr" | "p2wpkh";
    }) => Promise<{
        address: string;
        creationTs: number;
    }>;
    transfer: (body: {
        amount: number;
        toUsername: string;
    }) => Promise<{
        amount: number;
        to: string;
    }>;
    update: (body: {
        autoWithdrawEnabled?: boolean;
        autoWithdrawLightningAddress?: boolean;
        nostrPubkey?: string;
        showLeaderboard?: boolean;
        username?: string;
        useTaprootAddresses?: boolean;
    }) => Promise<import("./types.js").User>;
    withdraw: (body: {
        invoice: string;
        quoteId?: string;
    }) => Promise<{
        amount?: number;
        fee?: number;
        id: string;
        paymentHash?: string;
        successTime?: number;
    }>;
    withdrawSyntheticUsd: (body: {
        amount: number;
        currency: import("./types.js").Currency;
    }) => Promise<{
        amount: number;
        currency: import("./types.js").Currency;
        feeReserve: number;
        minBalanceAfter: number;
        quoteId: string;
        validUntil: number;
    }>;
};
//# sourceMappingURL=index.d.ts.map