@dioxide-js/silas
Version:
RPC utility for Silas
29 lines (28 loc) • 1.06 kB
TypeScript
import Request from '../api/request';
import ContractService from '../api/contract';
import { OriginalTxn } from '../api/type';
interface DeployContractParams extends Omit<OriginalTxn, 'function' | 'args'> {
code: string[];
cargs: string[];
time?: number;
delegatee: string;
}
interface ExecContractParams {
func: string;
args: any;
sender: string;
}
export default class Contract extends Request {
contractSvc: ContractService;
private tx;
constructor(opts: {
apiKey: string;
});
info(name: string): Promise<import("../api/contract").ContractData>;
abi(name: string): Promise<import("../api/contract").ContractFunction[]>;
mint(privatekey: string | Uint8Array, sender: string, amount?: string): Promise<string>;
createDApp(privatekey: string | Uint8Array, sender: string, dapp: string): Promise<string>;
deploy(privatekey: string | Uint8Array, params: DeployContractParams): Promise<string>;
run(privatekey: string | Uint8Array, params: ExecContractParams): Promise<string>;
}
export {};