UNPKG

@tdb/web

Version:

Common condiguration for serving a web-site and testing web-based UI components.

107 lines (95 loc) 2.34 kB
declare var hash: Hash; declare module 'hash.js' { export = hash; } interface BlockHash<T> { hmacStrength: number padLength: number endian: 'big' | 'little' } interface MessageDigest<T> { blockSize: number outSize: number update(msg: any, enc?: 'hex'): T digest(): number[] digest(enc: 'hex'): string } interface Hash { hmac: HmacConstructor ripemd: RipemdSet ripemd160: Ripemd160Constructor sha: ShaSet sha1: Sha1Constructor sha224: Sha224Constructor sha256: Sha256Constructor sha384: Sha384Constructor sha512: Sha512Constructor utils: Utils } interface Utils { toArray(msg: any, enc: 'hex'): number[] toHex(msg: any): string } interface RipemdSet { ripemd160: Ripemd160Constructor } interface ShaSet { sha1: Sha1Constructor sha224: Sha224Constructor sha256: Sha256Constructor sha384: Sha384Constructor sha512: Sha512Constructor } type HmacConstructor = (hash: BlockHash<any>, key: any, enc?: 'hex') => Hmac type Ripemd160Constructor = () => Ripemd160 type Sha1Constructor = () => Sha1; type Sha224Constructor = () => Sha224; type Sha256Constructor = () => Sha256; type Sha384Constructor = () => Sha384; type Sha512Constructor = () => Sha512; interface Hmac extends MessageDigest<Hmac> { blockSize: 512 outSize: 160 } interface Ripemd160 extends BlockHash<Ripemd160>, MessageDigest<Ripemd160> { blockSize: 512 hmacStrength: 192 outSize: 160 padLength: 64 endian: 'little' } interface Sha1 extends BlockHash<Sha1>, MessageDigest<Sha1> { blockSize: 512 hmacStrength: 80 outSize: 160 padLength: 64 endian: 'big' } interface Sha224 extends BlockHash<Sha224>, MessageDigest<Sha224> { blockSize: 512 hmacStrength: 192 outSize: 224 padLength: 64 endian: 'big' } interface Sha256 extends BlockHash<Sha256>, MessageDigest<Sha256> { blockSize: 512 hmacStrength: 192 outSize: 256 padLength: 64 endian: 'big' } interface Sha384 extends BlockHash<Sha384>, MessageDigest<Sha384> { blockSize: 1024 hmacStrength: 192 outSize: 384 padLength: 128 endian: 'big' } interface Sha512 extends BlockHash<Sha512>, MessageDigest<Sha512> { blockSize: 1024 hmacStrength: 192 outSize: 512 padLength: 128 endian: 'big' }