export declare type CertType = { CN: string; sn: string; CertB64: string; CertType: string; ContainerName: string; DevClass: string; manu?: string; [key: string]: unknown; }; export declare function createService(config?: ServiceConfigType): Promise; export declare class GwsService { static instance: GwsService | null; private coreInstance; private gwsConfig; constructor(config?: ServiceConfigType); private createGwsCore; private appendCertBase64; destroy: () => void; restart: (config?: Record) => void; getSocketReadyState: () => number | undefined; verifyPin: (params: { UserPin?: string; }, curCert?: CertType) => Promise; checkCertIsLogin: (curCert?: CertType) => Promise; ensureCertLogin: (curCert?: CertType) => Promise; getSignatureCert: (cert?: CertType, checkLogin?: boolean) => Promise | undefined>; getSignatureCertList: () => Promise; getEncryptionCert: (cert?: CertType, checkLogin?: boolean) => Promise | undefined>; getEncryptionCertList: () => Promise; getClientVersion: () => Promise; base64Encode: (params: { Data: string; }) => string; base64Decode: (params: { DataB64: string; }) => string; changeIsRememberPin: (bol: boolean) => void; changePinPolicy: (pinPolicy: string) => void; pkcs1Sign: (params: { Data: string; IsLogin?: string; }, curCert?: CertType) => Promise; pkcs1VerifySignature: (params: { CertB64?: string; Data: string; SignData: string; }) => Promise; pkcs1Base64Sign: (params: { Data?: string; DataB64?: string; IsLogin?: string; }, curCert?: CertType) => Promise; batchPkcs1Base64Sign: (params: { Data?: string[]; DataB64?: string[]; }, curCert?: CertType) => Promise; pkcs1Base64VerifySignature: (params: { CertB64?: string; Data?: string; DataB64?: string; SignData: string; }) => Promise; writeSeal: (params: { SealId: string; DataB64: string; IsLogin?: string; }, curCert?: CertType) => Promise; deleteSeal: (params?: { IsLogin?: string; }, curCert?: CertType) => Promise; deleteSealById: (params: { SealId: string; IsLogin?: string; }, curCert?: CertType) => Promise; getSealList: (params?: { IsLogin?: string; }, curCert?: CertType) => Promise<{ SealId: string; }[]>; getSealInfo: (params?: { IsLogin?: string; }, curCert?: CertType) => Promise; getTPSealList: (params?: { Vid?: string; IsLogin?: string; }, curCert?: CertType) => Promise; getTPSeal: (params?: { Vid?: string; IsLogin?: string; }, curCert?: CertType) => Promise | TPSeaType>; getTPSealPic: (params?: { Vid?: string; IsLogin?: string; }, curCert?: CertType, curSeal?: TPSeaType) => Promise; sm2SignPreprocess1: (params: { CertB64?: string; }) => Promise; sm2SignPreprocess2: (params: { CertB64?: string; Data: string; }) => Promise; pkcs1HashSign: (params: { DataB64: string; HashAlg?: string; IsLogin?: string; }, curCert?: CertType) => Promise; pkcs1HashVerifySignature: (params: { CertB64?: string; DataB64: string; SignData: string; HashAlg?: string; }) => Promise; pkcs7Sign: (params: { Data?: string; IsDetached: string; DataB64?: string; IsLogin?: string; }, curCert?: CertType) => Promise; pkcs7VerifySignature: (params: { Data?: string; DataB64?: string; SignData: string; }) => Promise; sm3Hash: (params: { Data: string; }) => Promise; sm3HexHash: (params: { DataB64: string; }) => Promise; sm3FileHash: (params: { SrcFile: string; }) => Promise; sm3HashEncryption: (params: { Data?: string; DataB64?: string; Key?: string; KeyB64?: string; }) => Promise; pkcs7Encryption: (params: { Data?: string; DataB64?: string; CertB64List?: string; }) => Promise; pkcs7Decryption: (params: { DataB64: string; shouldDecodeBase64?: boolean; IsLogin?: string; }) => Promise; pkcs7FileEncryption: (params: { DstFile?: string; CertB64?: string; SrcFile: string; }) => Promise; pkcs7FileDecryption: (params: { SrcFile: string; DstFile?: string; }) => Promise; asymmetricEncryption: (params: { CertB64?: string; Data: string; }) => Promise; asymmetricDecryption: (params: { Data: string; IsLogin?: string; }, curCert?: CertType) => Promise; sm4Encryption: (params: { Data: string; }) => Promise; sm4Decryption: (params: { Data: string; KeyB64: string; }) => Promise; getCertInfo: (params: { CertB64: string; }) => Promise; getCertInfoByOid: (params: { Oid: string; CertB64: string; }) => Promise; getSealVendor: (curCert?: CertType) => Promise; deleteAllSealByVendor: (params: { SealIssuer: string; }, curCert?: CertType) => Promise; getUKey: (curUkey?: UkeyType) => Promise; getUKeyList: () => Promise; getUKeyInfo: (curUkey?: UkeyType) => Promise; applyCert: (params: { type: string; url: string; dn?: string; isLogin?: string; }, curUkey?: UkeyType) => Promise; resetPin: (params: { url: string; }, curCert?: CertType) => Promise; lockPin: (curCert?: CertType) => Promise; genRandom: (params: { Length: number; Encoding?: string; }, curCert?: CertType) => Promise; getMachineInfo: () => Promise; } export declare type SelectModalColItemType = { key?: string; format?: (record: Record) => string; }; export declare type SelectModalOptions = { data: Record[]; columns: SelectModalColItemType[]; cancelText?: string; okText?: string; onOk?: (cert: CertType) => void; onCancel?: (cert: CertType) => void; theme?: string; title?: string; }; export declare type ServiceConfigType = { url?: string; pinPolicy?: string; isRememberPin?: boolean; isCreateNew?: boolean; onOpen?: (event: Event) => void; onMessage?: (data: Record) => void; onError?: (event: Event) => void; onClose?: (event: Event) => void; onUkeyChange?: (data: Record) => void; theme?: string; scene?: number; }; export declare type SocketResponseType = { data?: any; success?: boolean; msg: string; errCode: number; type?: string; }; export declare type TPSeaType = { FileName: string; FileSize: number; SealId: string; Vid: string; }; export declare type UkeyType = { isLogin: boolean; manu: string; sn: string; }; export { }