import type { BankPaymentMethod, CreateBankPaymentMethodRequest } from "./types/bankPaymentMethods";
import { FIAT_CURRENCIES, ALL_CURRENCIES, FiatCurrency, AnyCurrency, Amount, isFiatCurrency, isAnyCurrency, tryToFiatCurrency, tryToAnyCurrency, PaginationList } from "./types/common";
import type { Invoice, IssueInvoiceRequest } from "./types/invoices";
import type { CreatePayoutRequest, Payout } from "./types/payouts";
import { CreateReceiveRequestRequest, Receive, ReceiveRequest } from "./types/receiveRequests";
export type { BankPaymentMethod, CreateBankPaymentMethodRequest };
export type { FIAT_CURRENCIES, ALL_CURRENCIES, FiatCurrency, AnyCurrency, Amount, isFiatCurrency, isAnyCurrency, tryToFiatCurrency, tryToAnyCurrency, PaginationList, };
export type { Invoice, IssueInvoiceRequest };
export type { CreatePayoutRequest, Payout };
export type { CreateReceiveRequestRequest, Receive, ReceiveRequest };
export declare class StrikeAxios {
    private axiosInstance;
    constructor(strikeApiKey: string);
    issueInvoice(request: IssueInvoiceRequest): Promise<Invoice>;
    findInvoiceById(invoiceId: string): Promise<Invoice | undefined>;
    cancelUnpaidInvoice(invoiceId: string): Promise<Invoice>;
    getBankPaymentMethodById(bankPaymentMethodId: string): Promise<BankPaymentMethod | undefined>;
    deleteBankPaymentMethod(bankPaymentMethodId: string): Promise<void>;
    createBankPaymentMethod(request: CreateBankPaymentMethodRequest): Promise<BankPaymentMethod>;
    createPayout(request: CreatePayoutRequest): Promise<Payout>;
    findPayoutById(payoutId: string): Promise<Payout | undefined>;
    initiatePayout(payoutId: string): Promise<Payout>;
    findReceiveRequestById(receiveRequestId: string): Promise<ReceiveRequest | undefined>;
    createReceiveRequest(request: CreateReceiveRequestRequest): Promise<ReceiveRequest>;
    getReceivesForReceiveRequest(receiveRequestId: string): Promise<PaginationList<Receive> | undefined>;
}
