import { type MinimalProvider } from "./provider.js"; export declare function computeStorageLocation(storageName: string): string; /** * Reads a raw storage slot value from a smart contract using the `eth_getStorageAt` JSON-RPC method. * * This function queries the storage at a specific `index` for the given contract `address`, * using the `latest` block tag. The result is returned as a 32-byte hex string. * * @param provider - An EIP-1193-compatible provider used to send the RPC request. * @param address - The Ethereum address of the contract to read storage from. * @param index - The storage slot index (as a bigint) to query. * @returns A 32-byte hex string representing the raw storage value at the given slot. * * @throws If the provided address is invalid or if the RPC call fails or if the return value is not a valid 32-byte hex string. */ export declare function getStorageAt(provider: MinimalProvider, address: string, index: bigint): Promise<`0x${string}`>; export declare function setStorageAt(provider: MinimalProvider, methodName: string, address: string, index: bigint, valueBytes32: string): Promise; /** * Reads a fixed number of consecutive addresses stored at a given storage location. * * @param provider - A `MinimalProvider` that supports either `send` or `request` for RPC interaction. * @param contractAddress - The Ethereum address of the contract to read storage from. * @param storageLocationBytes32 - The storage slot index as a 32-byte hex string. * @param numAddresses - The number of addresses to read. * @returns An array of addresses. * * @throws If the provided address is invalid or if the RPC call fails or if the storage slot does not contain the expected addresses. */ export declare function getAddressesFromStorage(provider: MinimalProvider, contractAddress: string, storageLocationBytes32: string, numAddresses: number): Promise<`0x${string}`[]>; export declare function getInitializableStorage(provider: MinimalProvider, contractAddress: string): Promise<{ initialized: bigint; initializing: boolean; }>; export declare function setInitializableStorage(provider: MinimalProvider, contractAddress: string, value: { initialized: bigint; initializing: boolean; }): Promise; export declare function setOwnableStorage(provider: MinimalProvider, contractAddress: string, ownerAddress: string): Promise; //# sourceMappingURL=storage.d.ts.map