import { Field } from 'o1js';
import { Bytes20, Bytes32 } from '../types.js';
export declare function dummyAddress(byte: number): Bytes20;
export declare function dummyValue(byte: number): Bytes32;
export declare function nonProvableStorageSlotLeafHash(addr: Bytes20, value: Bytes32): Field;
export declare function buildLeavesNonProvable(pairs: Array<[Bytes20, Bytes32]>): Field[];
declare const ProvableLeafObject_base: (new (value: {
    bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
}) => {
    bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
}) & {
    _isStruct: true;
} & Omit<import("o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
    bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
}, {
    bytes20: {
        bytes: {
            value: bigint;
        }[];
    };
    bytes32: {
        bytes: {
            value: bigint;
        }[];
    };
}>, "fromFields"> & {
    fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[]) => {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    };
} & {
    fromValue: (value: {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes | {
            bytes: {
                value: bigint;
            }[];
        };
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes | {
            bytes: {
                value: bigint;
            }[];
        };
    }) => {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    };
    toInput: (x: {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    }) => {
        fields?: Field[] | undefined;
        packed?: [Field, number][] | undefined;
    };
    toJSON: (x: {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    }) => {
        bytes20: {
            bytes: {
                value: string;
            }[];
        };
        bytes32: {
            bytes: {
                value: string;
            }[];
        };
    };
    fromJSON: (x: {
        bytes20: {
            bytes: {
                value: string;
            }[];
        };
        bytes32: {
            bytes: {
                value: string;
            }[];
        };
    }) => {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    };
    empty: () => {
        bytes20: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
        bytes32: import("o1js/dist/node/lib/provable/bytes.js").Bytes;
    };
};
export declare class ProvableLeafObject extends ProvableLeafObject_base {
}
export declare function provableLeafContentsHash(leafContents: ProvableLeafObject): import("o1js/dist/node/lib/provable/field.js").Field;
export {};
