import { ServiceRequester, FetchResponse } from "../service-requester";
import { ECRGetEpConfigurationParams, ECRConfigurationResponse, ECRSetEpConfigurationParams, ECRDeleteConfigurationResponse, ECRDeleteEpConfigurationParams, ECRBatchUpdateEpConfigurationParams, ECRBatchUpdateEpConfigurationByFilterParams, SystemConfigsResponse, SystemConfigsRequestParams, ConfigLevel, SystemConfigsItemPayload, SystemConfig, ConfigurationStatusesParams, ConfigurationStatusesResponse } from "./ECRClient.types";
export declare class ECRClient {
    private http;
    constructor(urlPrefix?: string, serviceRequester?: ServiceRequester);
    getEndpointConfiguration({ endpointId, appVersionName, headers }: ECRGetEpConfigurationParams): Promise<FetchResponse<ECRConfigurationResponse>>;
    setEndpointConfiguration({ endpointId, appVersionName, headers, data }: ECRSetEpConfigurationParams): Promise<FetchResponse<ECRConfigurationResponse>>;
    batchUpdateEndpointsConfiguration({ endpoints, configPayload }: ECRBatchUpdateEpConfigurationParams): Promise<FetchResponse<void>>;
    deleteEndpointConfiguration({ endpointId, appVersionName }: ECRDeleteEpConfigurationParams): Promise<FetchResponse<ECRDeleteConfigurationResponse>>;
    getDefaultConfiguration({ appVersionName, headers }: {
        appVersionName: any;
        headers: any;
    }): Promise<FetchResponse<ECRConfigurationResponse>>;
    setDefaultConfiguration({ appVersionName, headers, data }: {
        appVersionName: any;
        headers: any;
        data: any;
    }): Promise<FetchResponse<ECRConfigurationResponse>>;
    deleteDefaultConfiguration({ appVersionName }: {
        appVersionName: any;
    }): Promise<FetchResponse<ECRDeleteConfigurationResponse>>;
    batchUpdateEndpointsConfigurationByFilter({ filterId, data, }: ECRBatchUpdateEpConfigurationByFilterParams): Promise<FetchResponse<ECRDeleteConfigurationResponse>>;
    getSystemConfigs(level: ConfigLevel, entityId: string, params?: SystemConfigsRequestParams): Promise<FetchResponse<SystemConfigsResponse>>;
    getSystemConfigByName(level: ConfigLevel, entityId: string, name: string): Promise<FetchResponse<SystemConfig>>;
    getSystemConfig(level: ConfigLevel, entityId: string, configId: string): Promise<FetchResponse<SystemConfig>>;
    updateSystemConfig(level: ConfigLevel, entityId: string, configId: string, data: SystemConfigsItemPayload): Promise<FetchResponse<SystemConfig>>;
    deleteSystemConfig(level: ConfigLevel, entityId: string, configId: string): Promise<FetchResponse<void>>;
    setSystemConfigItem(level: ConfigLevel, entityId: string, data: SystemConfigsItemPayload): Promise<FetchResponse<void>>;
    getConfigurationStatuses(params: ConfigurationStatusesParams): Promise<FetchResponse<ConfigurationStatusesResponse>>;
}
