{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "api-slate-text-docs",
  "title": "Text",
  "description": "API reference for text nodes in Plate.",
  "files": [
    {
      "path": "../../content/docs/api/slate/text.mdx",
      "content": "---\ntitle: Text\ndescription: API reference for text nodes in Plate.\n---\n\nA Text node contains the actual text content of a Plate document along with any formatting properties. They are always leaf nodes in the document tree as they cannot contain any children.\n\n```ts\ntype TText = {\n  text: string\n  [key: string]: unknown\n}\n```\n\n## `TextApi`\n\n### `decorations`\n\n<API name=\"decorations\">\n<APIParameters>\n  <APIItem name=\"node\" type=\"TText\">\n    The text node to get leaves from.\n  </APIItem>\n  <APIItem name=\"decorations\" type=\"DecoratedRange[]\">\n    The array of decorated ranges to apply.\n  </APIItem>\n</APIParameters>\n\n<APIReturns type=\"{ leaf: TText, position?: LeafPosition }[]\">\n  An array of leaves and their positions. The position is undefined if there is a single leaf.\n</APIReturns>\n</API>\n\n### `equals`\n\n<API name=\"equals\">\n<APIParameters>\n  <APIItem name=\"text\" type=\"TText\">\n    The first text node to compare.\n  </APIItem>\n  <APIItem name=\"another\" type=\"TText\">\n    The second text node to compare.\n  </APIItem>\n  <APIItem name=\"options\" type=\"TextEqualsOptions\" optional>\n    Additional comparison options.\n  </APIItem>\n</APIParameters>\n\n<APIOptions type=\"TextEqualsOptions\">\n  <APIItem name=\"loose\" type=\"boolean\" optional>\n    If `true`, the text content is not compared. This is used to check\n    whether sibling text nodes can be merged based only on their\n    formatting properties.\n  </APIItem>\n</APIOptions>\n\n<APIReturns type=\"boolean\">\n  `true` if the text nodes are equal according to the comparison rules.\n</APIReturns>\n</API>\n\n### `isText`\n\n<API name=\"isText\">\n<APIParameters>\n  <APIItem name=\"value\" type=\"any\">\n    The value to check.\n  </APIItem>\n</APIParameters>\n\n<APIReturns type=\"boolean\">\n  `true` if the value is a valid text node.\n</APIReturns>\n</API>\n\n### `isTextList`\n\n<API name=\"isTextList\">\n<APIParameters>\n  <APIItem name=\"value\" type=\"any\">\n    The value to check.\n  </APIItem>\n</APIParameters>\n\n<APIReturns type=\"boolean\">\n  `true` if the value is an array of text nodes.\n</APIReturns>\n</API>\n\n### `isTextProps`\n\n<API name=\"isTextProps\">\n<APIParameters>\n  <APIItem name=\"props\" type=\"any\">\n    The props to check.\n  </APIItem>\n</APIParameters>\n\n<APIReturns type=\"boolean\">\n  `true` if the props match a partial text node structure.\n</APIReturns>\n</API>\n\n### `matches`\n\n<API name=\"matches\">\n<APIParameters>\n  <APIItem name=\"text\" type=\"TText\">\n    The text node to check.\n  </APIItem>\n  <APIItem name=\"props\" type=\"Partial<TText>\">\n    The properties to match against.\n  </APIItem>\n</APIParameters>\n\n<APIReturns type=\"boolean\">\n  `true` if the text node matches the properties.\n</APIReturns>\n</API>\n\n## Types\n\n### `TText`\n\n`Text` is a type alias for `TText`.\n\n<API name=\"TText\">\n<APIAttributes>\n  <APIItem name=\"text\" type=\"string\">\n    The text content of the node.\n  </APIItem>\n  <APIItem name=\"[key: string]\" type=\"unknown\">\n    Additional formatting properties that can be added to the text node.\n  </APIItem>\n</APIAttributes>\n</API>\n\n### `TextEntry` \n\nText entries represent a Text node and its path.\n\n<API name=\"TextEntry\">\n<APIAttributes>\n  <APIItem name=\"0\" type=\"TText\">\n    The Text node.\n  </APIItem>\n  <APIItem name=\"1\" type=\"Path\">\n    The path to the text node.\n  </APIItem>\n</APIAttributes>\n</API>\n\n### `DecoratedRange`\n\nA range object that includes decoration information. Used to apply formatting or styling to specific ranges of text within a document.\n\n### `TextOf<N>`\n\nA utility type that extracts all possible text node types from a root node type.\n\n<API name=\"TextOf\">\n<APIParameters>\n  <APIItem name=\"N\" type=\"TNode\">\n    The root node type to extract text types from.\n  </APIItem>\n</APIParameters>\n</API>\n\n### `TextIn<V>`\n\nA utility type that extracts all text node types from a `Value` type.\n\n<API name=\"TextIn\">\n<APIParameters>\n  <APIItem name=\"V\" type=\"Value\">\n    The `Value` type to extract text types from.\n  </APIItem>\n</APIParameters>\n</API>\n\n### `MarksOf<N>`\n\nA utility type that extracts all possible mark types from a root node type. Marks are the formatting properties that can be applied to text nodes.\n\n<API name=\"MarksOf\">\n<APIParameters>\n  <APIItem name=\"N\" type=\"TNode\">\n    The root node type to extract mark types from.\n  </APIItem>\n</APIParameters>\n</API>\n\n### `MarksIn<V>`\n\nA utility type that extracts all mark types from a `Value` type. Similar to `MarksOf` but works specifically with editor `Value` types.\n\n<API name=\"MarksIn\">\n<APIParameters>\n  <APIItem name=\"V\" type=\"Value\">\n    The `Value` type to extract mark types from.\n  </APIItem>\n</APIParameters>\n</API>\n\n### `MarkKeysOf<N>`\n\nA utility type that extracts all possible mark property keys from a node type.\n\n<API name=\"MarkKeysOf\">\n<APIParameters>\n  <APIItem name=\"N\" type=\"TNode\">\n    The node type to extract mark keys from.\n  </APIItem>\n</APIParameters>\n</API>",
      "type": "registry:file",
      "target": "content/docs/plate/api/slate/text.mdx"
    }
  ],
  "type": "registry:file"
}