Type Alias WithManagers<Client, Items>

WithManagers: Client & {
    readonly [Item in Items[number] as Item extends ManagerConstructor<
        Client,
        ManagerBase<Client>,
        infer Key,
    >
        ? Key
        : Item extends ManagerInstance<Client>
            ? ManagerInstanceKey<Client, Item>
            : never]: Item extends ManagerConstructor<Client, infer Instance, string>
        ? Instance
        : Item extends ManagerInstance<Client> ? Item : never
}

[zh-CN] 注册多个管理器后扩展出的客户端类型。 [en-US] Client type extended after registering multiple managers.

Type Parameters