import type { SchemaNodeDef, SchemaDef, KeyBuilders } from "./types.js"; /** * Create type-safe key builder functions from a schema. * * Each entity in the schema gets a key builder function that takes * the appropriate ID arguments and returns the full key path. * * @example * ```ts * const key = createKeyBuilders(schema); * * key.boards("board-1") // → "board-1" * key.columns("board-1", "col-1") // → "board-1/columns/col-1" * key.tasks("board-1", "col-1", "task-1") // → "board-1/columns/col-1/tasks/task-1" * ``` */ export declare function createKeyBuilders

>>(schema: SchemaDef): KeyBuilders; /** * Create a regex pattern for matching keys of a specific entity type. * * Used internally to filter keys from a keys() call by entity type. * * @param node - The schema node to create a pattern for * @param parentPatterns - Patterns from ancestor nodes * @returns RegExp that matches keys of this entity type * * @example * ```ts * // For columns under a board: * // parentPatterns = ["*"], pattern = "columns/*" * // → /^([^/]+)\/columns\/([^/]+)$/ * ``` */ export declare function createKeyPattern(node: SchemaNodeDef, parentPatterns: string[]): RegExp; /** * Extract the ID from a key given a regex pattern. * Returns the last capture group (the entity's own ID). */ export declare function extractIdFromKey(key: string, pattern: RegExp): string | null; //# sourceMappingURL=key-builders.d.ts.map