Public declaration syntax from forge-ts/packages/forge-embed/src/chunking.ts Original source SHA-256: c78ef30a78111bcfeb5c5ed82e48a59c3144035d43a0961485dcaded4acb2e93 Function bodies and constant values are omitted. This is not the complete implementation. Source line 26 export interface TextSplitter { /** * Splits text into chunks. * * @param text - The text to split. * @returns An array of text chunks. */ split(text: string): string[]; } Source line 39 export interface RecursiveCharacterSplitterOptions { /** Maximum number of characters per chunk. Defaults to 1000. */ readonly chunkSize?: number; /** Number of overlapping characters between consecutive chunks. Defaults to 200. */ readonly chunkOverlap?: number; /** * Separator hierarchy from coarsest to finest. Defaults to * `['\n\n', '\n', '. ', ' ', '']` (paragraphs, lines, sentences, words, chars). */ readonly separators?: readonly string[]; } Source line 70 export class RecursiveCharacterSplitter implements TextSplitter { constructor(options: RecursiveCharacterSplitterOptions = {}); split(text: string): string[]; } Source line 232 export interface TokenSplitterOptions { /** Maximum number of tokens per chunk. Defaults to 256. */ readonly tokensPerChunk?: number; /** Number of overlapping tokens between consecutive chunks. Defaults to 0. */ readonly tokenOverlap?: number; } Source line 252 export class TokenSplitter implements TextSplitter { constructor(options: TokenSplitterOptions = {}); split(text: string): string[]; }