/// import { ArgsToData, ArgTypes } from "./arg_types"; import { EcsEvent, UnknownEvent } from "./events"; import { Query } from "./query"; export interface BaseSystemArgs { readonly name: string; readonly args: StepArgTypes; readonly before?: Iterable; readonly after?: Iterable; readonly events?: Iterable>; } export interface SystemArgs extends BaseSystemArgs { step: (...args: ArgsToData) => void; } export declare class System { readonly name: string; readonly args: StepArgTypes; readonly step: SystemArgs['step']; readonly before: ReadonlySet; readonly after: ReadonlySet; readonly events: Set; readonly query: Query; constructor({ name, args, step, before, after, events }: SystemArgs); toString(): string; }