import type { FrontmatterKeywords } from '../../types'; /** * Normalizes frontmatter keywords into a structured format with includes/excludes arrays. * * Validates that the input is an object containing at least one of `includes` or `excludes` * as non-empty arrays, then converts all values to strings. * * @param keywords - Raw keywords object from frontmatter * @returns Object with error message or normalized result * * @example * ```ts * // Valid with both fields * normalizeFrontmatterKeywords({ * includes: ['typescript', 'react'], * excludes: ['deprecated'] * }); * // { error: null, result: { includes: ['typescript', 'react'], excludes: ['deprecated'] } } * * // Valid with only includes * normalizeFrontmatterKeywords({ includes: ['nodejs'] }); * // { error: null, result: { includes: ['nodejs'], excludes: undefined } } * * // Invalid type * normalizeFrontmatterKeywords('invalid'); * // { error: 'Keywords must be an object', result: null } * * // Empty arrays * normalizeFrontmatterKeywords({ includes: [], excludes: [] }); * // { error: 'Keywords must contain at least one non-empty "includes" or "excludes" array', result: null } * ``` */ export declare function normalizeFrontmatterKeywords(keywords: unknown): { error: string; result: null; } | { error: null; result: FrontmatterKeywords; }; //# sourceMappingURL=normalize-frontmatter-keywords.d.ts.map