import { Module, ModuleOptions, PisellCore } from '../../../types';
import { BaseModule } from '../../../modules/BaseModule';
import type { PaymentMethod } from './types';
export declare class PaymentServerModule extends BaseModule implements Module {
    protected defaultName: string;
    protected defaultVersion: string;
    private request;
    private app;
    private logger;
    private store;
    private payMethodMemoryCache;
    private payMethodListInFlight;
    constructor(name?: string, version?: string);
    initialize(core: PisellCore, options?: ModuleOptions): Promise<void>;
    getPayMethodListAsync(options?: {
        shouldFilter?: boolean;
    }): Promise<PaymentMethod[]>;
    clearPayMethodCache(): void;
    private loadPayMethodListAsync;
    private fetchRemotePayMethods;
    private shouldFilterPayMethods;
    private resolvePayMethods;
    private filterPayMethods;
    private setPayMethodCache;
    private logInfo;
    private logWarning;
    private logError;
}
