UNPKG

surgio

Version:

Generating rules for Surge, Clash, Quantumult like a PRO

85 lines (84 loc) 6.69 kB
export type { CommandConfigBeforeNormalize as SurgioConfig } from './types'; export * from './configurables'; export { default as httpClient } from './utils/http-client'; export { unifiedCache as cache } from './utils/cache'; export { extendOutbounds, createExtendFunction, combineExtendFunctions, } from './generator'; export declare const utils: { readonly isHeroku: () => boolean; readonly isNow: () => boolean; readonly isVercel: () => boolean; readonly isGitHubActions: () => boolean; readonly isGitLabCI: () => boolean; readonly isRailway: () => boolean; readonly isNetlify: () => boolean; readonly isAWS: () => boolean; readonly isFlyIO: () => boolean; readonly isAWSLambda: () => boolean; readonly isSurgeIOS: (ua: string | undefined, version?: string | undefined) => boolean; readonly isSurgeMac: (ua: string | undefined, version?: string | undefined) => boolean; readonly isClash: (ua: string | undefined, version?: string | undefined) => boolean; readonly isClashVerge: (ua: string | undefined, version?: string | undefined) => boolean; readonly isClashMetaForAndroid: (ua: string | undefined, version?: string | undefined) => boolean; readonly isStash: (ua: string | undefined, version?: string | undefined) => boolean; readonly isQuantumultX: (ua: string | undefined, version?: string | undefined) => boolean; readonly isShadowrocket: (ua: string | undefined, version?: string | undefined) => boolean; readonly isLoon: (ua: string | undefined, version?: string | undefined) => boolean; readonly validateFilter: (filter: unknown) => boolean; readonly applyFilter: <T extends import("./types").PossibleNodeConfigType>(nodeList: readonly T[], filter?: ((nodeConfig: import("./types").PossibleNodeConfigType) => boolean) | { readonly filter: <T_1 extends import("./types").PossibleNodeConfigType>(nodeList: readonly T_1[]) => readonly T_1[]; readonly supportSort: true; } | undefined) => readonly T[]; readonly mergeFilters: (filters: ((nodeConfig: import("./types").PossibleNodeConfigType) => boolean)[], isStrict?: boolean | undefined) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly useKeywords: (keywords: string[], isStrict?: boolean | undefined) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly discardKeywords: (keywords: string[], isStrict?: boolean | undefined) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly useRegexp: (regexp: RegExp) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly matchGlob: (str: string, glob: string) => boolean; readonly useGlob: (glob: string) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly discardGlob: (glob: string) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly useProviders: (keywords: string[], isStrict?: boolean) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly discardProviders: (keywords: string[], isStrict?: boolean) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly useSortedKeywords: (keywords: string[]) => { readonly filter: <T_1 extends import("./types").PossibleNodeConfigType>(nodeList: readonly T_1[]) => readonly T_1[]; readonly supportSort: true; }; readonly mergeSortedFilters: (filters: ((nodeConfig: import("./types").PossibleNodeConfigType) => boolean)[]) => { readonly filter: <T_1 extends import("./types").PossibleNodeConfigType>(nodeList: readonly T_1[]) => readonly T_1[]; readonly supportSort: true; }; readonly reverseFilter: (filter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly mergeReversedFilters: (filters: ((nodeConfig: import("./types").PossibleNodeConfigType) => boolean)[], isStrict?: boolean | undefined) => (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly netflixFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly usFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly hkFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly japanFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly koreaFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly singaporeFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly taiwanFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly chinaBackFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly chinaOutFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly youtubePremiumFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly shadowsocksFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly shadowsocksrFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly vmessFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly v2rayFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly snellFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly tuicFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly httpFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly httpsFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly trojanFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly socks5Filter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly wireguardFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly hysteria2Filter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; readonly vlessFilter: (nodeConfig: import("./types").PossibleNodeConfigType) => boolean; }; export declare const categories: { readonly SNIPPET: "Snippet"; readonly SURGE: "Surge"; readonly QUANTUMULT_X: "Quantumult X"; readonly QUANTUMULT_X_SERVER: "Quantumult X Server"; readonly QUANTUMULT_X_FILTER: "Quantumult X Filter"; readonly QUANTUMULT_X_REWRITE: "Quantumult X Rewrite"; readonly CLASH: "Clash"; readonly LOON: "Loon"; readonly SURFBOARD: "Surfboard"; };