/**
 * Operational runbook registry for the GoodVibes platform runtime.
 *
 * Provides a machine-readable playbook registry consumed by the diagnostics
 * panel. Each playbook describes symptoms, diagnostic checks, resolution
 * steps, and escalation criteria for a specific failure scenario.
 *
 * @example
 * ```ts
 * import { getPlaybookRegistry, getPlaybook } from './index.js';
 *
 * const registry = getPlaybookRegistry();
 * const playbook = getPlaybook('stuck-turn');
 * if (playbook) {
 *   for (const check of playbook.checks) {
 *     const result = await check.run();
 *     console.log(check.label, result.passed ? 'PASS' : 'FAIL', result.summary);
 *   }
 * }
 * ```
 */
export type { DiagnosticSeverity, DiagnosticCheckResult, DiagnosticCheck, PlaybookStepKind, PlaybookStep, Playbook, PlaybookRegistryEntry, PlaybookRegistry, } from '@pellux/goodvibes-sdk/platform/runtime/ops/types';
export { stuckTurnPlaybook, reconnectFailurePlaybook, permissionDeadlockPlaybook, pluginDegradationPlaybook, exportRecoveryPlaybook, sessionUnrecoverablePlaybook, compactionFailurePlaybook, } from './playbooks/index.js';
import type { Playbook, PlaybookRegistry } from '@pellux/goodvibes-sdk/platform/runtime/ops/types';
/** Registry version — bump when playbooks are added or updated. */
export declare const REGISTRY_VERSION = "1.0.0";
/**
 * Build and return the playbook registry.
 *
 * The registry is a Map keyed by playbook ID for O(1) lookup.
 */
export declare function getPlaybookRegistry(): PlaybookRegistry;
/**
 * Look up a single playbook by ID.
 *
 * @param id - The playbook ID (e.g. 'stuck-turn').
 * @returns The playbook, or undefined if not found.
 */
export declare function getPlaybook(id: string): Playbook | undefined;
/**
 * Find playbooks whose tags overlap with the provided set.
 *
 * @param tags - One or more tag strings to match.
 * @returns Playbooks that have at least one matching tag.
 */
export declare function findPlaybooksByTag(...tags: string[]): Playbook[];
/**
 * Find playbooks whose symptoms partially match the provided query string.
 *
 * @param query - A substring to search for in symptom descriptions.
 * @returns Matching playbooks, sorted by number of matching symptoms (desc).
 */
export declare function findPlaybooksBySymptom(query: string): Playbook[];
//# sourceMappingURL=index.d.ts.map