Skip to content

@tavora/sdk / TavoraSDK

Interface: TavoraSDK ​

Defined in: packages/sdk/src/index.ts:65

Properties ​

documents ​

documents: object

Defined in: packages/sdk/src/index.ts:83

Named documents (builds, plans, checklists), private to this module in the current game and shared by all of its panels.

delete() ​

delete(id, options?): Promise<void>

Parameters ​
id ​

string

options? ​
ifRevision? ​

number

Returns ​

Promise<void>

get() ​

get<T>(id): Promise<TavoraDocument & object | null>

Type Parameters ​
T ​

T = JsonValue

Parameters ​
id ​

string

Returns ​

Promise<TavoraDocument & object | null>

list() ​

list(): Promise<DocumentSummary[]>

Returns ​

Promise<DocumentSummary[]>

onChange() ​

onChange(fn): Unsubscribe

Fires when another panel of this module changes a document.

Parameters ​
fn ​

(change) => void

Returns ​

Unsubscribe

put() ​

put(document): Promise<DocumentSummary>

Creates or replaces a document. Pass ifRevision to avoid overwriting another panel's change.

Parameters ​
document ​

PutDocumentParams

Returns ​

Promise<DocumentSummary>


game ​

game: object

Defined in: packages/sdk/src/index.ts:68

getCurrent() ​

getCurrent(): Promise<TavoraGame>

Returns ​

Promise<TavoraGame>


host ​

readonly host: HandshakeResult

Defined in: packages/sdk/src/index.ts:67

What the host reported when this module connected.


lifecycle ​

lifecycle: object

Defined in: packages/sdk/src/index.ts:105

onDispose() ​

onDispose(fn): Unsubscribe

Best effort only: autosave must not depend on this firing.

Parameters ​
fn ​

() => void

Returns ​

Unsubscribe

onResume() ​

onResume(fn): Unsubscribe

Parameters ​
fn ​

() => void

Returns ​

Unsubscribe

onSuspend() ​

onSuspend(fn): Unsubscribe

The panel is hidden; pause timers and animations. Called immediately if already suspended.

Parameters ​
fn ​

() => void

Returns ​

Unsubscribe


panel ​

panel: object

Defined in: packages/sdk/src/index.ts:93

UI state for this one panel (selection, scroll, open tab). Cleared when the panel is closed.

getState() ​

getState<T>(): Promise<T | null>

Type Parameters ​
T ​

T = JsonValue

Returns ​

Promise<T | null>

setState() ​

setState(value): Promise<void>

Parameters ​
value ​

JsonValue

Returns ​

Promise<void>


storage ​

storage: object

Defined in: packages/sdk/src/index.ts:72

Small key/value settings, private to this module in the current game.

delete() ​

delete(key): Promise<void>

Parameters ​
key ​

string

Returns ​

Promise<void>

get() ​

get<T>(key): Promise<T | null>

T is not checked at runtime; the host only guarantees the value is JSON.

Type Parameters ​
T ​

T = JsonValue

Parameters ​
key ​

string

Returns ​

Promise<T | null>

keys() ​

keys(): Promise<string[]>

Returns ​

Promise<string[]>

set() ​

set(key, value): Promise<void>

Parameters ​
key ​

string

value ​

JsonValue

Returns ​

Promise<void>


ui ​

ui: object

Defined in: packages/sdk/src/index.ts:101

getTheme() ​

getTheme(): Promise<TavoraTheme>

Returns ​

Promise<TavoraTheme>

onThemeChange() ​

onThemeChange(fn): Unsubscribe

Parameters ​
fn ​

(theme) => void

Returns ​

Unsubscribe


workspace ​

workspace: object

Defined in: packages/sdk/src/index.ts:97

getViewport() ​

getViewport(): Promise<TavoraViewport>

Returns ​

Promise<TavoraViewport>

onResize() ​

onResize(fn): Unsubscribe

Parameters ​
fn ​

(viewport) => void

Returns ​

Unsubscribe

Code under the MIT License. The Tavora name and logo are not covered by it.