import type { RouteHostMatchRule } from '../../router.js'; import type { GeoLite2 } from './geolite2.js'; export type RuleMatch = (domain: string | undefined, port: number, resolve: () => Promise) => Promise | boolean | undefined; export declare function createIPRuleMatch(pattern: string | string[]): RuleMatch; export declare function createDomainRuleMatch(pattern: string | string[]): RuleMatch; export declare function createPortRuleMatch(port: number | number[]): RuleMatch; export declare function createHostRuleMatch(rule: RouteHostMatchRule | RouteHostMatchRule[], geolite2: GeoLite2): RuleMatch;