/** * @opensip-tools/contracts — shared contract types. * * Tool packages (fitness, simulation) and the CLI entry-point both * depend on this package for: * - CLI option / output / result types * - Exit code constants and error suggestions * - The cross-tool StoredSession type (the SessionRepo runtime + the * sessions schema live in @opensip-tools/session-store) * * The GraphCatalog shape is DEFINED here (./graph-catalog.ts), not * re-exported from elsewhere. It is the contract surface between the * graph tool (which writes catalog.json) and @opensip-tools/dashboard * (which renders it): both producer and consumer depend on contracts * from below, so the shape lives in the layer beneath both. contracts * holds zero runtime dependency on dashboard or graph — these are * type-only declarations. * * contracts depends only on @opensip-tools/core. Tools depend on * contracts. The CLI entry-point depends on contracts and on every * tool package — the dependency graph stays acyclic. */ export type { FitOptions, InitOptions, ToolOptions, } from './types.js'; export type { SignalEnvelope, RunVerdict, UnitResult, BuildEnvelopeInput, } from './signal-envelope.js'; export { buildSignalEnvelope } from './signal-envelope.js'; export type { CommandResult, ClearDoneResult, ConfigureDoneResult, UninstallDoneResult, FitDoneResult, SimDoneResult, GraphDoneResult, GateDoneResult, GraphStatusResult, ListChecksResult, ListRecipesResult, HistorySession, HistoryResult, DashboardResult, InitResult, PreExistingFile, ExperimentalResult, PluginResult, PluginInfo, SyncEntry, HelpResult, ErrorResult, VerboseDetail, FindingGroup, FindingLine, } from './command-results.js'; export type { CommandOutcome, CommandOutcomeStatus, ErrorDetail, WarningDetail, RenderHints, } from './command-outcome.js'; export type { RunDiagnostics, DiagnosticEvent, DiagnosticPhase, DiagnosticLevel, } from '@opensip-tools/core'; export { passRate } from './score.js'; export { EXIT_CODES, getErrorSuggestion, mapToolErrorToExitCode } from './exit-codes.js'; export type { ErrorSuggestion } from './exit-codes.js'; export { PLUGIN_API_VERSION, checkCompatibility } from '@opensip-tools/core'; export type { ToolPluginManifest, ToolCommandManifest, ToolProvenance, ToolSource, CompatibilityVerdict, CapabilityDomainSpec, ToolCapabilityDeclaration, CapabilityContributionKind, } from '@opensip-tools/core'; export { defineCommand, COMMON_FLAG_KEYS } from '@opensip-tools/core'; export type { CommandSpec, OptionSpec, ArgSpec, CommandHandler, CommandContext, CommandOutputMode, CommandScopeRequirement, } from '@opensip-tools/core'; export { resolveToolRecipeName, BUILTIN_DEFAULT_RECIPE } from './recipe-default.js'; export type { ResolvedRecipe, RecipeSource } from './recipe-default.js'; export { commonFlags, applyCommonFlags, MANDATORY_COMMON_FLAGS } from './cli-flags.js'; export type { CommonFlagKey, CommonFlagSpec } from './cli-flags.js'; export { buildFindingGroups } from './verbose-detail.js'; export type { FindingGroupUnit } from './verbose-detail.js'; export type { StoredSession, ToolSessionReplay } from './session-types.js'; export type { GraphCatalog, GraphFunctionOccurrence, GraphCallEdge, GraphParam, GraphFunctionKind, GraphCallResolution, GraphCallConfidence, GraphResolutionMode, GraphVisibility, GraphFeatures, GraphFunctionFeatures, GraphPackageFeatures, GraphSccFeatures, GraphPackageEdgeFeature, GraphBlastScore, } from './graph-catalog.js'; import type { Command } from 'commander'; /** * Type alias for Commander's `Command` class — re-exported here so * tool packages can drop the `as Command` cast in their `register(cli)` * implementations. * * `commander` is an OPTIONAL peer dependency of * `@opensip-tools/contracts`. Plugin authors who reference `CliProgram` * (directly or via the `Tool` contract) need `commander` resolvable in * their own `node_modules`; pnpm/npm will surface the peer requirement * in install output. Plugins that never touch `CliProgram` can skip * commander entirely. The alias erases at compile time — no runtime * commander require lands in `dist/index.js`. */ export type CliProgram = Command; //# sourceMappingURL=index.d.ts.map