Skip to main content

Interface: IBibleApi

Defined in: Extensions/ExtensionApiTypes.ts:143

Properties

onDidChangeActiveVerse

onDidChangeActiveVerse: IEventApi<{ module: string; verseId: number; } | null>

Defined in: Extensions/ExtensionApiTypes.ts:198

Stable event: the user navigated to a new active verse anywhere in the app.


onDidSelectVerseWord

onDidSelectVerseWord: IEventApi<VerseWordSelection>

Defined in: Extensions/ExtensionApiTypes.ts:201

A token / word inside a verse was selected (click, double-click, or selection).

Methods

getRange()

getRange(start, end, opts?): Promise<BibleVerseDto[]>

Defined in: Extensions/ExtensionApiTypes.ts:148

Get a range of verses (inclusive). Max range size: 500 verses.

Parameters

start

number

end

number

opts?
module?

string

Returns

Promise<BibleVerseDto[]>


getVerse()

getVerse(verseId, opts?): Promise<BibleVerseDto>

Defined in: Extensions/ExtensionApiTypes.ts:145

Get a single verse from the active or specified module.

Parameters

verseId

number

opts?
module?

string

Returns

Promise<BibleVerseDto>


getVerseTokens()

getVerseTokens(verseId, opts?): Promise<VerseTokenDto[] | null>

Defined in: Extensions/ExtensionApiTypes.ts:175

Get token-level data for a verse if the module exposes it (interlinear, Strong's, morphology). Returns null if the module has no token data.

Parameters

verseId

number

opts?
module?

string

Returns

Promise<VerseTokenDto[] | null>


iterateVerses()

iterateVerses(opts): Promise<VerseIterationResult>

Defined in: Extensions/ExtensionApiTypes.ts:166

Cursor-based iteration across verses. Required for extensions that need to scan the corpus (custom indexes, embeddings, alignment data). Max page size is 1000; the host may return fewer than requested. The host guarantees stable iteration order across calls with the same opts.

Parameters

opts

IterateVersesOpts

Returns

Promise<VerseIterationResult>


listBooks()

listBooks(moduleId?): Promise<BibleBookDto[]>

Defined in: Extensions/ExtensionApiTypes.ts:158

List the books in a Bible module (with chapter counts).

Parameters

moduleId?

string

Returns

Promise<BibleBookDto[]>


listModules()

listModules(): Promise<BibleModuleInfoDto[]>

Defined in: Extensions/ExtensionApiTypes.ts:155

List installed Bible modules with metadata.

Returns

Promise<BibleModuleInfoDto[]>


navigateToVerse(verseId): Promise<void>

Defined in: Extensions/ExtensionApiTypes.ts:187

Programmatically navigate the primary Bible pane to a specific verse. The host resolves after the renderer has processed the navigation request and fires onDidChangeActiveVerse once the verse is visible.

Requires bible:read permission (navigation is a read-adjacent action).

Parameters

verseId

number

Returns

Promise<void>


parseReference()

parseReference(input, locale?): Promise<ParsedReferenceDto | null>

Defined in: Extensions/ExtensionApiTypes.ts:169

Parse a reference string. Locale-aware.

Parameters

input

string

locale?

string

Returns

Promise<ParsedReferenceDto | null>


registerProvider()

registerProvider(provider): Promise<DisposableHandle>

Defined in: Extensions/ExtensionApiTypes.ts:193

Register a custom Bible text provider. The host treats it as another installed module. Requires bible:provide permission.

Parameters

provider

BibleProviderDescriptor

Returns

Promise<DisposableHandle>