import { IQPayConfig, IQPayCreateInvoice, IQPayDeleteInvoice, IQPayCheckPaymentResponse, IQPayCreateInvoiceResponse, IQPayCheckPayment } from './types';
type FetcherOptions = {
    url: string;
    options?: RequestInit | undefined;
};
type FetcherResults<T> = {
    res: T;
};
/**
 * Fetcher utility using Axios
 * @param options - Fetcher options
 * @returns Response data of generic type T
 */
export declare const fetcher: <T>({ url, options, }: FetcherOptions) => Promise<FetcherResults<T>>;
/**
 * Generates a configuration object for QPay
 * @param config - QPay configuration
 * @returns IQPayConfig object
 */
export declare const qPayGetConfig: ({ username, password, invoiceCode, url, callbackUrl, }: IQPayConfig) => IQPayConfig;
/**
 * Fetches an access token from QPay
 * @param config - QPay configuration
 * @returns Access token string
 */
export declare const qPayGetAccessToken: (config: IQPayConfig) => Promise<string>;
/**
 * Creates an invoice in QPay
 * @param params - Invoice creation parameters
 * @returns Invoice creation response
 */
export declare const qPayCreateInvoice: (params: IQPayCreateInvoice) => Promise<IQPayCreateInvoiceResponse>;
/**
 * Deletes an invoice by ID
 * @param params - Invoice deletion parameters
 * @returns Deletion result
 */
export declare const qPayDeleteInvoice: (params: IQPayDeleteInvoice) => Promise<{
    success: boolean;
    message: string;
}>;
/**
 * Checks payment status for an invoice
 * @param params - Payment check parameters
 * @returns Payment check response
 */
export declare const qPayCheckPayment: (params: IQPayCheckPayment) => Promise<IQPayCheckPaymentResponse | undefined>;
export {};
//# sourceMappingURL=utils.d.ts.map