import { Env } from "../../dists/env.js"; import { ProjectState } from "./ProjectState.js"; import { SqModuleOutput } from "./SqModuleOutput.js"; export type ProjectAction = { type: "loadImports"; payload: string; } | { type: "loadModule"; payload: { name: string; hash: string | undefined; }; } | { type: "processModule"; payload: { hash: string; }; } | { type: "gc"; } | { type: "buildOutputIfPossible"; payload: { hash: string; environment: Env; }; }; export type ProjectEventShape = { type: "output"; payload: { output: SqModuleOutput; }; } | { type: "action"; payload: ProjectAction; } | { type: "state"; payload: ProjectState; }; export type ProjectEventType = ProjectEventShape["type"]; export declare class ProjectEvent extends Event { data: Extract["payload"]; constructor(type: T, data: Extract["payload"]); } export type ProjectEventListener = (event: ProjectEvent) => void; //# sourceMappingURL=types.d.ts.map