import { Client } from "../client";
import { OAuthClient, KeysendRequestParams } from "../types";
interface RequestInvoiceArgs {
    amount: string | number;
    defaultMemo?: string;
}
export declare class OauthWeblnProvider {
    client: Client;
    auth: OAuthClient;
    oauth: boolean;
    subscribers: Record<string, (payload: any) => void>;
    isExecuting: boolean;
    constructor(options: {
        auth: OAuthClient;
    });
    on(name: string, callback: () => void): void;
    notify(name: string, payload?: any): void;
    enable(): Promise<{
        enabled: boolean;
    } | undefined>;
    sendPayment(invoice: string): Promise<{
        preimage: string;
    } | undefined>;
    keysend(params: KeysendRequestParams): Promise<{
        preimage: string;
    } | undefined>;
    getInfo(): Promise<{
        alias: string;
    }>;
    makeInvoice(params: RequestInvoiceArgs): Promise<{
        paymentRequest: string;
    } | undefined>;
    openAuthorization(): Promise<unknown>;
}
export {};
//# sourceMappingURL=OauthWeblnProvider.d.ts.map