import { z } from 'zod'; import { NodeTypeEnum } from '../types'; export declare const MasqueNodeConfigValidator: z.ZodEffects, string | number, string | number>; nodeName: z.ZodString; enable: z.ZodOptional; tfo: z.ZodOptional; mptcp: z.ZodOptional; ecn: z.ZodOptional; sni: z.ZodOptional; shadowTls: z.ZodOptional, string | number, string | number>>; password: z.ZodString; sni: z.ZodString; }, "strip", z.ZodTypeAny, { password: string; sni: string; version?: string | number | undefined; }, { password: string; sni: string; version?: string | number | undefined; }>>; blockQuic: z.ZodOptional, z.ZodLiteral<"on">, z.ZodLiteral<"off">]>>; portHopping: z.ZodOptional>; portHoppingInterval: z.ZodOptional; underlyingProxy: z.ZodOptional; testUrl: z.ZodOptional; testTimeout: z.ZodOptional; surgeConfig: z.ZodOptional; vmessAEAD: z.ZodOptional; }, "strip", z.ZodTypeAny, { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; }, { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; }>>; surfboardConfig: z.ZodOptional; }, "strip", z.ZodTypeAny, { vmessAEAD?: boolean | undefined; }, { vmessAEAD?: boolean | undefined; }>>; quantumultXConfig: z.ZodOptional; }, "strip", z.ZodTypeAny, { vmessAEAD?: boolean | undefined; }, { vmessAEAD?: boolean | undefined; }>>; clashConfig: z.ZodOptional; enableShadowTls: z.ZodOptional; enableHysteria2: z.ZodOptional; enableVless: z.ZodOptional; clashCore: z.ZodOptional, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>; }, "strip", z.ZodTypeAny, { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; }, { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; }>>; hostnameIp: z.ZodOptional>>; binPath: z.ZodOptional; localPort: z.ZodOptional; interfaceName: z.ZodOptional; ipVersion: z.ZodOptional; hostname: z.ZodString; skipCertVerify: z.ZodOptional; alpn: z.ZodOptional>; serverCertFingerprintSha256: z.ZodOptional; clientFingerprint: z.ZodOptional; } & { type: z.ZodLiteral; authMode: z.ZodLiteral<"basic-auth">; username: z.ZodOptional; password: z.ZodOptional; }, "strip", z.ZodTypeAny, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; authMode: "basic-auth"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; password?: string | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; username?: string | undefined; }, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; authMode: "basic-auth"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; password?: string | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; username?: string | undefined; }>, z.ZodObject<{ port: z.ZodEffects, string | number, string | number>; nodeName: z.ZodString; enable: z.ZodOptional; tfo: z.ZodOptional; mptcp: z.ZodOptional; ecn: z.ZodOptional; shadowTls: z.ZodOptional, string | number, string | number>>; password: z.ZodString; sni: z.ZodString; }, "strip", z.ZodTypeAny, { password: string; sni: string; version?: string | number | undefined; }, { password: string; sni: string; version?: string | number | undefined; }>>; blockQuic: z.ZodOptional, z.ZodLiteral<"on">, z.ZodLiteral<"off">]>>; portHopping: z.ZodOptional>; portHoppingInterval: z.ZodOptional; underlyingProxy: z.ZodOptional; testUrl: z.ZodOptional; testTimeout: z.ZodOptional; surgeConfig: z.ZodOptional; vmessAEAD: z.ZodOptional; }, "strip", z.ZodTypeAny, { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; }, { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; }>>; surfboardConfig: z.ZodOptional; }, "strip", z.ZodTypeAny, { vmessAEAD?: boolean | undefined; }, { vmessAEAD?: boolean | undefined; }>>; quantumultXConfig: z.ZodOptional; }, "strip", z.ZodTypeAny, { vmessAEAD?: boolean | undefined; }, { vmessAEAD?: boolean | undefined; }>>; clashConfig: z.ZodOptional; enableShadowTls: z.ZodOptional; enableHysteria2: z.ZodOptional; enableVless: z.ZodOptional; clashCore: z.ZodOptional, z.ZodLiteral<"clash.meta">, z.ZodLiteral<"stash">]>>; }, "strip", z.ZodTypeAny, { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; }, { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; }>>; hostnameIp: z.ZodOptional>>; binPath: z.ZodOptional; localPort: z.ZodOptional; interfaceName: z.ZodOptional; ipVersion: z.ZodOptional; hostname: z.ZodString; skipCertVerify: z.ZodOptional; alpn: z.ZodOptional>; serverCertFingerprintSha256: z.ZodOptional; clientFingerprint: z.ZodOptional; } & { type: z.ZodLiteral; authMode: z.ZodLiteral<"key-pair">; privateKey: z.ZodString; publicKey: z.ZodString; ip: z.ZodOptional; ipv6: z.ZodOptional; dnsServers: z.ZodOptional>; network: z.ZodOptional>; sni: z.ZodOptional; connectUri: z.ZodOptional>; mtu: z.ZodOptional; keepalive: z.ZodOptional; udpRelay: z.ZodOptional; remoteDnsResolve: z.ZodOptional; congestionController: z.ZodOptional>; bbrProfile: z.ZodOptional>; handshakeTimeout: z.ZodOptional; }, "strip", z.ZodTypeAny, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; publicKey: string; privateKey: string; authMode: "key-pair"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; udpRelay?: boolean | undefined; network?: "h2" | "h3" | "h3-l4proxy" | undefined; mtu?: number | undefined; dnsServers?: [string, ...string[]] | undefined; keepalive?: number | undefined; ipv6?: string | undefined; ip?: string | undefined; connectUri?: string | undefined; remoteDnsResolve?: boolean | undefined; congestionController?: "bbr" | undefined; bbrProfile?: "standard" | "conservative" | "aggressive" | undefined; handshakeTimeout?: number | undefined; }, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; publicKey: string; privateKey: string; authMode: "key-pair"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; udpRelay?: boolean | undefined; network?: "h2" | "h3" | "h3-l4proxy" | undefined; mtu?: number | undefined; dnsServers?: [string, ...string[]] | undefined; keepalive?: number | undefined; ipv6?: string | undefined; ip?: string | undefined; connectUri?: string | undefined; remoteDnsResolve?: boolean | undefined; congestionController?: "bbr" | undefined; bbrProfile?: "standard" | "conservative" | "aggressive" | undefined; handshakeTimeout?: number | undefined; }>]>, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; authMode: "basic-auth"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; password?: string | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; username?: string | undefined; } | { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; publicKey: string; privateKey: string; authMode: "key-pair"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; udpRelay?: boolean | undefined; network?: "h2" | "h3" | "h3-l4proxy" | undefined; mtu?: number | undefined; dnsServers?: [string, ...string[]] | undefined; keepalive?: number | undefined; ipv6?: string | undefined; ip?: string | undefined; connectUri?: string | undefined; remoteDnsResolve?: boolean | undefined; congestionController?: "bbr" | undefined; bbrProfile?: "standard" | "conservative" | "aggressive" | undefined; handshakeTimeout?: number | undefined; }, { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; authMode: "basic-auth"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; password?: string | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; username?: string | undefined; } | { port: string | number; type: NodeTypeEnum.Masque; nodeName: string; hostname: string; publicKey: string; privateKey: string; authMode: "key-pair"; enable?: boolean | undefined; tfo?: boolean | undefined; mptcp?: boolean | undefined; ecn?: boolean | undefined; sni?: string | undefined; shadowTls?: { password: string; sni: string; version?: string | number | undefined; } | undefined; blockQuic?: "auto" | "on" | "off" | undefined; portHopping?: string | undefined; portHoppingInterval?: number | undefined; underlyingProxy?: string | undefined; testUrl?: string | undefined; testTimeout?: number | undefined; surgeConfig?: { resolveHostname?: boolean | undefined; vmessAEAD?: boolean | undefined; } | undefined; surfboardConfig?: { vmessAEAD?: boolean | undefined; } | undefined; quantumultXConfig?: { vmessAEAD?: boolean | undefined; } | undefined; clashConfig?: { enableTuic?: boolean | undefined; enableShadowTls?: boolean | undefined; enableHysteria2?: boolean | undefined; enableVless?: boolean | undefined; clashCore?: "clash" | "clash.meta" | "stash" | undefined; } | undefined; hostnameIp?: readonly string[] | undefined; binPath?: string | undefined; localPort?: number | undefined; interfaceName?: string | undefined; ipVersion?: string | undefined; skipCertVerify?: boolean | undefined; alpn?: [string, ...string[]] | undefined; serverCertFingerprintSha256?: string | undefined; clientFingerprint?: string | undefined; udpRelay?: boolean | undefined; network?: "h2" | "h3" | "h3-l4proxy" | undefined; mtu?: number | undefined; dnsServers?: [string, ...string[]] | undefined; keepalive?: number | undefined; ipv6?: string | undefined; ip?: string | undefined; connectUri?: string | undefined; remoteDnsResolve?: boolean | undefined; congestionController?: "bbr" | undefined; bbrProfile?: "standard" | "conservative" | "aggressive" | undefined; handshakeTimeout?: number | undefined; }>;