Skip to Content
DocumentationAPI Reference2DCodeInterfacesInterface: CodeHighlighter<T>

@revideo/2d


@revideo/2d / code / CodeHighlighter

Interface: CodeHighlighter<T>

Defined in: 2d/src/lib/code/CodeHighlighter.ts:29 

Describes custom highlighters used by the Code node.

Type Parameters

T

T = unknown

The type of the cache used by the highlighter.

Methods

highlight()

highlight(index, cache): HighlightResult

Defined in: 2d/src/lib/code/CodeHighlighter.ts:66 

Highlights the code at the given index.

Parameters

index

number

The index of the code to highlight.

cache

T

The result of prepare.

Returns

HighlightResult


initialize()

initialize(): boolean

Defined in: 2d/src/lib/code/CodeHighlighter.ts:44 

Initializes the highlighter.

Returns

boolean

Remarks

This method is called when collecting async resources for the node. It can be called multiple times so caching the initialization is recommended.

If initialization is asynchronous, a promise should be registered using DependencyContext.collectPromise and the value of false should be returned. The hook will be called again when the promise resolves. This process can be repeated until the value of true is returned which will mark the highlighter as ready.


prepare()

prepare(code): T

Defined in: 2d/src/lib/code/CodeHighlighter.ts:58 

Prepares the code for highlighting.

Parameters

code

string

The code to prepare.

Returns

T

Remarks

This method is called each time the code changes. It can be used to do any preprocessing of the code before highlighting. The result of this method is cached and passed to highlight when the code is highlighted.


tokenize()

tokenize(code): string[]

Defined in: 2d/src/lib/code/CodeHighlighter.ts:74 

Tokenize the code.

Parameters

code

string

The code to tokenize.

Returns

string[]

© 2026 Haven Technologies, Inc.
Interface: CodeHighlighter<T> – Revideo