import IInstanceConfig from "../../interfaces/InstanceConfig";
import IExtraParametersWithSig from "../../interfaces/ExtraParametersWithSig";
import ICcpJwt from "../../interfaces/CcpJwt";
import IServiceResponse from "../../interfaces/responses/ServiceResponse";
import IDataPack from "../../interfaces/DataPack";
declare class CoreClass {
    scopes: string[];
    state: string;
    callbackURL: string;
    userAgent: string;
    clientID: string;
    clientSecret: string;
    domainAndVersion: string;
    queryParamStart: string;
    ccpJwt: ICcpJwt;
    constructor(cfg: IInstanceConfig);
    defaultRequestURL(state: string): string;
    targetedRequestURL(state: string, scopes: string[]): string;
    loadCcpJwt(): Promise<void>;
    clone(): IInstanceConfig;
    dataPack(): IDataPack;
}
declare function _makePublicGet(path: string, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare function _makePublicPost(path: string, payload: object, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare function _makeAuthedGet(path: string, sessionToken: string, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare function _makeAuthedPost(path: string, sessionToken: string, payload: object, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare function _makeAuthedPut(path: string, sessionToken: string, payload: object, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare function _makeAuthedDelete(path: string, sessionToken: string, extraParameters?: IExtraParametersWithSig): Promise<IServiceResponse>;
declare const _default: {
    CoreClass: typeof CoreClass;
    _makePublicGet: typeof _makePublicGet;
    _makePublicPost: typeof _makePublicPost;
    _makeAuthedGet: typeof _makeAuthedGet;
    _makeAuthedPost: typeof _makeAuthedPost;
    _makeAuthedPut: typeof _makeAuthedPut;
    _makeAuthedDelete: typeof _makeAuthedDelete;
};
export default _default;
