/// <reference types="node" resolution-mode="require"/>
/// <reference types="node" resolution-mode="require"/>
/// <reference types="node" resolution-mode="require"/>
import { EthAddress } from '@aztec/foundation/eth-address';
import { BufferReader } from '@aztec/foundation/serialize';
import { type FieldsOf } from '@aztec/foundation/types';
import { inspect } from 'util';
import { z } from 'zod';
export { type EthAddress };
export declare class EpochProofQuotePayload {
    readonly epochToProve: bigint;
    readonly validUntilSlot: bigint;
    readonly bondAmount: bigint;
    readonly prover: EthAddress;
    readonly basisPointFee: number;
    private asBuffer;
    private size;
    constructor(epochToProve: bigint, validUntilSlot: bigint, bondAmount: bigint, prover: EthAddress, basisPointFee: number);
    static empty(): EpochProofQuotePayload;
    static random(): EpochProofQuotePayload;
    static getFields(fields: FieldsOf<EpochProofQuotePayload>): readonly [bigint, bigint, bigint, EthAddress, number];
    toBuffer(): Buffer;
    static fromBuffer(buf: Buffer | BufferReader): EpochProofQuotePayload;
    static from(fields: FieldsOf<EpochProofQuotePayload>): EpochProofQuotePayload;
    toJSON(): Pick<this, Exclude<keyof this, "asBuffer" | "size">>;
    static get schema(): z.ZodEffects<z.ZodObject<{
        epochToProve: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
        validUntilSlot: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
        bondAmount: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
        prover: z.ZodType<EthAddress, any, string>;
        basisPointFee: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
    }, "strip", z.ZodTypeAny, {
        epochToProve: bigint;
        validUntilSlot: bigint;
        bondAmount: bigint;
        prover: EthAddress;
        basisPointFee: number;
    }, {
        epochToProve: string | number | bigint;
        validUntilSlot: string | number | bigint;
        bondAmount: string | number | bigint;
        prover: string;
        basisPointFee: string | number | bigint;
    }>, EpochProofQuotePayload, {
        epochToProve: string | number | bigint;
        validUntilSlot: string | number | bigint;
        bondAmount: string | number | bigint;
        prover: string;
        basisPointFee: string | number | bigint;
    }>;
    toViemArgs(): {
        epochToProve: bigint;
        validUntilSlot: bigint;
        bondAmount: bigint;
        prover: `0x${string}`;
        basisPointFee: number;
    };
    toInspect(): {
        epochToProve: number;
        validUntilSlot: string;
        bondAmount: string;
        prover: `0x${string}`;
        basisPointFee: number;
    };
    getSize(): number;
    [inspect.custom](): string;
}
//# sourceMappingURL=epoch_proof_quote_payload.d.ts.map