import { QuaiTransactionRequest } from "quais/providers";
export type TransferQuaiParams = {
    amount: string | number;
    overrides?: Omit<QuaiTransactionRequest, "from" | "value" | "chainId">;
};
export type QuaiWallet = {
    address: string;
    signAndSendTransaction: (tx: QuaiTransactionRequest) => Promise<string>;
};
export declare class QuaiService {
    readonly signer: QuaiWallet;
    private apiService;
    constructor(signer: QuaiWallet, sdkOptions?: {
        sandbox?: boolean;
    });
    /**
     * Fetches the Bitcoin vault address.
     *
     * @returns {Promise<{ address: string }>} A promise that resolves to the vault address.
     */
    fetchVault(symbol: string): Promise<{
        address: string;
        tag?: string;
    }>;
    transferQuai(params: TransferQuaiParams): Promise<string>;
}
