surgio
Version:
Generating rules for Surge, Clash, Quantumult like a PRO
27 lines (26 loc) • 1.06 kB
TypeScript
import { SubscriptionUserinfo, TrojanNodeConfig, TrojanProviderConfig } from '../types';
import Provider from './Provider';
import { DefaultProviderRequestHeaders, GetNodeListFunction, GetNodeListV2Function, GetSubscriptionUserInfoFunction } from './types';
export default class TrojanProvider extends Provider {
#private;
readonly udpRelay?: boolean;
readonly tls13?: boolean;
constructor(name: string, config: TrojanProviderConfig);
get url(): string;
getSubscriptionUserInfo: GetSubscriptionUserInfoFunction;
getNodeList: GetNodeListFunction;
getNodeListV2: GetNodeListV2Function;
}
/**
* @see https://github.com/trojan-gfw/trojan-url/blob/master/trojan-url.py
*/
export declare const getTrojanSubscription: ({ url, udpRelay, tls13, requestHeaders, cacheKey, }: {
url: string;
udpRelay?: boolean;
tls13?: boolean;
requestHeaders: DefaultProviderRequestHeaders;
cacheKey: string;
}) => Promise<{
readonly nodeList: Array<TrojanNodeConfig>;
readonly subscriptionUserInfo?: SubscriptionUserinfo;
}>;