import type { ResolvedAgentTeamsConfig } from '../../cli/config/loader.js'; import type { ActiveSpecification, MonorepoConfig } from '../../cli/config/agent-teams.types.js'; type ContextField = 'projectId' | 'specificationId'; /** * Get the resolved Agent Teams config from .specforge.json. * * Always returns a fully-resolved config with defaults applied (never null). * Tools like `get_implementation_plan` use this to read the user's preferred * strategy, worker limits, and other settings. */ export declare function getAgentTeamsContext(): ResolvedAgentTeamsConfig; /** * Get the active specification from .specforge.json. * * @returns ActiveSpecification if set, null if no spec is activated */ export declare function getActiveSpecificationContext(): ActiveSpecification | null; /** * Get the monorepo config from .specforge.json. * * @returns MonorepoConfig with defaults applied, or null if section absent */ export declare function getMonorepoContext(): MonorepoConfig | null; /** * Inject missing context fields from .specforge.json * Explicit args always take precedence over config values * * @param args - Tool arguments that may be missing context fields * @param fields - Context fields to inject if missing * @returns Args with context fields injected from config */ export declare function injectContext>(args: T, fields: ContextField[]): T; /** * Inject context and validate required fields are present * Throws error if required fields cannot be resolved from config * * @param args - Tool arguments that may be missing context fields * @param requiredFields - Fields that MUST be present after injection * @param optionalFields - Fields to inject if available but not require * @returns Args with context fields injected * @throws Error if required fields cannot be resolved */ export declare function injectContextRequired>(args: T, requiredFields: ContextField[], optionalFields?: ContextField[]): T; export {}; //# sourceMappingURL=context-helper.d.ts.map