// Code generated by tools/openapigen. DO NOT EDIT. import { z } from 'zod'; export const ProtocolSchema = z.string(); export type Protocol = z.infer; export const AllSettingSchema = z.object({ datepicker: z.string(), expireDiff: z.number().int().min(0), externalTrafficInformEnable: z.boolean(), externalTrafficInformURI: z.string(), ldapAutoCreate: z.boolean(), ldapAutoDelete: z.boolean(), ldapBaseDN: z.string(), ldapBindDN: z.string(), ldapDefaultExpiryDays: z.number().int().min(0), ldapDefaultLimitIP: z.number().int().min(0), ldapDefaultTotalGB: z.number().int().min(0), ldapEnable: z.boolean(), ldapFlagField: z.string(), ldapHost: z.string(), ldapInboundTags: z.string(), ldapInvertFlag: z.boolean(), ldapPassword: z.string(), ldapPort: z.number().int().min(0).max(65535), ldapSyncCron: z.string(), ldapTruthyValues: z.string(), ldapUseTLS: z.boolean(), ldapUserAttr: z.string(), ldapUserFilter: z.string(), ldapVlessField: z.string(), pageSize: z.number().int().min(1).max(1000), remarkModel: z.string(), restartXrayOnClientDisable: z.boolean(), sessionMaxAge: z.number().int().min(0).max(525600), subAnnounce: z.string(), subCertFile: z.string(), subClashEnable: z.boolean(), subClashPath: z.string(), subClashURI: z.string(), subDomain: z.string(), subEmailInRemark: z.boolean(), subEnable: z.boolean(), subEnableRouting: z.boolean(), subEncrypt: z.boolean(), subJsonEnable: z.boolean(), subJsonFragment: z.string(), subJsonMux: z.string(), subJsonNoises: z.string(), subJsonPath: z.string(), subJsonRules: z.string(), subJsonURI: z.string(), subKeyFile: z.string(), subListen: z.string(), subPath: z.string(), subPort: z.number().int().min(1).max(65535), subProfileUrl: z.string(), subRoutingRules: z.string(), subShowInfo: z.boolean(), subSupportUrl: z.string(), subTitle: z.string(), subURI: z.string(), subUpdates: z.number().int().min(0).max(525600), tgBotAPIServer: z.string(), tgBotBackup: z.boolean(), tgBotChatId: z.string(), tgBotEnable: z.boolean(), tgBotLoginNotify: z.boolean(), tgBotProxy: z.string(), tgBotToken: z.string(), tgCpu: z.number().int().min(0).max(100), tgLang: z.string(), tgRunTime: z.string(), timeLocation: z.string(), trafficDiff: z.number().int().min(0).max(100), trustedProxyCIDRs: z.string(), twoFactorEnable: z.boolean(), twoFactorToken: z.string(), webBasePath: z.string(), webCertFile: z.string(), webDomain: z.string(), webKeyFile: z.string(), webListen: z.string(), webPort: z.number().int().min(1).max(65535), }); export type AllSetting = z.infer; export const AllSettingViewSchema = z.object({ datepicker: z.string(), expireDiff: z.number().int().min(0), externalTrafficInformEnable: z.boolean(), externalTrafficInformURI: z.string(), hasApiToken: z.boolean(), hasLdapPassword: z.boolean(), hasNordSecret: z.boolean(), hasTgBotToken: z.boolean(), hasTwoFactorToken: z.boolean(), hasWarpSecret: z.boolean(), ldapAutoCreate: z.boolean(), ldapAutoDelete: z.boolean(), ldapBaseDN: z.string(), ldapBindDN: z.string(), ldapDefaultExpiryDays: z.number().int().min(0), ldapDefaultLimitIP: z.number().int().min(0), ldapDefaultTotalGB: z.number().int().min(0), ldapEnable: z.boolean(), ldapFlagField: z.string(), ldapHost: z.string(), ldapInboundTags: z.string(), ldapInvertFlag: z.boolean(), ldapPassword: z.string(), ldapPort: z.number().int().min(0).max(65535), ldapSyncCron: z.string(), ldapTruthyValues: z.string(), ldapUseTLS: z.boolean(), ldapUserAttr: z.string(), ldapUserFilter: z.string(), ldapVlessField: z.string(), pageSize: z.number().int().min(1).max(1000), remarkModel: z.string(), restartXrayOnClientDisable: z.boolean(), sessionMaxAge: z.number().int().min(0).max(525600), subAnnounce: z.string(), subCertFile: z.string(), subClashEnable: z.boolean(), subClashPath: z.string(), subClashURI: z.string(), subDomain: z.string(), subEmailInRemark: z.boolean(), subEnable: z.boolean(), subEnableRouting: z.boolean(), subEncrypt: z.boolean(), subJsonEnable: z.boolean(), subJsonFragment: z.string(), subJsonMux: z.string(), subJsonNoises: z.string(), subJsonPath: z.string(), subJsonRules: z.string(), subJsonURI: z.string(), subKeyFile: z.string(), subListen: z.string(), subPath: z.string(), subPort: z.number().int().min(1).max(65535), subProfileUrl: z.string(), subRoutingRules: z.string(), subShowInfo: z.boolean(), subSupportUrl: z.string(), subTitle: z.string(), subURI: z.string(), subUpdates: z.number().int().min(0).max(525600), tgBotAPIServer: z.string(), tgBotBackup: z.boolean(), tgBotChatId: z.string(), tgBotEnable: z.boolean(), tgBotLoginNotify: z.boolean(), tgBotProxy: z.string(), tgBotToken: z.string(), tgCpu: z.number().int().min(0).max(100), tgLang: z.string(), tgRunTime: z.string(), timeLocation: z.string(), trafficDiff: z.number().int().min(0).max(100), trustedProxyCIDRs: z.string(), twoFactorEnable: z.boolean(), twoFactorToken: z.string(), webBasePath: z.string(), webCertFile: z.string(), webDomain: z.string(), webKeyFile: z.string(), webListen: z.string(), webPort: z.number().int().min(1).max(65535), }); export type AllSettingView = z.infer; export const ApiTokenSchema = z.object({ createdAt: z.number().int(), enabled: z.boolean(), id: z.number().int(), name: z.string(), token: z.string(), }); export type ApiToken = z.infer; export const ClientSchema = z.object({ auth: z.string().optional(), comment: z.string(), created_at: z.number().int().optional(), email: z.string(), enable: z.boolean(), expiryTime: z.number().int(), flow: z.string().optional(), id: z.string().optional(), limitIp: z.number().int(), password: z.string().optional(), reset: z.number().int(), reverse: z.lazy(() => ClientReverseSchema).nullable().optional(), security: z.string(), subId: z.string(), tgId: z.number().int(), totalGB: z.number().int(), updated_at: z.number().int().optional(), }); export type Client = z.infer; export const ClientInboundSchema = z.object({ clientId: z.number().int(), createdAt: z.number().int(), flowOverride: z.string(), inboundId: z.number().int(), }); export type ClientInbound = z.infer; export const ClientRecordSchema = z.object({ auth: z.string(), comment: z.string(), createdAt: z.number().int(), email: z.string(), enable: z.boolean(), expiryTime: z.number().int(), flow: z.string(), id: z.number().int(), limitIp: z.number().int(), password: z.string(), reset: z.number().int(), reverse: z.unknown(), security: z.string(), subId: z.string(), tgId: z.number().int(), totalGB: z.number().int(), updatedAt: z.number().int(), uuid: z.string(), }); export type ClientRecord = z.infer; export const ClientReverseSchema = z.object({ tag: z.string(), }); export type ClientReverse = z.infer; export const ClientTrafficSchema = z.object({ down: z.number().int(), email: z.string(), enable: z.boolean(), expiryTime: z.number().int(), id: z.number().int(), inboundId: z.number().int(), lastOnline: z.number().int(), reset: z.number().int(), subId: z.string(), total: z.number().int(), up: z.number().int(), uuid: z.string(), }); export type ClientTraffic = z.infer; export const CustomGeoResourceSchema = z.object({ alias: z.string(), createdAt: z.number().int(), id: z.number().int(), lastModified: z.string(), lastUpdatedAt: z.number().int(), localPath: z.string(), type: z.string(), updatedAt: z.number().int(), url: z.string(), }); export type CustomGeoResource = z.infer; export const FallbackParentInfoSchema = z.object({ masterId: z.number().int(), path: z.string().optional(), }); export type FallbackParentInfo = z.infer; export const HistoryOfSeedersSchema = z.object({ id: z.number().int(), seederName: z.string(), }); export type HistoryOfSeeders = z.infer; export const InboundSchema = z.object({ clientStats: z.array(z.lazy(() => ClientTrafficSchema)), down: z.number().int(), enable: z.boolean(), expiryTime: z.number().int(), fallbackParent: z.lazy(() => FallbackParentInfoSchema).nullable().optional(), id: z.number().int(), lastTrafficResetTime: z.number().int(), listen: z.string(), nodeId: z.number().int().nullable().optional(), port: z.number().int().min(1).max(65535), protocol: z.enum(['vmess', 'vless', 'trojan', 'shadowsocks', 'wireguard', 'hysteria', 'hysteria2', 'http', 'mixed', 'tunnel']), remark: z.string(), settings: z.unknown(), sniffing: z.unknown(), streamSettings: z.unknown(), tag: z.string(), total: z.number().int(), trafficReset: z.enum(['never', 'hourly', 'daily', 'weekly', 'monthly']), up: z.number().int(), }); export type Inbound = z.infer; export const InboundClientIpsSchema = z.object({ clientEmail: z.string(), id: z.number().int(), ips: z.unknown(), }); export type InboundClientIps = z.infer; export const InboundFallbackSchema = z.object({ alpn: z.string(), childId: z.number().int(), id: z.number().int(), masterId: z.number().int(), name: z.string(), path: z.string(), sortOrder: z.number().int(), xver: z.number().int(), }); export type InboundFallback = z.infer; export const MsgSchema = z.object({ msg: z.string(), obj: z.unknown(), success: z.boolean(), }); export type Msg = z.infer; export const NodeSchema = z.object({ address: z.string(), allowPrivateAddress: z.boolean(), apiToken: z.string(), basePath: z.string(), clientCount: z.number().int(), cpuPct: z.number(), createdAt: z.number().int(), depletedCount: z.number().int(), enable: z.boolean(), id: z.number().int(), inboundCount: z.number().int(), lastError: z.string(), lastHeartbeat: z.number().int(), latencyMs: z.number().int(), memPct: z.number(), name: z.string(), onlineCount: z.number().int(), panelVersion: z.string(), port: z.number().int().min(1).max(65535), remark: z.string(), scheme: z.enum(['http', 'https']), status: z.string(), updatedAt: z.number().int(), uptimeSecs: z.number().int(), xrayVersion: z.string(), }); export type Node = z.infer; export const OutboundTrafficsSchema = z.object({ down: z.number().int(), id: z.number().int(), tag: z.string(), total: z.number().int(), up: z.number().int(), }); export type OutboundTraffics = z.infer; export const SettingSchema = z.object({ id: z.number().int(), key: z.string(), value: z.string(), }); export type Setting = z.infer; export const UserSchema = z.object({ id: z.number().int(), password: z.string(), username: z.string(), }); export type User = z.infer;