// Leveling subpath API — the resource-leveling / project-scheduling toolkit // (`level-core` + `level-blocks`). Usage: import { ... } from "levelset/leveling"; // // This entry pulls only `zod` (a peer dependency) and internal model/schema // modules — none of the reader/writer dependencies (`exceljs`, `cfb`, // `fast-xml-parser`). Importing the scheduler does not pull Excel/MPP parsing // into your bundle. // ── Core types & signatures ────────────────────────────────────────── // Types only: the `declare function` stubs in level-core/types.ts have // no runtime; their real implementations are re-exported from the modules // below (resolveCalendar, materialize, dayToDate, …). export type { Project, DayIndex, WorkingCalendar, ResolvedTask, ResolvedAssignment, ResolvedResource, PrecedenceEdge, ResolvedProject, WorkUnit, Constraint, ConstraintMeta, PrecedenceConstraint, CalendarsConstraint, MaxConcurrentResourceConstraint, PeakCapConstraint, ConcurrentUnitsLimitConstraint, UnitPrecedenceConstraint, UnimodalProfileConstraint, ModeSelectionConstraint, TaskMode, CrewFlowContinuityConstraint, DeadlineConstraint, ReleaseConstraint, Collector, KBestCollector, ParetoCollector, GateCollector, GateLimit, Scorer, ScorerReads, Explanation, Failure, ScheduledTask, Schedule, TaskDelta, ResourceDayDelta, ScheduleDiff, ScheduleStream, Search, SearchTransformer, Stage, Pipeline, ResolveOptions, } from "./level-core/types.ts"; export { pipe, assertNeverConstraint, assertNeverCollector, constraintLabel, } from "./level-core/types.ts"; // ── Pipeline implementations ───────────────────────────────────────── export * from "./level-core/calendarDays.ts"; export * from "./level-core/resolveCalendar.ts"; export * from "./level-core/materialize.ts"; export * from "./level-core/currentSchedule.ts"; export * from "./level-core/scheduleStream.ts"; export * from "./level-core/weeklyProfile.ts"; export * from "./level-core/profiles.ts"; export * from "./level-core/errors.ts"; export * from "./level-core/analyzeRun.ts"; export * from "./level-core/weightedScorer.ts"; export { LEVELSET_VERSION } from "./version.ts"; export { serialSGS } from "./level-core/search/serialSGS.ts"; // ── Pipeline-as-data (registry, graph format, compile traversal) ───── export * from "./level-blocks/registry.ts"; export * from "./level-blocks/composition.ts"; export * from "./level-blocks/meta.ts"; export * from "./level-blocks/graph.ts"; export * from "./level-blocks/compile.ts"; export * from "./level-blocks/standard.ts"; export * from "./level-blocks/runConfig.ts"; export * from "./level-blocks/sweep.ts"; // ── Blocks (configured constraints & scorers + MiniZinc fragments) ─── export * from "./level-blocks/types.ts"; export * from "./level-blocks/maxConcurrentResource.ts"; export * from "./level-blocks/peakCap.ts"; export * from "./level-blocks/deadline.ts"; export * from "./level-blocks/release.ts"; export * from "./level-blocks/phaseRelease.ts"; export * from "./level-blocks/concurrentResourceCost.ts"; export * from "./level-blocks/concurrentUnitsLimit.ts"; export * from "./level-blocks/modeSelection.ts"; export * from "./level-blocks/crewBorrow.ts"; export * from "./level-blocks/hiringLagPenalty.ts"; export * from "./level-blocks/openUnitPenalty.ts"; export * from "./level-blocks/phaseScoring.ts"; export * from "./level-blocks/phaseLateness.ts"; export * from "./level-blocks/phaseEarliness.ts"; export * from "./level-blocks/unimodalDeviation.ts"; export * from "./level-blocks/makespan.ts"; export * from "./level-blocks/serialSgsSearch.ts"; export * from "./level-blocks/kBest.ts"; export * from "./level-blocks/pareto.ts"; export * from "./level-blocks/gate.ts";