import { AccountUpdate } from './account-update.js'; import { Account } from './account.js'; import { StateLayout } from './state.js'; import { ZkappFeePayment } from './transaction.js'; import { ChainView } from './views.js'; import { Int64 } from '../../provable/int.js'; export { checkAndApplyAccountUpdate, checkAndApplyFeePayment, ApplyState }; type ApplyResult = ({ status: 'Applied'; } & T) | { status: 'Failed'; errors: Error[]; }; type ApplyState = { status: 'Alive'; value: T; } | { status: 'Dead'; }; declare function checkAndApplyAccountUpdate(chain: ChainView, account: Account, update: AccountUpdate, feeExcessState: ApplyState): ApplyResult<{ updatedFeeExcessState: ApplyState; updatedAccount: Account; }>; declare function checkAndApplyFeePayment(chain: ChainView, account: Account, feePayment: ZkappFeePayment): ApplyResult<{ updatedAccount: Account; }>;