pokemon-showdown/server/global.d.ts
2019-08-10 15:30:34 -07:00

52 lines
1.5 KiB
TypeScript

import * as child_process from 'child_process';
import RoomsType = require('./rooms');
import RoomlogsType = require('./roomlogs');
import {LadderStore as LadderStoreType} from './ladders-remote';
import LaddersType = require('./ladders');
import PunishmentsType = require('./punishments');
import * as StreamsType from './../lib/streams';
import * as UsersType from './users';
import * as ChatType from './chat'
declare global {
namespace NodeJS {
interface Global {
IPTools: any
Config: any
Chat: any
__version: {head: string, origin?: string}
}
}
// modules
const Punishments: typeof PunishmentsType
const Ladders: typeof LaddersType
const LadderStoreT: typeof LadderStoreType
const WriteStream: typeof StreamsType.WriteStream
type ChildProcess = child_process.ChildProcess
// rooms
const GlobalRoom: typeof RoomsType.GlobalRoom
const ChatRoom: typeof RoomsType.ChatRoomTypeForTS
const GameRoom: typeof RoomsType.GameRoom
const BasicRoom: typeof RoomsType.BasicRoom
const BasicChatRoom: typeof RoomsType.ChatRoom
const RoomGame: typeof RoomsType.RoomGame
const RoomBattle: typeof RoomsType.RoomBattle
const Rooms: typeof RoomsType
const Roomlogs: typeof RoomlogsType
const Roomlog: typeof RoomlogsType.Roomlog
// users
const Users: typeof UsersType.Users
const User: typeof UsersType.Users.User
const Connection: typeof UsersType.Users.Connection
// chat
const Chat: typeof ChatType.Chat
const CommandContext: typeof ChatType.Chat.CommandContext
const PageContext: typeof ChatType.Chat.PageContext
}