export interface EndUserException {
    GetErrorCode(): number;
    GetMessage(): string;
    toString(): string;
}
export interface EndUserError {
    GetErrorCode(): number;
    GetMessage(): string;
    toString(): string;
}
export interface EndUserByteArray {
    GetData(): Uint8Array;
    SetData(data: Uint8Array): void;
}
export interface EndUserKeyMedia {
    GetTypeIndex(): number;
    SetTypeIndex(typeIndex: number): void;
    GetDevIndex(): number;
    SetDevIndex(devIndex: number): void;
    GetPassword(): string;
    SetPassword(password: string): void;
}
export interface EndUserFileStoreSettings {
    GetPath(): string;
    SetPath(path: string): void;
    GetCheckCRLs(): boolean;
    SetCheckCRLs(checkCRLs: boolean): void;
    GetAutoRefresh(): boolean;
    SetAutoRefresh(autoRefresh: boolean): void;
    GetOwnCRLsOnly(): boolean;
    SetOwnCRLsOnly(ownCRLsOnly: boolean): void;
    GetFullAndDeltaCRLs(): boolean;
    SetFullAndDeltaCRLs(fullAndDeltaCRLs: boolean): void;
    GetAutoDownloadCRLs(): boolean;
    SetAutoDownloadCRLs(autoDownloadCRLs: boolean): void;
    GetSaveLoadedCerts(): boolean;
    SetSaveLoadedCerts(saveLoadedCerts: boolean): void;
    GetExpireTime(): number;
    SetExpireTime(expireTime: number): void;
}
export interface EndUserProxySettings {
    GetUseProxy(): boolean;
    SetUseProxy(useProxy: boolean): void;
    GetAnonymous(): boolean;
    SetAnonymous(anonymous: boolean): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
    GetUser(): string;
    SetUser(user: string): void;
    GetPassword(): string;
    SetPassword(password: string): void;
    GetSavePassword(): boolean;
    SetSavePassword(savePassword: boolean): void;
}
export interface EndUserTSPSettings {
    GetGetStamps(): boolean;
    SetGetStamps(getStamps: boolean): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
}
export interface EndUserOCSPSettings {
    GetUseOCSP(): boolean;
    SetUseOCSP(useOCSP: boolean): void;
    GetBeforeStore(): boolean;
    SetBeforeStore(beforeStore: boolean): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
}
export interface EndUserLDAPSettings {
    GetUseLDAP(): boolean;
    SetUseLDAP(useCMP: boolean): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
    GetAnonymous(): boolean;
    SetAnonymous(anonymous: boolean): void;
    GetUser(): string;
    SetUser(user: string): void;
    GetPassword(): string;
    SetPassword(password: string): void;
}
export interface EndUserCMPSettings {
    GetUseCMP(): boolean;
    SetUseCMP(useCMP: boolean): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
    GetCommonName(): string;
    SetCommonName(commonName: string): void;
}
export interface EndUserModeSettings {
    GetOfflineMode(): boolean;
    SetOfflineMode(offlineMode: boolean): void;
}
export interface EndUserOCSPAccessInfoModeSettings {
    GetEnabled(): boolean;
    SetEnabled(enabled: boolean): void;
}
export interface EndUserOCSPAccessInfoSettings {
    GetIssuerCN(): string;
    SetIssuerCN(issuerCN: string): void;
    GetAddress(): string;
    SetAddress(address: string): void;
    GetPort(): string;
    SetPort(port: string): void;
}
export interface EndUserKeyMediaSettings {
    GetSourceType(): number;
    SetSourceType(sourceType: number): void;
    GetShowErrors(): boolean;
    SetShowErrors(showErrors: boolean): void;
    GetKeyMedia(): EndUserKeyMedia;
    SetKeyMedia(keyMedia: EndUserKeyMedia): void;
}
export interface EndUserOwnerInfo {
    IsFilled(): boolean;
    GetIssuer(): string;
    GetIssuerCN(): string;
    GetSerial(): string;
    GetSubject(): string;
    GetSubjCN(): string;
    GetSubjOrg(): string;
    GetSubjOrgUnit(): string;
    GetSubjTitle(): string;
    GetSubjState(): string;
    GetSubjLocality(): string;
    GetSubjFullName(): string;
    GetSubjAddress(): string;
    GetSubjPhone(): string;
    GetSubjEMail(): string;
    GetSubjDNS(): string;
    GetSubjEDRPOUCode(): string;
    GetSubjDRFOCode(): string;
}
export interface EndUserTimeInfo {
    GetVersion(): number;
    IsTimeAvail(): boolean;
    IsTimeStamp(): boolean;
    GetTime(): Date;
    IsSignTimeStampAvail(): boolean;
    GetSignTimeStamp(): Date;
}
export interface EndUserSignInfo {
    GetOwnerInfo(): EndUserOwnerInfo;
    GetTimeInfo(): EndUserTimeInfo;
    GetData(): Uint8Array;
    GetDataString(charset?: string): string;
}
export interface EndUserSenderInfo {
    GetOwnerInfo(): EndUserOwnerInfo;
    GetTimeInfo(): EndUserTimeInfo;
    GetData(): Uint8Array;
    GetDataString(charset?: string): string;
}
export interface EndUserCertificateInfo {
    IsFilled(): boolean;
    GetVersion(): number;
    GetIssuer(): string;
    GetIssuerCN(): string;
    GetSerial(): string;
    GetSubject(): string;
    GetSubjCN(): string;
    GetSubjOrg(): string;
    GetSubjOrgUnit(): string;
    GetSubjTitle(): string;
    GetSubjState(): string;
    GetSubjLocality(): string;
    GetSubjFullName(): string;
    GetSubjAddress(): string;
    GetSubjPhone(): string;
    GetSubjEMail(): string;
    GetSubjDNS(): string;
    GetSubjEDRPOUCode(): string;
    GetSubjDRFOCode(): string;
    GetSubjNBUCode(): string;
    GetSubjSPFMCode(): string;
    GetSubjOCode(): string;
    GetSubjOUCode(): string;
    GetSubjUserCode(): string;
    GetCertBeginTime(): Date;
    GetCertEndTime(): Date;
    IsPrivKeyTimesAvail(): boolean;
    GetPrivKeyBeginTime(): Date;
    GetPrivKeyEndTime(): Date;
    GetPublicKeyBits(): number;
    GetPublicKey(): string;
    GetPublicKeyID(): string;
    IsECDHPublicKeyAvail(): boolean;
    GetECDHPublicKeyBits(): number;
    GetECDHPublicKey(): string;
    GetECDHPublicKeyID(): string;
    GetIssuerPublicKeyID(): string;
    GetKeyUsage(): string;
    GetExtKeyUsages(): string;
    GetPolicies(): string;
    GetCrlDistribPoint1(): string;
    GetCrlDistribPoint2(): string;
    IsPowerCert(): boolean;
    IsSubjTypeAvail(): boolean;
    IsSubjCA(): boolean;
}
export interface EndUserCertificateInfoEx {
    IsFilled(): boolean;
    GetVersion(): number;
    GetIssuer(): string;
    GetIssuerCN(): string;
    GetSerial(): string;
    GetSubject(): string;
    GetSubjCN(): string;
    GetSubjOrg(): string;
    GetSubjOrgUnit(): string;
    GetSubjTitle(): string;
    GetSubjState(): string;
    GetSubjLocality(): string;
    GetSubjFullName(): string;
    GetSubjAddress(): string;
    GetSubjPhone(): string;
    GetSubjEMail(): string;
    GetSubjDNS(): string;
    GetSubjEDRPOUCode(): string;
    GetSubjDRFOCode(): string;
    GetSubjNBUCode(): string;
    GetSubjSPFMCode(): string;
    GetSubjOCode(): string;
    GetSubjOUCode(): string;
    GetSubjUserCode(): string;
    GetCertBeginTime(): Date;
    GetCertEndTime(): Date;
    IsPrivKeyTimesAvail(): boolean;
    GetPrivKeyBeginTime(): Date;
    GetPrivKeyEndTime(): Date;
    GetPublicKeyBits(): number;
    GetPublicKey(): string;
    GetPublicKeyID(): string;
    GetIssuerPublicKeyID(): string;
    GetKeyUsage(): string;
    GetExtKeyUsages(): string;
    GetPolicies(): string;
    GetCrlDistribPoint1(): string;
    GetCrlDistribPoint2(): string;
    IsPowerCert(): boolean;
    IsSubjTypeAvail(): boolean;
    IsSubjCA(): boolean;
    GetChainLength(): number;
    GetUPN(): string;
    GetPublicKeyType(): number;
    GetKeyUsageType(): number;
    GetRSAModul(): string;
    GetRSAExponent(): string;
    GetOCSPAccessInfo(): string;
    GetIssuerAccessInfo(): string;
    GetTSPAccessInfo(): string;
    IsLimitValueAvail(): boolean;
    GetLimitValue(): number;
    GetLimitValueCurrency(): string;
    GetSubjType(): number;
    GetSubjSubType(): number;
    GetSubjUNZR(): string;
    GetSubjCountry(): string;
    GetFingerpint(): string;
    IsQSCD(): boolean;
    GetSubjUserID(): string;
}
export interface EndUserCertificate {
    GetInfoEx(): EndUserCertificateInfoEx;
    SetInfoEx(infoEx: EndUserCertificateInfoEx): void;
    GetData(): Uint8Array;
    SetData(data: Uint8Array): void;
}
export interface EndUserCRLInfo {
    IsFilled(): boolean;
    GetIssuer(): string;
    GetIssuerCN(): string;
    GetCRLNumber(): number;
    GetThisUpdate(): Date;
    GetNextUpdate(): Date;
}
export interface EndUserCRLDetailedInfo {
    IsFilled(): boolean;
    GetVersion(): number;
    GetIssuer(): string;
    GetIssuerCN(): string;
    GetIssuerPublicKeyID(): string;
    GetCRLNumber(): number;
    GetThisUpdate(): Date;
    GetNextUpdate(): Date;
    GetRevokedItemsCount(): number;
}
export interface EndUserPrivateKeyInfo {
    GetPrivateKey(): Uint8Array;
    SetPrivateKey(issuerCN: Uint8Array): void;
    GetPrivateKeyInfo(): Uint8Array;
    SetPrivateKeyInfo(address: Uint8Array): void;
}
export interface EndUserJKSPrivateKey {
    GetPrivateKey(): Uint8Array;
    GetCertificate(index: number): Uint8Array;
    GetCertificatesCount(): number;
    GetCertificates(): Uint8Array[];
    info: {
        alias: string;
        certificates: EndUserCertificate[];
        digitalStamp: boolean;
    };
}
export interface EndUserRequestInfo {
    GetRequest(): Uint8Array;
    GetRequestType(): number;
    GetDefaultRequestFileName(): string;
    IsSimple(): boolean;
    GetSubject(): string;
    GetSubjCN(): string;
    GetSubjOrg(): string;
    GetSubjOrgUnit(): string;
    GetSubjTitle(): string;
    GetSubjState(): string;
    GetSubjLocality(): string;
    GetSubjFullName(): string;
    GetSubjAddress(): string;
    GetSubjPhone(): string;
    GetSubjEMail(): string;
    GetSubjDNS(): string;
    GetSubjEDRPOUCode(): string;
    GetSubjDRFOCode(): string;
    GetSubjNBUCode(): string;
    GetSubjSPFMCode(): string;
    GetSubjOCode(): string;
    GetSubjOUCode(): string;
    GetSubjUserCode(): string;
    GetCertBeginTime(): Date;
    GetCertEndTime(): Date;
    IsPrivKeyTimesAvail(): boolean;
    GetPrivKeyBeginTime(): Date;
    GetPrivKeyEndTime(): Date;
    GetPublicKeyType(): number;
    GetPublicKeyBits(): number;
    GetRSAModul(): string;
    GetRSAExponent(): string;
    GetPublicKey(): string;
    GetPublicKeyID(): string;
    GetExtKeyUsages(): string;
    GetCRLDistribPoint1(): string;
    GetCRLDistribPoint2(): string;
    IsSubjTypeAvail(): boolean;
    GetSubjType(): number;
    GetSubjSubType(): number;
    IsSelfSigned(): boolean;
    GetSignIssuer(): string;
    GetSignSerial(): string;
    GetSubjUNZR(): string;
    GetSubjCountry(): string;
    IsQSCD(): boolean;
}
export interface EndUserInfo {
}
export interface EndUserParams {
}
export interface EndUserOperationContext {
    GetHandle(): string;
}
export interface EndUserSession {
    GetHandle(): string;
    GetData(): Uint8Array;
    SetData(data: Uint8Array): void;
}
export interface EndUserSCClientStatistic {
    GetActiveSessions(): number;
    GetGatedSessions(): number;
    GetUnprotectedData(): number;
    GetProtectedData(): number;
}
export interface EndUserDeviceContext {
    GetHandle(): string;
}
export interface EndUserTransportHeader {
    GetReceiptNumber(): number;
    GetCryptoData(): Uint8Array;
}
export interface EndUserCryptoHeader {
    GetCAType(): string;
    GetHeaderType(): number;
    GetHeaderSize(): number;
    GetCryptoData(): Uint8Array;
}
export interface EndUserContext {
    GetHandle(): string;
}
export interface EndUserHashContext {
    GetHandle(): string;
}
export interface EndUserPrivateKeyContext {
    GetHandle(): string;
    GetOwnerInfo(): EndUserOwnerInfo;
}
