# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: xcapi/xray/proxy/trojan/config.proto
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
from typing import Optional, List
from dataclasses import dataclass
from xcapi.model import ClassMeta
from xcapi.xray.common.protocol.server_spec_pb import ServerEndpoint
from xcapi.xray.common.protocol.user_pb import User


@dataclass
class Account(ClassMeta):
    password: Optional[str] = None


@dataclass
class Fallback(ClassMeta):
    name: Optional[str] = None
    alpn: Optional[str] = None
    path: Optional[str] = None
    type: Optional[str] = None
    dest: Optional[str] = None
    xver: Optional[int] = None


@dataclass
class ClientConfig(ClassMeta):
    server: Optional[List[ServerEndpoint]] = None


@dataclass
class ServerConfig(ClassMeta):
    users: Optional[List[User]] = None
    fallbacks: Optional[List[Fallback]] = None


_sym_db = _symbol_database.Default()

DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(
    b'\n$xcapi/xray/proxy/trojan/config.proto\x12\x11xray.proxy.trojan\x1a%xcapi/xray/common/protocol/user.proto\x1a,xcapi/xray/common/protocol/server_spec.proto\"\x1b\n\x07\x41\x63\x63ount\x12\x10\n\x08password\x18\x01 \x01(\t\"^\n\x08\x46\x61llback\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04\x61lpn\x18\x02 \x01(\t\x12\x0c\n\x04path\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x0c\n\x04\x64\x65st\x18\x05 \x01(\t\x12\x0c\n\x04xver\x18\x06 \x01(\x04\"D\n\x0c\x43lientConfig\x12\x34\n\x06server\x18\x01 \x03(\x0b\x32$.xray.common.protocol.ServerEndpoint\"i\n\x0cServerConfig\x12)\n\x05users\x18\x01 \x03(\x0b\x32\x1a.xray.common.protocol.User\x12.\n\tfallbacks\x18\x02 \x03(\x0b\x32\x1b.xray.proxy.trojan.Fallbackb\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'xcapi.xray.proxy.trojan.config_pb', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
    DESCRIPTOR._loaded_options = None
    _globals['_ACCOUNT']._serialized_start = 144
    _globals['_ACCOUNT']._serialized_end = 171
    _globals['_FALLBACK']._serialized_start = 173
    _globals['_FALLBACK']._serialized_end = 267
    _globals['_CLIENTCONFIG']._serialized_start = 269
    _globals['_CLIENTCONFIG']._serialized_end = 337
    _globals['_SERVERCONFIG']._serialized_start = 339
    _globals['_SERVERCONFIG']._serialized_end = 444
