import { ComponentHandle } from './Component2.js'; import { Entity } from './Entity.js'; import { OneOf, Filter, Not } from './filters.js'; import { Game } from './Game.js'; import { Query, QueryComponentFilter } from './Query.js'; type FilterNots | ComponentHandle> = CompUnion extends Not ? never : CompUnion; type UnwrapAnys | ComponentHandle> = CompUnion extends OneOf ? never : CompUnion; type UnwrapFilters | ComponentHandle> = CompUnion extends Filter ? C : CompUnion; type DefiniteComponentsFromFilter = UnwrapFilters>>; export type EntityImpostorFor = Entity>; export declare class QueryIterator implements Iterator> { private query; private game; private archetypeIndex; private archetypeIterator; private result; private changedFilters; constructor(query: Query, game: Game); private checkChangeFilter; next(): IteratorResult, any>; first(): EntityImpostorFor | null; } export {};