LiSA Social Commerce
Developers
Developers
  • Developers
  • Guides
    • Integration Guide
      • Web Integration
      • App Integration
        • Android
          • Communication
          • Storage
          • File Downloads
          • Theming
        • iOS
          • Communication
          • Storage
          • File Downloads
          • Theming
        • React Native
          • Communication
          • Storage
          • File Downloads
          • Theming
        • Picture in Picture
      • Entrypoints
        • Query Parameter (v1)
    • Player Communication
      • Message API Reference
        • App
          • App — Heartbeat
          • App — Message Acknowledge
          • App — Message Error
          • App — Listen
        • CTA
          • CTA — Link in Comments
          • CTA — Sponsor Badge
        • Cart — View Cart
        • Comments — Join
        • Media
          • Media — Complete
          • Media — Pause
          • Media — Progress
          • Media — Resume
        • Media Item
          • Media Item — Emoji
          • Media Item — Impression
        • Player
          • Player — Dismiss
          • Player — Native Picture-in-Picture (PiP)
          • Player — Pass Visual Viewport
          • Player — Request Visual Viewport
          • Player — UI Transition
        • Products
          • Products — Add to Cart
          • Products — Add to Wishlist
          • Products — Click
          • Products — Close Product List
          • Products — Emoji
          • Products — Emoji State Update
          • Products — Impression
          • Products — Open Product List
        • Stickers
          • Stickers — Activate
          • Stickers — Click
          • Stickers — Expire
          • Stickers — Impression
          • Stickers — Publish
          • Stickers — Unlock
          • Stickers — Unpublish
          • Stickers — Update
          • Stickers — Voucher Claim
        • Visitor — Pass User Context
        • Shared Legacy Message Properties
    • Products
      • Product Update Notification API
  • Widgets
    • Content Hub
    • Quick Start Guide
    • Appearance
      • Markup
      • Responsive design
    • Configuration options
      • Autoplay
      • Channel
      • Client
      • Data
      • Debug
      • Host node
      • Layout
      • Language
      • On
      • Player
      • Query string
      • Quick view
      • Sections
      • Store
      • Template
    • API reference
      • Library API reference
      • Player API reference
      • Quick View API reference
    • Customisations
      • Template
      • Bring your own template
      • Type definitions
    • Examples
    • Type definitions
      • Asset
      • Product
      • Other
    • Promo Widget
      • Quick Start Guide
      • Configuration options
        • Autoplay
        • Channel
        • Countdown (deprecated)
        • Enabled
        • Image modifier
        • Lead time
        • Live (deprecated)
        • Position
        • Replay (deprecated)
        • Show ID
        • URL
  • Media Player Introduction
    • Picture-in-Picture Mode
  • Analytics
  • REST API
    • Authentication
    • Rate limits
    • Response status and error codes
    • API Documentation
Powered by GitBook
On this page
  1. Widgets
  2. Customisations

Type definitions

This article describes the type definitions used by LiSA Library for the Handlebars.js templates' input objects.

According to your custom sections config (see Configuration options ), if provided, or the default sections config, LiSA Library creates an array of Section objects and passes it to the Handlebars.js template:

interface LibraryInputObject {
  sections: Section[];
}

Input object type definitions

Below you'll find the type definitions for all objects used by LiSA Library.

Asset

interface Asset {
  orientation: 'landscape' | 'portrait';
  type: 'image' | 'video';
  url: string;
}

Section

interface Section {
  items: Show[];
  title?: string;
  variations: string[];
}

Show

interface Show {
  asset?: Asset;
  date?: string;
  hosts?: UserShortProfile[];
  id: string;
  description?: string;
  preview?: Asset;
  state: ShowState;
  tag?: string;
  title?: string;
  variations?: string[];
}

ShowState

enum ShowState {
  LIVE = "live",
  POST_SHOW = "postShow",
  PRE_SHOW = "preShow",
  REPLAY = "replay"
}

UserShortProfile

interface UserShortProfile {
  active?: boolean;
  avatar?: string;
  id: string;
  displayName: string;
  username: string;
}
PreviousBring your own templateNextExamples

Last updated 1 year ago