import { AddressAsIf } from "./addressAsIf.js";
export type Permit2AllowanceValue = {
    nonce: bigint;
    expiration: bigint;
    amount: bigint;
};
export declare class Permit2AsIf extends AddressAsIf {
    private _method;
    private _allowanceMappingSlotNumber;
    constructor(address: string);
    allowance(ownerAddress: string, tokenAddress: string, spenderAddress: string): Permit2AsIf;
    is(value: Permit2AllowanceValue): Permit2AsIf;
}
export declare const permit2: Permit2AsIf;
export declare const exportedForTesting: {
    getAllowanceSlotKey: (ownerAddress: string, tokenAddress: string, spenderAddress: string, mappingSlotNumber: number) => string;
};
