import type { SmartContract } from './zkapp.js'; import type { AccountUpdate, AccountUpdateLayout } from './account-update.js'; import { Context } from '../../util/global-context.js'; export { smartContractContext, SmartContractContext, accountUpdateLayout, contract }; type SmartContractContext = { this: SmartContract; selfUpdate: AccountUpdate; selfLayout: AccountUpdateLayout; }; declare let smartContractContext: Context.t; declare function accountUpdateLayout(): AccountUpdateLayout | undefined; declare function contract(expectedConstructor?: new (...args: any) => S): S;