import { type Payload } from '@xyo-network/sdk';
import { z } from 'zod';
/** EIP712DataPayloadFieldsZod constant. */
export declare const EIP712DataPayloadFieldsZod: z.ZodObject<{
    domain: z.ZodObject<{
        name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        version: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        chainId: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBigInt]>>>;
        verifyingContract: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        salt: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>]>>>;
    }, z.core.$strip>;
    types: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
        name: z.ZodString;
        type: z.ZodString;
    }, z.core.$strip>>>;
    values: z.ZodRecord<z.ZodString, z.ZodAny>;
}, z.core.$strip>;
/** EIP712DataPayloadFields type. */
export type EIP712DataPayloadFields = z.infer<typeof EIP712DataPayloadFieldsZod>;
/** Schema identifier for EIP712DataPayload payloads. */
export declare const EIP712DataPayloadSchema: "network.xyo.chains.ethereum.eip712.data" & {
    readonly __schema: true;
};
/** Schema type for EIP712DataPayload payloads. */
export type EIP712DataPayloadSchema = typeof EIP712DataPayloadSchema;
/** EIP712DataPayload type. */
export type EIP712DataPayload = Payload<EIP712DataPayloadFields, EIP712DataPayloadSchema>;
/** Type guard that checks if a value is a valid EIP712DataPayload. */
export declare const isEIP712DataPayload: (x?: unknown) => x is EIP712DataPayload;
/** Converts a value to EIP712DataPayload, throwing if invalid. */
export declare const asEIP712DataPayload: import("@ariestools/sdk").AsTypeFunction<EIP712DataPayload>;
//# sourceMappingURL=EIP712Data.d.ts.map