import { FeatureName } from './schemas.js'; /** * Slugifies a feature name according to CONSTITUTION.md Section 4.2 * * Rules: * 1. Convert to lowercase * 2. Replace spaces and special characters with hyphens (-) * 3. Remove leading/trailing hyphens * 4. Use descriptive, meaningful names * 5. No timestamps in filename * * @param name Original feature name * @returns Slugified name suitable for filename */ export declare function slugify(name: string): string; /** * Creates a FeatureName object from a user-provided name * * @param originalName Feature name as provided by user * @returns Validated FeatureName object */ export declare function createFeatureName(originalName: string): FeatureName; /** * Validates if a string is a valid feature slug * * @param slug String to validate * @returns True if valid kebab-case slug */ export declare function isValidSlug(slug: string): boolean; /** * Extracts feature name from .sm filename * * @param filename .sm filename * @returns Feature slug or null if invalid */ export declare function extractSlugFromFilename(filename: string): string | null; /** * Gets the file path for a feature .sm file * * @param slug Feature slug * @returns Relative path from project root */ export declare function getFeatureFilePath(slug: string): string; /** * Gets the file path for system.sm * * @returns Relative path from project root */ export declare function getSystemFilePath(): string; //# sourceMappingURL=utils.d.ts.map