export class ScreepsAPI extends RawAPI {
    static fromConfig(server?: string, config?: boolean, opts?: {}): Promise<ScreepsAPI>;
    constructor(opts: any);
    rateLimits: {
        global: {
            limit: any;
            period: any;
            remaining: any;
            reset: number;
            toReset: number;
        };
        GET: {
            '/api/game/room-terrain': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/code': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/memory': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/memory-segment': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/market/orders-index': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/market/orders': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/market/my-orders': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/market/stats': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/user/money-history': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
        };
        POST: {
            '/api/user/console': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/game/map-stats': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/code': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/set-active-branch': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/memory': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
            '/api/user/memory-segment': {
                limit: any;
                period: any;
                remaining: any;
                reset: number;
                toReset: number;
            };
        };
    };
    socket: Socket;
    getRateLimit(method: any, path: any): any;
    get rateLimitResetUrl(): string;
    me(): Promise<{
        _id: any;
        username: any;
        badge: import("./RawAPI").Badge;
        gcl: any;
    }>;
    _user: {
        _id: any;
        username: any;
        badge: import("./RawAPI").Badge;
        gcl: any;
    };
    tokenInfo(): Promise<any>;
    _tokenInfo: any;
    userID(): Promise<any>;
    get history(): (room: string, tick: number, shard?: string) => any;
    get authmod(): () => any;
    get version(): () => {
        ok: 1;
        package: number;
        protocol: number;
        serverData: {
            customObjectTypes: any;
            historyChunkSize: number;
            features: any;
            shards: string[];
        };
        users: number;
    };
    get time(): (shard?: string) => {
        ok: number;
        time: number;
    };
    get leaderboard(): {
        list(limit: number, mode: "world" | "power", offset: number, season: string): {
            ok: any;
            list: [{
                _id: any;
                season: any;
                user: any;
                score: any;
                rank: any;
            }];
            count: any;
            users: {
                <user>(): any;
                's _id>: { _id, username, badge: { type, color1, color2, color3, param, flip }, gcl } } }}': any;
            };
        };
        find(username: string, mode?: string, season?: string): {
            ok: any;
            _id: any;
            season: any;
            user: any;
            score: any;
            rank: any;
        };
        seasons(): {
            ok: any;
            seasons: [{
                _id: any;
                name: any;
                date: any;
            }];
        };
    };
    get market(): {
        ordersIndex(shard?: string): {
            ok: 1;
            list: [{
                _id: string;
                count: number;
            }];
        };
        myOrders(): {
            ok: number;
            list: [{
                _id: any;
                created: any;
                user: any;
                active: any;
                type: any;
                amount: any;
                remainingAmount: any;
                resourceType: any;
                price: any;
                totalAmount: any;
                roomName: any;
            }];
        };
        orders(resourceType: string, shard?: string): {
            ok: number;
            list: [{
                _id: any;
                created: any;
                user: any;
                active: any;
                type: any;
                amount: any;
                remainingAmount: any;
                resourceType: any;
                price: any;
                totalAmount: any;
                roomName: any;
            }];
        };
        stats(resourceType: any, shard?: string): any;
    };
    get registerUser(): (username: string, email: string, password: string, modules: any) => any;
    get code(): {
        get(branch: string): any;
        set(branch: string, modules: any, _hash: any): any;
    };
    get memory(): {
        get(path: string, shard?: string): string;
        set(path: string, value: any, shard?: string): {
            ok: any;
            result: {
                ok: any;
                n: any;
            };
            ops: [{
                user: any;
                expression: any;
                hidden: any;
            }];
            data: any;
            insertedCount: any;
            insertedIds: any;
        };
        segment: {
            get(segment: number, shard?: string): {
                ok: any;
                data: string;
            };
            set(segment: number, data: any, shard?: string): any;
        };
    };
    get segment(): {
        get(segment: number, shard?: string): {
            ok: any;
            data: string;
        };
        set(segment: number, data: any, shard?: string): any;
    };
    get console(): (expression: any, shard?: string) => {
        ok: any;
        result: {
            ok: any;
            n: any;
        };
        ops: [{
            user: any;
            expression: any;
            _id: any;
        }];
        insertedCount: any;
        insertedIds: [<mongodb, id>() => any];
    };
}
import { RawAPI } from "./RawAPI";
import { Socket } from "./Socket";
