cubetiq-crypto-js/src/crypto/crypto.ts
2022-02-14 19:05:24 +07:00

22 lines
589 B
TypeScript

import { CryptoProvider } from "./provider.crypto"
export class Crypto {
constructor(private readonly provider: CryptoProvider) {}
public encrypt(data: string | Buffer): string {
return this.provider.encrypt(data)
}
public decrypt(data: string): string {
return this.provider.decrypt(data)
}
private static _instance: Crypto | null | undefined
public static newInstance(provider: CryptoProvider): Crypto {
if (!Crypto._instance) {
Crypto._instance = new Crypto(provider)
}
return Crypto._instance
}
}