@abloatai/decks and can be imported directly for use in your own type annotations.
CommitReceipt
Every mutating method (create, update, delete) returns a CommitReceipt. It tells you whether the server has durably committed the operation.
string
The commit id. Stable across retries with the same
idempotencyKey.'queued' | 'confirmed'
The acknowledgement level reached before the call returned.
'confirmed' means the write is durable; 'queued' means the server accepted it but has not yet confirmed durability. Controlled by RequestOptions.wait.number
The sync cursor after this commit. Present when status is
'confirmed'. You can use this to wait for a specific sync position in real-time clients.RequestOptions
PassRequestOptions as the last argument to any mutating method to control commit behaviour.
'queued' | 'confirmed'
default:"'confirmed'"
The acknowledgement level to wait for before the promise resolves.
'confirmed' (default) waits for a durable write — safe for scripts that must guarantee persistence before exiting. 'queued' returns as soon as the server accepts the operation, reducing latency at the cost of a weaker guarantee.string | null
A unique key for safe retries. If you call the same method twice with the same key, the server returns the original
CommitReceipt without creating a duplicate. Pass null to explicitly opt out of idempotency (rare). Omitting the field lets the server assign a key automatically.DeckRecord
Returned byablo.decks.retrieve(id).
string
The deck’s id.
string
The deck’s display title.
string | null
The layout container this deck uses for template inheritance.
null if no layout container is assigned.string | null
The theme applied to this deck.
null if using the workspace default.SlideRecord
Returned byablo.slides.retrieve(id) and ablo.slides.list({ deckId }).
string
The slide’s id.
string
The deck this slide belongs to.
string
The slide’s title.
number
Zero-based position in the deck.
string | null
The
SlideLayout id this slide is based on. null for slides without a layout.string | null
Presenter notes attached to the slide.
SlideCompositionSettings | null
The slide’s canvas settings (background, size, grid, layout exclusions).
null if all defaults apply.LayerRecord
Returned byablo.layers.retrieve(id) and ablo.layers.list({ slideId }).
string
The layer’s id.
string
The slide this layer belongs to.
LayerType
The layer’s type —
'text', 'shape', 'icon', 'path', 'table', or 'chart'.LayerPosition
Geometry in 1920×1080 slide space.
unknown
Type-specific payload. Charts store
{ chartDocument }, tables store TableData, shapes store { shapeType, ... }.unknown
Rich text content for text-bearing layers.
null for non-text types.Record<string, unknown> | null
Compiled style object (effects: opacity, corner radius, shadows).
number
Stacking order within the slide. Higher values render on top.
boolean
Whether the layer renders.
LayerImageFill | null
Image fill applied to a shape layer. Contains
url, optional objectFit, and optional intrinsic width/height.LayerCompositionMetadata | null
AI brief and placeholder metadata. Present on layout placeholder layers and layers with
prompt/examples set.string | null
When this is a filled placeholder layer, the id of the layout layer it fills.
LayoutRecord
Returned byablo.layouts.retrieve(id).
string
The layout’s id.
string
The layout’s display name.
string
The layout container this template belongs to.
SlideCompositionSettings | null
Canvas settings (background, size) inherited by slides using this layout.
LayerPosition
Describes the geometry of a layer in the slide canvas. All values are in the 1920×1080 coordinate space regardless of the slide’s export size or display resolution.number
Left edge of the layer box in pixels.
number
Top edge of the layer box in pixels.
number
Width of the layer box in pixels.
number
Height of the layer box in pixels.
number
Clockwise rotation in degrees around the layer’s center. Omitted (or
0) for no rotation.LayerType
Thetype discriminant on a persisted layer. Note that some input types map to different stored types — bar/donut inputs compile to 'chart' layers, and image inputs compile to 'shape' layers with an imageFill.
SlideSettingsFields
Fields you can pass when creating or updating a slide to control canvas behaviour. All fields are optional — omitting them leaves the existing setting unchanged.SlideBackgroundInput
Slide background. Accepts a color string, a background builder result, or a raw CSS string. Overrides the layout’s background for this slide.
SlideSizePreset
A size preset id that expands to
width, height, and aspectRatio in one field. See SlideSizePreset below.number
Canvas width in pixels (overrides the preset width when set directly).
number
Canvas height in pixels.
'16:9' | '16:10' | '4:3' | 'custom'
Aspect ratio hint used by the renderer for responsive scaling.
boolean
Show the alignment grid overlay in the editor.
number
Grid cell size in pixels (default 40).
string[]
A list of layout layer ids that this slide opts out of inheriting. Equivalent to hiding a master layer for just this slide (PowerPoint-style).
boolean
When
false, this slide does not composite its layout’s master layers. Defaults to true.SlideSizePreset
Pass one of these preset ids tosize on a slide to set its canvas dimensions in one step.