import { IControllerExtensionsService } from "./IControllerExtensionsService";
export declare class ControllerExtensionsService implements IControllerExtensionsService {
    static readonly ServiceName = "StatisticsInfoService";
    private _extensionInfoCache;
    private _protocolInfoCache;
    private _isExtensionInfoInitialized;
    private _semaphore;
    GetServiceName(): string;
    GetExtensionsInfoAsync(extensionGuid?: string, forceUpdate?: boolean): Promise<ExtensionInfo[]>;
    GetProtocolInfoAsync(protocolGuid?: string, forceUpdate?: boolean, retrying?: boolean): Promise<ProtocolInfo[]>;
    protected GetExtensionInfoFromControllerAsync(): Promise<void>;
    protected GetProtocolExtensionInfoFromControllerAsync(): Promise<void>;
}
export declare class ExtensionInfo {
    ExtensionGuid: string;
    APIVersion: string;
    ExtensionVersion: string;
    Name: string;
    PublisherGuid: string;
    ExtensionSystemGuid: string;
}
export declare class ProtocolInfo {
    Guid: string;
    PublicGuid: string;
    Name: string;
}
