import { Field, SmartContract, state, State, method, DeployArgs, PrivateKey, Permissions, isReady, } from 'snarkyjs'; await isReady; export const adminPrivateKey = PrivateKey.random(); export const adminPublicKey = adminPrivateKey.toPublicKey(); export class HelloWorld extends SmartContract { @state(Field) x = State(); init() { super.init(); this.x.set(Field(2)); this.account.delegate.set(adminPublicKey); } @method update(squared: Field, admin: PrivateKey) { const x = this.x.get(); this.x.assertNothing(); x.square().assertEquals(squared); this.x.set(squared); const adminPk = admin.toPublicKey(); this.account.delegate.assertEquals(adminPk); } }