import { IoptionsParams } from '../../types';
import { PaymentContext, SDKMetaData, Service } from '../index';
/**
 * @author 谦彧 <zhangmian.zm@alipay.com>
 * @date 2024/9/17
 */
export type ServiceName = 'Container' | 'EventCenter' | 'Log' | 'ApiBusManager' | 'Requester' | 'Security' | 'GlobalData';
export declare class ServiceProvider {
    private static ProvidersMapping;
    static getInstance(instanceId: string): ServiceProvider;
    private readonly instanceId;
    private services;
    private extendServices;
    private constructor();
    init(initOptions: IoptionsParams, sdkMetaData: SDKMetaData): void;
    update(paymentContext: PaymentContext): void;
    getService<T>(serviceName: ServiceName): T;
    registerService(serviceName: string, service: Service): void;
}
