import type { RepoStack } from "../profile/scan.js"; /** * ECC's real language-pack tokens (the args to `ecc-install` / `install.sh`, * e.g. `--target cursor typescript python`). Source: affaan-m/ECC `rules/` * layout. Order here is the canonical install order we emit. */ export declare const ECC_LANGUAGE_PACKS: readonly ["typescript", "python", "golang", "swift", "php", "ruby", "web", "angular", "vue", "nuxt", "arkts"]; export type EccLanguagePack = (typeof ECC_LANGUAGE_PACKS)[number]; export interface EccLanguageSelection { /** ECC language packs to install for the detected stack (deterministic order). */ packs: EccLanguagePack[]; /** * Reserved for explicit full selection. Detection never turns this on: an * empty/new repo stays scoped and may declare its intended components. */ installEverything: boolean; } /** * Choose the ECC language packs for a repo from the detected stack. With a * detectable stack, select the packs that match its languages/frameworks. With * NO detectable stack (empty/new repo), keep the language-pack set empty so the * common baseline and any advance declarations remain the complete scope. */ export declare function eccLanguages(stack: RepoStack): EccLanguageSelection;