You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					99 lines
				
				3.0 KiB
			
		
		
			
		
	
	
					99 lines
				
				3.0 KiB
			| 
								 
											4 years ago
										 
									 | 
							
								// Type definitions for TweetNaCl.js
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export as namespace nacl;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								declare var nacl: nacl;
							 | 
						||
| 
								 | 
							
								export = nacl;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								declare namespace nacl {
							 | 
						||
| 
								 | 
							
								    export interface BoxKeyPair {
							 | 
						||
| 
								 | 
							
								        publicKey: Uint8Array;
							 | 
						||
| 
								 | 
							
								        secretKey: Uint8Array;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface SignKeyPair {
							 | 
						||
| 
								 | 
							
								        publicKey: Uint8Array;
							 | 
						||
| 
								 | 
							
								        secretKey: Uint8Array;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface secretbox {
							 | 
						||
| 
								 | 
							
								        (msg: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        open(box: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array | false;
							 | 
						||
| 
								 | 
							
								        readonly keyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly nonceLength: number;
							 | 
						||
| 
								 | 
							
								        readonly overheadLength: number;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface scalarMult {
							 | 
						||
| 
								 | 
							
								        (n: Uint8Array, p: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        base(n: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        readonly scalarLength: number;
							 | 
						||
| 
								 | 
							
								        readonly groupElementLength: number;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    namespace box {
							 | 
						||
| 
								 | 
							
								        export interface open {
							 | 
						||
| 
								 | 
							
								            (msg: Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, secretKey: Uint8Array): Uint8Array | false;
							 | 
						||
| 
								 | 
							
								            after(box: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array | false;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        export interface keyPair {
							 | 
						||
| 
								 | 
							
								            (): BoxKeyPair;
							 | 
						||
| 
								 | 
							
								            fromSecretKey(secretKey: Uint8Array): BoxKeyPair;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface box {
							 | 
						||
| 
								 | 
							
								        (msg: Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, secretKey: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        before(publicKey: Uint8Array, secretKey: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        after(msg: Uint8Array, nonce: Uint8Array, key: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        open: box.open;
							 | 
						||
| 
								 | 
							
								        keyPair: box.keyPair;
							 | 
						||
| 
								 | 
							
								        readonly publicKeyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly secretKeyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly sharedKeyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly nonceLength: number;
							 | 
						||
| 
								 | 
							
								        readonly overheadLength: number;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    namespace sign {
							 | 
						||
| 
								 | 
							
								        export interface detached {
							 | 
						||
| 
								 | 
							
								            (msg: Uint8Array, secretKey: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								            verify(msg: Uint8Array, sig: Uint8Array, publicKey: Uint8Array): boolean;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        export interface keyPair {
							 | 
						||
| 
								 | 
							
								            (): SignKeyPair;
							 | 
						||
| 
								 | 
							
								            fromSecretKey(secretKey: Uint8Array): SignKeyPair;
							 | 
						||
| 
								 | 
							
								            fromSeed(secretKey: Uint8Array): SignKeyPair;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface sign {
							 | 
						||
| 
								 | 
							
								        (msg: Uint8Array, secretKey: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        open(signedMsg: Uint8Array, publicKey: Uint8Array): Uint8Array | null;
							 | 
						||
| 
								 | 
							
								        detached: sign.detached;
							 | 
						||
| 
								 | 
							
								        keyPair: sign.keyPair;
							 | 
						||
| 
								 | 
							
								        readonly publicKeyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly secretKeyLength: number;
							 | 
						||
| 
								 | 
							
								        readonly seedLength: number;
							 | 
						||
| 
								 | 
							
								        readonly signatureLength: number;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    export interface hash {
							 | 
						||
| 
								 | 
							
								        (msg: Uint8Array): Uint8Array;
							 | 
						||
| 
								 | 
							
								        readonly hashLength: number;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								declare interface nacl {
							 | 
						||
| 
								 | 
							
								    randomBytes(n: number): Uint8Array;
							 | 
						||
| 
								 | 
							
								    secretbox: nacl.secretbox;
							 | 
						||
| 
								 | 
							
								    scalarMult: nacl.scalarMult;
							 | 
						||
| 
								 | 
							
								    box: nacl.box;
							 | 
						||
| 
								 | 
							
								    sign: nacl.sign;
							 | 
						||
| 
								 | 
							
								    hash: nacl.hash;
							 | 
						||
| 
								 | 
							
								    verify(x: Uint8Array, y: Uint8Array): boolean;
							 | 
						||
| 
								 | 
							
								    setPRNG(fn: (x: Uint8Array, n: number) => void): void;
							 | 
						||
| 
								 | 
							
								}
							 |