/**
 * /eject command implementation
 *
 * Copies a builtin workflow YAML for user customization.
 * Also supports ejecting individual facets (persona, policy, etc.)
 * to override builtins via layer resolution.
 *
 * Default target: project-local (.takt/)
 * With --global: user global (~/.takt/)
 */
import type { FacetType } from '../../infra/config/paths.js';
export interface EjectOptions {
    global?: boolean;
    projectDir: string;
}
/** Valid singular facet type names for CLI */
export declare const VALID_FACET_TYPES: string[];
/**
 * Parse singular CLI facet type to plural directory FacetType.
 * Returns undefined if the input is not a valid facet type.
 */
export declare function parseFacetType(singular: string): FacetType | undefined;
/**
 * Eject a builtin workflow YAML to project or global space for customization.
 * Only copies the workflow YAML — facets are resolved via layer system.
 */
export declare function ejectBuiltin(name: string | undefined, options: EjectOptions): Promise<void>;
/**
 * Eject an individual facet from builtin to upper layer for customization.
 * Copies the builtin facet .md file to project (.takt/{type}/) or global (~/.takt/{type}/).
 */
export declare function ejectFacet(facetType: FacetType, name: string, options: EjectOptions): Promise<void>;
//# sourceMappingURL=ejectBuiltin.d.ts.map