declare const EndUserLibraryLoader: any;
declare const EUSignCP: any;
import { EndUserCertificateInfoEx, EndUserOwnerInfo, EndUserPrivateKeyInfo, EndUserTimeInfo } from './types';
export default class EUSignCPCore {
    protected props: {
        CAServers: string;
        CACert: string;
    };
    libLoader: typeof EndUserLibraryLoader;
    euSign: typeof EUSignCP;
    m_CAs: Array<{
        issuerCNs: string[];
        address: string;
        ocspAccessPointAddress: string;
        ocspAccessPointPort: string;
        cmpAddress: string;
        tspAddress: string;
        tspAddressPort: string;
        directAccess?: boolean;
        qscdSNInCert?: boolean;
        certsInKey?: boolean;
        cmpCompatibility?: number;
    }>;
    constructor(props: {
        CAServers: string;
        CACert: string;
    });
    loadLib(): Promise<void>;
    initLib(): Promise<void>;
    loadCAServers(): Promise<void>;
    loadCACert(): Promise<Uint8Array>;
    BASE64Encode(data: Uint8Array): Promise<string>;
    BASE64Decode(data: string): Promise<Uint8Array>;
    SetUIMode(uiMode: boolean): Promise<unknown>;
    GetFileStoreSettings(): Promise<unknown>;
    ResetPrivateKey(): Promise<unknown>;
    SetModeSettings(settings: any): Promise<unknown>;
    SaveCertificate(certificate: Uint8Array): Promise<unknown>;
    SaveCertificates(certificates: any): Promise<unknown>;
    GetKeyMediaTypes(): Promise<unknown>;
    GetKeyMediaDevices(typeIndex: number[]): Promise<unknown>;
    GetKeyInfo(keyMedia: any): Promise<EndUserPrivateKeyInfo>;
    GetKeyInfoBinary(privateKey: Uint8Array, password: string): Promise<EndUserPrivateKeyInfo>;
    CtxReadPrivateKeyBinary(privateKey: Uint8Array, password: string): Promise<any>;
    CtxReadPrivateKey(keyMedia: any): Promise<any>;
    SetTSPSettings(settings: any): Promise<unknown>;
    SetOCSPSettings(settings: any): Promise<unknown>;
    SetCMPSettings(settings: any): Promise<unknown>;
    CreateKeyMedia(): any;
    GetCertificatesByKeyInfo(keyInfo: any, cmpServers: any, cmpServersPorts: any): Promise<unknown>;
    GetPrivateKeyOwnerInfo(): Promise<EndUserOwnerInfo>;
    EnumOwnCertificates(index: number): Promise<EndUserCertificateInfoEx>;
    GetCertificate(issuer: any, serial: any): Promise<unknown>;
    SignData(data: any, appendCert: boolean, externalSign: boolean): Promise<string>;
    SignRSA(data: any, appendCert: boolean, externalSign: boolean): Promise<string>;
    CreateEmptySign(data?: any): Promise<string>;
    AppendSign(data: any, signature: any): Promise<string>;
    GetSignsCount(signature: any): Promise<number>;
    GetSignType(index: number, signature: any): Number;
    GetSignTimeInfo(index: number, signature: any): EndUserTimeInfo;
    GetSignerInfo(index: number, signature: any): EndUserCertificateInfoEx;
}
export {};
