import { z } from 'zod'; import { SupportProviderEnum } from '../types'; export declare const ProviderValidator: z.ZodObject<{ type: z.ZodNativeEnum; addFlag: z.ZodOptional; removeExistingFlag: z.ZodOptional; mptcp: z.ZodOptional; tfo: z.ZodOptional; ecn: z.ZodOptional; blockQuic: z.ZodOptional, z.ZodLiteral<"on">, z.ZodLiteral<"off">]>>; underlyingProxy: z.ZodOptional; startPort: z.ZodOptional; relayUrl: z.ZodOptional; requestUserAgent: z.ZodOptional; renameNode: z.ZodOptional, z.ZodUnion<[z.ZodString, z.ZodUndefined, z.ZodVoid]>>>; customFilters: z.ZodOptional boolean, z.ZodTypeDef, (nodeConfig: import("../types").PossibleNodeConfigType) => boolean>, z.ZodType<{ readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }, z.ZodTypeDef, { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }>]>>>; nodeFilter: z.ZodOptional boolean, z.ZodTypeDef, (nodeConfig: import("../types").PossibleNodeConfigType) => boolean>, z.ZodType<{ readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }, z.ZodTypeDef, { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }>]>>; netflixFilter: z.ZodOptional boolean, z.ZodTypeDef, (nodeConfig: import("../types").PossibleNodeConfigType) => boolean>, z.ZodType<{ readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }, z.ZodTypeDef, { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }>]>>; youtubePremiumFilter: z.ZodOptional boolean, z.ZodTypeDef, (nodeConfig: import("../types").PossibleNodeConfigType) => boolean>, z.ZodType<{ readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }, z.ZodTypeDef, { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }>]>>; hooks: z.ZodOptional(nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable), z.ZodTypeDef, (nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable>>; onError: z.ZodOptional import("type-fest").Promisable, z.ZodTypeDef, (error: Error) => import("type-fest").Promisable>>; }, "strip", z.ZodTypeAny, { afterNodeListResponse?: ((nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable) | undefined; onError?: ((error: Error) => import("type-fest").Promisable) | undefined; }, { afterNodeListResponse?: ((nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable) | undefined; onError?: ((error: Error) => import("type-fest").Promisable) | undefined; }>>; }, "strip", z.ZodTypeAny, { type: SupportProviderEnum; customFilters?: Record boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }> | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; blockQuic?: "auto" | "on" | "off" | undefined; underlyingProxy?: string | undefined; addFlag?: boolean | undefined; removeExistingFlag?: boolean | undefined; startPort?: number | undefined; relayUrl?: string | undefined; requestUserAgent?: string | undefined; renameNode?: ((args_0: string, ...args: unknown[]) => string | void | undefined) | undefined; nodeFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; netflixFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; youtubePremiumFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; hooks?: { afterNodeListResponse?: ((nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable) | undefined; onError?: ((error: Error) => import("type-fest").Promisable) | undefined; } | undefined; }, { type: SupportProviderEnum; customFilters?: Record boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; }> | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; blockQuic?: "auto" | "on" | "off" | undefined; underlyingProxy?: string | undefined; addFlag?: boolean | undefined; removeExistingFlag?: boolean | undefined; startPort?: number | undefined; relayUrl?: string | undefined; requestUserAgent?: string | undefined; renameNode?: ((args_0: string, ...args: unknown[]) => string | void | undefined) | undefined; nodeFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; netflixFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; youtubePremiumFilter?: ((nodeConfig: import("../types").PossibleNodeConfigType) => boolean) | { readonly filter: (nodeList: ReadonlyArray) => ReadonlyArray; readonly supportSort: true; } | undefined; hooks?: { afterNodeListResponse?: ((nodeList: T[], customParams: import("../provider").GetNodeListParams) => import("type-fest").Promisable) | undefined; onError?: ((error: Error) => import("type-fest").Promisable) | undefined; } | undefined; }>;