import { ManaSharer } from "./ManaSharer"; import { authority, System, Protobuf } from "@koinos/sdk-as"; import { common } from "./proto/common"; const contract = new ManaSharer(); contract.callArgs = System.getArguments(); let returnBuffer = new Uint8Array(1024); switch (contract.callArgs!.entry_point) { /* class ManaSharer */ // authorize case 0x4a2dbd90: { const args = Protobuf.decode(contract.callArgs!.args, authority.authorize_arguments.decode); const result = contract.authorize(args); returnBuffer = Protobuf.encode(result, common.boole.encode); break; } // add_manager case 0x3c3203f2: { const args = Protobuf.decode(contract.callArgs!.args, common.address.decode); contract.add_manager(args); returnBuffer = new Uint8Array(0); break; } // remove_manager case 0x0e7ea20c: { const args = Protobuf.decode(contract.callArgs!.args, common.address.decode); contract.remove_manager(args); returnBuffer = new Uint8Array(0); break; } // get_managers case 0x9de33c3b: { const args = Protobuf.decode(contract.callArgs!.args, common.list_args.decode); const result = contract.get_managers(args); returnBuffer = Protobuf.encode(result, common.addresses.encode); break; } default: { System.exit(1); break; } } System.exit(0, returnBuffer);