import { Fr } from '@aztec/foundation/curves/bn254'; import { BufferReader, FieldReader } from '@aztec/foundation/serialize'; import type { FieldsOf } from '@aztec/foundation/types'; import type { AztecAddress } from '../aztec-address/index.js'; /** * Contract storage update request for a slot on a specific contract. * * Note: Similar to `PublicDataUpdateRequest` but it's from the POV of contract storage so we are not working with * public data tree leaf index but storage slot index. */ export declare class ContractStorageUpdateRequest { /** * Storage slot we are updating. */ readonly storageSlot: Fr; /** * New value of the storage slot. */ readonly newValue: Fr; /** * Side effect counter tracking position of this event in tx execution. */ readonly counter: number; /** * Contract address whose storage is being read. */ contractAddress?: AztecAddress | undefined; constructor( /** * Storage slot we are updating. */ storageSlot: Fr, /** * New value of the storage slot. */ newValue: Fr, /** * Side effect counter tracking position of this event in tx execution. */ counter: number, /** * Contract address whose storage is being read. */ contractAddress?: AztecAddress | undefined); toBuffer(): Buffer; static fromBuffer(buffer: Buffer | BufferReader): ContractStorageUpdateRequest; /** * Create ContractStorageUpdateRequest from a fields dictionary. * @param fields - The dictionary. * @returns A ContractStorageUpdateRequest object. */ static from(fields: FieldsOf): ContractStorageUpdateRequest; /** * Serialize into a field array. Low-level utility. * @param fields - Object with fields. * @returns The array. */ static getFields(fields: FieldsOf): readonly [Fr, Fr, number, AztecAddress | undefined]; static empty(): ContractStorageUpdateRequest; isEmpty(): boolean; toFriendlyJSON(): string; toFields(): Fr[]; static fromFields(fields: Fr[] | FieldReader): ContractStorageUpdateRequest; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3Rfc3RvcmFnZV91cGRhdGVfcmVxdWVzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F2bS9jb250cmFjdF9zdG9yYWdlX3VwZGF0ZV9yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU5RDs7Ozs7R0FLRztBQUNILHFCQUFhLDRCQUE0QjtJQUVyQzs7T0FFRzthQUNhLFdBQVcsRUFBRSxFQUFFO0lBQy9COztPQUVHO2FBQ2EsUUFBUSxFQUFFLEVBQUU7SUFDNUI7O09BRUc7YUFDYSxPQUFPLEVBQUUsTUFBTTtJQUMvQjs7T0FFRztJQUNJLGVBQWUsQ0FBQztJQWhCekI7SUFDRTs7T0FFRztJQUNhLFdBQVcsRUFBRSxFQUFFO0lBQy9COztPQUVHO0lBQ2EsUUFBUSxFQUFFLEVBQUU7SUFDNUI7O09BRUc7SUFDYSxPQUFPLEVBQUUsTUFBTTtJQUMvQjs7T0FFRztJQUNJLGVBQWUsQ0FBQywwQkFBYyxFQUNuQztJQUVKLFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxnQ0FHOUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLDRCQUE0QixDQUFDLEdBQUcsNEJBQTRCLENBRXhGO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyx1REFFOUQ7SUFFRCxNQUFNLENBQUMsS0FBSyxpQ0FFWDtJQUVELE9BQU8sWUFFTjtJQUVELGNBQWMsV0FJYjtJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FRZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyw0QkFBNEIsQ0FPMUU7Q0FDRiJ9