/**
 * The types defined here are the source of truth for chain metadata.
 * ANY CHANGES HERE NEED TO BE REFLECTED IN HYPERLANE-BASE CONFIG PARSING.
 */
import { z } from 'zod';
declare const MatchingListElementSchema: z.ZodObject<{
    messageId: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
    originDomain: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodNumber, z.ZodArray<z.ZodNumber, "atleastone">]>>;
    senderAddress: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
    destinationDomain: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodNumber, z.ZodArray<z.ZodNumber, "atleastone">]>>;
    recipientAddress: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
}, "strip", z.ZodTypeAny, {
    messageId?: string | string[] | undefined;
    originDomain?: number | "*" | [number, ...number[]] | undefined;
    senderAddress?: string | string[] | undefined;
    destinationDomain?: number | "*" | [number, ...number[]] | undefined;
    recipientAddress?: string | string[] | undefined;
}, {
    messageId?: string | string[] | undefined;
    originDomain?: number | "*" | [number, ...number[]] | undefined;
    senderAddress?: string | string[] | undefined;
    destinationDomain?: number | "*" | [number, ...number[]] | undefined;
    recipientAddress?: string | string[] | undefined;
}>;
export declare const MatchingListSchema: z.ZodArray<z.ZodObject<{
    messageId: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
    originDomain: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodNumber, z.ZodArray<z.ZodNumber, "atleastone">]>>;
    senderAddress: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
    destinationDomain: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodNumber, z.ZodArray<z.ZodNumber, "atleastone">]>>;
    recipientAddress: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"*">, z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
}, "strip", z.ZodTypeAny, {
    messageId?: string | string[] | undefined;
    originDomain?: number | "*" | [number, ...number[]] | undefined;
    senderAddress?: string | string[] | undefined;
    destinationDomain?: number | "*" | [number, ...number[]] | undefined;
    recipientAddress?: string | string[] | undefined;
}, {
    messageId?: string | string[] | undefined;
    originDomain?: number | "*" | [number, ...number[]] | undefined;
    senderAddress?: string | string[] | undefined;
    destinationDomain?: number | "*" | [number, ...number[]] | undefined;
    recipientAddress?: string | string[] | undefined;
}>, "many">;
export type MatchingListElement = z.infer<typeof MatchingListElementSchema>;
export type MatchingList = z.infer<typeof MatchingListSchema>;
export {};
//# sourceMappingURL=matchingList.d.ts.map