/* This file is part of web3.js. web3.js is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. web3.js is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with web3.js. If not, see . */ /** * @file personal-tests.ts * @author Huan Zhang * @author Samuel Furter * @author Josh Stevens * @date 2018 */ import { RLPEncodedTransaction } from 'web3-core'; import { Personal } from 'web3-eth-personal'; // $ExpectType Personal const personal_empty = new Personal(); // $ExpectType Personal const personal = new Personal('http://localhost:7545'); // $ExpectType string | null personal.defaultAccount; // $ExpectType string | number personal.defaultBlock; // $ExpectType provider personal.currentProvider; // $ExpectType any Personal.givenProvider; // $ExpectType any personal.givenProvider; // $ExpectType boolean personal.setProvider('https://localhost:2100'); // $ExpectType BatchRequest new personal.BatchRequest(); // $ExpectType any personal.extend({property: 'test', methods: [{name: 'method', call: 'method'}]}); // $ExpectType Promise personal.newAccount('test password'); // $ExpectType Promise personal.newAccount('test password', (error: Error, address: string) => {}); // $ExpectType Promise personal.sign( 'Hello world', '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe', 'test password!' ); // $ExpectType Promise personal.sign( 'Hello world', '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe', 'test password!', (error: Error, signature: string) => {} ); // $ExpectType Promise personal.ecRecover('Hello world', '0x30755ed65396facf86c53e6217c52b4daebe72aa'); // $ExpectType Promise personal.ecRecover( 'Hello world', '0x30755ed65396facf86c53e6217c52b4daebe72aa', (error: Error, address: string) => {} ); // $ExpectType Promise personal.signTransaction( { from: '0xEB014f8c8B418Db6b45774c326A0E64C78914dC0', gasPrice: '20000000000', gas: '21000', to: '0x3535353535353535353535353535353535353535', value: '1000000000000000000', data: '' }, 'test password' ); // $ExpectType Promise personal.signTransaction( { from: '0xEB014f8c8B418Db6b45774c326A0E64C78914dC0', gasPrice: '20000000000', gas: '21000', to: '0x3535353535353535353535353535353535353535', value: '1000000000000000000', data: '' }, 'test password', (error: Error, RLPEncodedTransaction: RLPEncodedTransaction) => {} ); // $ExpectType Promise personal.sendTransaction( { from: '0xEB014f8c8B418Db6b45774c326A0E64C78914dC0', gasPrice: '20000000000', gas: '21000', to: '0x3535353535353535353535353535353535353535', value: '1000000000000000000', data: '' }, 'test password' ); // $ExpectType Promise personal.sendTransaction( { from: '0xEB014f8c8B418Db6b45774c326A0E64C78914dC0', gasPrice: '20000000000', gas: '21000', to: '0x3535353535353535353535353535353535353535', value: '1000000000000000000', data: '' }, 'test password', (error: Error, transactionHash: string) => {} ); // $ExpectType Promise personal.unlockAccount( '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe', 'test password!', 600 ); // $ExpectType Promise personal.unlockAccount( '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe', 'test password!', 600, (error: Error) => {} ); // $ExpectType Promise personal.lockAccount('0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe'); // $ExpectType Promise personal.lockAccount( '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe', (error: Error, sucess: boolean) => {} ); // $ExpectType Promise personal.getAccounts(); // $ExpectType Promise personal.getAccounts((error: Error, accounts: string[]) => {}); // $ExpectType Promise personal.importRawKey('privateKey', 'blah2');