@remnawave/xtls-sdk
Version:
A Typescript SDK for XRAY (XTLS) Core GRPC Api
69 lines • 2.84 kB
TypeScript
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import { IPOrDomain } from "../../common/net/address";
import { Network } from "../../common/net/network";
import { User } from "../../common/protocol/user";
export declare const protobufPackage = "xray.proxy.shadowsocks_2022";
export interface ServerConfig {
$type: "xray.proxy.shadowsocks_2022.ServerConfig";
method: string;
key: string;
email: string;
level: number;
network: Network[];
}
export interface MultiUserServerConfig {
$type: "xray.proxy.shadowsocks_2022.MultiUserServerConfig";
method: string;
key: string;
users: User[];
network: Network[];
}
export interface RelayDestination {
$type: "xray.proxy.shadowsocks_2022.RelayDestination";
key: string;
address: IPOrDomain | undefined;
port: number;
email: string;
level: number;
}
export interface RelayServerConfig {
$type: "xray.proxy.shadowsocks_2022.RelayServerConfig";
method: string;
key: string;
destinations: RelayDestination[];
network: Network[];
}
export interface Account {
$type: "xray.proxy.shadowsocks_2022.Account";
key: string;
}
export interface ClientConfig {
$type: "xray.proxy.shadowsocks_2022.ClientConfig";
address: IPOrDomain | undefined;
port: number;
method: string;
key: string;
udpOverTcp: boolean;
udpOverTcpVersion: number;
}
export declare const ServerConfig: MessageFns<ServerConfig, "xray.proxy.shadowsocks_2022.ServerConfig">;
export declare const MultiUserServerConfig: MessageFns<MultiUserServerConfig, "xray.proxy.shadowsocks_2022.MultiUserServerConfig">;
export declare const RelayDestination: MessageFns<RelayDestination, "xray.proxy.shadowsocks_2022.RelayDestination">;
export declare const RelayServerConfig: MessageFns<RelayServerConfig, "xray.proxy.shadowsocks_2022.RelayServerConfig">;
export declare const Account: MessageFns<Account, "xray.proxy.shadowsocks_2022.Account">;
export declare const ClientConfig: MessageFns<ClientConfig, "xray.proxy.shadowsocks_2022.ClientConfig">;
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
[K in Exclude<keyof T, "$type">]?: DeepPartial<T[K]>;
} : Partial<T>;
export interface MessageFns<T, V extends string> {
readonly $type: V;
encode(message: T, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): T;
fromJSON(object: any): T;
toJSON(message: T): unknown;
create(base?: DeepPartial<T>): T;
fromPartial(object: DeepPartial<T>): T;
}
export {};
//# sourceMappingURL=config.d.ts.map