import { e as TargetDescriptor, h as TargetLayoutScope, C as ContentNormalizer, d as ImportResult } from './target-descriptor-ItDY3NR0.js'; export { E as ExtraRuleOutputContext, a as ExtraRuleOutputResolver, F as FeatureLinter, b as GeneratedOutputMerger, c as GlobalTargetSupport, I as ImportPathBuilder, R as RuleLinter, S as ScopeExtrasFn, T as TargetCapabilities, f as TargetGenerators, g as TargetLayout, i as TargetLintHooks, j as TargetManagedOutputs, k as TargetOutputFamily, l as TargetPathResolvers } from './target-descriptor-ItDY3NR0.js'; import './schema-CzaoYJlG.js'; import 'zod'; /** Register a full target descriptor (for plugins). */ declare function registerTargetDescriptor(descriptor: TargetDescriptor): void; /** Look up a full descriptor by target ID. */ declare function getDescriptor(name: string): TargetDescriptor | undefined; declare function getAllDescriptors(): TargetDescriptor[]; /** * Descriptor-driven importer runner. * * Walks `descriptor.importer` for each feature in canonical order, resolves * scope-specific source paths, and dispatches to the existing helpers * (`importFileDirectory`, MCP / ignore writers). Scope variance lives entirely * in the spec — features with no source for the current scope are skipped * silently, eliminating per-importer `if (scope === 'global')` branches. * * Targets with bespoke parsing (codex-cli rule splitter, windsurf workflows, * gemini-cli policies) keep `generators.importFrom`. They may still call this * runner for the declarable parts of their flow. */ declare function runDescriptorImport(descriptor: TargetDescriptor, projectRoot: string, scope: TargetLayoutScope, options?: { readonly normalize?: ContentNormalizer; }): Promise; /** * Public API — built-in target catalog and plugin registration (package.json "exports"."./targets"). */ declare function getTargetCatalog(): readonly TargetDescriptor[]; export { TargetDescriptor, TargetLayoutScope, getAllDescriptors, getDescriptor, getTargetCatalog, registerTargetDescriptor, runDescriptorImport };