import * as react_jsx_runtime from 'react/jsx-runtime'; type TKeyType = 'pfx' | 'ftjc' | 'idcard' | 'baikey' | 'ckc'; interface ICertificate { disk: string; path: string; name: string; alias: string; serialNumber: string; validFrom: Date; validTo: Date; CN: string; TIN: string; UID: string; PINFL: string; O: string; T: string; type: TKeyType; cardUID?: string; statusInfo?: string; ownerName?: string; info?: string; expired?: boolean; } interface ILoadKeysOptions { force?: boolean; includeLegacyTokens?: boolean; } interface ISignAsyncParams { keyId: ICertificate | string; data: string; verifyPassword?: boolean; } interface ISignParams extends ISignAsyncParams { onSuccess: (pkcs7: string) => void; onError?: (error: string) => void; } interface IDeviceStatus { idcard: boolean; baikey: boolean; ckc: boolean; } interface IEimzoProviderProps { apiKeys?: string[]; children: React.ReactNode; } interface IEimzoVersion { major: string; minor: string; } interface IEimzoContext { isInstalled: boolean; isLoading: boolean; error: string | null; version: IEimzoVersion | null; keyList: ICertificate[]; deviceStatus: IDeviceStatus; loadKeys: { (): Promise; (options: ILoadKeysOptions): Promise; }; reloadKeys: (options?: ILoadKeysOptions) => Promise; prepareKey: (certificate: ICertificate, verifyPassword?: boolean) => Promise; signAsync: (params: ISignAsyncParams) => Promise; sign: (params: ISignParams) => void; } declare function EimzoProvider({ apiKeys, children }: IEimzoProviderProps): react_jsx_runtime.JSX.Element; declare function useEimzo(): IEimzoContext; export { EimzoProvider, type ICertificate, type IDeviceStatus, type IEimzoContext, type IEimzoProviderProps, type IEimzoVersion, type ILoadKeysOptions, type ISignAsyncParams, type ISignParams, type TKeyType, useEimzo };