import type { PluginCodegenResult } from '@code-pushup/models'; import type { MonorepoTool, Tree } from '@code-pushup/utils'; export type { CategoryCodegenConfig, ImportDeclarationStructure, PluginAnswer, PluginCodegenInput, PluginCodegenResult, PluginPromptDescriptor, PluginSetupBinding, PluginSetupTree, } from '@code-pushup/models'; export type { FileChange, FileSystemAdapter, Tree } from '@code-pushup/utils'; export declare const CI_PROVIDERS: readonly ["github", "gitlab", "none"]; export type CiProvider = (typeof CI_PROVIDERS)[number]; export declare const CONFIG_FILE_FORMATS: readonly ["ts", "js", "mjs"]; export type ConfigFileFormat = (typeof CONFIG_FILE_FORMATS)[number]; export declare const SETUP_MODES: readonly ["standalone", "monorepo"]; export type SetupMode = (typeof SETUP_MODES)[number]; export declare const PLUGIN_SCOPES: readonly ["project", "root"]; export type PluginScope = (typeof PLUGIN_SCOPES)[number]; export type CliArgs = { 'dry-run'?: boolean; yes?: boolean; 'config-format'?: string; mode?: SetupMode; plugins?: string[]; ci?: string; 'target-dir'?: string; [key: string]: unknown; }; export type ScopedPluginResult = { scope: PluginScope; result: PluginCodegenResult; }; /** Context describing the current setup mode, passed to plugin codegen. */ export type ConfigContext = { mode: SetupMode; tool: MonorepoTool | null; }; /** A project discovered in a monorepo workspace. */ export type WizardProject = { name: string; directory: string; relativeDir: string; }; export type WriteContext = { tree: Tree; format: ConfigFileFormat; configFilename: string; isEsm: boolean; };