UNPKG

@herbertgao/surgio

Version:

Generating rules for Surge, Clash, Quantumult like a PRO

77 lines (76 loc) 5 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, extendEndpoints, 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) => boolean; readonly isSurgeMac: (ua: string | undefined, version?: string) => boolean; readonly isClash: (ua: string | undefined, version?: string) => boolean; readonly isClashVerge: (ua: string | undefined, version?: string) => boolean; readonly isClashMetaForAndroid: (ua: string | undefined, version?: string) => boolean; readonly isStash: (ua: string | undefined, version?: string) => boolean; readonly isQuantumultX: (ua: string | undefined, version?: string) => boolean; readonly isShadowrocket: (ua: string | undefined, version?: string) => boolean; readonly isLoon: (ua: string | undefined, version?: string) => boolean; readonly validateFilter: (filter: unknown) => boolean; readonly applyFilter: <T extends import("./types").PossibleNodeConfigType>(nodeList: ReadonlyArray<T>, filter?: import("./types").NodeFilterType | import("./types").SortedNodeFilterType) => ReadonlyArray<T>; readonly mergeFilters: (filters: Array<import("./types").NodeFilterType>, isStrict?: boolean) => import("./types").NodeFilterType; readonly useKeywords: (keywords: Array<string>, isStrict?: boolean) => import("./types").NodeFilterType; readonly discardKeywords: (keywords: Array<string>, isStrict?: boolean) => import("./types").NodeFilterType; readonly useRegexp: (regexp: RegExp) => import("./types").NodeFilterType; readonly matchGlob: (str: string, glob: string) => boolean; readonly useGlob: (glob: string) => import("./types").NodeFilterType; readonly discardGlob: (glob: string) => import("./types").NodeFilterType; readonly useProviders: (keywords: Array<string>, isStrict?: boolean) => import("./types").NodeFilterType; readonly discardProviders: (keywords: Array<string>, isStrict?: boolean) => import("./types").NodeFilterType; readonly useSortedKeywords: (keywords: Array<string>) => import("./types").SortedNodeFilterType; readonly mergeSortedFilters: (filters: Array<import("./types").NodeFilterType>) => import("./types").SortedNodeFilterType; readonly reverseFilter: (filter: import("./types").NodeFilterType) => import("./types").NodeFilterType; readonly mergeReversedFilters: (filters: Array<import("./types").NodeFilterType>, isStrict?: boolean) => import("./types").NodeFilterType; readonly netflixFilter: import("./types").NodeFilterType; readonly usFilter: import("./types").NodeFilterType; readonly hkFilter: import("./types").NodeFilterType; readonly japanFilter: import("./types").NodeFilterType; readonly koreaFilter: import("./types").NodeFilterType; readonly singaporeFilter: import("./types").NodeFilterType; readonly germanyFilter: import("./types").NodeFilterType; readonly taiwanFilter: import("./types").NodeFilterType; readonly chinaBackFilter: import("./types").NodeFilterType; readonly chinaOutFilter: import("./types").NodeFilterType; readonly youtubePremiumFilter: import("./types").NodeFilterType; readonly shadowsocksFilter: import("./types").NodeFilterType; readonly shadowsocksrFilter: import("./types").NodeFilterType; readonly vmessFilter: import("./types").NodeFilterType; readonly v2rayFilter: import("./types").NodeFilterType; readonly snellFilter: import("./types").NodeFilterType; readonly tuicFilter: import("./types").NodeFilterType; readonly httpFilter: import("./types").NodeFilterType; readonly httpsFilter: import("./types").NodeFilterType; readonly trojanFilter: import("./types").NodeFilterType; readonly socks5Filter: import("./types").NodeFilterType; readonly wireguardFilter: import("./types").NodeFilterType; readonly hysteria2Filter: import("./types").NodeFilterType; readonly vlessFilter: import("./types").NodeFilterType; }; 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"; };