/**
 * Quote a YAML value if it contains special characters.
 * Escapes inner backslashes and double quotes, wraps in "...".
 */
export declare function quoteYAMLValue(value: string): string;
/**
 * Validate a skill name against the agentskills.io standard.
 * Must be lowercase alphanumeric with hyphens, 1-64 chars, no leading/trailing hyphens.
 */
export declare function validateSkillNameStrict(name: string): boolean;
/**
 * Extract a description from the body of a SKILL.md file.
 * Returns the first non-heading, non-blank line, truncated to 200 chars.
 * Falls back to a humanized version of the skill name.
 */
export declare function extractDescription(body: string, skillName: string): string;
/**
 * Ensure a SKILL.md string contains valid `name` and `description` frontmatter.
 * Pure function — normalizes CRLF, preserves existing fields, injects missing ones.
 * When `forceName` is true, overrides the existing `name` field with `skillName`.
 */
export declare function ensureFrontmatter(content: string, skillName: string, forceName?: boolean): string;
/**
 * Apply fork-authorship metadata to a SKILL.md string.
 *
 * Rewrites only the listed frontmatter fields (`name`, `author`, `version`,
 * `forkedFrom`) via regex while preserving every other field verbatim. Matches
 * the regex house-style of this module (no gray-matter / js-yaml dependency).
 *
 * Idempotent: running twice with the same arguments produces byte-equal output.
 *
 * On malformed YAML frontmatter (no `---` opening or no closing `---`), throws
 * so the caller can abort before any disk write.
 *
 * @param content  raw SKILL.md text (CRLF normalized internally)
 * @param meta.name        new fully-qualified skill name (e.g. "anton/ado-mapper")
 * @param meta.author      new author name
 * @param meta.version     new version string (typically "1.0.0" for a fresh fork)
 * @param meta.forkedFrom  optional source skill name to record in frontmatter
 *                         (the authoritative record lives in `.vskill-meta.json`;
 *                         this is a human-readable breadcrumb only)
 */
export declare function applyForkMetadata(content: string, meta: {
    name: string;
    author: string;
    version: string;
    forkedFrom?: string;
}): string;
/**
 * Parse the optional `target-agents` field from SKILL.md frontmatter.
 * Returns an array of agent IDs, or undefined if the field is absent.
 */
export declare function parseTargetAgents(content: string): string[] | undefined;
/**
 * Strip Claude Code-specific frontmatter fields for non-Claude agents.
 * Removes: user-invocable, allowed-tools, model, argument-hint, context.
 * Ensures `name:` is present (required by all agents).
 */
export declare function stripClaudeFields(content: string, skillName: string): string;
