UNPKG

@nfen/webcrypto-ts

Version:
23 lines 1.36 kB
/** * Code related to proxying CryptoKey and CryptoKeyPair * @module */ export interface ProxiedCryptoKey<T extends CryptoKey> { self: T; readonly algorithm: T["algorithm"]; readonly extractable: T["extractable"]; readonly type: T["type"]; readonly usages: T["usages"]; } export interface ProxiedCryptoKeyPair<TKeyPair extends CryptoKeyPair, TPrivKey extends CryptoKey, TProxPrivKey extends ProxiedCryptoKey<TPrivKey>, TPubKey extends CryptoKey, TProxPubKey extends ProxiedCryptoKey<TPubKey>> { self: TKeyPair; privateKey: TProxPrivKey; publicKey: TProxPubKey; } export declare function proxifyKey<TKey extends CryptoKey, TProxKey extends ProxiedCryptoKey<TKey>>(handler: ProxyHandler<TKey>): (key: TKey) => TProxKey; export interface ProxyKeyPairHandlers<TPrivKey extends CryptoKey, TPubKey extends CryptoKey> { privHandler: ProxyHandler<TPrivKey>; pubHandler: ProxyHandler<TPubKey>; } export declare function proxifyKeyPair<TKeyPair extends CryptoKeyPair, TPrivKey extends CryptoKey, TProxPrivKey extends ProxiedCryptoKey<TPrivKey>, TPubKey extends CryptoKey, TProxPubKey extends ProxiedCryptoKey<TPubKey>>({ privHandler, pubHandler }: ProxyKeyPairHandlers<TPrivKey, TPubKey>): (keyPair: TKeyPair) => ProxiedCryptoKeyPair<TKeyPair, TPrivKey, TProxPrivKey, TPubKey, TProxPubKey>; //# sourceMappingURL=proxy.d.ts.map