obsidian-mcp-server
Version:
MCP server for Obsidian vaults — read, write, search, and surgically edit notes, tags, and frontmatter via the Local REST API plugin. STDIO or Streamable HTTP.
18 lines • 964 B
TypeScript
/**
* @fileoverview Static safety guards for user-supplied `nameRegex` filters.
* JavaScript's RegExp engine has no native execution timeout, so we statically
* reject the textbook catastrophic-backtracking shapes before calling
* `new RegExp(...)`. Shared by tools that post-filter upstream listings by
* name (`obsidian_list_tags`, `obsidian_list_commands`).
* @module mcp-server/tools/definitions/_shared/regex-safety
*/
/** Maximum allowed pattern length — bounds compile cost and AST surface. */
export declare const NAME_REGEX_MAX_LENGTH = 256;
/**
* Returns a human-readable reason string when the pattern is unsafe, or
* `undefined` when it passes the static guards. Callers compile with
* `new RegExp(pattern)` after this returns `undefined` and surface the
* returned reason via the tool's `regex_unsafe` error.
*/
export declare function nameRegexSafetyIssue(pattern: string): string | undefined;
//# sourceMappingURL=regex-safety.d.ts.map