import { World } from "@javelin/ecs";
import { JavelinMessage, SerializedSchema } from "@javelin/net";
import { LogContext } from "./context/log";
export * from "./utils";
export declare type WorldsConfig = {
    [name: string]: World | {
        remote: true;
        world: World;
    };
};
export declare type DevtoolOptions = {
    worlds: WorldsConfig;
    onMessage: (world: World, message: JavelinMessage) => unknown;
};
export declare type Devtool = {
    mount(root: HTMLElement): {
        log: LogContext;
    };
    unmount(): void;
    setModel(world: World, model: SerializedSchema[]): void;
};
export declare function createDevtool(options: DevtoolOptions): Devtool;
//# sourceMappingURL=index.d.ts.map