export class FogOfWarSystem extends System<any, any, any, any, any> {
    /**
     *
     * @param {GraphicsEngine} graphics
     */
    constructor(graphics: GraphicsEngine);
    /**
     *
     * @type {GraphicsEngine}
     */
    graphics: GraphicsEngine;
    dependencies: (typeof Terrain | typeof FogOfWar)[];
    components_used: ResourceAccessSpecification<typeof FogOfWar>[];
    visibilityFilter: VisibilityFilter;
    /**
     *
     * @type {CompositLayer}
     */
    compositLayer: CompositLayer;
    componentCount: number;
    /**
     *
     * @returns {VisibilityFilter}
     */
    buildVisibilityFilter(): VisibilityFilter;
    /**
     *
     * @param {EntityManager} entityManager
     */
    startup(entityManager: EntityManager): Promise<void>;
    renderTarget: any;
    shutdown(entityManager: any): Promise<void>;
    /**
     *
     * @param {FogOfWar} fow
     * @param {Terrain} terrain
     * @param {number} entity
     */
    link(fow: FogOfWar, terrain: Terrain, entity: number): void;
    unlink(fow: any, terrain: any, entity: any): void;
    update(timeDelta: any): void;
}
import { System } from "../System.js";
import Terrain from "../terrain/ecs/Terrain.js";
import { FogOfWar } from "./FogOfWar.js";
import { ResourceAccessSpecification } from "../../../core/model/ResourceAccessSpecification.js";
import { VisibilityFilter } from "../../graphics/render/visibility/VisibilityFilter.js";
import { CompositLayer } from "../../graphics/composit/CompositLayer.js";
//# sourceMappingURL=FogOfWarSystem.d.ts.map