From ef92a50b3545d25611b66384303af1c4549a6e5f Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 28 May 2024 19:56:32 +0000 Subject: [PATCH] chore: Publish pr-feature-user-interest --- .../core/Accessibility/index.md | 109 +-- .../core/Accessibility/schemas/index.md | 52 +- .../core/Account/index.md | 14 +- .../core/Advertising/index.md | 102 +-- .../core/Advertising/schemas/index.md | 14 +- .../core/Authentication/index.md | 51 +- .../core/Capabilities/index.md | 204 ++--- .../core/Capabilities/schemas/index.md | 62 +- .../core/Device/index.md | 229 ++--- .../core/Discovery/index.md | 834 ++++++++---------- .../core/Discovery/schemas/index.md | 49 +- .../core/Entertainment/schemas/index.md | 162 ++-- .../core/Entity/schemas/index.md | 226 +++-- .../core/Intents/schemas/index.md | 145 +-- .../core/Internal/index.md | 12 +- .../core/Keyboard/index.md | 38 +- .../core/Lifecycle/index.md | 139 +-- .../core/Lifecycle/schemas/index.md | 32 +- .../core/Localization/index.md | 87 +- .../core/Metrics/index.md | 198 ++--- .../core/Parameters/index.md | 34 +- .../core/Profile/index.md | 31 +- .../core/SecondScreen/index.md | 65 +- .../core/SecondScreen/schemas/index.md | 12 +- .../core/SecureStorage/index.md | 85 +- .../core/Types/schemas/index.md | 47 +- .../discovery/Accessibility/schemas/index.md | 52 +- .../discovery/Advertising/schemas/index.md | 14 +- .../discovery/Capabilities/schemas/index.md | 62 +- .../discovery/Content/index.md | 80 +- .../discovery/Discovery/schemas/index.md | 49 +- .../discovery/Entertainment/schemas/index.md | 162 ++-- .../discovery/Entity/schemas/index.md | 226 +++-- .../discovery/Intents/schemas/index.md | 145 +-- .../discovery/Lifecycle/schemas/index.md | 32 +- .../discovery/SecondScreen/schemas/index.md | 12 +- .../discovery/Types/schemas/index.md | 47 +- .../manage/Accessibility/schemas/index.md | 52 +- .../manage/Account/index.md | 16 +- .../manage/AcknowledgeChallenge/index.md | 121 +-- .../manage/Advertising/index.md | 37 +- .../manage/Advertising/schemas/index.md | 14 +- .../manage/AudioDescriptions/index.md | 15 +- .../manage/Capabilities/schemas/index.md | 62 +- .../manage/ClosedCaptions/index.md | 313 ++----- .../manage/Device/index.md | 29 +- .../manage/Discovery/index.md | 10 +- .../manage/Discovery/schemas/index.md | 49 +- .../manage/Entertainment/schemas/index.md | 162 ++-- .../manage/Entity/schemas/index.md | 226 +++-- .../manage/HDMIInput/index.md | 302 +++---- .../manage/Intents/schemas/index.md | 145 +-- .../manage/Keyboard/index.md | 191 ++-- .../manage/Lifecycle/schemas/index.md | 32 +- .../manage/Localization/index.md | 164 +--- .../manage/Metrics/index.md | 28 +- .../manage/PinChallenge/index.md | 139 ++- .../manage/Privacy/index.md | 196 +--- .../manage/SecondScreen/schemas/index.md | 12 +- .../manage/SecureStorage/index.md | 82 +- .../manage/Types/schemas/index.md | 47 +- .../manage/UserGrants/index.md | 173 ++-- .../manage/VoiceGuidance/index.md | 36 +- .../manage/Wifi/index.md | 165 ++-- .../specifications/firebolt-open-rpc.json | 2 +- .../firebolt-specification.json | 2 +- .../specifications/intents/index.md | 64 +- 67 files changed, 2923 insertions(+), 3877 deletions(-) diff --git a/apis/pr-feature-user-interest/core/Accessibility/index.md b/apis/pr-feature-user-interest/core/Accessibility/index.md index f83e7ebff..c7d07e6a1 100644 --- a/apis/pr-feature-user-interest/core/Accessibility/index.md +++ b/apis/pr-feature-user-interest/core/Accessibility/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Accessibility 1.2.0-feature-user-interest.7 +Version Accessibility 1.2.0-feature-user-interest.8 ## Table of Contents @@ -55,28 +55,21 @@ Get the user's preferred audio description settings To get the value of `audioDescriptionSettings` call the method like this: ```typescript -${method.signature} +function audioDescriptionSettings(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[AudioDescriptionSettings](#audiodescriptionsettings-1) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------------------------- | | uses | xrn:firebolt:capability:accessibility:audiodescriptions | - #### Examples - Getting the audio description settings JavaScript: @@ -86,7 +79,7 @@ import { Accessibility } from '@firebolt-js/sdk' let settings = await Accessibility.audioDescriptionSettings() console.log(settings) -```` +``` Value of `settings`: @@ -128,7 +121,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function audioDescriptionSettings(callback: (value) => ): Promise +function audioDescriptionSettings( + callback: (value) => AudioDescriptionSettings, +): Promise ``` Promise resolution: @@ -196,28 +191,21 @@ Response: Get the user's preferred closed-captions settings ```typescript -${method.signature} +function closedCaptions(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[ClosedCaptionsSettings](../Accessibility/schemas/#ClosedCaptionsSettings) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ---------------------------------------------------- | | uses | xrn:firebolt:capability:accessibility:closedcaptions | - #### Examples - Getting the closed captions settings JavaScript: @@ -227,7 +215,7 @@ import { Accessibility } from '@firebolt-js/sdk' let closedCaptionsSettings = await Accessibility.closedCaptions() console.log(closedCaptionsSettings) -```` +``` Value of `closedCaptionsSettings`: @@ -306,28 +294,21 @@ Get the user's preferred closed-captions settings To get the value of `closedCaptionsSettings` call the method like this: ```typescript -${method.signature} +function closedCaptionsSettings(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[ClosedCaptionsSettings](../Accessibility/schemas/#ClosedCaptionsSettings) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ---------------------------------------------------- | | uses | xrn:firebolt:capability:accessibility:closedcaptions | - #### Examples - Getting the closed captions settings JavaScript: @@ -337,7 +318,7 @@ import { Accessibility } from '@firebolt-js/sdk' let closedCaptionsSettings = await Accessibility.closedCaptionsSettings() console.log(closedCaptionsSettings) -```` +``` Value of `closedCaptionsSettings`: @@ -412,7 +393,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function closedCaptionsSettings(callback: (value) => ): Promise +function closedCaptionsSettings( + callback: (value) => ClosedCaptionsSettings, +): Promise ``` Promise resolution: @@ -623,28 +606,21 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Get the user's preferred voice guidance settings ```typescript -${method.signature} +function voiceGuidance(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[VoiceGuidanceSettings](../Accessibility/schemas/#VoiceGuidanceSettings) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------------------- | | uses | xrn:firebolt:capability:accessibility:voiceguidance | - #### Examples - Getting the voice guidance settings JavaScript: @@ -654,7 +630,7 @@ import { Accessibility } from '@firebolt-js/sdk' let settings = await Accessibility.voiceGuidance() console.log(settings) -```` +``` Value of `settings`: @@ -702,28 +678,21 @@ Get the user's preferred voice guidance settings To get the value of `voiceGuidanceSettings` call the method like this: ```typescript -${method.signature} +function voiceGuidanceSettings(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[VoiceGuidanceSettings](../Accessibility/schemas/#VoiceGuidanceSettings) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------------------- | | uses | xrn:firebolt:capability:accessibility:voiceguidance | - #### Examples - Getting the voice guidance settings JavaScript: @@ -733,7 +702,7 @@ import { Accessibility } from '@firebolt-js/sdk' let settings = await Accessibility.voiceGuidanceSettings() console.log(settings) -```` +``` Value of `settings`: @@ -777,7 +746,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function voiceGuidanceSettings(callback: (value) => ): Promise +function voiceGuidanceSettings( + callback: (value) => VoiceGuidanceSettings, +): Promise ``` Promise resolution: @@ -860,14 +831,10 @@ See: [voiceGuidanceSettings](#voiceguidancesettings) ### AudioDescriptionSettings -````typescript ```typescript - -```` - +type AudioDescriptionSettings = { + enabled: boolean // Whether or not audio descriptions should be enabled by default +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/Accessibility/schemas/index.md b/apis/pr-feature-user-interest/core/Accessibility/schemas/index.md index 502308a52..f0d1ddd31 100644 --- a/apis/pr-feature-user-interest/core/Accessibility/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Accessibility/schemas/index.md @@ -53,26 +53,24 @@ undefined ### VoiceGuidanceSettings -````typescript ```typescript - -```` - -```` +type VoiceGuidanceSettings = { + enabled: boolean // Whether or not voice guidance should be enabled by default + speed: VoiceSpeed // The speed at which voice guidance speech will be read back to the user +} +``` See also: - +[VoiceSpeed](#voicespeed) --- ### FontSize - - ```typescript -```` +``` --- @@ -120,31 +118,37 @@ See also: The default styles to use when displaying closed-captions -````typescript ```typescript - -```` - -```` - - +type ClosedCaptionsStyles = { + fontFamily?: string + fontSize?: number + fontColor?: string + fontEdge?: string + fontEdgeColor?: string + fontOpacity?: number + backgroundColor?: string + backgroundOpacity?: number + textAlign?: string + textAlignVertical?: string + windowColor?: string + windowOpacity?: number +} +``` --- ### ClosedCaptionsSettings - - -```typescript ```typescript - -```` - +type ClosedCaptionsSettings = { + enabled: boolean // Whether or not closed-captions should be enabled by default + styles: ClosedCaptionsStyles // The default styles to use when displaying closed-captions + preferredLanguages?: string[] +} ``` See also: - +[ClosedCaptionsStyles](#closedcaptionsstyles) --- -``` diff --git a/apis/pr-feature-user-interest/core/Account/index.md b/apis/pr-feature-user-interest/core/Account/index.md index f608e85a1..d9a054058 100644 --- a/apis/pr-feature-user-interest/core/Account/index.md +++ b/apis/pr-feature-user-interest/core/Account/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Account 1.2.0-feature-user-interest.7 +Version Account 1.2.0-feature-user-interest.8 ## Table of Contents @@ -43,15 +43,11 @@ Get the platform back-office account identifier To get the value of `id` call the method like this: ```typescript -${method.signature} +function id(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -111,15 +107,11 @@ Gets a unique id for the current app & account To get the value of `uid` call the method like this: ```typescript -${method.signature} +function uid(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | diff --git a/apis/pr-feature-user-interest/core/Advertising/index.md b/apis/pr-feature-user-interest/core/Advertising/index.md index e07f1d94e..619560ae3 100644 --- a/apis/pr-feature-user-interest/core/Advertising/index.md +++ b/apis/pr-feature-user-interest/core/Advertising/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Advertising 1.2.0-feature-user-interest.7 +Version Advertising 1.2.0-feature-user-interest.8 ## Table of Contents @@ -51,23 +51,17 @@ A module for platform provided advertising settings and functionality. Get the advertising ID ```typescript -${method.signature} +function advertisingId(options: AdvertisingIdOptions): Promise ``` Parameters: -| Param | Type | Required | Description | -| --------- | ---- | -------- | --------------------- | -| `options` | `` | false | AdvertisingId options | +| Param | Type | Required | Description | +| --------- | ----------------------------------------------- | -------- | --------------------- | +| `options` | [`AdvertisingIdOptions`](#advertisingidoptions) | false | AdvertisingId options | Promise resolution: -| Property | Type | Description | -| ---------- | ------ | ----------- | -| `ifa` | string | | -| `ifa_type` | string | | -| `lmt` | string | | - Capabilities: | Role | Capability | @@ -251,15 +245,11 @@ Response: Get the App's Bundle ID ```typescript -${method.signature} +function appBundleId(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -317,24 +307,17 @@ Response: Build configuration object for Ad Framework initialization ```typescript -${method.signature} +function config(options: AdConfigurationOptions): Promise ``` Parameters: -| Param | Type | Required | Description | -| --------- | ---- | -------- | --------------------- | -| `options` | `` | true | Configuration options | +| Param | Type | Required | Description | +| --------- | --------------------------------------------------- | -------- | --------------------- | +| `options` | [`AdConfigurationOptions`](#adconfigurationoptions) | true | Configuration options | Promise resolution: -```typescript -| Property | Type | Description | -|----------|------|-------------| -| `${property}` | ${type} | An opaque object represneting the AdConfiguration | - -``` - Capabilities: | Role | Capability | @@ -432,18 +415,11 @@ Response: Get the device advertising device attributes ```typescript -${method.signature} +function deviceAttributes(): Promise ``` Promise resolution: -```typescript -| Property | Type | Description | -|----------|------|-------------| -| `${property}` | ${type} | | - -``` - Capabilities: | Role | Capability | @@ -614,28 +590,21 @@ Get the advertising privacy and playback policy To get the value of `policy` call the method like this: ```typescript -${method.signature} +function policy(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[AdPolicy](#adpolicy) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------------------------------------------------------------------- | | uses | xrn:firebolt:capability:privacy:advertising
xrn:firebolt:capability:advertising:configuration | - #### Examples - Getting the advertising policy settings JavaScript: @@ -645,7 +614,7 @@ import { Advertising } from '@firebolt-js/sdk' let adPolicy = await Advertising.policy() console.log(adPolicy) -```` +``` Value of `adPolicy`: @@ -689,7 +658,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function policy(callback: (value) => ): Promise +function policy(callback: (value) => AdPolicy): Promise ``` Promise resolution: @@ -764,14 +733,13 @@ See: [policy](#policy) ### AdConfigurationOptions -````typescript ```typescript - -```` - -```` - - +type AdConfigurationOptions = { + coppa?: boolean // Whether or not the app requires US COPPA compliance. + environment?: 'prod' | 'test' // Whether the app is running in a production or test mode. + authenticationEntity?: string // The authentication provider, when it is separate entity than the app provider, e.g. an MVPD. +} +``` --- @@ -780,30 +748,24 @@ See: [policy](#policy) Describes various ad playback enforcement rules that the app should follow. ```typescript -```typescript - -```` - -```` +type AdPolicy = { + skipRestriction?: SkipRestriction // The advertisement skip restriction. + limitAdTracking?: boolean +} +``` See also: - +[SkipRestriction](../Advertising/schemas/#SkipRestriction) --- ### AdvertisingIdOptions - - -```typescript ```typescript - -```` - +type AdvertisingIdOptions = { + scope?: object // Provides the options to send scope type and id to select desired advertising id +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/Advertising/schemas/index.md b/apis/pr-feature-user-interest/core/Advertising/schemas/index.md index 8c7bb59f9..9fde10a33 100644 --- a/apis/pr-feature-user-interest/core/Advertising/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Advertising/schemas/index.md @@ -41,14 +41,12 @@ Applies to fast-forward/rewind (e.g. trick mode), seeking over an entire opportu Namespace: `xrn:advertising:policy:skipRestriction:` ```typescript -SkipRestriction Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| ADS_UNWATCHED | adsUnwatched | -| ADS_ALL | adsAll | -| ALL | all | +SkipRestriction: { + NONE: 'none', + ADS_UNWATCHED: 'adsUnwatched', + ADS_ALL: 'adsAll', + ALL: 'all', +}, ``` diff --git a/apis/pr-feature-user-interest/core/Authentication/index.md b/apis/pr-feature-user-interest/core/Authentication/index.md index 99ac79450..2d438fec8 100644 --- a/apis/pr-feature-user-interest/core/Authentication/index.md +++ b/apis/pr-feature-user-interest/core/Authentication/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Authentication 1.2.0-feature-user-interest.7 +Version Authentication 1.2.0-feature-user-interest.8 ## Table of Contents @@ -44,15 +44,11 @@ A module for acquiring authentication tokens. Get a device token scoped to the current app. ```typescript -${method.signature} +function device(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -110,15 +106,11 @@ Response: Get a root device token. ```typescript -${method.signature} +function root(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -176,15 +168,11 @@ Response: Get a destributor session token. ```typescript -${method.signature} +function session(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -242,27 +230,18 @@ Response: Get a specific `type` of authentication token ```typescript -${method.signature} +function token(type: TokenType, options: object): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------- | ----------------------- | ------------------------------------------- | --------------------------------------------------------------------------- | ----------- | -| `type` | `` | true | What type of token to get values: `'platform' \| 'device' \| 'distributor'` | -| `options` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | false | Additional options for acquiring the token. | +| Param | Type | Required | Description | +| --------- | ------------------------- | -------- | -------------------------------------------------------------------------------- | +| `type` | [`TokenType`](#tokentype) | true | What type of token to get
values: `'platform' \| 'device' \| 'distributor'` | +| `options` | `object` | false | Additional options for acquiring the token. | Promise resolution: -| Property | Type | Description | -| --------- | ------ | ----------- | -| `value` | string | | -| `expires` | string | | -| `type` | string | | - Capabilities: | Role | Capability | @@ -441,13 +420,11 @@ Response: ### TokenType ```typescript -TokenType Enumeration: - -| key | value | -|-----|-------| -| PLATFORM | platform | -| DEVICE | device | -| DISTRIBUTOR | distributor | +TokenType: { + PLATFORM: 'platform', + DEVICE: 'device', + DISTRIBUTOR: 'distributor', +}, ``` diff --git a/apis/pr-feature-user-interest/core/Capabilities/index.md b/apis/pr-feature-user-interest/core/Capabilities/index.md index 6cea7d388..65c766300 100644 --- a/apis/pr-feature-user-interest/core/Capabilities/index.md +++ b/apis/pr-feature-user-interest/core/Capabilities/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Capabilities 1.2.0-feature-user-interest.7 +Version Capabilities 1.2.0-feature-user-interest.8 ## Table of Contents @@ -53,21 +53,17 @@ The Capabilities module provides information about which discreet unit of functi Returns whether a capability is available now. ```typescript -${method.signature} +function available(capability: Capability): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -175,22 +171,21 @@ Response: Returns whether the current App has a user grant for passed capability and role. ```typescript -${method.signature} +function granted( + capability: Capability, + options: CapabilityOption, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | -| `options` | `` | false | Capability options | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| `options` | [`CapabilityOption`](#capabilityoption) | false | Capability options | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -347,21 +342,17 @@ Response: Returns an array of CapabilityInfo objects for the passed in capabilities. ```typescript -${method.signature} +function info(capabilities: Capability[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------------- | ---- | -------- | ----------------------------------------------------------------- | -| `capabilities` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| -------------- | -------------- | -------- | ---------------------------------------------------------------------- | +| `capabilities` | `Capability[]` | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -907,22 +898,21 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Returns whether the current App has permission to the passed capability and role. ```typescript -${method.signature} +function permitted( + capability: Capability, + options: CapabilityOption, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | -| `options` | `` | false | Capability options | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| `options` | [`CapabilityOption`](#capabilityoption) | false | Capability options | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1082,21 +1072,17 @@ Response: Requests grants for all capability/role combinations in the roles array. ```typescript -${method.signature} +function request(grants: Permission[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | ----------- | -| `grants` | `` | true | | +| Param | Type | Required | Description | +| -------- | -------------- | -------- | ----------- | +| `grants` | `Permission[]` | true | | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -1199,21 +1185,17 @@ Response: Returns whether the platform supports the passed capability. ```typescript -${method.signature} +function supported(capability: Capability): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1321,37 +1303,29 @@ Response: ### available ```typescript -function listen('available', | `capability` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, () => void): Promise +function listen('available', capability: Capability, () => void): Promise ``` See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Event value: -````typescript -```typescript - -```` - -```` +[CapabilityInfo](../Capabilities/schemas/#CapabilityInfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------- | | uses | xrn:firebolt:capability:capabilities:info | - #### Examples - Platform token is available JavaScript: @@ -1359,10 +1333,10 @@ JavaScript: ```javascript import { Capabilities } from '@firebolt-js/sdk' -Capabilities.listen('available', value => { +Capabilities.listen('available', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -1439,39 +1413,30 @@ Response: ### granted ```typescript -function listen('granted', | `role` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, | `capability` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, () => void): Promise +function listen('granted', role: Role, capability: Capability, () => void): Promise ``` See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `role` | `` | true | values: `'use' \| 'manage' \| 'provide'` | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `role` | [`Role`](../Capabilities/schemas/#Role) | true |
values: `'use' \| 'manage' \| 'provide'` | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Event value: -````typescript -```typescript - -```` - -```` +[CapabilityInfo](../Capabilities/schemas/#CapabilityInfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------- | | uses | xrn:firebolt:capability:capabilities:info | - #### Examples - Postal code granted JavaScript: @@ -1479,10 +1444,10 @@ JavaScript: ```javascript import { Capabilities } from '@firebolt-js/sdk' -Capabilities.listen('granted', value => { +Capabilities.listen('granted', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -1556,39 +1521,30 @@ Response: ### revoked ```typescript -function listen('revoked', | `role` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, | `capability` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, () => void): Promise +function listen('revoked', role: Role, capability: Capability, () => void): Promise ``` See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `role` | `` | true | values: `'use' \| 'manage' \| 'provide'` | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `role` | [`Role`](../Capabilities/schemas/#Role) | true |
values: `'use' \| 'manage' \| 'provide'` | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Event value: -````typescript -```typescript - -```` - -```` +[CapabilityInfo](../Capabilities/schemas/#CapabilityInfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------- | | uses | xrn:firebolt:capability:capabilities:info | - #### Examples - Postal code revoked JavaScript: @@ -1596,10 +1552,10 @@ JavaScript: ```javascript import { Capabilities } from '@firebolt-js/sdk' -Capabilities.listen('revoked', value => { +Capabilities.listen('revoked', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -1677,37 +1633,29 @@ Response: ### unavailable ```typescript -function listen('unavailable', | `capability` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, () => void): Promise +function listen('unavailable', capability: Capability, () => void): Promise ``` See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Event value: -````typescript -```typescript - -```` - -```` +[CapabilityInfo](../Capabilities/schemas/#CapabilityInfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------- | | uses | xrn:firebolt:capability:capabilities:info | - #### Examples - Platform token is unavailable. JavaScript: @@ -1715,10 +1663,10 @@ JavaScript: ```javascript import { Capabilities } from '@firebolt-js/sdk' -Capabilities.listen('unavailable', value => { +Capabilities.listen('unavailable', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -1796,16 +1744,14 @@ Response: ### CapabilityOption -````typescript ```typescript - -```` - +type CapabilityOption = { + role?: Role // Role provides access level for the app for a given capability. +} ``` See also: - +[Role](../Capabilities/schemas/#Role) --- -``` diff --git a/apis/pr-feature-user-interest/core/Capabilities/schemas/index.md b/apis/pr-feature-user-interest/core/Capabilities/schemas/index.md index d047d1b15..a1a1d5851 100644 --- a/apis/pr-feature-user-interest/core/Capabilities/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Capabilities/schemas/index.md @@ -35,13 +35,11 @@ undefined Role provides access level for the app for a given capability. ```typescript -Role Enumeration: - -| key | value | -|-----|-------| -| USE | use | -| MANAGE | manage | -| PROVIDE | provide | +Role: { + USE: 'use', + MANAGE: 'manage', + PROVIDE: 'provide', +}, ``` @@ -52,16 +50,14 @@ Role Enumeration: Reasons why a Capability might not be invokable ```typescript -DenyReason Enumeration: - -| key | value | -|-----|-------| -| UNPERMITTED | unpermitted | -| UNSUPPORTED | unsupported | -| DISABLED | disabled | -| UNAVAILABLE | unavailable | -| GRANT_DENIED | grantDenied | -| UNGRANTED | ungranted | +DenyReason: { + UNPERMITTED: 'unpermitted', + UNSUPPORTED: 'unsupported', + DISABLED: 'disabled', + UNAVAILABLE: 'unavailable', + GRANT_DENIED: 'grantDenied', + UNGRANTED: 'ungranted', +}, ``` @@ -87,17 +83,22 @@ A Capability is a discrete unit of functionality that a Firebolt device might be ### CapabilityInfo -````typescript ```typescript - -```` - -```` +type CapabilityInfo = { + capability?: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. + supported: boolean // Provides info whether the capability is supported + available: boolean // Provides info whether the capability is available + use: object + manage: object + provide: object + details?: DenyReason[] // Reasons why a Capability might not be invokable +} +``` See also: - - +[Capability](#capability) +[DenyReason](#denyreason) --- @@ -106,16 +107,15 @@ See also: A capability combined with a Role, which an app may be permitted (by a distributor) or granted (by an end user). ```typescript -```typescript - -```` - +type Permission = { + role?: Role // Role provides access level for the app for a given capability. + capability: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. +} ``` See also: - - +[Role](#role) +[Capability](#capability) --- -``` diff --git a/apis/pr-feature-user-interest/core/Device/index.md b/apis/pr-feature-user-interest/core/Device/index.md index 4fee4d762..9130dead2 100644 --- a/apis/pr-feature-user-interest/core/Device/index.md +++ b/apis/pr-feature-user-interest/core/Device/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Device 1.2.0-feature-user-interest.7 +Version Device 1.2.0-feature-user-interest.8 ## Table of Contents @@ -72,28 +72,21 @@ Get the supported audio profiles To get the value of `audio` call the method like this: ```typescript -${method.signature} +function audio(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[AudioProfiles](#audioprofiles) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Getting the supported audio profiles JavaScript: @@ -103,7 +96,7 @@ import { Device } from '@firebolt-js/sdk' let supportedAudioProfiles = await Device.audio() console.log(supportedAudioProfiles) -```` +``` Value of `supportedAudioProfiles`: @@ -151,7 +144,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function audio(callback: (value) => ): Promise +function audio(callback: (value) => AudioProfiles): Promise ``` Promise resolution: @@ -227,15 +220,11 @@ Get the distributor ID for this device To get the value of `distributor` call the method like this: ```typescript -${method.signature} +function distributor(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -295,28 +284,21 @@ Get the supported HDCP profiles To get the value of `hdcp` call the method like this: ```typescript -${method.signature} +function hdcp(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[BooleanMap](../Types/schemas/#BooleanMap) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Getting the supported HDCP profiles JavaScript: @@ -326,7 +308,7 @@ import { Device } from '@firebolt-js/sdk' let supportedHdcpProfiles = await Device.hdcp() console.log(supportedHdcpProfiles) -```` +``` Value of `supportedHdcpProfiles`: @@ -370,7 +352,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function hdcp(callback: (value) => ): Promise +function hdcp(callback: (value) => BooleanMap): Promise ``` Promise resolution: @@ -442,28 +424,21 @@ Get the supported HDR profiles To get the value of `hdr` call the method like this: ```typescript -${method.signature} +function hdr(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[BooleanMap](../Types/schemas/#BooleanMap) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Getting the supported HDR profiles JavaScript: @@ -473,7 +448,7 @@ import { Device } from '@firebolt-js/sdk' let supportedHdrProfiles = await Device.hdr() console.log(supportedHdrProfiles) -```` +``` Value of `supportedHdrProfiles`: @@ -521,7 +496,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function hdr(callback: (value) => ): Promise +function hdr(callback: (value) => BooleanMap): Promise ``` Promise resolution: @@ -597,15 +572,11 @@ Get the platform back-office device identifier To get the value of `id` call the method like this: ```typescript -${method.signature} +function id(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -719,15 +690,11 @@ Get the device make To get the value of `make` call the method like this: ```typescript -${method.signature} +function make(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -787,15 +754,11 @@ Get the device model To get the value of `model` call the method like this: ```typescript -${method.signature} +function model(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -855,15 +818,11 @@ The human readable name of the device To get the value of `name` call the method like this: ```typescript -${method.signature} +function name(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1073,16 +1032,11 @@ Get the current network status and type To get the value of `network` call the method like this: ```typescript -${method.signature} +function network(): Promise ``` Promise resolution: -| Property | Type | Description | -| -------- | ---- | ----------- | -| `state` | | | -| `type` | | | - Capabilities: | Role | Capability | @@ -1144,10 +1098,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function network(callback: (value) => | Property | Type | Description | -|----------|------|-------------| -| `${property}` | [${type}](${type.link}) | ${description} | -): Promise +function network(callback: (value) => object): Promise ``` Promise resolution: @@ -1275,15 +1226,11 @@ Get the platform ID for this device To get the value of `platform` call the method like this: ```typescript -${method.signature} +function platform(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1343,28 +1290,21 @@ Get the current screen resolution To get the value of `screenResolution` call the method like this: ```typescript -${method.signature} +function screenResolution(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[Resolution](#resolution) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Getting the screen resolution JavaScript: @@ -1374,7 +1314,7 @@ import { Device } from '@firebolt-js/sdk' let screenResolution = await Device.screenResolution() console.log(screenResolution) -```` +``` Value of `screenResolution`: @@ -1412,7 +1352,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function screenResolution(callback: (value) => ): Promise +function screenResolution(callback: (value) => Resolution): Promise ``` Promise resolution: @@ -1478,15 +1418,11 @@ Get the device sku To get the value of `sku` call the method like this: ```typescript -${method.signature} +function sku(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1546,15 +1482,11 @@ Get the device type To get the value of `type` call the method like this: ```typescript -${method.signature} +function type(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1614,15 +1546,11 @@ Gets a unique id for the current app & device To get the value of `uid` call the method like this: ```typescript -${method.signature} +function uid(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1682,19 +1610,11 @@ Get the SDK, OS and other version info To get the value of `version` call the method like this: ```typescript -${method.signature} +function version(): Promise ``` Promise resolution: -| Property | Type | Description | -| ---------- | ------ | ---------------------------------------------------------------- | -| `sdk` | | The Firebolt SDK version | -| `api` | | The lateset Firebolt API version supported by the curent device. | -| `firmware` | | The device firmware version. | -| `os` | | **Deprecated** Use `firmware`, instead. | -| `debug` | string | Detail version as a string, for debugging purposes | - Capabilities: | Role | Capability | @@ -1806,28 +1726,21 @@ Get the current video resolution To get the value of `videoResolution` call the method like this: ```typescript -${method.signature} +function videoResolution(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[Resolution](#resolution) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Getting the video resolution JavaScript: @@ -1837,7 +1750,7 @@ import { Device } from '@firebolt-js/sdk' let videoResolution = await Device.videoResolution() console.log(videoResolution) -```` +``` Value of `videoResolution`: @@ -1875,7 +1788,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function videoResolution(callback: (value) => ): Promise +function videoResolution(callback: (value) => Resolution): Promise ``` Promise resolution: @@ -1950,10 +1863,6 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -2040,12 +1949,10 @@ See: [videoResolution](#videoresolution) The type of network that is currently active ```typescript -NetworkState Enumeration: - -| key | value | -|-----|-------| -| CONNECTED | connected | -| DISCONNECTED | disconnected | +NetworkState: { + CONNECTED: 'connected', + DISCONNECTED: 'disconnected', +}, ``` @@ -2056,13 +1963,11 @@ NetworkState Enumeration: The type of network that is currently active ```typescript -NetworkType Enumeration: - -| key | value | -|-----|-------| -| WIFI | wifi | -| ETHERNET | ethernet | -| HYBRID | hybrid | +NetworkType: { + WIFI: 'wifi', + ETHERNET: 'ethernet', + HYBRID: 'hybrid', +}, ``` @@ -2070,32 +1975,36 @@ NetworkType Enumeration: ### AudioProfiles -````typescript ```typescript +type AudioProfiles = { + STEREO?: boolean -```` + DOLBY_DIGITAL_5_1?: boolean -```` + DOLBY_DIGITAL_7_1?: boolean -See also: + DOLBY_DIGITAL_5_1_PLUS?: boolean + DOLBY_DIGITAL_7_1_PLUS?: boolean + DOLBY_ATMOS?: boolean +} +``` +See also: + +[BooleanMap](../Types/schemas/#BooleanMap) +[AudioProfile](../Types/schemas/#AudioProfile) --- ### Resolution - - -```typescript ```typescript - -```` - +type Resolution = [ + number, // undefined item + number, // undefined item +] ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/Discovery/index.md b/apis/pr-feature-user-interest/core/Discovery/index.md index 5a90406a9..a1b8c8716 100644 --- a/apis/pr-feature-user-interest/core/Discovery/index.md +++ b/apis/pr-feature-user-interest/core/Discovery/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Discovery 1.2.0-feature-user-interest.7 +Version Discovery 1.2.0-feature-user-interest.8 ## Table of Contents @@ -83,15 +83,11 @@ Apps should provide prices in the same currency presented in the app. If multipl Clear both availabilities and entitlements from the subscriber. This is equivalent of calling `Discovery.contentAccess({ availabilities: [], entitlements: []})`. This is typically called when the user signs out of an account. ```typescript -${method.signature} +function clearContentAccess(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -149,21 +145,17 @@ Response: Inform the platform of what content the user can access either by discovering it or consuming it. Availabilities determine which content is discoverable to a user, while entitlements determine if the user can currently consume that content. Content can be available but not entitled, this means that user can see the content but when they try to open it they must gain an entitlement either through purchase or subscription upgrade. In case the access changed off-device, this API should be called any time the app comes to the foreground to refresh the access. This API should also be called any time the availabilities or entitlements change within the app for any reason. Typical reasons may include the user signing into an account or upgrading a subscription. Less common cases can cause availabilities to change, such as moving to a new service location. When availabilities or entitlements are removed from the subscriber (such as when the user signs out), then an empty array should be given. To clear both, use the Discovery.clearContentAccess convenience API. ```typescript -${method.signature} +function contentAccess(ids: ContentAccessIdentifiers): Promise ``` Parameters: -| Param | Type | Required | Description | -| ----- | ---- | -------- | -------------------------------------------------------------------------------------------------- | -| `ids` | `` | true | A list of identifiers that represent content that is discoverable or consumable for the subscriber | +| Param | Type | Required | Description | +| ----- | ------------------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------- | +| `ids` | [`ContentAccessIdentifiers`](#contentaccessidentifiers) | true | A list of identifiers that represent content that is discoverable or consumable for the subscriber | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -493,21 +485,17 @@ Response: Inform the platform of the users latest entitlements w/in this app. ```typescript -${method.signature} +function entitlements(entitlements: Entitlement[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------------- | ---- | -------- | ---------------------------- | -| `entitlements` | `` | true | Array of entitlement objects | +| Param | Type | Required | Description | +| -------------- | --------------- | -------- | ---------------------------- | +| `entitlements` | `Entitlement[]` | true | Array of entitlement objects | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -596,43 +584,43 @@ To allow the platform to pull data, use `entityInfo(callback: Function)`: ```typescript function entityInfo( - callback: (parameters: EntityInfoParameters) => Promise<>, + callback: (parameters: EntityInfoParameters) => Promise, ): Promise ``` Parameters: -| Param | Type | Required | Summary | -| ---------- | ---------- | -------- | ------------------------------------------- | -| `callback` | `Function` | Yes | A callback for the platform to pull objects | +| Param | Type | Required | Summary | +| ---------- | ---------- | -------- | ------------------------------------------------------------ | +| `callback` | `Function` | Yes | A callback for the platform to pull EntityInfoResult objects | Callback parameters: -| Param | Type | Required | Summary | -| ------------ | ---------------------- | -------- | ----------------------------------------------------------- | -| `parameters` | `EntityInfoParameters` | Yes | An object describing the platform's query for an `` object. | +| Param | Type | Required | Summary | +| ------------ | ---------------------- | -------- | --------------------------------------------------------------------------- | +| `parameters` | `EntityInfoParameters` | Yes | An object describing the platform's query for an `EntityInfoResult` object. | -````typescript ```typescript - -```` - -```` +type EntityInfoParameters = { + entityId: string + assetId?: string +} +``` Callback promise resolution: ```typescript -```typescript - -```` - -```` - +type EntityInfoResult = { + expires: string + entity: EntityInfo // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. + related?: EntityInfo[] +} +``` +See also: [EntityInfoResult](#entityinforesult-1) #### Examples - Send entity info for a movie to the platform. JavaScript: @@ -640,65 +628,54 @@ JavaScript: ```javascript import { Discovery } from '@firebolt-js/sdk' -let success = await Discovery.entityInfo(async parameters => { +let success = await Discovery.entityInfo(async (parameters) => { console.log(parameters.entityId) console.log(parameters.assetId) return { - "expires": "2025-01-01T00:00:00.000Z", - "entity": { - "identifiers": { - "entityId": "345" - }, - "entityType": "program", - "programType": "movie", - "title": "Cool Runnings", - "synopsis": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.", - "releaseDate": "1993-01-01T00:00:00.000Z", - "contentRatings": [ - { - "scheme": "US-Movie", - "rating": "PG" - }, - { - "scheme": "CA-Movie", - "rating": "G" - } - ], - "waysToWatch": [ - { - "identifiers": { - "assetId": "123" - }, - "expires": "2025-01-01T00:00:00.000Z", - "entitled": true, - "entitledExpires": "2025-01-01T00:00:00.000Z", - "offeringType": "buy", - "price": 2.99, - "videoQuality": [ - "UHD" - ], - "audioProfile": [ - "dolbyAtmos" - ], - "audioLanguages": [ - "en" - ], - "closedCaptions": [ - "en" - ], - "subtitles": [ - "es" - ], - "audioDescriptions": [ - "en" - ] - } - ] - } - } + expires: '2025-01-01T00:00:00.000Z', + entity: { + identifiers: { + entityId: '345', + }, + entityType: 'program', + programType: 'movie', + title: 'Cool Runnings', + synopsis: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.', + releaseDate: '1993-01-01T00:00:00.000Z', + contentRatings: [ + { + scheme: 'US-Movie', + rating: 'PG', + }, + { + scheme: 'CA-Movie', + rating: 'G', + }, + ], + waysToWatch: [ + { + identifiers: { + assetId: '123', + }, + expires: '2025-01-01T00:00:00.000Z', + entitled: true, + entitledExpires: '2025-01-01T00:00:00.000Z', + offeringType: 'buy', + price: 2.99, + videoQuality: ['UHD'], + audioProfile: ['dolbyAtmos'], + audioLanguages: ['en'], + closedCaptions: ['en'], + subtitles: ['es'], + audioDescriptions: ['en'], + }, + ], + }, + } }) console.log(success) -```` +```
JSON-RPC: @@ -1276,36 +1253,36 @@ Push Request:
-To push data to the platform, e.g. during app launch, use `entityInfo(result: )`: +To push data to the platform, e.g. during app launch, use `entityInfo(result: EntityInfoResult)`: ```typescript -function entityInfo(result: ): Promise +function entityInfo(result: EntityInfoResult): Promise ``` Parameters: -| Param | Type | Required | Summary | -| -------- | ---- | -------- | ----------------------------------- | -| `result` | `` | Yes | The `` data to push to the platform | +| Param | Type | Required | Summary | +| -------- | ------------------ | -------- | --------------------------------------------------- | +| `result` | `EntityInfoResult` | Yes | The `EntityInfoResult` data to push to the platform | -````typescript ```typescript - -```` - -```` +type EntityInfoResult = { + expires: string + entity: EntityInfo // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. + related?: EntityInfo[] +} +``` See also: [EntityInfo](#entityinfo-1) Promise resolution: -| Type | Summary | -| ---- | ------- | +| Type | Summary | +| --------- | -------------------------------------- | | `boolean` | Whether or not the push was successful | #### Examples - Send entity info for a movie to the platform. JavaScript: @@ -1314,60 +1291,49 @@ JavaScript: import { Discovery } from '@firebolt-js/sdk' let success = await Discovery.entityInfo({ - "expires": "2025-01-01T00:00:00.000Z", - "entity": { - "identifiers": { - "entityId": "345" - }, - "entityType": "program", - "programType": "movie", - "title": "Cool Runnings", - "synopsis": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.", - "releaseDate": "1993-01-01T00:00:00.000Z", - "contentRatings": [ - { - "scheme": "US-Movie", - "rating": "PG" - }, - { - "scheme": "CA-Movie", - "rating": "G" - } - ], - "waysToWatch": [ - { - "identifiers": { - "assetId": "123" - }, - "expires": "2025-01-01T00:00:00.000Z", - "entitled": true, - "entitledExpires": "2025-01-01T00:00:00.000Z", - "offeringType": "buy", - "price": 2.99, - "videoQuality": [ - "UHD" - ], - "audioProfile": [ - "dolbyAtmos" - ], - "audioLanguages": [ - "en" - ], - "closedCaptions": [ - "en" - ], - "subtitles": [ - "es" - ], - "audioDescriptions": [ - "en" - ] - } - ] - } - }) + expires: '2025-01-01T00:00:00.000Z', + entity: { + identifiers: { + entityId: '345', + }, + entityType: 'program', + programType: 'movie', + title: 'Cool Runnings', + synopsis: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.', + releaseDate: '1993-01-01T00:00:00.000Z', + contentRatings: [ + { + scheme: 'US-Movie', + rating: 'PG', + }, + { + scheme: 'CA-Movie', + rating: 'G', + }, + ], + waysToWatch: [ + { + identifiers: { + assetId: '123', + }, + expires: '2025-01-01T00:00:00.000Z', + entitled: true, + entitledExpires: '2025-01-01T00:00:00.000Z', + offeringType: 'buy', + price: 2.99, + videoQuality: ['UHD'], + audioProfile: ['dolbyAtmos'], + audioLanguages: ['en'], + closedCaptions: ['en'], + subtitles: ['es'], + audioDescriptions: ['en'], + }, + ], + }, +}) console.log(success) -```` +``` Value of `success`: @@ -1913,22 +1879,18 @@ For the Primary Experience, the appId can be any one of: - xrn:firebolt:application-type:settings ```typescript -${method.signature} +function launch(appId: string, intent: NavigationIntent): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | -------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `appId` | `string` | true | The durable app Id of the app to launch | -| `intent` | `` | false | An optional `NavigationIntent` with details about what part of the app to show first, and context around how/why it was launched | +| Param | Type | Required | Description | +| -------- | ---------------------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- | +| `appId` | `string` | true | The durable app Id of the app to launch | +| `intent` | [`NavigationIntent`](../Intents/schemas/#NavigationIntent) | false | An optional `NavigationIntent` with details about what part of the app to show first, and context around how/why it was launched | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -2661,28 +2623,21 @@ get the discovery policy To get the value of `policy` call the method like this: ```typescript -${method.signature} +function policy(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[DiscoveryPolicy](#discoverypolicy) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ---------------------------------------- | | uses | xrn:firebolt:capability:discovery:policy | - #### Examples - Getting the discovery policy JavaScript: @@ -2692,7 +2647,7 @@ import { Discovery } from '@firebolt-js/sdk' let policy = await Discovery.policy() console.log(policy) -```` +``` Value of `policy`: @@ -2738,7 +2693,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function policy(callback: (value) => ): Promise +function policy(callback: (value) => DiscoveryPolicy): Promise ``` Promise resolution: @@ -2842,43 +2797,46 @@ To allow the platform to pull data, use `purchasedContent(callback: Function)`: ```typescript function purchasedContent( - callback: (parameters: PurchasedContentParameters) => Promise<>, + callback: ( + parameters: PurchasedContentParameters, + ) => Promise, ): Promise ``` Parameters: -| Param | Type | Required | Summary | -| ---------- | ---------- | -------- | ------------------------------------------- | -| `callback` | `Function` | Yes | A callback for the platform to pull objects | +| Param | Type | Required | Summary | +| ---------- | ---------- | -------- | ------------------------------------------------------------------ | +| `callback` | `Function` | Yes | A callback for the platform to pull PurchasedContentResult objects | Callback parameters: -| Param | Type | Required | Summary | -| ------------ | ---------------------------- | -------- | ----------------------------------------------------------- | -| `parameters` | `PurchasedContentParameters` | Yes | An object describing the platform's query for an `` object. | +| Param | Type | Required | Summary | +| ------------ | ---------------------------- | -------- | --------------------------------------------------------------------------------- | +| `parameters` | `PurchasedContentParameters` | Yes | An object describing the platform's query for an `PurchasedContentResult` object. | -````typescript ```typescript - -```` - -```` +type PurchasedContentParameters = { + limit: number + offeringType?: OfferingType // The offering type of the WayToWatch. + programType?: ProgramType // In the case of a program `entityType`, specifies the program type. +} +``` Callback promise resolution: ```typescript -```typescript - -```` - -```` - +type PurchasedContentResult = { + expires: string + totalCount: number + entries: EntityInfo[] +} +``` +See also: [PurchasedContentResult](#purchasedcontentresult-1) #### Examples - Inform the platform of the user's purchased content JavaScript: @@ -2886,68 +2844,57 @@ JavaScript: ```javascript import { Discovery } from '@firebolt-js/sdk' -let success = await Discovery.purchasedContent(async parameters => { +let success = await Discovery.purchasedContent(async (parameters) => { console.log(parameters.entityId) console.log(parameters.assetId) return { - "totalCount": 10, - "expires": "2025-01-01T00:00:00.000Z", - "entries": [ - { - "identifiers": { - "entityId": "345" - }, - "entityType": "program", - "programType": "movie", - "title": "Cool Runnings", - "synopsis": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.", - "releaseDate": "1993-01-01T00:00:00.000Z", - "contentRatings": [ - { - "scheme": "US-Movie", - "rating": "PG" - }, - { - "scheme": "CA-Movie", - "rating": "G" - } - ], - "waysToWatch": [ - { - "identifiers": { - "assetId": "123" - }, - "expires": "2025-01-01T00:00:00.000Z", - "entitled": true, - "entitledExpires": "2025-01-01T00:00:00.000Z", - "offeringType": "buy", - "price": 2.99, - "videoQuality": [ - "UHD" - ], - "audioProfile": [ - "dolbyAtmos" - ], - "audioLanguages": [ - "en" - ], - "closedCaptions": [ - "en" - ], - "subtitles": [ - "es" - ], - "audioDescriptions": [ - "en" - ] - } - ] - } - ] - } + totalCount: 10, + expires: '2025-01-01T00:00:00.000Z', + entries: [ + { + identifiers: { + entityId: '345', + }, + entityType: 'program', + programType: 'movie', + title: 'Cool Runnings', + synopsis: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.', + releaseDate: '1993-01-01T00:00:00.000Z', + contentRatings: [ + { + scheme: 'US-Movie', + rating: 'PG', + }, + { + scheme: 'CA-Movie', + rating: 'G', + }, + ], + waysToWatch: [ + { + identifiers: { + assetId: '123', + }, + expires: '2025-01-01T00:00:00.000Z', + entitled: true, + entitledExpires: '2025-01-01T00:00:00.000Z', + offeringType: 'buy', + price: 2.99, + videoQuality: ['UHD'], + audioProfile: ['dolbyAtmos'], + audioLanguages: ['en'], + closedCaptions: ['en'], + subtitles: ['es'], + audioDescriptions: ['en'], + }, + ], + }, + ], + } }) console.log(success) -```` +```
JSON-RPC: @@ -3038,36 +2985,36 @@ Push Request:
-To push data to the platform, e.g. during app launch, use `purchasedContent(result: )`: +To push data to the platform, e.g. during app launch, use `purchasedContent(result: PurchasedContentResult)`: ```typescript -function purchasedContent(result: ): Promise +function purchasedContent(result: PurchasedContentResult): Promise ``` Parameters: -| Param | Type | Required | Summary | -| -------- | ---- | -------- | ----------------------------------- | -| `result` | `` | Yes | The `` data to push to the platform | +| Param | Type | Required | Summary | +| -------- | ------------------------ | -------- | --------------------------------------------------------- | +| `result` | `PurchasedContentResult` | Yes | The `PurchasedContentResult` data to push to the platform | -````typescript ```typescript - -```` - -```` +type PurchasedContentResult = { + expires: string + totalCount: number + entries: EntityInfo[] +} +``` See also: [PurchasedContent](#purchasedcontent-1) Promise resolution: -| Type | Summary | -| ---- | ------- | +| Type | Summary | +| --------- | -------------------------------------- | | `boolean` | Whether or not the push was successful | #### Examples - Inform the platform of the user's purchased content JavaScript: @@ -3076,63 +3023,52 @@ JavaScript: import { Discovery } from '@firebolt-js/sdk' let success = await Discovery.purchasedContent({ - "totalCount": 10, - "expires": "2025-01-01T00:00:00.000Z", - "entries": [ - { - "identifiers": { - "entityId": "345" - }, - "entityType": "program", - "programType": "movie", - "title": "Cool Runnings", - "synopsis": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.", - "releaseDate": "1993-01-01T00:00:00.000Z", - "contentRatings": [ - { - "scheme": "US-Movie", - "rating": "PG" - }, - { - "scheme": "CA-Movie", - "rating": "G" - } - ], - "waysToWatch": [ - { - "identifiers": { - "assetId": "123" - }, - "expires": "2025-01-01T00:00:00.000Z", - "entitled": true, - "entitledExpires": "2025-01-01T00:00:00.000Z", - "offeringType": "buy", - "price": 2.99, - "videoQuality": [ - "UHD" - ], - "audioProfile": [ - "dolbyAtmos" - ], - "audioLanguages": [ - "en" - ], - "closedCaptions": [ - "en" - ], - "subtitles": [ - "es" - ], - "audioDescriptions": [ - "en" - ] - } - ] - } - ] - }) + totalCount: 10, + expires: '2025-01-01T00:00:00.000Z', + entries: [ + { + identifiers: { + entityId: '345', + }, + entityType: 'program', + programType: 'movie', + title: 'Cool Runnings', + synopsis: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Pulvinar sapien et ligula ullamcorper malesuada proin libero nunc.', + releaseDate: '1993-01-01T00:00:00.000Z', + contentRatings: [ + { + scheme: 'US-Movie', + rating: 'PG', + }, + { + scheme: 'CA-Movie', + rating: 'G', + }, + ], + waysToWatch: [ + { + identifiers: { + assetId: '123', + }, + expires: '2025-01-01T00:00:00.000Z', + entitled: true, + entitledExpires: '2025-01-01T00:00:00.000Z', + offeringType: 'buy', + price: 2.99, + videoQuality: ['UHD'], + audioProfile: ['dolbyAtmos'], + audioLanguages: ['en'], + closedCaptions: ['en'], + subtitles: ['es'], + audioDescriptions: ['en'], + }, + ], + }, + ], +}) console.log(success) -```` +``` Value of `success`: @@ -3218,21 +3154,17 @@ Response: Inform the platform that your user is signed in, for increased visibility in search & discovery. Sign-in state is used separately from what content can be access through entitlements and availabilities. Sign-in state may be used when deciding whether to choose this app to handle a user intent. For instance, if the user tries to launch something generic like playing music from an artist, only a signed-in app will be chosen. If the user wants to tune to a channel, only a signed-in app will be chosen to handle that intent. While signIn can optionally include entitlements as those typically change at signIn time, it is recommended to make a separate call to Discovery.contentAccess for entitlements. signIn is not only for when a user explicitly enters login credentials. If an app does not require any credentials from the user to consume content, such as in a free app, then the app should call signIn immediately on launch. ```typescript -${method.signature} +function signIn(entitlements: Entitlement[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------------- | ---- | -------- | ------------------------------------------------------------------------------------------------------- | -| `entitlements` | `` | false | Optional array of Entitlements, in case of a different user account, or a long time since last sign-in. | +| Param | Type | Required | Description | +| -------------- | --------------- | -------- | ------------------------------------------------------------------------------------------------------- | +| `entitlements` | `Entitlement[]` | false | Optional array of Entitlements, in case of a different user account, or a long time since last sign-in. | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3346,15 +3278,11 @@ Response: Inform the platform that your user has signed out. See `Discovery.signIn` for more details on how the sign-in state is used.signOut will NOT clear entitlements, the app should make a separate call to Discovery.clearContentAccess. Apps should also call signOut when a login token has expired and the user is now in a signed-out state. ```typescript -${method.signature} +function signOut(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3412,23 +3340,23 @@ Response: Send an entity that the user has expressed interest in to the platform. ```typescript -${method.signature} +function userInterest( + type: InterestType, + reason: InterestReason, + entity: EntityDetails, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | ------------------------------------------------- | -| `type` | `` | true | values: `'interest' \| 'disinterest'` | -| `reason` | `` | true | values: `'playlist' \| 'reaction' \| 'recording'` | -| `entity` | `` | true | | +| Param | Type | Required | Description | +| -------- | -------------------------------------------------------- | -------- | ------------------------------------------------------ | +| `type` | [`InterestType`](../Discovery/schemas/#InterestType) | true |
values: `'interest' \| 'disinterest'` | +| `reason` | [`InterestReason`](../Discovery/schemas/#InterestReason) | true |
values: `'playlist' \| 'reaction' \| 'recording'` | +| `entity` | [`EntityDetails`](../Entity/schemas/#EntityDetails) | true | | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -3507,20 +3435,13 @@ Internal API for .onRequestUserInterest Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -3570,17 +3491,13 @@ Internal API for .onRequestUserInterest Provider to send back response. Parameters: -| Param | Type | Required | Description | -| --------------- | -------- | -------- | ----------- | -| `correlationId` | `string` | true | | -| `result` | `` | true | | +| Param | Type | Required | Description | +| --------------- | --------------------------------------------------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `result` | [`EntityDetails`](../Entity/schemas/#EntityDetails) | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -3645,7 +3562,12 @@ Response: Notify the platform that content was partially or completely watched ```typescript -${method.signature} +function watched( + entityId: string, + progress: number, + completed: boolean, + watchedOn: string, +): Promise ``` Parameters: @@ -3659,10 +3581,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3730,27 +3648,25 @@ Response: Suggest a call-to-action for this app on the platform home screen ```typescript -${method.signature} +function watchNext( + title: LocalizedString, + identifiers: Entity, + expires: string, + images: object, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------- | ----------------------- | --------------------------------------- | -------------------------------------------------------------------------------------- | ----------- | -| `title` | `` | true | The title of this call to action | -| `identifiers` | `` | true | A set of content identifiers for this call to action | -| `expires` | `string` | false | When this call to action should no longer be presented to users
format: date-time | -| `images` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | false | A set of images for this call to action | +| Param | Type | Required | Description | +| ------------- | ------------------------------------------------------ | -------- | -------------------------------------------------------------------------------------- | +| `title` | [`LocalizedString`](../Types/schemas/#LocalizedString) | true | The title of this call to action | +| `identifiers` | [`Entity`](../Entity/schemas/#Entity) | true | A set of content identifiers for this call to action | +| `expires` | `string` | false | When this call to action should no longer be presented to users
format: date-time | +| `images` | `object` | false | A set of images for this call to action | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3897,9 +3813,7 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -```typescript - -``` +[NavigationIntent](../Intents/schemas/#NavigationIntent) Capabilities: @@ -3992,11 +3906,6 @@ Parameters: Result: -| Property | Type | Description | -| --------------- | ------ | ----------- | -| `correlationId` | string | | -| `parameters` | | | - Capabilities: | Role | Capability | @@ -4047,7 +3956,12 @@ Response: The provider interface for the `xrn:firebolt:capability:discovery:user-interest` capability. ```typescript - +interface UserInterestProvider { + userInterest( + parameters: UserInterestProviderParameters, + session: ProviderSession, + ): Promise +} ``` Usage: @@ -4194,134 +4108,118 @@ Response: ### DiscoveryPolicy -````typescript ```typescript - -```` - -```` - - +type DiscoveryPolicy = { + enableRecommendations: boolean // Whether or not to the user has enabled history-based recommendations + shareWatchHistory: boolean // Whether or not the user has enabled app watch history data to be shared with the platform + rememberWatchedPrograms: boolean // Whether or not the user has enabled watch history +} +``` --- ### Availability - - -```typescript ```typescript - -```` - -```` - - +type Availability = { + type: 'channel-lineup' | 'program-lineup' + id: string + catalogId?: string + startTime?: string + endTime?: string +} +``` --- ### UserInterestProviderParameters - - ```typescript -```typescript - -```` - -```` +type UserInterestProviderParameters = { + type?: InterestType + reason?: InterestReason +} +``` See also: - - +[InterestType](../Discovery/schemas/#InterestType) +[InterestReason](../Discovery/schemas/#InterestReason) --- ### PurchasedContentParameters - - -```typescript ```typescript - -```` - -```` +type PurchasedContentParameters = { + limit: number + offeringType?: OfferingType // The offering type of the WayToWatch. + programType?: ProgramType // In the case of a program `entityType`, specifies the program type. +} +``` See also: - - +[OfferingType](../Entertainment/schemas/#OfferingType) +[ProgramType](../Entertainment/schemas/#ProgramType) --- ### ContentAccessIdentifiers - - -```typescript ```typescript - -```` - -```` +type ContentAccessIdentifiers = { + availabilities?: Availability[] // A list of identifiers that represent what content is discoverable for the subscriber. Excluding availabilities will cause no change to the availabilities that are stored for this subscriber. Providing an empty array will clear the subscriber's availabilities + entitlements?: Entitlement[] // A list of identifiers that represent what content is consumable for the subscriber. Excluding entitlements will cause no change to the entitlements that are stored for this subscriber. Providing an empty array will clear the subscriber's entitlements +} +``` See also: - - +[Availability](#availability) +[Entitlement](../Entertainment/schemas/#Entitlement) --- ### EntityInfoParameters - - ```typescript -```typescript - -```` - -```` - - +type EntityInfoParameters = { + entityId: string + assetId?: string +} +``` --- ### EntityInfoFederatedRequest - - -```typescript ```typescript - -```` - -```` +type EntityInfoFederatedRequest = { + parameters: EntityInfoParameters + correlationId: string +} +``` See also: - - +[FederatedRequest](#federatedrequest) +[EntityInfoParameters](#entityinfoparameters) --- ### PurchasedContentFederatedRequest - - ```typescript -```typescript - -```` - +type PurchasedContentFederatedRequest = { + parameters: PurchasedContentParameters + correlationId: string +} ``` See also: - - +[FederatedRequest](#federatedrequest) +[PurchasedContentParameters](#purchasedcontentparameters) --- -``` diff --git a/apis/pr-feature-user-interest/core/Discovery/schemas/index.md b/apis/pr-feature-user-interest/core/Discovery/schemas/index.md index 96dbae2c8..9d219e189 100644 --- a/apis/pr-feature-user-interest/core/Discovery/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Discovery/schemas/index.md @@ -31,12 +31,10 @@ undefined ### InterestType ```typescript -InterestType Enumeration: - -| key | value | -|-----|-------| -| INTEREST | interest | -| DISINTEREST | disinterest | +InterestType: { + INTEREST: 'interest', + DISINTEREST: 'disinterest', +}, ``` @@ -45,13 +43,11 @@ InterestType Enumeration: ### InterestReason ```typescript -InterestReason Enumeration: - -| key | value | -|-----|-------| -| PLAYLIST | playlist | -| REACTION | reaction | -| RECORDING | recording | +InterestReason: { + PLAYLIST: 'playlist', + REACTION: 'reaction', + RECORDING: 'recording', +}, ``` @@ -61,33 +57,32 @@ InterestReason Enumeration: The result for an `entityInfo()` push or pull. -````typescript ```typescript - -```` - -```` +type EntityInfoResult = { + expires: string + entity: EntityInfo // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. + related?: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} +``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- ### PurchasedContentResult - - -```typescript ```typescript - -```` - +type PurchasedContentResult = { + expires: string + totalCount: number + entries: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} ``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- -``` diff --git a/apis/pr-feature-user-interest/core/Entertainment/schemas/index.md b/apis/pr-feature-user-interest/core/Entertainment/schemas/index.md index e5e4bc504..d59b2e71c 100644 --- a/apis/pr-feature-user-interest/core/Entertainment/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Entertainment/schemas/index.md @@ -39,14 +39,12 @@ undefined The offering type of the WayToWatch. ```typescript -OfferingType Enumeration: - -| key | value | -|-----|-------| -| FREE | free | -| SUBSCRIBE | subscribe | -| BUY | buy | -| RENT | rent | +OfferingType: { + FREE: 'free', + SUBSCRIBE: 'subscribe', + BUY: 'buy', + RENT: 'rent', +}, ``` @@ -57,12 +55,10 @@ OfferingType Enumeration: In the case of a music `entityType`, specifies the type of music entity. ```typescript -MusicType Enumeration: - -| key | value | -|-----|-------| -| SONG | song | -| ALBUM | album | +MusicType: { + SONG: 'song', + ALBUM: 'album', +}, ``` @@ -73,22 +69,20 @@ MusicType Enumeration: In the case of a program `entityType`, specifies the program type. ```typescript -ProgramType Enumeration: - -| key | value | -|-----|-------| -| MOVIE | movie | -| EPISODE | episode | -| SEASON | season | -| SERIES | series | -| OTHER | other | -| PREVIEW | preview | -| EXTRA | extra | -| CONCERT | concert | -| SPORTING_EVENT | sportingEvent | -| ADVERTISEMENT | advertisement | -| MUSIC_VIDEO | musicVideo | -| MINISODE | minisode | +ProgramType: { + MOVIE: 'movie', + EPISODE: 'episode', + SEASON: 'season', + SERIES: 'series', + OTHER: 'other', + PREVIEW: 'preview', + EXTRA: 'extra', + CONCERT: 'concert', + SPORTING_EVENT: 'sportingEvent', + ADVERTISEMENT: 'advertisement', + MUSIC_VIDEO: 'musicVideo', + MINISODE: 'minisode', +}, ``` @@ -132,14 +126,19 @@ Ratings: `G`, `8+`, `13+`, `16+`, `18+` Ratings: `G`, `8+`, `13+`, `16+`, `18+` -````typescript ```typescript - -```` - -```` - - +type ContentRating = { + scheme: + | 'CA-Movie' + | 'CA-TV' + | 'CA-Movie-Fr' + | 'CA-TV-Fr' + | 'US-Movie' + | 'US-TV' // The rating scheme. + rating: string // The content rating. + advisories?: string[] // Optional list of subratings or content advisories. +} +``` --- @@ -154,28 +153,26 @@ required to target a playable stream or an entity detail screen via a deep link. If an id isn't needed to get to those pages, it doesn't need to be included. ```typescript -```typescript - -```` - -```` - - +type ContentIdentifiers = { + assetId?: string // Identifies a particular playable asset. For example, the HD version of a particular movie separate from the UHD version. + entityId?: string // Identifies an entity, such as a Movie, TV Series or TV Episode. + seasonId?: string // The TV Season for a TV Episode. + seriesId?: string // The TV Series for a TV Episode or TV Season. + appContentData?: string // App-specific content identifiers. +} +``` --- ### Entitlement - - ```typescript -```typescript - -```` - -```` - - +type Entitlement = { + entitlementId: string + startTime?: string + endTime?: string +} +``` --- @@ -217,17 +214,28 @@ multiple WayToWatch objects. points, the `price` provided must be the lowest available price. ```typescript -```typescript - -```` - -```` +type WayToWatch = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + expires?: string // Time when the WayToWatch is no longer available. + entitled?: boolean // Specify if the user is entitled to watch the entity. + entitledExpires?: string // Time when the entity is no longer entitled. + offeringType?: OfferingType // The offering type of the WayToWatch. + hasAds?: boolean // True if the streamable asset contains ads. + price?: number // For "buy" and "rent" WayToWatch, the price to buy or rent in the user's preferred currency. + videoQuality?: 'SD' | 'HD' | 'UHD'[] // List of the video qualities available via the WayToWatch. + audioProfile: AudioProfile[] // List of the audio types available via the WayToWatch. + audioLanguages?: string[] // List of audio track languages available on the WayToWatch. The first is considered the primary language. Languages are expressed as ISO 639 1/2 codes. + closedCaptions?: string[] // List of languages for which closed captions are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + subtitles?: string[] // List of languages for which subtitles are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + audioDescriptions?: string[] // List of languages for which audio descriptions (DVD) as available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. +} +``` See also: - - - +[ContentIdentifiers](#contentidentifiers) +[OfferingType](#offeringtype) +[AudioProfile](../Types/schemas/#AudioProfile) --- @@ -236,7 +244,7 @@ See also: An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. Additionally, EntityInfo objects must specify a properly formed -ContentIdentifiers object, `entityType`, and `title`. The app should provide +ContentIdentifiers object, `entityType`, and `title`. The app should provide the `synopsis` property for a good user experience if the content metadata is not available another way. @@ -249,19 +257,29 @@ It is optional for the `purchasedContent` method, but recommended because the UI may use those data. ```typescript -```typescript - -```` - +type EntityInfo = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + title: string // Title of the entity. + entityType: 'program' | 'music' // The type of the entity, e.g. `program` or `music`. + programType?: ProgramType // In the case of a program `entityType`, specifies the program type. + musicType?: MusicType // In the case of a music `entityType`, specifies the type of music entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} ``` See also: - - - - - +[ContentIdentifiers](#contentidentifiers) +[ProgramType](#programtype) +[MusicType](#musictype) +[ContentRating](#contentrating) +[WayToWatch](#waytowatch) --- -``` diff --git a/apis/pr-feature-user-interest/core/Entity/schemas/index.md b/apis/pr-feature-user-interest/core/Entity/schemas/index.md index 8ebe7cada..cd3c3ee12 100644 --- a/apis/pr-feature-user-interest/core/Entity/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Entity/schemas/index.md @@ -42,78 +42,77 @@ undefined A Firebolt compliant representation of a Movie entity. -````typescript ```typescript - -```` - -```` - - +type MovieEntity = { + entityType: 'program' + programType: 'movie' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### Metadata - - -```typescript ```typescript - -```` - -```` +type Metadata = { + title?: string // Title of the entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. +} +``` See also: - +[ContentRating](../Entertainment/schemas/#ContentRating) --- ### MusicEntity - - ```typescript -```typescript - -```` - -```` +type MusicEntity = { + entityType: 'music' + musicType: MusicType // In the case of a music `entityType`, specifies the type of music entity. + entityId: string +} +``` See also: - +[MusicType](../Entertainment/schemas/#MusicType) --- ### ChannelEntity - - ```typescript -```typescript - -```` - -```` - - +type ChannelEntity = { + entityType: 'channel' + channelType: 'streaming' | 'overTheAir' + entityId: string // ID of the channel, in the target App's scope. + appContentData?: string +} +``` --- ### UntypedEntity - - ```typescript -```typescript - -```` - -```` - - +type UntypedEntity = { + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -122,13 +121,13 @@ See also: A Firebolt compliant representation of a Playlist entity. ```typescript -```typescript - -```` - -```` - - +type PlaylistEntity = { + entityType: 'playlist' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -137,13 +136,16 @@ A Firebolt compliant representation of a Playlist entity. A Firebolt compliant representation of a TV Episode entity. ```typescript -```typescript - -```` - -```` - - +type TVEpisodeEntity = { + entityType: 'program' + programType: 'episode' + entityId: string + seriesId: string + seasonId: string + assetId?: string + appContentData?: string +} +``` --- @@ -152,13 +154,15 @@ A Firebolt compliant representation of a TV Episode entity. A Firebolt compliant representation of a TV Season entity. ```typescript -```typescript - -```` - -```` - - +type TVSeasonEntity = { + entityType: 'program' + programType: 'season' + entityId: string + seriesId: string + assetId?: string + appContentData?: string +} +``` --- @@ -167,13 +171,14 @@ A Firebolt compliant representation of a TV Season entity. A Firebolt compliant representation of a TV Series entity. ```typescript -```typescript - -```` - -```` - - +type TVSeriesEntity = { + entityType: 'program' + programType: 'series' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -182,26 +187,44 @@ A Firebolt compliant representation of a TV Series entity. A Firebolt compliant representation of the remaining program entity types. ```typescript -```typescript - -```` - -```` - - +type AdditionalEntity = { + entityType: 'program' + programType: + | 'concert' + | 'sportingEvent' + | 'preview' + | 'other' + | 'advertisement' + | 'musicVideo' + | 'minisode' + | 'extra' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### ProgramEntity - - ```typescript - -```` +type ProgramEntity = + | MovieEntity + | TVEpisodeEntity + | TVSeasonEntity + | TVSeriesEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[TVSeasonEntity](#tvseasonentity) +[TVSeriesEntity](#tvseriesentity) +[AdditionalEntity](#additionalentity) + --- ### Entity @@ -212,32 +235,53 @@ See also: See also: +[ProgramEntity](#programentity) +[MusicEntity](#musicentity) +[ChannelEntity](#channelentity) +[UntypedEntity](#untypedentity) +[PlaylistEntity](#playlistentity) + --- ### EntityDetails -````typescript ```typescript - -```` - -```` +type EntityDetails = { + identifiers: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + info?: Metadata + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} +``` See also: - - +[Metadata](#metadata) +[WayToWatch](../Entertainment/schemas/#WayToWatch) --- ### PlayableEntity - - ```typescript - -```` +type PlayableEntity = + | MovieEntity + | TVEpisodeEntity + | PlaylistEntity + | MusicEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[PlaylistEntity](#playlistentity) +[MusicEntity](#musicentity) +[AdditionalEntity](#additionalentity) + --- diff --git a/apis/pr-feature-user-interest/core/Intents/schemas/index.md b/apis/pr-feature-user-interest/core/Intents/schemas/index.md index 7c979344f..87a0fda7b 100644 --- a/apis/pr-feature-user-interest/core/Intents/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Intents/schemas/index.md @@ -58,14 +58,18 @@ A Firebolt compliant representation of a user intention. A Firebolt compliant representation of a user intention to navigate an app to a specific entity page, and bring that app to the foreground if needed. -````typescript ```typescript - -```` - -```` - - +type EntityIntent = { + action: 'entity' + data: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + context: object +} +``` --- @@ -74,15 +78,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlaybackIntent = { + action: 'playback' + data: PlayableEntity + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -91,13 +96,12 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's search UI with a search term populated, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SearchIntent = { + action: 'search' + data?: object + context: object +} +``` --- @@ -106,13 +110,12 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to navigate an app to a section not covered by `home`, `entity`, `player`, or `search`, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SectionIntent = { + action: 'section' + data?: object + context: object +} +``` --- @@ -121,15 +124,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to 'tune' to a traditional over-the-air broadcast, or an OTT Stream from an OTT or vMVPD App. ```typescript -```typescript - -```` - -```` +type TuneIntent = { + action: 'tune' + data: object + context: object +} +``` See also: - +[ChannelEntity](../Entity/schemas/#ChannelEntity) --- @@ -138,15 +142,16 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlayEntityIntent = { + action: 'play-entity' + data: object + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -155,16 +160,17 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for an abstract query to be searched for and played by the app. ```typescript -```typescript - -```` - -```` +type PlayQueryIntent = { + action: 'play-query' + data: object + context: object +} +``` See also: - - +[ProgramType](../Entertainment/schemas/#ProgramType) +[MusicType](../Entertainment/schemas/#MusicType) --- @@ -173,13 +179,11 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's home screen, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type HomeIntent = { + action: 'home' + context: object +} +``` --- @@ -188,13 +192,11 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to launch an app. ```typescript -```typescript - -```` - -```` - - +type LaunchIntent = { + action: 'launch' + context: object +} +``` --- @@ -203,9 +205,28 @@ A Firebolt compliant representation of a user intention to launch an app. A Firebolt compliant representation of a user intention to navigate to a specific place in an app. ```typescript - -```` +type NavigationIntent = + | HomeIntent + | LaunchIntent + | EntityIntent + | PlaybackIntent + | SearchIntent + | SectionIntent + | TuneIntent + | PlayEntityIntent + | PlayQueryIntent +``` See also: +[HomeIntent](#homeintent) +[LaunchIntent](#launchintent) +[EntityIntent](#entityintent) +[PlaybackIntent](#playbackintent) +[SearchIntent](#searchintent) +[SectionIntent](#sectionintent) +[TuneIntent](#tuneintent) +[PlayEntityIntent](#playentityintent) +[PlayQueryIntent](#playqueryintent) + --- diff --git a/apis/pr-feature-user-interest/core/Internal/index.md b/apis/pr-feature-user-interest/core/Internal/index.md index f0f730906..4f43cc873 100644 --- a/apis/pr-feature-user-interest/core/Internal/index.md +++ b/apis/pr-feature-user-interest/core/Internal/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Internal 1.2.0-feature-user-interest.7 +Version Internal 1.2.0-feature-user-interest.8 ## Table of Contents @@ -34,16 +34,12 @@ Initialize the SDK / FEE session. Parameters: -| Param | Type | Required | Description | -| --------- | ---- | -------- | -------------------------------- | -| `version` | `` | true | The semantic version of the SDK. | +| Param | Type | Required | Description | +| --------- | ------------------------------------------------------ | -------- | -------------------------------- | +| `version` | [`SemanticVersion`](../Types/schemas/#SemanticVersion) | true | The semantic version of the SDK. | Result: -| Property | Type | Description | -| --------- | ---- | -------------------------------- | -| `version` | | The semantic version of the FEE. | - Capabilities: | Role | Capability | diff --git a/apis/pr-feature-user-interest/core/Keyboard/index.md b/apis/pr-feature-user-interest/core/Keyboard/index.md index 1677889e1..ba225741a 100644 --- a/apis/pr-feature-user-interest/core/Keyboard/index.md +++ b/apis/pr-feature-user-interest/core/Keyboard/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Keyboard 1.2.0-feature-user-interest.7 +Version Keyboard 1.2.0-feature-user-interest.8 ## Table of Contents @@ -43,22 +43,18 @@ Methods for prompting users to enter text with task-oriented UX Prompt the user for their email address with a simplified list of choices. ```typescript -${method.signature} +function email(type: EmailUsage, message: string): Promise ``` Parameters: -| Param | Type | Required | Description | -| --------- | -------- | -------- | ---------------------------------------------------------------------------------------- | -| `type` | `` | true | Why the email is being requested, e.g. sign on or sign up values: `'signIn' \| 'signUp'` | -| `message` | `string` | false | The message to display while prompting | +| Param | Type | Required | Description | +| --------- | --------------------------- | -------- | --------------------------------------------------------------------------------------------- | +| `type` | [`EmailUsage`](#emailusage) | true | Why the email is being requested, e.g. sign on or sign up
values: `'signIn' \| 'signUp'` | +| `message` | `string` | false | The message to display while prompting | Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -170,7 +166,7 @@ Response: Show the password entry keyboard, with typing obfuscated from visibility ```typescript -${method.signature} +function password(message: string): Promise ``` Parameters: @@ -181,10 +177,6 @@ Parameters: Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -244,7 +236,7 @@ Response: Show the standard platform keyboard, and return the submitted value ```typescript -${method.signature} +function standard(message: string): Promise ``` Parameters: @@ -255,10 +247,6 @@ Parameters: Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -320,12 +308,10 @@ Response: ### EmailUsage ```typescript -EmailUsage Enumeration: - -| key | value | -|-----|-------| -| SIGN_IN | signIn | -| SIGN_UP | signUp | +EmailUsage: { + SIGN_IN: 'signIn', + SIGN_UP: 'signUp', +}, ``` diff --git a/apis/pr-feature-user-interest/core/Lifecycle/index.md b/apis/pr-feature-user-interest/core/Lifecycle/index.md index 6c9b374bc..62ef3afb7 100644 --- a/apis/pr-feature-user-interest/core/Lifecycle/index.md +++ b/apis/pr-feature-user-interest/core/Lifecycle/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Lifecycle 1.2.0-feature-user-interest.7 +Version Lifecycle 1.2.0-feature-user-interest.8 ## Table of Contents @@ -52,21 +52,17 @@ Methods and events for responding to lifecycle changes in your app Request that the platform move your app out of focus ```typescript -${method.signature} +function close(reason: CloseReason): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | --------------------------------------------------------------------------------------------------------- | -| `reason` | `` | true | The reason the app is requesting to be closed values: `'remoteButton' \| 'userExit' \| 'done' \| 'error'` | +| Param | Type | Required | Description | +| -------- | -------------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------- | +| `reason` | [`CloseReason`](../Lifecycle/schemas/#CloseReason) | true | The reason the app is requesting to be closed
values: `'remoteButton' \| 'userExit' \| 'done' \| 'error'` | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -170,15 +166,11 @@ Response: Notify the platform that the app is done unloading ```typescript -${method.signature} +function finished(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -346,15 +338,11 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Notify the platform that the app is ready ```typescript -${method.signature} +function ready(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -412,24 +400,12 @@ Response: Get the current state of the app. This function is **synchronous**. ```typescript -${method.signature} +function state(): Promise ``` Promise resolution: -```typescript -LifecycleState Enumeration: - -| key | value | -|-----|-------| -| INITIALIZING | initializing | -| INACTIVE | inactive | -| FOREGROUND | foreground | -| BACKGROUND | background | -| UNLOADING | unloading | -| SUSPENDED | suspended | - -``` +[LifecycleState](../Lifecycle/schemas/#LifecycleState) Capabilities: @@ -495,23 +471,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[LifecycleEvent](#lifecycleevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -519,10 +488,10 @@ JavaScript: ```javascript import { Lifecycle } from '@firebolt-js/sdk' -Lifecycle.listen('background', value => { +Lifecycle.listen('background', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -575,23 +544,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[LifecycleEvent](#lifecycleevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -599,10 +561,10 @@ JavaScript: ```javascript import { Lifecycle } from '@firebolt-js/sdk' -Lifecycle.listen('foreground', value => { +Lifecycle.listen('foreground', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -707,23 +669,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[LifecycleEvent](#lifecycleevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -731,10 +686,10 @@ JavaScript: ```javascript import { Lifecycle } from '@firebolt-js/sdk' -Lifecycle.listen('inactive', value => { +Lifecycle.listen('inactive', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -787,23 +742,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[LifecycleEvent](#lifecycleevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -811,10 +759,10 @@ JavaScript: ```javascript import { Lifecycle } from '@firebolt-js/sdk' -Lifecycle.listen('suspended', value => { +Lifecycle.listen('suspended', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -867,23 +815,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[LifecycleEvent](#lifecycleevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -891,10 +832,10 @@ JavaScript: ```javascript import { Lifecycle } from '@firebolt-js/sdk' -Lifecycle.listen('unloading', value => { +Lifecycle.listen('unloading', (value) => { console.log(value) }) -```` +``` Value of `value`: @@ -943,16 +884,16 @@ Response: A an object describing the previous and current states -````typescript ```typescript - -```` - +type LifecycleEvent = { + state: LifecycleState // The application lifecycle state + previous: LifecycleState // The application lifecycle state + source?: 'voice' | 'remote' // The source of the lifecycle change. +} ``` See also: - +[LifecycleState](../Lifecycle/schemas/#LifecycleState) --- -``` diff --git a/apis/pr-feature-user-interest/core/Lifecycle/schemas/index.md b/apis/pr-feature-user-interest/core/Lifecycle/schemas/index.md index d79a09601..66fa7227b 100644 --- a/apis/pr-feature-user-interest/core/Lifecycle/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Lifecycle/schemas/index.md @@ -31,14 +31,12 @@ undefined The application close reason ```typescript -CloseReason Enumeration: - -| key | value | -|-----|-------| -| REMOTE_BUTTON | remoteButton | -| USER_EXIT | userExit | -| DONE | done | -| ERROR | error | +CloseReason: { + REMOTE_BUTTON: 'remoteButton', + USER_EXIT: 'userExit', + DONE: 'done', + ERROR: 'error', +}, ``` @@ -49,16 +47,14 @@ CloseReason Enumeration: The application lifecycle state ```typescript -LifecycleState Enumeration: - -| key | value | -|-----|-------| -| INITIALIZING | initializing | -| INACTIVE | inactive | -| FOREGROUND | foreground | -| BACKGROUND | background | -| UNLOADING | unloading | -| SUSPENDED | suspended | +LifecycleState: { + INITIALIZING: 'initializing', + INACTIVE: 'inactive', + FOREGROUND: 'foreground', + BACKGROUND: 'background', + UNLOADING: 'unloading', + SUSPENDED: 'suspended', +}, ``` diff --git a/apis/pr-feature-user-interest/core/Localization/index.md b/apis/pr-feature-user-interest/core/Localization/index.md index 8210c591c..8617145f6 100644 --- a/apis/pr-feature-user-interest/core/Localization/index.md +++ b/apis/pr-feature-user-interest/core/Localization/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Localization 1.2.0-feature-user-interest.7 +Version Localization 1.2.0-feature-user-interest.8 ## Table of Contents @@ -57,18 +57,11 @@ Methods for accessessing location and language preferences Get any platform-specific localization information, in an Map ```typescript -${method.signature} +function additionalInfo(): Promise ``` Promise resolution: -```typescript -| Property | Type | Description | -|----------|------|-------------| -| `${property}` | ${type} | | - -``` - Capabilities: | Role | Capability | @@ -129,14 +122,12 @@ Get the ISO 3166-1 alpha-2 code for the country device is located in To get the value of `countryCode` call the method like this: ```typescript -${method.signature} +function countryCode(): Promise ``` Promise resolution: -```typescript - -``` +[CountryCode](../Localization/schemas/#CountryCode) Capabilities: @@ -235,7 +226,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function countryCode(callback: (value) => ): Promise +function countryCode(callback: (value) => CountryCode): Promise ``` Promise resolution: @@ -347,14 +338,12 @@ Get the ISO 639 1/2 code for the preferred language To get the value of `language` call the method like this: ```typescript -${method.signature} +function language(): Promise ``` Promise resolution: -```typescript - -``` +[Language](../Localization/schemas/#Language) Capabilities: @@ -453,7 +442,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function language(callback: (value) => ): Promise +function language(callback: (value) => Language): Promise ``` Promise resolution: @@ -563,28 +552,21 @@ Response: Get the approximate latitude and longitude coordinates of the device location ```typescript -${method.signature} +function latlon(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[LatLon](#latlon-1) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------------- | | uses | xrn:firebolt:capability:localization:location | - #### Examples - Default Example JavaScript: @@ -594,7 +576,7 @@ import { Localization } from '@firebolt-js/sdk' let latlong = await Localization.latlon() console.log(latlong) -```` +``` Value of `latlong`: @@ -690,14 +672,12 @@ Get the _full_ BCP 47 code, including script, region, variant, etc., for the pre To get the value of `locale` call the method like this: ```typescript -${method.signature} +function locale(): Promise ``` Promise resolution: -```typescript - -``` +[Locale](../Localization/schemas/#Locale) Capabilities: @@ -796,7 +776,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function locale(callback: (value) => ): Promise +function locale(callback: (value) => Locale): Promise ``` Promise resolution: @@ -908,14 +888,12 @@ Get the locality/city the device is located in To get the value of `locality` call the method like this: ```typescript -${method.signature} +function locality(): Promise ``` Promise resolution: -```typescript - -``` +[Locality](../Localization/schemas/#Locality) Capabilities: @@ -1014,7 +992,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function locality(callback: (value) => ): Promise +function locality(callback: (value) => Locality): Promise ``` Promise resolution: @@ -1182,15 +1160,11 @@ Get the postal code the device is located in To get the value of `postalCode` call the method like this: ```typescript -${method.signature} +function postalCode(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1400,15 +1374,11 @@ A prioritized list of ISO 639 1/2 codes for the preferred audio languages on thi To get the value of `preferredAudioLanguages` call the method like this: ```typescript -${method.signature} +function preferredAudioLanguages(): Promise ``` Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -1506,7 +1476,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function preferredAudioLanguages(callback: (value) => ): Promise +function preferredAudioLanguages( + callback: (value) => ISO639_2Language[], +): Promise ``` Promise resolution: @@ -1641,14 +1613,11 @@ See: [preferredAudioLanguages](#preferredaudiolanguages) ### LatLon -````typescript ```typescript - -```` - +type LatLon = [ + number, // undefined item + number, // undefined item +] ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/Metrics/index.md b/apis/pr-feature-user-interest/core/Metrics/index.md index 6511ca734..09fd5e784 100644 --- a/apis/pr-feature-user-interest/core/Metrics/index.md +++ b/apis/pr-feature-user-interest/core/Metrics/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Metrics 1.2.0-feature-user-interest.7 +Version Metrics 1.2.0-feature-user-interest.8 ## Table of Contents @@ -60,23 +60,23 @@ Methods for sending metrics Inform the platform of something not covered by other Metrics APIs. ```typescript -${method.signature} +function action( + category: string, + type: string, + parameters: FlatMap, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `category` | `string` | true | The category of action being logged. Must be 'user' for user-initated actions or 'app' for all other actions
values: `'user' \| 'app'` | -| `type` | `string` | true | A short, indexible identifier for the action, e.g. 'SignIn Prompt Displayed'
maxLength: 256 | -| `parameters` | `` | false | | +| Param | Type | Required | Description | +| ------------ | -------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| `category` | `string` | true | The category of action being logged. Must be 'user' for user-initated actions or 'app' for all other actions
values: `'user' \| 'app'` | +| `type` | `string` | true | A short, indexible identifier for the action, e.g. 'SignIn Prompt Displayed'
maxLength: 256 | +| `parameters` | [`FlatMap`](../Types/schemas/#FlatMap) | false | | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -137,25 +137,27 @@ Response: Inform the platform of an error that has occured in your app. ```typescript -${method.signature} +function error( + type: ErrorType, + code: string, + description: string, + visible: boolean, + parameters: FlatMap, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------- | --------- | -------- | --------------------------------------------------------------------------------------------- | -| `type` | `` | true | The type of error values: `'network' \| 'media' \| 'restriction' \| 'entitlement' \| 'other'` | -| `code` | `string` | true | an app-specific error code | -| `description` | `string` | true | A short description of the error | -| `visible` | `boolean` | true | Whether or not this error was visible to the user. | -| `parameters` | `` | false | Optional additional parameters to be logged with the error | +| Param | Type | Required | Description | +| ------------- | -------------------------------------- | -------- | -------------------------------------------------------------------------------------------------- | +| `type` | [`ErrorType`](#errortype) | true | The type of error
values: `'network' \| 'media' \| 'restriction' \| 'entitlement' \| 'other'` | +| `code` | `string` | true | an app-specific error code | +| `description` | `string` | true | A short description of the error | +| `visible` | `boolean` | true | Whether or not this error was visible to the user. | +| `parameters` | [`FlatMap`](../Types/schemas/#FlatMap) | false | Optional additional parameters to be logged with the error | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -224,7 +226,7 @@ Response: Called when playback has stopped because the end of the media was reached. ```typescript -${method.signature} +function mediaEnded(entityId: string): Promise ``` Parameters: @@ -235,10 +237,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -298,7 +296,7 @@ Response: Called when setting the URL of a media asset to play, in order to infer load time. ```typescript -${method.signature} +function mediaLoadStart(entityId: string): Promise ``` Parameters: @@ -309,10 +307,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -372,7 +366,7 @@ Response: Called when media playback will pause due to an intentional pause operation. ```typescript -${method.signature} +function mediaPause(entityId: string): Promise ``` Parameters: @@ -383,10 +377,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -446,7 +436,7 @@ Response: Called when media playback should start due to autoplay, user-initiated play, or unpausing. ```typescript -${method.signature} +function mediaPlay(entityId: string): Promise ``` Parameters: @@ -457,10 +447,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -520,7 +506,7 @@ Response: Called when media playback actually starts due to autoplay, user-initiated play, unpausing, or recovering from a buffering interuption. ```typescript -${method.signature} +function mediaPlaying(entityId: string): Promise ``` Parameters: @@ -531,10 +517,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -594,22 +576,21 @@ Response: Called every 60 seconds as media playback progresses. ```typescript -${method.signature} +function mediaProgress( + entityId: string, + progress: MediaPosition, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ---------- | -------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `entityId` | `string` | true | The entityId of the media. | -| `progress` | `` | true | Progress of playback, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | +| Param | Type | Required | Description | +| ---------- | --------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entityId` | `string` | true | The entityId of the media. | +| `progress` | [`MediaPosition`](#mediaposition) | true | Progress of playback, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -670,7 +651,7 @@ Response: Called when the playback rate of media is changed. ```typescript -${method.signature} +function mediaRateChange(entityId: string, rate: number): Promise ``` Parameters: @@ -682,10 +663,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -746,7 +723,13 @@ Response: Called when the playback rendition (e.g. bitrate, dimensions, profile, etc) is changed. ```typescript -${method.signature} +function mediaRenditionChange( + entityId: string, + bitrate: number, + width: number, + height: number, + profile: string, +): Promise ``` Parameters: @@ -761,10 +744,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -834,22 +813,21 @@ Response: Called when a seek is completed during media playback. ```typescript -${method.signature} +function mediaSeeked( + entityId: string, + position: MediaPosition, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ---------- | -------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `entityId` | `string` | true | The entityId of the media. | -| `position` | `` | true | Resulting position of the seek operation, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | +| Param | Type | Required | Description | +| ---------- | --------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entityId` | `string` | true | The entityId of the media. | +| `position` | [`MediaPosition`](#mediaposition) | true | Resulting position of the seek operation, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -910,22 +888,18 @@ Response: Called when a seek is initiated during media playback. ```typescript -${method.signature} +function mediaSeeking(entityId: string, target: MediaPosition): Promise ``` Parameters: -| Param | Type | Required | Description | -| ---------- | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `entityId` | `string` | true | The entityId of the media. | -| `target` | `` | true | Target destination of the seek, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | +| Param | Type | Required | Description | +| ---------- | --------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `entityId` | `string` | true | The entityId of the media. | +| `target` | [`MediaPosition`](#mediaposition) | true | Target destination of the seek, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -986,7 +960,7 @@ Response: Called when media playback will halt due to a network, buffer, or other unintentional constraint. ```typescript -${method.signature} +function mediaWaiting(entityId: string): Promise ``` Parameters: @@ -997,10 +971,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1060,7 +1030,7 @@ Response: Inform the platform that your user has navigated to a page or view. ```typescript -${method.signature} +function page(pageId: string): Promise ``` Parameters: @@ -1071,10 +1041,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1181,10 +1147,6 @@ Inform the platform that your app is minimally usable. This method is called aut Result: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1228,10 +1190,6 @@ Log a sign in event, called by Discovery.signIn(). Result: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1308,10 +1266,6 @@ Log a sign out event, called by Discovery.signOut(). Result: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1352,7 +1306,7 @@ Response: Inform the platform that your user has started content. ```typescript -${method.signature} +function startContent(entityId: string): Promise ``` Parameters: @@ -1363,10 +1317,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1468,7 +1418,7 @@ Response: Inform the platform that your user has stopped content. ```typescript -${method.signature} +function stopContent(entityId: string): Promise ``` Parameters: @@ -1479,10 +1429,6 @@ Parameters: Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1584,15 +1530,13 @@ Response: ### ErrorType ```typescript -ErrorType Enumeration: - -| key | value | -|-----|-------| -| NETWORK | network | -| MEDIA | media | -| RESTRICTION | restriction | -| ENTITLEMENT | entitlement | -| OTHER | other | +ErrorType: { + NETWORK: 'network', + MEDIA: 'media', + RESTRICTION: 'restriction', + ENTITLEMENT: 'entitlement', + OTHER: 'other', +}, ``` @@ -1603,7 +1547,7 @@ ErrorType Enumeration: Represents a position inside playback content, as a decimal percentage (0-0.999) for content with a known duration, or an integer number of seconds (0-86400) for content with an unknown duration. ```typescript - +type MediaPosition = void | number | number ``` --- diff --git a/apis/pr-feature-user-interest/core/Parameters/index.md b/apis/pr-feature-user-interest/core/Parameters/index.md index 136b43077..09f2a6d02 100644 --- a/apis/pr-feature-user-interest/core/Parameters/index.md +++ b/apis/pr-feature-user-interest/core/Parameters/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Parameters 1.2.0-feature-user-interest.7 +Version Parameters 1.2.0-feature-user-interest.8 ## Table of Contents @@ -41,28 +41,21 @@ Methods for getting initialization parameters for an app cold launch. Returns any initialization parameters for the app, e.g. initialial `NavigationIntent`. ```typescript -${method.signature} +function initialization(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[AppInitialization](#appinitialization) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | --------------------------------------- | | uses | xrn:firebolt:capability:lifecycle:state | - #### Examples - Default Example JavaScript: @@ -72,7 +65,7 @@ import { Parameters } from '@firebolt-js/sdk' let init = await Parameters.initialization() console.log(init) -```` +``` Value of `init`: @@ -143,17 +136,18 @@ Response: ### AppInitialization -````typescript ```typescript - -```` - +type AppInitialization = { + us_privacy?: string // The IAB US Privacy string. + lmt?: number // The IAB limit ad tracking opt out value. + discovery?: object + secondScreen?: object +} ``` See also: - - +[NavigationIntent](../Intents/schemas/#NavigationIntent) +[SecondScreenEvent](../SecondScreen/schemas/#SecondScreenEvent) --- -``` diff --git a/apis/pr-feature-user-interest/core/Profile/index.md b/apis/pr-feature-user-interest/core/Profile/index.md index 0a87d24a1..289d83f7a 100644 --- a/apis/pr-feature-user-interest/core/Profile/index.md +++ b/apis/pr-feature-user-interest/core/Profile/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version Profile 1.2.0-feature-user-interest.7 +Version Profile 1.2.0-feature-user-interest.8 ## Table of Contents @@ -42,15 +42,11 @@ Methods for getting information about the current user/account profile Verifies that the current profile should have access to mature/adult content. ```typescript -${method.signature} +function approveContentRating(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -108,15 +104,11 @@ Response: Verifies that the current profile should have access to making purchases. ```typescript -${method.signature} +function approvePurchase(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -174,28 +166,21 @@ Response: Get a map of profile flags for the current session. ```typescript -${method.signature} +function flags(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[FlatMap](../Types/schemas/#FlatMap) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:profile:flags | - #### Examples - Default Example JavaScript: @@ -205,7 +190,7 @@ import { Profile } from '@firebolt-js/sdk' let flags = await Profile.flags() console.log(flags) -```` +``` Value of `flags`: diff --git a/apis/pr-feature-user-interest/core/SecondScreen/index.md b/apis/pr-feature-user-interest/core/SecondScreen/index.md index 69e0935a3..bccc59f3d 100644 --- a/apis/pr-feature-user-interest/core/SecondScreen/index.md +++ b/apis/pr-feature-user-interest/core/SecondScreen/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version SecondScreen 1.2.0-feature-user-interest.7 +Version SecondScreen 1.2.0-feature-user-interest.8 ## Table of Contents @@ -48,7 +48,7 @@ Methods for communicating with second screen devices Get the broadcasted id for the device ```typescript -${method.signature} +function device(type: string): Promise ``` Parameters: @@ -59,10 +59,6 @@ Parameters: Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -122,15 +118,11 @@ Get the broadcasted friendly name for the device To get the value of `friendlyName` call the method like this: ```typescript -${method.signature} +function friendlyName(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -360,28 +352,21 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Get the supported second screen discovery protocols ```typescript -${method.signature} +function protocols(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[BooleanMap](../Types/schemas/#BooleanMap) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:device:info | - #### Examples - Default Example JavaScript: @@ -391,7 +376,7 @@ import { SecondScreen } from '@firebolt-js/sdk' let protocols = await SecondScreen.protocols() console.log(protocols) -```` +``` Value of `protocols`: @@ -442,23 +427,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[SecondScreenEvent](../SecondScreen/schemas/#SecondScreenEvent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:protocol:dial | - #### Examples - Default Example JavaScript: @@ -466,10 +444,10 @@ JavaScript: ```javascript import { SecondScreen } from '@firebolt-js/sdk' -SecondScreen.listen('closeRequest', closeRequestEvent => { +SecondScreen.listen('closeRequest', (closeRequestEvent) => { console.log(closeRequestEvent) }) -```` +``` Value of `closeRequestEvent`: @@ -526,23 +504,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[SecondScreenEvent](../SecondScreen/schemas/#SecondScreenEvent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:protocol:dial | - #### Examples - Default Example JavaScript: @@ -550,10 +521,10 @@ JavaScript: ```javascript import { SecondScreen } from '@firebolt-js/sdk' -SecondScreen.listen('launchRequest', launchRequestEvent => { +SecondScreen.listen('launchRequest', (launchRequestEvent) => { console.log(launchRequestEvent) }) -```` +``` Value of `launchRequestEvent`: diff --git a/apis/pr-feature-user-interest/core/SecondScreen/schemas/index.md b/apis/pr-feature-user-interest/core/SecondScreen/schemas/index.md index c674bf5d3..b10c4dff5 100644 --- a/apis/pr-feature-user-interest/core/SecondScreen/schemas/index.md +++ b/apis/pr-feature-user-interest/core/SecondScreen/schemas/index.md @@ -29,14 +29,12 @@ undefined An a message notification from a second screen device -````typescript ```typescript - -```` - +type SecondScreenEvent = { + type: 'dial' + version?: string + data?: string +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/SecureStorage/index.md b/apis/pr-feature-user-interest/core/SecureStorage/index.md index 48505ce22..0cba6209c 100644 --- a/apis/pr-feature-user-interest/core/SecureStorage/index.md +++ b/apis/pr-feature-user-interest/core/SecureStorage/index.md @@ -10,7 +10,7 @@ sdk: core --- -Version SecureStorage 1.2.0-feature-user-interest.7 +Version SecureStorage 1.2.0-feature-user-interest.8 ## Table of Contents @@ -45,21 +45,17 @@ A module for storing and retrieving secure data owned by the app Clears all the secure data values ```typescript -${method.signature} +function clear(scope: StorageScope): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ---------------------------------------------------------- | -| `scope` | `` | true | The scope of the key/value values: `'device' \| 'account'` | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | --------------------------------------------------------------- | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the key/value
values: `'device' \| 'account'` | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -119,22 +115,18 @@ Response: Get stored value by key ```typescript -${method.signature} +function get(scope: StorageScope, key: string): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | -------- | -------- | ---------------------------------------------------------- | -| `scope` | `` | true | The scope of the key/value values: `'device' \| 'account'` | -| `key` | `string` | true | Key to get | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | --------------------------------------------------------------- | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the key/value
values: `'device' \| 'account'` | +| `key` | `string` | true | Key to get | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -240,22 +232,18 @@ Response: Remove a secure data value ```typescript -${method.signature} +function remove(scope: StorageScope, key: string): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | -------- | -------- | --------------------------------------------------------- | -| `scope` | `` | true | The scope of the data key values: `'device' \| 'account'` | -| `key` | `string` | true | Key to remove | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | -------------------------------------------------------------- | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the data key
values: `'device' \| 'account'` | +| `key` | `string` | true | Key to remove | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -361,24 +349,25 @@ Response: Set or update a secure data value ```typescript -${method.signature} +function set( + scope: StorageScope, + key: string, + value: string, + options: StorageOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| --------- | -------- | -------- | --------------------------------------------------------- | -| `scope` | `` | true | The scope of the data key values: `'device' \| 'account'` | -| `key` | `string` | true | Key to set | -| `value` | `string` | true | Value to set | -| `options` | `` | false | Optional parameters to set | +| Param | Type | Required | Description | +| --------- | ----------------------------------- | -------- | -------------------------------------------------------------- | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the data key
values: `'device' \| 'account'` | +| `key` | `string` | true | Key to set | +| `value` | `string` | true | Value to set | +| `options` | [`StorageOptions`](#storageoptions) | false | Optional parameters to set | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -501,12 +490,10 @@ Response: The scope of the data ```typescript -StorageScope Enumeration: - -| key | value | -|-----|-------| -| DEVICE | device | -| ACCOUNT | account | +StorageScope: { + DEVICE: 'device', + ACCOUNT: 'account', +}, ``` @@ -514,14 +501,10 @@ StorageScope Enumeration: ### StorageOptions -````typescript ```typescript - -```` - +type StorageOptions = { + ttl: number // Seconds from set time before the data expires and is removed +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/core/Types/schemas/index.md b/apis/pr-feature-user-interest/core/Types/schemas/index.md index 750318607..eb0f89848 100644 --- a/apis/pr-feature-user-interest/core/Types/schemas/index.md +++ b/apis/pr-feature-user-interest/core/Types/schemas/index.md @@ -33,16 +33,14 @@ undefined ### AudioProfile ```typescript -AudioProfile Enumeration: - -| key | value | -|-----|-------| -| STEREO | stereo | -| DOLBY_DIGITAL_5_1 | dolbyDigital5.1 | -| DOLBY_DIGITAL_7_1 | dolbyDigital7.1 | -| DOLBY_DIGITAL_5_1_PLUS | dolbyDigital5.1+ | -| DOLBY_DIGITAL_7_1_PLUS | dolbyDigital7.1+ | -| DOLBY_ATMOS | dolbyAtmos | +AudioProfile: { + STEREO: 'stereo', + DOLBY_DIGITAL_5_1: 'dolbyDigital5.1', + DOLBY_DIGITAL_7_1: 'dolbyDigital7.1', + DOLBY_DIGITAL_5_1_PLUS: 'dolbyDigital5.1+', + DOLBY_DIGITAL_7_1_PLUS: 'dolbyDigital7.1+', + DOLBY_ATMOS: 'dolbyAtmos', +}, ``` @@ -50,29 +48,22 @@ AudioProfile Enumeration: ### SemanticVersion -````typescript ```typescript - -```` - -```` - - +type SemanticVersion = { + major: number + minor: number + patch: number + readable: string +} +``` --- ### BooleanMap - - ```typescript -```typescript - -```` - -```` - - +type BooleanMap = {} +``` --- @@ -81,8 +72,8 @@ AudioProfile Enumeration: Localized string supports either a simple `string` or a Map of language codes to strings. When using a simple `string`, the current preferred langauge from `Localization.langauge()` is assumed. ```typescript - -```` +type LocalizedString = string | object +``` --- diff --git a/apis/pr-feature-user-interest/discovery/Accessibility/schemas/index.md b/apis/pr-feature-user-interest/discovery/Accessibility/schemas/index.md index 1f4c2eb10..63f7e3f99 100644 --- a/apis/pr-feature-user-interest/discovery/Accessibility/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Accessibility/schemas/index.md @@ -53,26 +53,24 @@ undefined ### VoiceGuidanceSettings -````typescript ```typescript - -```` - -```` +type VoiceGuidanceSettings = { + enabled: boolean // Whether or not voice guidance should be enabled by default + speed: VoiceSpeed // The speed at which voice guidance speech will be read back to the user +} +``` See also: - +[VoiceSpeed](#voicespeed) --- ### FontSize - - ```typescript -```` +``` --- @@ -120,31 +118,37 @@ See also: The default styles to use when displaying closed-captions -````typescript ```typescript - -```` - -```` - - +type ClosedCaptionsStyles = { + fontFamily?: string + fontSize?: number + fontColor?: string + fontEdge?: string + fontEdgeColor?: string + fontOpacity?: number + backgroundColor?: string + backgroundOpacity?: number + textAlign?: string + textAlignVertical?: string + windowColor?: string + windowOpacity?: number +} +``` --- ### ClosedCaptionsSettings - - -```typescript ```typescript - -```` - +type ClosedCaptionsSettings = { + enabled: boolean // Whether or not closed-captions should be enabled by default + styles: ClosedCaptionsStyles // The default styles to use when displaying closed-captions + preferredLanguages?: string[] +} ``` See also: - +[ClosedCaptionsStyles](#closedcaptionsstyles) --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Advertising/schemas/index.md b/apis/pr-feature-user-interest/discovery/Advertising/schemas/index.md index c2dc47d31..0b39aad15 100644 --- a/apis/pr-feature-user-interest/discovery/Advertising/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Advertising/schemas/index.md @@ -41,14 +41,12 @@ Applies to fast-forward/rewind (e.g. trick mode), seeking over an entire opportu Namespace: `xrn:advertising:policy:skipRestriction:` ```typescript -SkipRestriction Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| ADS_UNWATCHED | adsUnwatched | -| ADS_ALL | adsAll | -| ALL | all | +SkipRestriction: { + NONE: 'none', + ADS_UNWATCHED: 'adsUnwatched', + ADS_ALL: 'adsAll', + ALL: 'all', +}, ``` diff --git a/apis/pr-feature-user-interest/discovery/Capabilities/schemas/index.md b/apis/pr-feature-user-interest/discovery/Capabilities/schemas/index.md index cbd240b62..53df32ed5 100644 --- a/apis/pr-feature-user-interest/discovery/Capabilities/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Capabilities/schemas/index.md @@ -35,13 +35,11 @@ undefined Role provides access level for the app for a given capability. ```typescript -Role Enumeration: - -| key | value | -|-----|-------| -| USE | use | -| MANAGE | manage | -| PROVIDE | provide | +Role: { + USE: 'use', + MANAGE: 'manage', + PROVIDE: 'provide', +}, ``` @@ -52,16 +50,14 @@ Role Enumeration: Reasons why a Capability might not be invokable ```typescript -DenyReason Enumeration: - -| key | value | -|-----|-------| -| UNPERMITTED | unpermitted | -| UNSUPPORTED | unsupported | -| DISABLED | disabled | -| UNAVAILABLE | unavailable | -| GRANT_DENIED | grantDenied | -| UNGRANTED | ungranted | +DenyReason: { + UNPERMITTED: 'unpermitted', + UNSUPPORTED: 'unsupported', + DISABLED: 'disabled', + UNAVAILABLE: 'unavailable', + GRANT_DENIED: 'grantDenied', + UNGRANTED: 'ungranted', +}, ``` @@ -87,17 +83,22 @@ A Capability is a discrete unit of functionality that a Firebolt device might be ### CapabilityInfo -````typescript ```typescript - -```` - -```` +type CapabilityInfo = { + capability?: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. + supported: boolean // Provides info whether the capability is supported + available: boolean // Provides info whether the capability is available + use: object + manage: object + provide: object + details?: DenyReason[] // Reasons why a Capability might not be invokable +} +``` See also: - - +[Capability](#capability) +[DenyReason](#denyreason) --- @@ -106,16 +107,15 @@ See also: A capability combined with a Role, which an app may be permitted (by a distributor) or granted (by an end user). ```typescript -```typescript - -```` - +type Permission = { + role?: Role // Role provides access level for the app for a given capability. + capability: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. +} ``` See also: - - +[Role](#role) +[Capability](#capability) --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Content/index.md b/apis/pr-feature-user-interest/discovery/Content/index.md index 85e3e8c20..b62f0e009 100644 --- a/apis/pr-feature-user-interest/discovery/Content/index.md +++ b/apis/pr-feature-user-interest/discovery/Content/index.md @@ -10,7 +10,7 @@ sdk: discovery --- -Version Content 1.2.0-feature-user-interest.7 +Version Content 1.2.0-feature-user-interest.8 ## Table of Contents @@ -156,35 +156,31 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Provide information about the entity currently displayed or selected on the screen. ```typescript -${method.signature} +function requestUserInterest( + type: InterestType, + reason: InterestReason, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | ------------------------------------------------- | -| `type` | `` | true | values: `'interest' \| 'disinterest'` | -| `reason` | `` | true | values: `'playlist' \| 'reaction' \| 'recording'` | +| Param | Type | Required | Description | +| -------- | -------------------------------------------------------- | -------- | ------------------------------------------------------ | +| `type` | [`InterestType`](../Discovery/schemas/#InterestType) | true |
values: `'interest' \| 'disinterest'` | +| `reason` | [`InterestReason`](../Discovery/schemas/#InterestReason) | true |
values: `'playlist' \| 'reaction' \| 'recording'` | Promise resolution: -````typescript -```typescript - -```` - -```` +[InterestResult](#interestresult) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------------- | | uses | xrn:firebolt:capability:discovery:user-interest | - #### Examples - Default Example JavaScript: @@ -192,9 +188,9 @@ JavaScript: ```javascript import { Content } from '@firebolt-js/discovery-sdk' -let interest = await Content.requestUserInterest("interest", "playlist") +let interest = await Content.requestUserInterest('interest', 'playlist') console.log(interest) -```` +``` Value of `interest`: @@ -292,23 +288,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[InterestEvent](#interestevent) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------------------- | | uses | xrn:firebolt:capability:discovery:user-interest | - #### Examples - Default Example JavaScript: @@ -316,10 +305,10 @@ JavaScript: ```javascript import { Content } from '@firebolt-js/discovery-sdk' -Content.listen('userInterest', interest => { +Content.listen('userInterest', (interest) => { console.log(interest) }) -```` +``` Value of `interest`: @@ -412,35 +401,34 @@ Response: ### InterestResult -````typescript ```typescript - -```` - -```` +type InterestResult = { + appId: string + entity: EntityDetails +} +``` See also: - +[EntityDetails](../Entity/schemas/#EntityDetails) --- ### InterestEvent - - -```typescript ```typescript - -```` - +type InterestEvent = { + appId: string + type: InterestType + reason: InterestReason + entity: EntityDetails +} ``` See also: - - - +[InterestType](../Discovery/schemas/#InterestType) +[InterestReason](../Discovery/schemas/#InterestReason) +[EntityDetails](../Entity/schemas/#EntityDetails) --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Discovery/schemas/index.md b/apis/pr-feature-user-interest/discovery/Discovery/schemas/index.md index fdc6bacc6..b86cd73cb 100644 --- a/apis/pr-feature-user-interest/discovery/Discovery/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Discovery/schemas/index.md @@ -31,12 +31,10 @@ undefined ### InterestType ```typescript -InterestType Enumeration: - -| key | value | -|-----|-------| -| INTEREST | interest | -| DISINTEREST | disinterest | +InterestType: { + INTEREST: 'interest', + DISINTEREST: 'disinterest', +}, ``` @@ -45,13 +43,11 @@ InterestType Enumeration: ### InterestReason ```typescript -InterestReason Enumeration: - -| key | value | -|-----|-------| -| PLAYLIST | playlist | -| REACTION | reaction | -| RECORDING | recording | +InterestReason: { + PLAYLIST: 'playlist', + REACTION: 'reaction', + RECORDING: 'recording', +}, ``` @@ -61,33 +57,32 @@ InterestReason Enumeration: The result for an `entityInfo()` push or pull. -````typescript ```typescript - -```` - -```` +type EntityInfoResult = { + expires: string + entity: EntityInfo // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. + related?: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} +``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- ### PurchasedContentResult - - -```typescript ```typescript - -```` - +type PurchasedContentResult = { + expires: string + totalCount: number + entries: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} ``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Entertainment/schemas/index.md b/apis/pr-feature-user-interest/discovery/Entertainment/schemas/index.md index 2bb3134e4..59c8f46ba 100644 --- a/apis/pr-feature-user-interest/discovery/Entertainment/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Entertainment/schemas/index.md @@ -39,14 +39,12 @@ undefined The offering type of the WayToWatch. ```typescript -OfferingType Enumeration: - -| key | value | -|-----|-------| -| FREE | free | -| SUBSCRIBE | subscribe | -| BUY | buy | -| RENT | rent | +OfferingType: { + FREE: 'free', + SUBSCRIBE: 'subscribe', + BUY: 'buy', + RENT: 'rent', +}, ``` @@ -57,12 +55,10 @@ OfferingType Enumeration: In the case of a music `entityType`, specifies the type of music entity. ```typescript -MusicType Enumeration: - -| key | value | -|-----|-------| -| SONG | song | -| ALBUM | album | +MusicType: { + SONG: 'song', + ALBUM: 'album', +}, ``` @@ -73,22 +69,20 @@ MusicType Enumeration: In the case of a program `entityType`, specifies the program type. ```typescript -ProgramType Enumeration: - -| key | value | -|-----|-------| -| MOVIE | movie | -| EPISODE | episode | -| SEASON | season | -| SERIES | series | -| OTHER | other | -| PREVIEW | preview | -| EXTRA | extra | -| CONCERT | concert | -| SPORTING_EVENT | sportingEvent | -| ADVERTISEMENT | advertisement | -| MUSIC_VIDEO | musicVideo | -| MINISODE | minisode | +ProgramType: { + MOVIE: 'movie', + EPISODE: 'episode', + SEASON: 'season', + SERIES: 'series', + OTHER: 'other', + PREVIEW: 'preview', + EXTRA: 'extra', + CONCERT: 'concert', + SPORTING_EVENT: 'sportingEvent', + ADVERTISEMENT: 'advertisement', + MUSIC_VIDEO: 'musicVideo', + MINISODE: 'minisode', +}, ``` @@ -132,14 +126,19 @@ Ratings: `G`, `8+`, `13+`, `16+`, `18+` Ratings: `G`, `8+`, `13+`, `16+`, `18+` -````typescript ```typescript - -```` - -```` - - +type ContentRating = { + scheme: + | 'CA-Movie' + | 'CA-TV' + | 'CA-Movie-Fr' + | 'CA-TV-Fr' + | 'US-Movie' + | 'US-TV' // The rating scheme. + rating: string // The content rating. + advisories?: string[] // Optional list of subratings or content advisories. +} +``` --- @@ -154,28 +153,26 @@ required to target a playable stream or an entity detail screen via a deep link. If an id isn't needed to get to those pages, it doesn't need to be included. ```typescript -```typescript - -```` - -```` - - +type ContentIdentifiers = { + assetId?: string // Identifies a particular playable asset. For example, the HD version of a particular movie separate from the UHD version. + entityId?: string // Identifies an entity, such as a Movie, TV Series or TV Episode. + seasonId?: string // The TV Season for a TV Episode. + seriesId?: string // The TV Series for a TV Episode or TV Season. + appContentData?: string // App-specific content identifiers. +} +``` --- ### Entitlement - - ```typescript -```typescript - -```` - -```` - - +type Entitlement = { + entitlementId: string + startTime?: string + endTime?: string +} +``` --- @@ -217,17 +214,28 @@ multiple WayToWatch objects. points, the `price` provided must be the lowest available price. ```typescript -```typescript - -```` - -```` +type WayToWatch = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + expires?: string // Time when the WayToWatch is no longer available. + entitled?: boolean // Specify if the user is entitled to watch the entity. + entitledExpires?: string // Time when the entity is no longer entitled. + offeringType?: OfferingType // The offering type of the WayToWatch. + hasAds?: boolean // True if the streamable asset contains ads. + price?: number // For "buy" and "rent" WayToWatch, the price to buy or rent in the user's preferred currency. + videoQuality?: 'SD' | 'HD' | 'UHD'[] // List of the video qualities available via the WayToWatch. + audioProfile: AudioProfile[] // List of the audio types available via the WayToWatch. + audioLanguages?: string[] // List of audio track languages available on the WayToWatch. The first is considered the primary language. Languages are expressed as ISO 639 1/2 codes. + closedCaptions?: string[] // List of languages for which closed captions are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + subtitles?: string[] // List of languages for which subtitles are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + audioDescriptions?: string[] // List of languages for which audio descriptions (DVD) as available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. +} +``` See also: - - - +[ContentIdentifiers](#contentidentifiers) +[OfferingType](#offeringtype) +[AudioProfile](../Types/schemas/#AudioProfile) --- @@ -236,7 +244,7 @@ See also: An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. Additionally, EntityInfo objects must specify a properly formed -ContentIdentifiers object, `entityType`, and `title`. The app should provide +ContentIdentifiers object, `entityType`, and `title`. The app should provide the `synopsis` property for a good user experience if the content metadata is not available another way. @@ -249,19 +257,29 @@ It is optional for the `purchasedContent` method, but recommended because the UI may use those data. ```typescript -```typescript - -```` - +type EntityInfo = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + title: string // Title of the entity. + entityType: 'program' | 'music' // The type of the entity, e.g. `program` or `music`. + programType?: ProgramType // In the case of a program `entityType`, specifies the program type. + musicType?: MusicType // In the case of a music `entityType`, specifies the type of music entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} ``` See also: - - - - - +[ContentIdentifiers](#contentidentifiers) +[ProgramType](#programtype) +[MusicType](#musictype) +[ContentRating](#contentrating) +[WayToWatch](#waytowatch) --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Entity/schemas/index.md b/apis/pr-feature-user-interest/discovery/Entity/schemas/index.md index 45f99ef76..c8b6d57f8 100644 --- a/apis/pr-feature-user-interest/discovery/Entity/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Entity/schemas/index.md @@ -42,78 +42,77 @@ undefined A Firebolt compliant representation of a Movie entity. -````typescript ```typescript - -```` - -```` - - +type MovieEntity = { + entityType: 'program' + programType: 'movie' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### Metadata - - -```typescript ```typescript - -```` - -```` +type Metadata = { + title?: string // Title of the entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. +} +``` See also: - +[ContentRating](../Entertainment/schemas/#ContentRating) --- ### MusicEntity - - ```typescript -```typescript - -```` - -```` +type MusicEntity = { + entityType: 'music' + musicType: MusicType // In the case of a music `entityType`, specifies the type of music entity. + entityId: string +} +``` See also: - +[MusicType](../Entertainment/schemas/#MusicType) --- ### ChannelEntity - - ```typescript -```typescript - -```` - -```` - - +type ChannelEntity = { + entityType: 'channel' + channelType: 'streaming' | 'overTheAir' + entityId: string // ID of the channel, in the target App's scope. + appContentData?: string +} +``` --- ### UntypedEntity - - ```typescript -```typescript - -```` - -```` - - +type UntypedEntity = { + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -122,13 +121,13 @@ See also: A Firebolt compliant representation of a Playlist entity. ```typescript -```typescript - -```` - -```` - - +type PlaylistEntity = { + entityType: 'playlist' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -137,13 +136,16 @@ A Firebolt compliant representation of a Playlist entity. A Firebolt compliant representation of a TV Episode entity. ```typescript -```typescript - -```` - -```` - - +type TVEpisodeEntity = { + entityType: 'program' + programType: 'episode' + entityId: string + seriesId: string + seasonId: string + assetId?: string + appContentData?: string +} +``` --- @@ -152,13 +154,15 @@ A Firebolt compliant representation of a TV Episode entity. A Firebolt compliant representation of a TV Season entity. ```typescript -```typescript - -```` - -```` - - +type TVSeasonEntity = { + entityType: 'program' + programType: 'season' + entityId: string + seriesId: string + assetId?: string + appContentData?: string +} +``` --- @@ -167,13 +171,14 @@ A Firebolt compliant representation of a TV Season entity. A Firebolt compliant representation of a TV Series entity. ```typescript -```typescript - -```` - -```` - - +type TVSeriesEntity = { + entityType: 'program' + programType: 'series' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -182,26 +187,44 @@ A Firebolt compliant representation of a TV Series entity. A Firebolt compliant representation of the remaining program entity types. ```typescript -```typescript - -```` - -```` - - +type AdditionalEntity = { + entityType: 'program' + programType: + | 'concert' + | 'sportingEvent' + | 'preview' + | 'other' + | 'advertisement' + | 'musicVideo' + | 'minisode' + | 'extra' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### ProgramEntity - - ```typescript - -```` +type ProgramEntity = + | MovieEntity + | TVEpisodeEntity + | TVSeasonEntity + | TVSeriesEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[TVSeasonEntity](#tvseasonentity) +[TVSeriesEntity](#tvseriesentity) +[AdditionalEntity](#additionalentity) + --- ### Entity @@ -212,32 +235,53 @@ See also: See also: +[ProgramEntity](#programentity) +[MusicEntity](#musicentity) +[ChannelEntity](#channelentity) +[UntypedEntity](#untypedentity) +[PlaylistEntity](#playlistentity) + --- ### EntityDetails -````typescript ```typescript - -```` - -```` +type EntityDetails = { + identifiers: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + info?: Metadata + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} +``` See also: - - +[Metadata](#metadata) +[WayToWatch](../Entertainment/schemas/#WayToWatch) --- ### PlayableEntity - - ```typescript - -```` +type PlayableEntity = + | MovieEntity + | TVEpisodeEntity + | PlaylistEntity + | MusicEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[PlaylistEntity](#playlistentity) +[MusicEntity](#musicentity) +[AdditionalEntity](#additionalentity) + --- diff --git a/apis/pr-feature-user-interest/discovery/Intents/schemas/index.md b/apis/pr-feature-user-interest/discovery/Intents/schemas/index.md index fd842cc83..9bb23a7fd 100644 --- a/apis/pr-feature-user-interest/discovery/Intents/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Intents/schemas/index.md @@ -58,14 +58,18 @@ A Firebolt compliant representation of a user intention. A Firebolt compliant representation of a user intention to navigate an app to a specific entity page, and bring that app to the foreground if needed. -````typescript ```typescript - -```` - -```` - - +type EntityIntent = { + action: 'entity' + data: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + context: object +} +``` --- @@ -74,15 +78,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlaybackIntent = { + action: 'playback' + data: PlayableEntity + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -91,13 +96,12 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's search UI with a search term populated, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SearchIntent = { + action: 'search' + data?: object + context: object +} +``` --- @@ -106,13 +110,12 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to navigate an app to a section not covered by `home`, `entity`, `player`, or `search`, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SectionIntent = { + action: 'section' + data?: object + context: object +} +``` --- @@ -121,15 +124,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to 'tune' to a traditional over-the-air broadcast, or an OTT Stream from an OTT or vMVPD App. ```typescript -```typescript - -```` - -```` +type TuneIntent = { + action: 'tune' + data: object + context: object +} +``` See also: - +[ChannelEntity](../Entity/schemas/#ChannelEntity) --- @@ -138,15 +142,16 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlayEntityIntent = { + action: 'play-entity' + data: object + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -155,16 +160,17 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for an abstract query to be searched for and played by the app. ```typescript -```typescript - -```` - -```` +type PlayQueryIntent = { + action: 'play-query' + data: object + context: object +} +``` See also: - - +[ProgramType](../Entertainment/schemas/#ProgramType) +[MusicType](../Entertainment/schemas/#MusicType) --- @@ -173,13 +179,11 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's home screen, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type HomeIntent = { + action: 'home' + context: object +} +``` --- @@ -188,13 +192,11 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to launch an app. ```typescript -```typescript - -```` - -```` - - +type LaunchIntent = { + action: 'launch' + context: object +} +``` --- @@ -203,9 +205,28 @@ A Firebolt compliant representation of a user intention to launch an app. A Firebolt compliant representation of a user intention to navigate to a specific place in an app. ```typescript - -```` +type NavigationIntent = + | HomeIntent + | LaunchIntent + | EntityIntent + | PlaybackIntent + | SearchIntent + | SectionIntent + | TuneIntent + | PlayEntityIntent + | PlayQueryIntent +``` See also: +[HomeIntent](#homeintent) +[LaunchIntent](#launchintent) +[EntityIntent](#entityintent) +[PlaybackIntent](#playbackintent) +[SearchIntent](#searchintent) +[SectionIntent](#sectionintent) +[TuneIntent](#tuneintent) +[PlayEntityIntent](#playentityintent) +[PlayQueryIntent](#playqueryintent) + --- diff --git a/apis/pr-feature-user-interest/discovery/Lifecycle/schemas/index.md b/apis/pr-feature-user-interest/discovery/Lifecycle/schemas/index.md index 94e55a97e..c59194478 100644 --- a/apis/pr-feature-user-interest/discovery/Lifecycle/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Lifecycle/schemas/index.md @@ -31,14 +31,12 @@ undefined The application close reason ```typescript -CloseReason Enumeration: - -| key | value | -|-----|-------| -| REMOTE_BUTTON | remoteButton | -| USER_EXIT | userExit | -| DONE | done | -| ERROR | error | +CloseReason: { + REMOTE_BUTTON: 'remoteButton', + USER_EXIT: 'userExit', + DONE: 'done', + ERROR: 'error', +}, ``` @@ -49,16 +47,14 @@ CloseReason Enumeration: The application lifecycle state ```typescript -LifecycleState Enumeration: - -| key | value | -|-----|-------| -| INITIALIZING | initializing | -| INACTIVE | inactive | -| FOREGROUND | foreground | -| BACKGROUND | background | -| UNLOADING | unloading | -| SUSPENDED | suspended | +LifecycleState: { + INITIALIZING: 'initializing', + INACTIVE: 'inactive', + FOREGROUND: 'foreground', + BACKGROUND: 'background', + UNLOADING: 'unloading', + SUSPENDED: 'suspended', +}, ``` diff --git a/apis/pr-feature-user-interest/discovery/SecondScreen/schemas/index.md b/apis/pr-feature-user-interest/discovery/SecondScreen/schemas/index.md index 70e9f4267..382996719 100644 --- a/apis/pr-feature-user-interest/discovery/SecondScreen/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/SecondScreen/schemas/index.md @@ -29,14 +29,12 @@ undefined An a message notification from a second screen device -````typescript ```typescript - -```` - +type SecondScreenEvent = { + type: 'dial' + version?: string + data?: string +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/discovery/Types/schemas/index.md b/apis/pr-feature-user-interest/discovery/Types/schemas/index.md index e9c47caa3..38b35826a 100644 --- a/apis/pr-feature-user-interest/discovery/Types/schemas/index.md +++ b/apis/pr-feature-user-interest/discovery/Types/schemas/index.md @@ -33,16 +33,14 @@ undefined ### AudioProfile ```typescript -AudioProfile Enumeration: - -| key | value | -|-----|-------| -| STEREO | stereo | -| DOLBY_DIGITAL_5_1 | dolbyDigital5.1 | -| DOLBY_DIGITAL_7_1 | dolbyDigital7.1 | -| DOLBY_DIGITAL_5_1_PLUS | dolbyDigital5.1+ | -| DOLBY_DIGITAL_7_1_PLUS | dolbyDigital7.1+ | -| DOLBY_ATMOS | dolbyAtmos | +AudioProfile: { + STEREO: 'stereo', + DOLBY_DIGITAL_5_1: 'dolbyDigital5.1', + DOLBY_DIGITAL_7_1: 'dolbyDigital7.1', + DOLBY_DIGITAL_5_1_PLUS: 'dolbyDigital5.1+', + DOLBY_DIGITAL_7_1_PLUS: 'dolbyDigital7.1+', + DOLBY_ATMOS: 'dolbyAtmos', +}, ``` @@ -50,29 +48,22 @@ AudioProfile Enumeration: ### SemanticVersion -````typescript ```typescript - -```` - -```` - - +type SemanticVersion = { + major: number + minor: number + patch: number + readable: string +} +``` --- ### BooleanMap - - ```typescript -```typescript - -```` - -```` - - +type BooleanMap = {} +``` --- @@ -81,8 +72,8 @@ AudioProfile Enumeration: Localized string supports either a simple `string` or a Map of language codes to strings. When using a simple `string`, the current preferred langauge from `Localization.langauge()` is assumed. ```typescript - -```` +type LocalizedString = string | object +``` --- diff --git a/apis/pr-feature-user-interest/manage/Accessibility/schemas/index.md b/apis/pr-feature-user-interest/manage/Accessibility/schemas/index.md index 379fe5929..0fce1dea2 100644 --- a/apis/pr-feature-user-interest/manage/Accessibility/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Accessibility/schemas/index.md @@ -53,26 +53,24 @@ undefined ### VoiceGuidanceSettings -````typescript ```typescript - -```` - -```` +type VoiceGuidanceSettings = { + enabled: boolean // Whether or not voice guidance should be enabled by default + speed: VoiceSpeed // The speed at which voice guidance speech will be read back to the user +} +``` See also: - +[VoiceSpeed](#voicespeed) --- ### FontSize - - ```typescript -```` +``` --- @@ -120,31 +118,37 @@ See also: The default styles to use when displaying closed-captions -````typescript ```typescript - -```` - -```` - - +type ClosedCaptionsStyles = { + fontFamily?: string + fontSize?: number + fontColor?: string + fontEdge?: string + fontEdgeColor?: string + fontOpacity?: number + backgroundColor?: string + backgroundOpacity?: number + textAlign?: string + textAlignVertical?: string + windowColor?: string + windowOpacity?: number +} +``` --- ### ClosedCaptionsSettings - - -```typescript ```typescript - -```` - +type ClosedCaptionsSettings = { + enabled: boolean // Whether or not closed-captions should be enabled by default + styles: ClosedCaptionsStyles // The default styles to use when displaying closed-captions + preferredLanguages?: string[] +} ``` See also: - +[ClosedCaptionsStyles](#closedcaptionsstyles) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Account/index.md b/apis/pr-feature-user-interest/manage/Account/index.md index c9fabc0da..4fcaea2ad 100644 --- a/apis/pr-feature-user-interest/manage/Account/index.md +++ b/apis/pr-feature-user-interest/manage/Account/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Account 1.2.0-feature-user-interest.7 +Version Account 1.2.0-feature-user-interest.8 ## Table of Contents @@ -42,22 +42,18 @@ A module for querying about the device account. Used by a distributor to push Session token to firebolt. ```typescript -${method.signature} +function session(token: Token, expiresIn: Expiry): Promise ``` Parameters: -| Param | Type | Required | Description | -| ----------- | ---- | -------- | ----------- | -| `token` | `` | true | | -| `expiresIn` | `` | true | minumum: 1 | +| Param | Type | Required | Description | +| ----------- | ------------------- | -------- | --------------- | +| `token` | [`Token`](#token) | true | | +| `expiresIn` | [`Expiry`](#expiry) | true |
minumum: 1 | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | diff --git a/apis/pr-feature-user-interest/manage/AcknowledgeChallenge/index.md b/apis/pr-feature-user-interest/manage/AcknowledgeChallenge/index.md index 8315fc7f3..d2071f85e 100644 --- a/apis/pr-feature-user-interest/manage/AcknowledgeChallenge/index.md +++ b/apis/pr-feature-user-interest/manage/AcknowledgeChallenge/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version AcknowledgeChallenge 1.2.0-feature-user-interest.7 +Version AcknowledgeChallenge 1.2.0-feature-user-interest.8 ## Table of Contents @@ -54,20 +54,13 @@ Internal API for Challenge Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -117,10 +110,6 @@ Internal API for Challenge Provider to request focus for UX purposes. Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -164,17 +153,13 @@ Internal API for Challenge Provider to send back response. Parameters: -| Param | Type | Required | Description | -| --------------- | -------- | -------- | ----------- | -| `correlationId` | `string` | true | | -| `result` | `` | true | | +| Param | Type | Required | Description | +| --------------- | ----------------------------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `result` | [`GrantResult`](#grantresult) | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -308,23 +293,16 @@ Parameters: Result: -````typescript -```typescript - -```` - -```` +[ChallengeProviderRequest](#challengeproviderrequest) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| -------- | ------------------------------------------------------ | | provides | xrn:firebolt:capability:usergrant:acknowledgechallenge | - #### Examples - Default Example JSON-RPC: @@ -333,14 +311,14 @@ Request: ```json { - "jsonrpc": "2.0", - "id": 1, - "method": "AcknowledgeChallenge.onRequestChallenge", - "params": { - "listen": true - } + "jsonrpc": "2.0", + "id": 1, + "method": "AcknowledgeChallenge.onRequestChallenge", + "params": { + "listen": true + } } -```` +``` Response: @@ -370,7 +348,12 @@ Response: The provider interface for the `xrn:firebolt:capability:usergrant:acknowledgechallenge` capability. ```typescript - +interface ChallengeProvider { + challenge( + parameters: Challenge, + session: FocusableProviderSession, + ): Promise +} ``` Usage: @@ -477,64 +460,52 @@ Response: ### GrantResult -````typescript ```typescript - -```` - -```` - - +type GrantResult = { + granted: boolean +} +``` --- ### ChallengeRequestor - - ```typescript -```typescript - -```` - -```` - - +type ChallengeRequestor = { + id: string // The id of the app that requested the challenge + name: string // The name of the app that requested the challenge +} +``` --- ### Challenge - - -```typescript ```typescript - -```` - -```` +type Challenge = { + capability: string // The capability that is being requested by the user to approve + requestor: ChallengeRequestor // The identity of which app is requesting access to this capability +} +``` See also: - +[ChallengeRequestor](#challengerequestor) --- ### ChallengeProviderRequest - - -```typescript ```typescript - -```` - +type ChallengeProviderRequest = { + parameters: Challenge // The result of the provider response. + correlationId: string // The id that was passed in to the event that triggered a provider method to be called +} ``` See also: - - +[ProviderRequest](../Types/schemas/#ProviderRequest) +[Challenge](#challenge-1) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Advertising/index.md b/apis/pr-feature-user-interest/manage/Advertising/index.md index bd07a57cd..612bbdb59 100644 --- a/apis/pr-feature-user-interest/manage/Advertising/index.md +++ b/apis/pr-feature-user-interest/manage/Advertising/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Advertising 1.2.0-feature-user-interest.7 +Version Advertising 1.2.0-feature-user-interest.8 ## Table of Contents @@ -155,15 +155,11 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Resets a user's identifier in the ad platform so that the advertising id that apps get will be a new value ```typescript -${method.signature} +function resetIdentifier(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -223,22 +219,12 @@ Set the value for AdPolicy.skipRestriction To get the value of `skipRestriction` call the method like this: ```typescript -${method.signature} +function skipRestriction(): Promise ``` Promise resolution: -```typescript -SkipRestriction Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| ADS_UNWATCHED | adsUnwatched | -| ADS_ALL | adsAll | -| ALL | all | - -``` +[SkipRestriction](../Advertising/schemas/#SkipRestriction) Capabilities: @@ -337,22 +323,17 @@ Response: To set the value of `skipRestriction` call the method like this: ```typescript -function skipRestriction(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function skipRestriction(value: SkipRestriction): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------------------------- | -| `value` | `` | true | values: `'none' \| 'adsUnwatched' \| 'adsAll' \| 'all'` | +| Param | Type | Required | Description | +| ------- | ------------------------------------------------------------ | -------- | ------------------------------------------------------------ | +| `value` | [`SkipRestriction`](../Advertising/schemas/#SkipRestriction) | true |
values: `'none' \| 'adsUnwatched' \| 'adsAll' \| 'all'` | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -448,7 +429,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function skipRestriction(callback: (value) => ): Promise +function skipRestriction(callback: (value) => SkipRestriction): Promise ``` Promise resolution: diff --git a/apis/pr-feature-user-interest/manage/Advertising/schemas/index.md b/apis/pr-feature-user-interest/manage/Advertising/schemas/index.md index 961f331e8..34e321d46 100644 --- a/apis/pr-feature-user-interest/manage/Advertising/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Advertising/schemas/index.md @@ -41,14 +41,12 @@ Applies to fast-forward/rewind (e.g. trick mode), seeking over an entire opportu Namespace: `xrn:advertising:policy:skipRestriction:` ```typescript -SkipRestriction Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| ADS_UNWATCHED | adsUnwatched | -| ADS_ALL | adsAll | -| ALL | all | +SkipRestriction: { + NONE: 'none', + ADS_UNWATCHED: 'adsUnwatched', + ADS_ALL: 'adsAll', + ALL: 'all', +}, ``` diff --git a/apis/pr-feature-user-interest/manage/AudioDescriptions/index.md b/apis/pr-feature-user-interest/manage/AudioDescriptions/index.md index 6c51e3ae5..ed129d2de 100644 --- a/apis/pr-feature-user-interest/manage/AudioDescriptions/index.md +++ b/apis/pr-feature-user-interest/manage/AudioDescriptions/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version AudioDescriptions 1.2.0-feature-user-interest.7 +Version AudioDescriptions 1.2.0-feature-user-interest.8 ## Table of Contents @@ -46,15 +46,11 @@ Whether or not audio-descriptions are enabled. To get the value of `enabled` call the method like this: ```typescript -${method.signature} +function enabled(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -152,8 +148,7 @@ Response: To set the value of `enabled` call the method like this: ```typescript -function enabled(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function enabled(value: boolean): Promise ``` Parameters: @@ -164,10 +159,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 diff --git a/apis/pr-feature-user-interest/manage/Capabilities/schemas/index.md b/apis/pr-feature-user-interest/manage/Capabilities/schemas/index.md index 93592584d..95066a11e 100644 --- a/apis/pr-feature-user-interest/manage/Capabilities/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Capabilities/schemas/index.md @@ -35,13 +35,11 @@ undefined Role provides access level for the app for a given capability. ```typescript -Role Enumeration: - -| key | value | -|-----|-------| -| USE | use | -| MANAGE | manage | -| PROVIDE | provide | +Role: { + USE: 'use', + MANAGE: 'manage', + PROVIDE: 'provide', +}, ``` @@ -52,16 +50,14 @@ Role Enumeration: Reasons why a Capability might not be invokable ```typescript -DenyReason Enumeration: - -| key | value | -|-----|-------| -| UNPERMITTED | unpermitted | -| UNSUPPORTED | unsupported | -| DISABLED | disabled | -| UNAVAILABLE | unavailable | -| GRANT_DENIED | grantDenied | -| UNGRANTED | ungranted | +DenyReason: { + UNPERMITTED: 'unpermitted', + UNSUPPORTED: 'unsupported', + DISABLED: 'disabled', + UNAVAILABLE: 'unavailable', + GRANT_DENIED: 'grantDenied', + UNGRANTED: 'ungranted', +}, ``` @@ -87,17 +83,22 @@ A Capability is a discrete unit of functionality that a Firebolt device might be ### CapabilityInfo -````typescript ```typescript - -```` - -```` +type CapabilityInfo = { + capability?: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. + supported: boolean // Provides info whether the capability is supported + available: boolean // Provides info whether the capability is available + use: object + manage: object + provide: object + details?: DenyReason[] // Reasons why a Capability might not be invokable +} +``` See also: - - +[Capability](#capability) +[DenyReason](#denyreason) --- @@ -106,16 +107,15 @@ See also: A capability combined with a Role, which an app may be permitted (by a distributor) or granted (by an end user). ```typescript -```typescript - -```` - +type Permission = { + role?: Role // Role provides access level for the app for a given capability. + capability: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. +} ``` See also: - - +[Role](#role) +[Capability](#capability) --- -``` diff --git a/apis/pr-feature-user-interest/manage/ClosedCaptions/index.md b/apis/pr-feature-user-interest/manage/ClosedCaptions/index.md index f7006abac..ecea4f853 100644 --- a/apis/pr-feature-user-interest/manage/ClosedCaptions/index.md +++ b/apis/pr-feature-user-interest/manage/ClosedCaptions/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version ClosedCaptions 1.2.0-feature-user-interest.7 +Version ClosedCaptions 1.2.0-feature-user-interest.8 ## Table of Contents @@ -72,14 +72,12 @@ The preferred background color for displaying closed-captions, . To get the value of `backgroundColor` call the method like this: ```typescript -${method.signature} +function backgroundColor(): Promise ``` Promise resolution: -```typescript - -``` +[Color](../Accessibility/schemas/#Color) Capabilities: @@ -220,22 +218,17 @@ Response: To set the value of `backgroundColor` call the method like this: ```typescript -function backgroundColor(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function backgroundColor(value: Color): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------ | -------- | ----------- | +| `value` | [`Color`](../Accessibility/schemas/#Color) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -375,7 +368,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function backgroundColor(callback: (value) => ): Promise +function backgroundColor(callback: (value) => Color): Promise ``` Promise resolution: @@ -533,14 +526,12 @@ The preferred opacity for displaying closed-captions backgrounds. To get the value of `backgroundOpacity` call the method like this: ```typescript -${method.signature} +function backgroundOpacity(): Promise ``` Promise resolution: -```typescript - -``` +[Opacity](../Accessibility/schemas/#Opacity) Capabilities: @@ -681,22 +672,17 @@ Response: To set the value of `backgroundOpacity` call the method like this: ```typescript -function backgroundOpacity(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function backgroundOpacity(value: Opacity): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ---------------------------------------------- | -------- | ----------- | +| `value` | [`Opacity`](../Accessibility/schemas/#Opacity) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -836,7 +822,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function backgroundOpacity(callback: (value) => ): Promise +function backgroundOpacity(callback: (value) => Opacity): Promise ``` Promise resolution: @@ -994,15 +980,11 @@ Whether or not closed-captions are enabled. To get the value of `enabled` call the method like this: ```typescript -${method.signature} +function enabled(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1100,8 +1082,7 @@ Response: To set the value of `enabled` call the method like this: ```typescript -function enabled(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function enabled(value: boolean): Promise ``` Parameters: @@ -1112,10 +1093,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1323,14 +1300,12 @@ The preferred font color for displaying closed-captions. To get the value of `fontColor` call the method like this: ```typescript -${method.signature} +function fontColor(): Promise ``` Promise resolution: -```typescript - -``` +[Color](../Accessibility/schemas/#Color) Capabilities: @@ -1471,22 +1446,17 @@ Response: To set the value of `fontColor` call the method like this: ```typescript -function fontColor(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontColor(value: Color): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------ | -------- | ----------- | +| `value` | [`Color`](../Accessibility/schemas/#Color) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1626,7 +1596,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontColor(callback: (value) => ): Promise +function fontColor(callback: (value) => Color): Promise ``` Promise resolution: @@ -1784,24 +1754,12 @@ The preferred font edge style for displaying closed-captions. To get the value of `fontEdge` call the method like this: ```typescript -${method.signature} +function fontEdge(): Promise ``` Promise resolution: -```typescript -FontEdge Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| RAISED | raised | -| DEPRESSED | depressed | -| UNIFORM | uniform | -| DROP_SHADOW_LEFT | drop_shadow_left | -| DROP_SHADOW_RIGHT | drop_shadow_right | - -``` +[FontEdge](../Accessibility/schemas/#FontEdge) Capabilities: @@ -1942,22 +1900,17 @@ Response: To set the value of `fontEdge` call the method like this: ```typescript -function fontEdge(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontEdge(value: FontEdge): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------------ | -------- | ----------- | +| `value` | [`FontEdge`](../Accessibility/schemas/#FontEdge) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -2097,7 +2050,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontEdge(callback: (value) => ): Promise +function fontEdge(callback: (value) => FontEdge): Promise ``` Promise resolution: @@ -2255,14 +2208,12 @@ The preferred font edge color for displaying closed-captions. To get the value of `fontEdgeColor` call the method like this: ```typescript -${method.signature} +function fontEdgeColor(): Promise ``` Promise resolution: -```typescript - -``` +[Color](../Accessibility/schemas/#Color) Capabilities: @@ -2403,22 +2354,17 @@ Response: To set the value of `fontEdgeColor` call the method like this: ```typescript -function fontEdgeColor(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontEdgeColor(value: Color): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------ | -------- | ----------- | +| `value` | [`Color`](../Accessibility/schemas/#Color) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -2558,7 +2504,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontEdgeColor(callback: (value) => ): Promise +function fontEdgeColor(callback: (value) => Color): Promise ``` Promise resolution: @@ -2716,25 +2662,12 @@ The preferred font family for displaying closed-captions. To get the value of `fontFamily` call the method like this: ```typescript -${method.signature} +function fontFamily(): Promise ``` Promise resolution: -```typescript -FontFamily Enumeration: - -| key | value | -|-----|-------| -| MONOSPACED_SERIF | monospaced_serif | -| PROPORTIONAL_SERIF | proportional_serif | -| MONOSPACED_SANSERIF | monospaced_sanserif | -| PROPORTIONAL_SANSERIF | proportional_sanserif | -| SMALLCAPS | smallcaps | -| CURSIVE | cursive | -| CASUAL | casual | - -``` +[FontFamily](../Accessibility/schemas/#FontFamily) Capabilities: @@ -2875,22 +2808,17 @@ Response: To set the value of `fontFamily` call the method like this: ```typescript -function fontFamily(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontFamily(value: FontFamily): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ---------------------------------------------------- | -------- | ----------- | +| `value` | [`FontFamily`](../Accessibility/schemas/#FontFamily) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3030,7 +2958,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontFamily(callback: (value) => ): Promise +function fontFamily(callback: (value) => FontFamily): Promise ``` Promise resolution: @@ -3188,14 +3116,12 @@ The preferred opacity for displaying closed-captions characters. To get the value of `fontOpacity` call the method like this: ```typescript -${method.signature} +function fontOpacity(): Promise ``` Promise resolution: -```typescript - -``` +[Opacity](../Accessibility/schemas/#Opacity) Capabilities: @@ -3336,22 +3262,17 @@ Response: To set the value of `fontOpacity` call the method like this: ```typescript -function fontOpacity(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontOpacity(value: Opacity): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ---------------------------------------------- | -------- | ----------- | +| `value` | [`Opacity`](../Accessibility/schemas/#Opacity) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3491,7 +3412,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontOpacity(callback: (value) => ): Promise +function fontOpacity(callback: (value) => Opacity): Promise ``` Promise resolution: @@ -3649,14 +3570,12 @@ The preferred font size for displaying closed-captions. To get the value of `fontSize` call the method like this: ```typescript -${method.signature} +function fontSize(): Promise ``` Promise resolution: -```typescript - -``` +[FontSize](../Accessibility/schemas/#FontSize) Capabilities: @@ -3797,22 +3716,17 @@ Response: To set the value of `fontSize` call the method like this: ```typescript -function fontSize(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function fontSize(value: FontSize): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------------ | -------- | ----------- | +| `value` | [`FontSize`](../Accessibility/schemas/#FontSize) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3952,7 +3866,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function fontSize(callback: (value) => ): Promise +function fontSize(callback: (value) => FontSize): Promise ``` Promise resolution: @@ -4220,15 +4134,11 @@ A prioritized list of ISO 639-2/B codes for the preferred closed captions langua To get the value of `preferredLanguages` call the method like this: ```typescript -${method.signature} +function preferredLanguages(): Promise ``` Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -4326,22 +4236,17 @@ Response: To set the value of `preferredLanguages` call the method like this: ```typescript -function preferredLanguages(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function preferredLanguages(value: ISO639_2Language[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------------------------------------------------------- | -| `value` | `` | true | the preferred closed captions languages pattern: ^[a-z]{3}$ | +| Param | Type | Required | Description | +| ------- | -------------------- | -------- | ---------------------------------------------------------------- | +| `value` | `ISO639_2Language[]` | true | the preferred closed captions languages
pattern: ^[a-z]{3}$ | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -4437,7 +4342,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function preferredLanguages(callback: (value) => ): Promise +function preferredLanguages( + callback: (value) => ISO639_2Language[], +): Promise ``` Promise resolution: @@ -4549,14 +4456,12 @@ The preferred horizontal alignment for displaying closed-captions characters. To get the value of `textAlign` call the method like this: ```typescript -${method.signature} +function textAlign(): Promise ``` Promise resolution: -```typescript - -``` +[HorizontalAlignment](../Accessibility/schemas/#HorizontalAlignment) Capabilities: @@ -4697,22 +4602,17 @@ Response: To set the value of `textAlign` call the method like this: ```typescript -function textAlign(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function textAlign(value: HorizontalAlignment): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ---------------------------------------------------------------------- | -------- | ----------- | +| `value` | [`HorizontalAlignment`](../Accessibility/schemas/#HorizontalAlignment) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -4852,7 +4752,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function textAlign(callback: (value) => ): Promise +function textAlign(callback: (value) => HorizontalAlignment): Promise ``` Promise resolution: @@ -5010,14 +4910,12 @@ The preferred horizontal alignment for displaying closed-captions characters. To get the value of `textAlignVertical` call the method like this: ```typescript -${method.signature} +function textAlignVertical(): Promise ``` Promise resolution: -```typescript - -``` +[VerticalAlignment](../Accessibility/schemas/#VerticalAlignment) Capabilities: @@ -5158,22 +5056,17 @@ Response: To set the value of `textAlignVertical` call the method like this: ```typescript -function textAlignVertical(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function textAlignVertical(value: VerticalAlignment): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------------------------------ | -------- | ----------- | +| `value` | [`VerticalAlignment`](../Accessibility/schemas/#VerticalAlignment) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -5313,7 +5206,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function textAlignVertical(callback: (value) => ): Promise +function textAlignVertical( + callback: (value) => VerticalAlignment, +): Promise ``` Promise resolution: @@ -5471,14 +5366,12 @@ The preferred window color for displaying closed-captions, . To get the value of `windowColor` call the method like this: ```typescript -${method.signature} +function windowColor(): Promise ``` Promise resolution: -```typescript - -``` +[Color](../Accessibility/schemas/#Color) Capabilities: @@ -5619,22 +5512,17 @@ Response: To set the value of `windowColor` call the method like this: ```typescript -function windowColor(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function windowColor(value: Color): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ------------------------------------------ | -------- | ----------- | +| `value` | [`Color`](../Accessibility/schemas/#Color) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -5774,7 +5662,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function windowColor(callback: (value) => ): Promise +function windowColor(callback: (value) => Color): Promise ``` Promise resolution: @@ -5932,14 +5820,12 @@ The preferred window opacity for displaying closed-captions backgrounds. To get the value of `windowOpacity` call the method like this: ```typescript -${method.signature} +function windowOpacity(): Promise ``` Promise resolution: -```typescript - -``` +[Opacity](../Accessibility/schemas/#Opacity) Capabilities: @@ -6080,22 +5966,17 @@ Response: To set the value of `windowOpacity` call the method like this: ```typescript -function windowOpacity(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function windowOpacity(value: Opacity): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ----------- | -| `value` | `` | true | | +| Param | Type | Required | Description | +| ------- | ---------------------------------------------- | -------- | ----------- | +| `value` | [`Opacity`](../Accessibility/schemas/#Opacity) | true | | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -6235,7 +6116,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function windowOpacity(callback: (value) => ): Promise +function windowOpacity(callback: (value) => Opacity): Promise ``` Promise resolution: diff --git a/apis/pr-feature-user-interest/manage/Device/index.md b/apis/pr-feature-user-interest/manage/Device/index.md index a9ccc4887..ca6abe697 100644 --- a/apis/pr-feature-user-interest/manage/Device/index.md +++ b/apis/pr-feature-user-interest/manage/Device/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Device 1.2.0-feature-user-interest.7 +Version Device 1.2.0-feature-user-interest.8 ## Table of Contents @@ -102,15 +102,11 @@ The human readable name of the device To get the value of `name` call the method like this: ```typescript -${method.signature} +function name(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -208,8 +204,7 @@ Response: To set the value of `name` call the method like this: ```typescript -function name(| `value` | [`string`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function name(value: string): Promise ``` Parameters: @@ -220,10 +215,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -485,7 +476,11 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Used by a distributor to push provision info to firebolt. ```typescript -${method.signature} +function provision( + accountId: string, + deviceId: string, + distributorId: string, +): Promise ``` Parameters: @@ -498,10 +493,6 @@ Parameters: Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -619,10 +610,6 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -```typescript -string -``` - Capabilities: | Role | Capability | diff --git a/apis/pr-feature-user-interest/manage/Discovery/index.md b/apis/pr-feature-user-interest/manage/Discovery/index.md index 68af87fcd..f0a8d95e9 100644 --- a/apis/pr-feature-user-interest/manage/Discovery/index.md +++ b/apis/pr-feature-user-interest/manage/Discovery/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Discovery 1.2.0-feature-user-interest.7 +Version Discovery 1.2.0-feature-user-interest.8 ## Table of Contents @@ -174,10 +174,6 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -| Property | Type | Description | -| -------- | ------ | ----------- | -| `appId` | string | | - Capabilities: | Role | Capability | @@ -247,10 +243,6 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -| Property | Type | Description | -| -------- | ------ | ----------- | -| `appId` | string | | - Capabilities: | Role | Capability | diff --git a/apis/pr-feature-user-interest/manage/Discovery/schemas/index.md b/apis/pr-feature-user-interest/manage/Discovery/schemas/index.md index 773f841f9..d780b6ed5 100644 --- a/apis/pr-feature-user-interest/manage/Discovery/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Discovery/schemas/index.md @@ -31,12 +31,10 @@ undefined ### InterestType ```typescript -InterestType Enumeration: - -| key | value | -|-----|-------| -| INTEREST | interest | -| DISINTEREST | disinterest | +InterestType: { + INTEREST: 'interest', + DISINTEREST: 'disinterest', +}, ``` @@ -45,13 +43,11 @@ InterestType Enumeration: ### InterestReason ```typescript -InterestReason Enumeration: - -| key | value | -|-----|-------| -| PLAYLIST | playlist | -| REACTION | reaction | -| RECORDING | recording | +InterestReason: { + PLAYLIST: 'playlist', + REACTION: 'reaction', + RECORDING: 'recording', +}, ``` @@ -61,33 +57,32 @@ InterestReason Enumeration: The result for an `entityInfo()` push or pull. -````typescript ```typescript - -```` - -```` +type EntityInfoResult = { + expires: string + entity: EntityInfo // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. + related?: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} +``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- ### PurchasedContentResult - - -```typescript ```typescript - -```` - +type PurchasedContentResult = { + expires: string + totalCount: number + entries: EntityInfo[] // An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. +} ``` See also: - +[EntityInfo](../Entertainment/schemas/#EntityInfo) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Entertainment/schemas/index.md b/apis/pr-feature-user-interest/manage/Entertainment/schemas/index.md index 32eb71d24..2db9d198c 100644 --- a/apis/pr-feature-user-interest/manage/Entertainment/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Entertainment/schemas/index.md @@ -39,14 +39,12 @@ undefined The offering type of the WayToWatch. ```typescript -OfferingType Enumeration: - -| key | value | -|-----|-------| -| FREE | free | -| SUBSCRIBE | subscribe | -| BUY | buy | -| RENT | rent | +OfferingType: { + FREE: 'free', + SUBSCRIBE: 'subscribe', + BUY: 'buy', + RENT: 'rent', +}, ``` @@ -57,12 +55,10 @@ OfferingType Enumeration: In the case of a music `entityType`, specifies the type of music entity. ```typescript -MusicType Enumeration: - -| key | value | -|-----|-------| -| SONG | song | -| ALBUM | album | +MusicType: { + SONG: 'song', + ALBUM: 'album', +}, ``` @@ -73,22 +69,20 @@ MusicType Enumeration: In the case of a program `entityType`, specifies the program type. ```typescript -ProgramType Enumeration: - -| key | value | -|-----|-------| -| MOVIE | movie | -| EPISODE | episode | -| SEASON | season | -| SERIES | series | -| OTHER | other | -| PREVIEW | preview | -| EXTRA | extra | -| CONCERT | concert | -| SPORTING_EVENT | sportingEvent | -| ADVERTISEMENT | advertisement | -| MUSIC_VIDEO | musicVideo | -| MINISODE | minisode | +ProgramType: { + MOVIE: 'movie', + EPISODE: 'episode', + SEASON: 'season', + SERIES: 'series', + OTHER: 'other', + PREVIEW: 'preview', + EXTRA: 'extra', + CONCERT: 'concert', + SPORTING_EVENT: 'sportingEvent', + ADVERTISEMENT: 'advertisement', + MUSIC_VIDEO: 'musicVideo', + MINISODE: 'minisode', +}, ``` @@ -132,14 +126,19 @@ Ratings: `G`, `8+`, `13+`, `16+`, `18+` Ratings: `G`, `8+`, `13+`, `16+`, `18+` -````typescript ```typescript - -```` - -```` - - +type ContentRating = { + scheme: + | 'CA-Movie' + | 'CA-TV' + | 'CA-Movie-Fr' + | 'CA-TV-Fr' + | 'US-Movie' + | 'US-TV' // The rating scheme. + rating: string // The content rating. + advisories?: string[] // Optional list of subratings or content advisories. +} +``` --- @@ -154,28 +153,26 @@ required to target a playable stream or an entity detail screen via a deep link. If an id isn't needed to get to those pages, it doesn't need to be included. ```typescript -```typescript - -```` - -```` - - +type ContentIdentifiers = { + assetId?: string // Identifies a particular playable asset. For example, the HD version of a particular movie separate from the UHD version. + entityId?: string // Identifies an entity, such as a Movie, TV Series or TV Episode. + seasonId?: string // The TV Season for a TV Episode. + seriesId?: string // The TV Series for a TV Episode or TV Season. + appContentData?: string // App-specific content identifiers. +} +``` --- ### Entitlement - - ```typescript -```typescript - -```` - -```` - - +type Entitlement = { + entitlementId: string + startTime?: string + endTime?: string +} +``` --- @@ -217,17 +214,28 @@ multiple WayToWatch objects. points, the `price` provided must be the lowest available price. ```typescript -```typescript - -```` - -```` +type WayToWatch = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + expires?: string // Time when the WayToWatch is no longer available. + entitled?: boolean // Specify if the user is entitled to watch the entity. + entitledExpires?: string // Time when the entity is no longer entitled. + offeringType?: OfferingType // The offering type of the WayToWatch. + hasAds?: boolean // True if the streamable asset contains ads. + price?: number // For "buy" and "rent" WayToWatch, the price to buy or rent in the user's preferred currency. + videoQuality?: 'SD' | 'HD' | 'UHD'[] // List of the video qualities available via the WayToWatch. + audioProfile: AudioProfile[] // List of the audio types available via the WayToWatch. + audioLanguages?: string[] // List of audio track languages available on the WayToWatch. The first is considered the primary language. Languages are expressed as ISO 639 1/2 codes. + closedCaptions?: string[] // List of languages for which closed captions are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + subtitles?: string[] // List of languages for which subtitles are available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. + audioDescriptions?: string[] // List of languages for which audio descriptions (DVD) as available on the WayToWatch. Languages are expressed as ISO 639 1/2 codes. +} +``` See also: - - - +[ContentIdentifiers](#contentidentifiers) +[OfferingType](#offeringtype) +[AudioProfile](../Types/schemas/#AudioProfile) --- @@ -236,7 +244,7 @@ See also: An EntityInfo object represents an "entity" on the platform. Currently, only entities of type `program` are supported. `programType` must be supplied to identify the program type. Additionally, EntityInfo objects must specify a properly formed -ContentIdentifiers object, `entityType`, and `title`. The app should provide +ContentIdentifiers object, `entityType`, and `title`. The app should provide the `synopsis` property for a good user experience if the content metadata is not available another way. @@ -249,19 +257,29 @@ It is optional for the `purchasedContent` method, but recommended because the UI may use those data. ```typescript -```typescript - -```` - +type EntityInfo = { + identifiers: ContentIdentifiers // The ContentIdentifiers object is how the app identifies an entity or asset to + title: string // Title of the entity. + entityType: 'program' | 'music' // The type of the entity, e.g. `program` or `music`. + programType?: ProgramType // In the case of a program `entityType`, specifies the program type. + musicType?: MusicType // In the case of a music `entityType`, specifies the type of music entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} ``` See also: - - - - - +[ContentIdentifiers](#contentidentifiers) +[ProgramType](#programtype) +[MusicType](#musictype) +[ContentRating](#contentrating) +[WayToWatch](#waytowatch) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Entity/schemas/index.md b/apis/pr-feature-user-interest/manage/Entity/schemas/index.md index 085318bb7..7b82c1bbc 100644 --- a/apis/pr-feature-user-interest/manage/Entity/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Entity/schemas/index.md @@ -42,78 +42,77 @@ undefined A Firebolt compliant representation of a Movie entity. -````typescript ```typescript - -```` - -```` - - +type MovieEntity = { + entityType: 'program' + programType: 'movie' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### Metadata - - -```typescript ```typescript - -```` - -```` +type Metadata = { + title?: string // Title of the entity. + synopsis?: string // Short description of the entity. + seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. + seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. + episodeNumber?: number // For TV episodes, the episode number. + episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. + releaseDate?: string // The date that the program or entity was released or first aired. + contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. +} +``` See also: - +[ContentRating](../Entertainment/schemas/#ContentRating) --- ### MusicEntity - - ```typescript -```typescript - -```` - -```` +type MusicEntity = { + entityType: 'music' + musicType: MusicType // In the case of a music `entityType`, specifies the type of music entity. + entityId: string +} +``` See also: - +[MusicType](../Entertainment/schemas/#MusicType) --- ### ChannelEntity - - ```typescript -```typescript - -```` - -```` - - +type ChannelEntity = { + entityType: 'channel' + channelType: 'streaming' | 'overTheAir' + entityId: string // ID of the channel, in the target App's scope. + appContentData?: string +} +``` --- ### UntypedEntity - - ```typescript -```typescript - -```` - -```` - - +type UntypedEntity = { + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -122,13 +121,13 @@ See also: A Firebolt compliant representation of a Playlist entity. ```typescript -```typescript - -```` - -```` - - +type PlaylistEntity = { + entityType: 'playlist' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -137,13 +136,16 @@ A Firebolt compliant representation of a Playlist entity. A Firebolt compliant representation of a TV Episode entity. ```typescript -```typescript - -```` - -```` - - +type TVEpisodeEntity = { + entityType: 'program' + programType: 'episode' + entityId: string + seriesId: string + seasonId: string + assetId?: string + appContentData?: string +} +``` --- @@ -152,13 +154,15 @@ A Firebolt compliant representation of a TV Episode entity. A Firebolt compliant representation of a TV Season entity. ```typescript -```typescript - -```` - -```` - - +type TVSeasonEntity = { + entityType: 'program' + programType: 'season' + entityId: string + seriesId: string + assetId?: string + appContentData?: string +} +``` --- @@ -167,13 +171,14 @@ A Firebolt compliant representation of a TV Season entity. A Firebolt compliant representation of a TV Series entity. ```typescript -```typescript - -```` - -```` - - +type TVSeriesEntity = { + entityType: 'program' + programType: 'series' + entityId: string + assetId?: string + appContentData?: string +} +``` --- @@ -182,26 +187,44 @@ A Firebolt compliant representation of a TV Series entity. A Firebolt compliant representation of the remaining program entity types. ```typescript -```typescript - -```` - -```` - - +type AdditionalEntity = { + entityType: 'program' + programType: + | 'concert' + | 'sportingEvent' + | 'preview' + | 'other' + | 'advertisement' + | 'musicVideo' + | 'minisode' + | 'extra' + entityId: string + assetId?: string + appContentData?: string +} +``` --- ### ProgramEntity - - ```typescript - -```` +type ProgramEntity = + | MovieEntity + | TVEpisodeEntity + | TVSeasonEntity + | TVSeriesEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[TVSeasonEntity](#tvseasonentity) +[TVSeriesEntity](#tvseriesentity) +[AdditionalEntity](#additionalentity) + --- ### Entity @@ -212,32 +235,53 @@ See also: See also: +[ProgramEntity](#programentity) +[MusicEntity](#musicentity) +[ChannelEntity](#channelentity) +[UntypedEntity](#untypedentity) +[PlaylistEntity](#playlistentity) + --- ### EntityDetails -````typescript ```typescript - -```` - -```` +type EntityDetails = { + identifiers: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + info?: Metadata + waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single +} +``` See also: - - +[Metadata](#metadata) +[WayToWatch](../Entertainment/schemas/#WayToWatch) --- ### PlayableEntity - - ```typescript - -```` +type PlayableEntity = + | MovieEntity + | TVEpisodeEntity + | PlaylistEntity + | MusicEntity + | AdditionalEntity +``` See also: +[MovieEntity](#movieentity) +[TVEpisodeEntity](#tvepisodeentity) +[PlaylistEntity](#playlistentity) +[MusicEntity](#musicentity) +[AdditionalEntity](#additionalentity) + --- diff --git a/apis/pr-feature-user-interest/manage/HDMIInput/index.md b/apis/pr-feature-user-interest/manage/HDMIInput/index.md index ebfc2c446..10b1b51bc 100644 --- a/apis/pr-feature-user-interest/manage/HDMIInput/index.md +++ b/apis/pr-feature-user-interest/manage/HDMIInput/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version HDMIInput 1.2.0-feature-user-interest.7 +Version HDMIInput 1.2.0-feature-user-interest.8 ## Table of Contents @@ -65,21 +65,17 @@ Property for each port auto low latency mode setting. To get the value of `autoLowLatencyModeCapable` call the method like this: ```typescript -${method.signature} +function autoLowLatencyModeCapable(port: HDMIPortId): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------ | ---- | -------- | --------------------- | -| `port` | `` | true | pattern: ^HDMI[0-9]+$ | +| Param | Type | Required | Description | +| ------ | --------------------------- | -------- | -------------------------- | +| `port` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -181,24 +177,21 @@ Response: To set the value of `autoLowLatencyModeCapable` call the method like this: ```typescript -function autoLowLatencyModeCapable(| `port` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, | `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | +function autoLowLatencyModeCapable( + port: HDMIPortId, + value: boolean, ): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | --------- | -------- | --------------------- | -| `port` | `` | true | pattern: ^HDMI[0-9]+$ | -| `value` | `boolean` | true | | +| Param | Type | Required | Description | +| ------- | --------------------------- | -------- | -------------------------- | +| `port` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | +| `value` | `boolean` | true | | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -296,7 +289,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function autoLowLatencyModeCapable(callback: (value) => ): Promise +function autoLowLatencyModeCapable( + callback: (value) => AutoLowLatencyModeCapableChangedInfo, +): Promise ``` Promise resolution: @@ -418,15 +413,11 @@ Response: Closes the given HDMI Port if it is the current active source for HDMI Input. If there was no active source, then there would no action taken on the device. ```typescript -${method.signature} +function close(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -486,27 +477,18 @@ Property for each port's active EDID version. To get the value of `edidVersion` call the method like this: ```typescript -${method.signature} +function edidVersion(port: HDMIPortId): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------ | ---- | -------- | --------------------- | -| `port` | `` | true | pattern: ^HDMI[0-9]+$ | +| Param | Type | Required | Description | +| ------ | --------------------------- | -------- | -------------------------- | +| `port` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | Promise resolution: -```typescript -EDIDVersion Enumeration: - -| key | value | -|-----|-------| -| V1_4 | 1.4 | -| V2_0 | 2.0 | -| UNKNOWN | unknown | - -``` +[EDIDVersion](#edidversion-1) Capabilities: @@ -609,24 +591,18 @@ Response: To set the value of `edidVersion` call the method like this: ```typescript -function edidVersion(| `port` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, | `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function edidVersion(port: HDMIPortId, value: EDIDVersion): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------- | -| `port` | `` | true | pattern: ^HDMI[0-9]+$ | -| `value` | `` | true | values: `'1.4' \| '2.0' \| 'unknown'` | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | ------------------------------------------ | +| `port` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | +| `value` | [`EDIDVersion`](#edidversion-1) | true |
values: `'1.4' \| '2.0' \| 'unknown'` | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -724,15 +700,17 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function edidVersion(| `port` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -, callback: (value) => ): Promise +function edidVersion( + port: HDMIPortId, + callback: (value) => EDIDVersion, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------ | ---- | -------- | --------------------- | -| `port` | `` | true | pattern: ^HDMI[0-9]+$ | +| Param | Type | Required | Description | +| ------ | --------------------------- | -------- | -------------------------- | +| `port` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | Promise resolution: @@ -899,15 +877,11 @@ Property for the low latency mode setting. To get the value of `lowLatencyMode` call the method like this: ```typescript -${method.signature} +function lowLatencyMode(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1005,8 +979,7 @@ Response: To set the value of `lowLatencyMode` call the method like this: ```typescript -function lowLatencyMode(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function lowLatencyMode(value: boolean): Promise ``` Parameters: @@ -1017,10 +990,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -1282,21 +1251,17 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Opens the HDMI Port allowing it to be the active source device. Incase there is a different HDMI portId already set as the active source, this call would stop the older portId before opening the given portId. ```typescript -${method.signature} +function open(portId: HDMIPortId): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | --------------------- | -| `portId` | `` | true | pattern: ^HDMI[0-9]+$ | +| Param | Type | Required | Description | +| -------- | --------------------------- | -------- | -------------------------- | +| `portId` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -1356,34 +1321,27 @@ Response: Retrieve a specific HDMI input port. ```typescript -${method.signature} +function port(portId: HDMIPortId): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | ---- | -------- | --------------------- | -| `portId` | `` | true | pattern: ^HDMI[0-9]+$ | +| Param | Type | Required | Description | +| -------- | --------------------------- | -------- | -------------------------- | +| `portId` | [`HDMIPortId`](#hdmiportid) | true |
pattern: ^HDMI[0-9]+$ | Promise resolution: -````typescript -```typescript - -```` - -```` +[HDMIInputPort](#hdmiinputport) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:inputs:hdmi | - #### Examples - Default Example JavaScript: @@ -1391,9 +1349,9 @@ JavaScript: ```javascript import { HDMIInput } from '@firebolt-js/manage-sdk' -let port = await HDMIInput.port("HDMI1") +let port = await HDMIInput.port('HDMI1') console.log(port) -```` +``` Value of `port`: @@ -1453,15 +1411,11 @@ Response: Retrieve a list of HDMI input ports. ```typescript -${method.signature} +function ports(): Promise ``` Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -1552,23 +1506,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[AutoLowLatencyModeSignalChangedInfo](#autolowlatencymodesignalchangedinfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:inputs:hdmi | - #### Examples - Default Example JavaScript: @@ -1576,10 +1523,10 @@ JavaScript: ```javascript import { HDMIInput } from '@firebolt-js/manage-sdk' -HDMIInput.listen('autoLowLatencyModeSignalChanged', info => { +HDMIInput.listen('autoLowLatencyModeSignalChanged', (info) => { console.log(info) }) -```` +``` Value of `info`: @@ -1632,23 +1579,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[ConnectionChangedInfo](#connectionchangedinfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:inputs:hdmi | - #### Examples - Default Example JavaScript: @@ -1656,10 +1596,10 @@ JavaScript: ```javascript import { HDMIInput } from '@firebolt-js/manage-sdk' -HDMIInput.listen('connectionChanged', info => { +HDMIInput.listen('connectionChanged', (info) => { console.log(info) }) -```` +``` Value of `info`: @@ -1720,23 +1660,16 @@ See also: [listen()](#listen), [once()](#listen), [clear()](#listen). Event value: -````typescript -```typescript - -```` - -```` +[SignalChangedInfo](#signalchangedinfo) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ----------------------------------- | | uses | xrn:firebolt:capability:inputs:hdmi | - #### Examples - Default Example JavaScript: @@ -1744,10 +1677,10 @@ JavaScript: ```javascript import { HDMIInput } from '@firebolt-js/manage-sdk' -HDMIInput.listen('signalChanged', info => { +HDMIInput.listen('signalChanged', (info) => { console.log(info) }) -```` +``` Value of `info`: @@ -1795,13 +1728,11 @@ Response: ### EDIDVersion ```typescript -EDIDVersion Enumeration: - -| key | value | -|-----|-------| -| V1_4 | 1.4 | -| V2_0 | 2.0 | -| UNKNOWN | unknown | +EDIDVersion: { + V1_4: '1.4', + V2_0: '2.0', + UNKNOWN: 'unknown', +}, ``` @@ -1810,15 +1741,13 @@ EDIDVersion Enumeration: ### HDMISignalStatus ```typescript -HDMISignalStatus Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| STABLE | stable | -| UNSTABLE | unstable | -| UNSUPPORTED | unsupported | -| UNKNOWN | unknown | +HDMISignalStatus: { + NONE: 'none', + STABLE: 'stable', + UNSTABLE: 'unstable', + UNSUPPORTED: 'unsupported', + UNKNOWN: 'unknown', +}, ``` @@ -1834,87 +1763,84 @@ HDMISignalStatus Enumeration: ### SignalChangedInfo -````typescript ```typescript - -```` - -```` +type SignalChangedInfo = { + port: HDMIPortId + signal: HDMISignalStatus +} +``` See also: - - +[HDMIPortId](#hdmiportid) +[HDMISignalStatus](#hdmisignalstatus) --- ### AutoLowLatencyModeSignalChangedInfo - - -```typescript ```typescript - -```` - -```` +type AutoLowLatencyModeSignalChangedInfo = { + port?: HDMIPortId + autoLowLatencyModeSignalled?: boolean +} +``` See also: - +[HDMIPortId](#hdmiportid) --- ### HDMIInputPort - - -```typescript ```typescript - -```` - -```` +type HDMIInputPort = { + port: HDMIPortId + connected: boolean + signal: HDMISignalStatus + arcCapable: boolean + arcConnected: boolean + edidVersion: EDIDVersion + autoLowLatencyModeCapable: boolean + autoLowLatencyModeSignalled: boolean +} +``` See also: - - - +[HDMIPortId](#hdmiportid) +[HDMISignalStatus](#hdmisignalstatus) +[EDIDVersion](#edidversion-1) --- ### AutoLowLatencyModeCapableChangedInfo - - -```typescript ```typescript - -```` - -```` +type AutoLowLatencyModeCapableChangedInfo = { + port: HDMIPortId + enabled: boolean +} +``` See also: - +[HDMIPortId](#hdmiportid) --- ### ConnectionChangedInfo - - ```typescript -```typescript - -```` - +type ConnectionChangedInfo = { + port?: HDMIPortId + connected?: boolean +} ``` See also: - +[HDMIPortId](#hdmiportid) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Intents/schemas/index.md b/apis/pr-feature-user-interest/manage/Intents/schemas/index.md index 78b87615c..4b66fde1e 100644 --- a/apis/pr-feature-user-interest/manage/Intents/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Intents/schemas/index.md @@ -58,14 +58,18 @@ A Firebolt compliant representation of a user intention. A Firebolt compliant representation of a user intention to navigate an app to a specific entity page, and bring that app to the foreground if needed. -````typescript ```typescript - -```` - -```` - - +type EntityIntent = { + action: 'entity' + data: + | ProgramEntity + | MusicEntity + | ChannelEntity + | UntypedEntity + | PlaylistEntity + context: object +} +``` --- @@ -74,15 +78,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlaybackIntent = { + action: 'playback' + data: PlayableEntity + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -91,13 +96,12 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's search UI with a search term populated, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SearchIntent = { + action: 'search' + data?: object + context: object +} +``` --- @@ -106,13 +110,12 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to navigate an app to a section not covered by `home`, `entity`, `player`, or `search`, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type SectionIntent = { + action: 'section' + data?: object + context: object +} +``` --- @@ -121,15 +124,16 @@ A Firebolt compliant representation of a user intention to navigate an app to a A Firebolt compliant representation of a user intention to 'tune' to a traditional over-the-air broadcast, or an OTT Stream from an OTT or vMVPD App. ```typescript -```typescript - -```` - -```` +type TuneIntent = { + action: 'tune' + data: object + context: object +} +``` See also: - +[ChannelEntity](../Entity/schemas/#ChannelEntity) --- @@ -138,15 +142,16 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for a specific, playable entity, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` +type PlayEntityIntent = { + action: 'play-entity' + data: object + context: object +} +``` See also: - +[PlayableEntity](../Entity/schemas/#PlayableEntity) --- @@ -155,16 +160,17 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to a the video player for an abstract query to be searched for and played by the app. ```typescript -```typescript - -```` - -```` +type PlayQueryIntent = { + action: 'play-query' + data: object + context: object +} +``` See also: - - +[ProgramType](../Entertainment/schemas/#ProgramType) +[MusicType](../Entertainment/schemas/#MusicType) --- @@ -173,13 +179,11 @@ See also: A Firebolt compliant representation of a user intention to navigate an app to it's home screen, and bring that app to the foreground if needed. ```typescript -```typescript - -```` - -```` - - +type HomeIntent = { + action: 'home' + context: object +} +``` --- @@ -188,13 +192,11 @@ A Firebolt compliant representation of a user intention to navigate an app to it A Firebolt compliant representation of a user intention to launch an app. ```typescript -```typescript - -```` - -```` - - +type LaunchIntent = { + action: 'launch' + context: object +} +``` --- @@ -203,9 +205,28 @@ A Firebolt compliant representation of a user intention to launch an app. A Firebolt compliant representation of a user intention to navigate to a specific place in an app. ```typescript - -```` +type NavigationIntent = + | HomeIntent + | LaunchIntent + | EntityIntent + | PlaybackIntent + | SearchIntent + | SectionIntent + | TuneIntent + | PlayEntityIntent + | PlayQueryIntent +``` See also: +[HomeIntent](#homeintent) +[LaunchIntent](#launchintent) +[EntityIntent](#entityintent) +[PlaybackIntent](#playbackintent) +[SearchIntent](#searchintent) +[SectionIntent](#sectionintent) +[TuneIntent](#tuneintent) +[PlayEntityIntent](#playentityintent) +[PlayQueryIntent](#playqueryintent) + --- diff --git a/apis/pr-feature-user-interest/manage/Keyboard/index.md b/apis/pr-feature-user-interest/manage/Keyboard/index.md index df8e24f4a..125dc1fc2 100644 --- a/apis/pr-feature-user-interest/manage/Keyboard/index.md +++ b/apis/pr-feature-user-interest/manage/Keyboard/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Keyboard 1.2.0-feature-user-interest.7 +Version Keyboard 1.2.0-feature-user-interest.8 ## Table of Contents @@ -60,20 +60,13 @@ Internal API for Email Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -123,10 +116,6 @@ Internal API for Email Provider to request focus for UX purposes. Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -177,10 +166,6 @@ Parameters: Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -227,20 +212,13 @@ Internal API for Password Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -290,10 +268,6 @@ Internal API for Password Provider to request focus for UX purposes. Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -344,10 +318,6 @@ Parameters: Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -411,20 +381,13 @@ Internal API for Standard Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -474,10 +437,6 @@ Internal API for Standard Provider to request focus for UX purposes. Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -528,10 +487,6 @@ Parameters: Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -586,23 +541,16 @@ Parameters: Result: -````typescript -```typescript - -```` - -```` +[KeyboardProviderRequest](#keyboardproviderrequest) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| -------- | -------------------------------------- | | provides | xrn:firebolt:capability:input:keyboard | - #### Examples - Default Example JSON-RPC: @@ -611,14 +559,14 @@ Request: ```json { - "jsonrpc": "2.0", - "id": 1, - "method": "Keyboard.onRequestEmail", - "params": { - "listen": true - } + "jsonrpc": "2.0", + "id": 1, + "method": "Keyboard.onRequestEmail", + "params": { + "listen": true + } } -```` +``` Response: @@ -651,23 +599,16 @@ Parameters: Result: -````typescript -```typescript - -```` - -```` +[KeyboardProviderRequest](#keyboardproviderrequest) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| -------- | -------------------------------------- | | provides | xrn:firebolt:capability:input:keyboard | - #### Examples - Default Example JSON-RPC: @@ -676,14 +617,14 @@ Request: ```json { - "jsonrpc": "2.0", - "id": 1, - "method": "Keyboard.onRequestPassword", - "params": { - "listen": true - } + "jsonrpc": "2.0", + "id": 1, + "method": "Keyboard.onRequestPassword", + "params": { + "listen": true + } } -```` +``` Response: @@ -716,23 +657,16 @@ Parameters: Result: -````typescript -```typescript - -```` - -```` +[KeyboardProviderRequest](#keyboardproviderrequest) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| -------- | -------------------------------------- | | provides | xrn:firebolt:capability:input:keyboard | - #### Examples - Default Example JSON-RPC: @@ -741,14 +675,14 @@ Request: ```json { - "jsonrpc": "2.0", - "id": 1, - "method": "Keyboard.onRequestStandard", - "params": { - "listen": true - } + "jsonrpc": "2.0", + "id": 1, + "method": "Keyboard.onRequestStandard", + "params": { + "listen": true + } } -```` +``` Response: @@ -774,7 +708,20 @@ Response: The provider interface for the `xrn:firebolt:capability:input:keyboard` capability. ```typescript - +interface KeyboardInputProvider { + standard( + parameters: KeyboardParameters, + session: FocusableProviderSession, + ): Promise + password( + parameters: KeyboardParameters, + session: FocusableProviderSession, + ): Promise + email( + parameters: KeyboardParameters, + session: FocusableProviderSession, + ): Promise +} ``` Usage: @@ -1004,31 +951,25 @@ Response: ### KeyboardParameters -````typescript ```typescript - -```` - -```` - - +type KeyboardParameters = { + message: string // The message to display to the user so the user knows what they are entering +} +``` --- ### KeyboardProviderRequest - - ```typescript -```typescript - -```` - +type KeyboardProviderRequest = { + correlationId: string // An id to correlate the provider response with this request + parameters: KeyboardParameters // The request to start a keyboard session +} ``` See also: - +[KeyboardParameters](#keyboardparameters) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Lifecycle/schemas/index.md b/apis/pr-feature-user-interest/manage/Lifecycle/schemas/index.md index 1e9e12b21..81acdf612 100644 --- a/apis/pr-feature-user-interest/manage/Lifecycle/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Lifecycle/schemas/index.md @@ -31,14 +31,12 @@ undefined The application close reason ```typescript -CloseReason Enumeration: - -| key | value | -|-----|-------| -| REMOTE_BUTTON | remoteButton | -| USER_EXIT | userExit | -| DONE | done | -| ERROR | error | +CloseReason: { + REMOTE_BUTTON: 'remoteButton', + USER_EXIT: 'userExit', + DONE: 'done', + ERROR: 'error', +}, ``` @@ -49,16 +47,14 @@ CloseReason Enumeration: The application lifecycle state ```typescript -LifecycleState Enumeration: - -| key | value | -|-----|-------| -| INITIALIZING | initializing | -| INACTIVE | inactive | -| FOREGROUND | foreground | -| BACKGROUND | background | -| UNLOADING | unloading | -| SUSPENDED | suspended | +LifecycleState: { + INITIALIZING: 'initializing', + INACTIVE: 'inactive', + FOREGROUND: 'foreground', + BACKGROUND: 'background', + UNLOADING: 'unloading', + SUSPENDED: 'suspended', +}, ``` diff --git a/apis/pr-feature-user-interest/manage/Localization/index.md b/apis/pr-feature-user-interest/manage/Localization/index.md index c51cf8f2a..95d4b67b6 100644 --- a/apis/pr-feature-user-interest/manage/Localization/index.md +++ b/apis/pr-feature-user-interest/manage/Localization/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Localization 1.2.0-feature-user-interest.7 +Version Localization 1.2.0-feature-user-interest.8 ## Table of Contents @@ -59,7 +59,7 @@ Methods for accessessing location and language preferences Add any platform-specific localization information in key/value pair ```typescript -${method.signature} +function addAdditionalInfo(key: string, value: string): Promise ``` Parameters: @@ -71,10 +71,6 @@ Parameters: Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -135,18 +131,11 @@ Response: Get any platform-specific localization information, in an Map ```typescript -${method.signature} +function additionalInfo(): Promise ``` Promise resolution: -```typescript -| Property | Type | Description | -|----------|------|-------------| -| `${property}` | ${type} | | - -``` - Capabilities: | Role | Capability | @@ -207,14 +196,12 @@ Get the ISO 3166-1 alpha-2 code for the country device is located in To get the value of `countryCode` call the method like this: ```typescript -${method.signature} +function countryCode(): Promise ``` Promise resolution: -```typescript - -``` +[CountryCode](../Localization/schemas/#CountryCode) Capabilities: @@ -313,22 +300,17 @@ Response: To set the value of `countryCode` call the method like this: ```typescript -function countryCode(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function countryCode(value: CountryCode): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------------- | -| `value` | `` | true | the device country code pattern: ^[A-Z]{2}$ | +| Param | Type | Required | Description | +| ------- | ----------------------------------------------------- | -------- | ------------------------------------------------ | +| `value` | [`CountryCode`](../Localization/schemas/#CountryCode) | true | the device country code
pattern: ^[A-Z]{2}$ | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -424,7 +406,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function countryCode(callback: (value) => ): Promise +function countryCode(callback: (value) => CountryCode): Promise ``` Promise resolution: @@ -536,14 +518,12 @@ Get the ISO 639 1/2 code for the preferred language To get the value of `language` call the method like this: ```typescript -${method.signature} +function language(): Promise ``` Promise resolution: -```typescript - -``` +[Language](../Localization/schemas/#Language) Capabilities: @@ -642,22 +622,17 @@ Response: To set the value of `language` call the method like this: ```typescript -function language(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function language(value: Language): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------------ | -| `value` | `` | true | the device language pattern: ^[A-Za-z]{2}$ | +| Param | Type | Required | Description | +| ------- | ----------------------------------------------- | -------- | ----------------------------------------------- | +| `value` | [`Language`](../Localization/schemas/#Language) | true | the device language
pattern: ^[A-Za-z]{2}$ | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -753,7 +728,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function language(callback: (value) => ): Promise +function language(callback: (value) => Language): Promise ``` Promise resolution: @@ -919,14 +894,12 @@ Get the _full_ BCP 47 code, including script, region, variant, etc., for the pre To get the value of `locale` call the method like this: ```typescript -${method.signature} +function locale(): Promise ``` Promise resolution: -```typescript - -``` +[Locale](../Localization/schemas/#Locale) Capabilities: @@ -1025,22 +998,17 @@ Response: To set the value of `locale` call the method like this: ```typescript -function locale(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function locale(value: Locale): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------------------------- | -| `value` | `` | true | the device locale pattern: ^[a-zA-Z]+([a-zA-Z0-9\-]\*)$ | +| Param | Type | Required | Description | +| ------- | ------------------------------------------- | -------- | ------------------------------------------------------------ | +| `value` | [`Locale`](../Localization/schemas/#Locale) | true | the device locale
pattern: ^[a-zA-Z]+([a-zA-Z0-9\-]\*)$ | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1136,7 +1104,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function locale(callback: (value) => ): Promise +function locale(callback: (value) => Locale): Promise ``` Promise resolution: @@ -1248,14 +1216,12 @@ Get the locality/city the device is located in To get the value of `locality` call the method like this: ```typescript -${method.signature} +function locality(): Promise ``` Promise resolution: -```typescript - -``` +[Locality](../Localization/schemas/#Locality) Capabilities: @@ -1354,22 +1320,17 @@ Response: To set the value of `locality` call the method like this: ```typescript -function locality(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function locality(value: Locality): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | --------------- | -| `value` | `` | true | the device city | +| Param | Type | Required | Description | +| ------- | ----------------------------------------------- | -------- | --------------- | +| `value` | [`Locality`](../Localization/schemas/#Locality) | true | the device city | Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1465,7 +1426,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function locality(callback: (value) => ): Promise +function locality(callback: (value) => Locality): Promise ``` Promise resolution: @@ -1633,15 +1594,11 @@ Get the postal code the device is located in To get the value of `postalCode` call the method like this: ```typescript -${method.signature} +function postalCode(): Promise ``` Promise resolution: -```typescript -string -``` - Capabilities: | Role | Capability | @@ -1739,8 +1696,7 @@ Response: To set the value of `postalCode` call the method like this: ```typescript -function postalCode(| `value` | [`string`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function postalCode(value: string): Promise ``` Parameters: @@ -1751,10 +1707,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1962,15 +1914,11 @@ A prioritized list of ISO 639 1/2 codes for the preferred audio languages on thi To get the value of `preferredAudioLanguages` call the method like this: ```typescript -${method.signature} +function preferredAudioLanguages(): Promise ``` Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -2068,22 +2016,17 @@ Response: To set the value of `preferredAudioLanguages` call the method like this: ```typescript -function preferredAudioLanguages(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function preferredAudioLanguages(value: ISO639_2Language[]): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------------------------- | -| `value` | `` | true | the preferred audio languages pattern: ^[a-z]{3}$ | +| Param | Type | Required | Description | +| ------- | -------------------- | -------- | ------------------------------------------------------ | +| `value` | `ISO639_2Language[]` | true | the preferred audio languages
pattern: ^[a-z]{3}$ | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -2179,7 +2122,9 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function preferredAudioLanguages(callback: (value) => ): Promise +function preferredAudioLanguages( + callback: (value) => ISO639_2Language[], +): Promise ``` Promise resolution: @@ -2289,7 +2234,7 @@ Response: Remove any platform-specific localization information from map ```typescript -${method.signature} +function removeAdditionalInfo(key: string): Promise ``` Parameters: @@ -2300,10 +2245,6 @@ Parameters: Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -2365,14 +2306,12 @@ Set the IANA timezone for the device To get the value of `timeZone` call the method like this: ```typescript -${method.signature} +function timeZone(): Promise ``` Promise resolution: -```typescript - -``` +[TimeZone](../Localization/schemas/#TimeZone) Capabilities: @@ -2471,22 +2410,17 @@ Response: To set the value of `timeZone` call the method like this: ```typescript -function timeZone(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function timeZone(value: TimeZone): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | ---- | -------- | ------------------------------ | -| `value` | `` | true | pattern: ^[-+_/ A-Za-z 0-9]\*$ | +| Param | Type | Required | Description | +| ------- | ----------------------------------------------- | -------- | ----------------------------------- | +| `value` | [`TimeZone`](../Localization/schemas/#TimeZone) | true |
pattern: ^[-+_/ A-Za-z 0-9]\*$ | Promise resolution: -```typescript - -``` - #### Examples Default Example @@ -2582,7 +2516,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function timeZone(callback: (value) => ): Promise +function timeZone(callback: (value) => TimeZone): Promise ``` Promise resolution: diff --git a/apis/pr-feature-user-interest/manage/Metrics/index.md b/apis/pr-feature-user-interest/manage/Metrics/index.md index b268fd0b0..c07e2efc1 100644 --- a/apis/pr-feature-user-interest/manage/Metrics/index.md +++ b/apis/pr-feature-user-interest/manage/Metrics/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Metrics 1.2.0-feature-user-interest.7 +Version Metrics 1.2.0-feature-user-interest.8 ## Table of Contents @@ -42,22 +42,18 @@ Methods for sending metrics Inform the platform of 1st party distributor metrics. ```typescript -${method.signature} +function event(schema: string, data: EventObject): Promise ``` Parameters: -| Param | Type | Required | Description | -| -------- | -------- | -------- | -------------------------------------------------- | -| `schema` | `string` | true | The schema URI of the metric type
format: uri | -| `data` | `` | true | A JSON payload conforming the the provided schema | +| Param | Type | Required | Description | +| -------- | ------------------------------- | -------- | -------------------------------------------------- | +| `schema` | `string` | true | The schema URI of the metric type
format: uri | +| `data` | [`EventObject`](#eventobject-1) | true | A JSON payload conforming the the provided schema | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -122,24 +118,20 @@ Response: ### EventObjectPrimitives ```typescript - +type EventObjectPrimitives = string | number | number | boolean | null ``` --- ### EventObject -````typescript ```typescript - -```` - +type EventObject = {} ``` See also: - - +[EventObjectPrimitives](#eventobjectprimitives) +[EventObject](#eventobject-1) --- -``` diff --git a/apis/pr-feature-user-interest/manage/PinChallenge/index.md b/apis/pr-feature-user-interest/manage/PinChallenge/index.md index 10f1a7c86..7180d8931 100644 --- a/apis/pr-feature-user-interest/manage/PinChallenge/index.md +++ b/apis/pr-feature-user-interest/manage/PinChallenge/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version PinChallenge 1.2.0-feature-user-interest.7 +Version PinChallenge 1.2.0-feature-user-interest.8 ## Table of Contents @@ -55,20 +55,13 @@ Internal API for Challenge Provider to send back error. Parameters: -| Param | Type | Required | Description | -| --------------- | ----------------------- | -------------- | ----------- | ----------- | -| `correlationId` | `string` | true | | -| `error` | [` | Property | Type | Description | -| ---------- | ------ | ------------- | -| `${property}` | [${type}](${type.link}) | ${description} | -| `](#) | true | | +| Param | Type | Required | Description | +| --------------- | -------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `error` | `object` | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -118,10 +111,6 @@ Internal API for Challenge Provider to request focus for UX purposes. Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -165,17 +154,13 @@ Internal API for Challenge Provider to send back response. Parameters: -| Param | Type | Required | Description | -| --------------- | -------- | -------- | ----------- | -| `correlationId` | `string` | true | | -| `result` | `` | true | | +| Param | Type | Required | Description | +| --------------- | ------------------------------------------- | -------- | ----------- | +| `correlationId` | `string` | true | | +| `result` | [`PinChallengeResult`](#pinchallengeresult) | true | | Result: -```typescript - -``` - Capabilities: | Role | Capability | @@ -312,23 +297,16 @@ Parameters: Result: -````typescript -```typescript - -```` - -```` +[PinChallengeProviderRequest](#pinchallengeproviderrequest) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| -------- | ---------------------------------------------- | | provides | xrn:firebolt:capability:usergrant:pinchallenge | - #### Examples - Default Example JSON-RPC: @@ -337,14 +315,14 @@ Request: ```json { - "jsonrpc": "2.0", - "id": 1, - "method": "PinChallenge.onRequestChallenge", - "params": { - "listen": true - } + "jsonrpc": "2.0", + "id": 1, + "method": "PinChallenge.onRequestChallenge", + "params": { + "listen": true + } } -```` +``` Response: @@ -375,7 +353,12 @@ Response: The provider interface for the `xrn:firebolt:capability:usergrant:pinchallenge` capability. ```typescript - +interface ChallengeProvider { + challenge( + parameters: PinChallenge, + session: FocusableProviderSession, + ): Promise +} ``` Usage: @@ -492,15 +475,13 @@ Response: The reason for the result of challenging the user ```typescript -ResultReason Enumeration: - -| key | value | -|-----|-------| -| NO_PIN_REQUIRED | noPinRequired | -| NO_PIN_REQUIRED_WINDOW | noPinRequiredWindow | -| EXCEEDED_PIN_FAILURES | exceededPinFailures | -| CORRECT_PIN | correctPin | -| CANCELLED | cancelled | +ResultReason: { + NO_PIN_REQUIRED: 'noPinRequired', + NO_PIN_REQUIRED_WINDOW: 'noPinRequiredWindow', + EXCEEDED_PIN_FAILURES: 'exceededPinFailures', + CORRECT_PIN: 'correctPin', + CANCELLED: 'cancelled', +}, ``` @@ -508,66 +489,58 @@ ResultReason Enumeration: ### ChallengeRequestor -````typescript ```typescript - -```` - -```` - - +type ChallengeRequestor = { + id: string // The id of the app that requested the challenge + name: string // The name of the app that requested the challenge +} +``` --- ### PinChallengeResult - - -```typescript ```typescript - -```` - -```` +type PinChallengeResult = { + granted: boolean + reason: ResultReason // The reason for the result of challenging the user +} +``` See also: - +[ResultReason](#resultreason) --- ### PinChallenge - - -```typescript ```typescript - -```` - -```` +type PinChallenge = { + pinSpace: 'purchase' | 'content' // The pin space that this challenge is for + capability?: string // The capability that is gated by a pin challenge + requestor: ChallengeRequestor // The identity of which app is requesting access to this capability +} +``` See also: - +[ChallengeRequestor](#challengerequestor) --- ### PinChallengeProviderRequest - - -```typescript ```typescript - -```` - +type PinChallengeProviderRequest = { + parameters: PinChallenge // The result of the provider response. + correlationId: string // The id that was passed in to the event that triggered a provider method to be called +} ``` See also: - - +[ProviderRequest](../Types/schemas/#ProviderRequest) +[PinChallenge](#pinchallenge-1) --- -``` diff --git a/apis/pr-feature-user-interest/manage/Privacy/index.md b/apis/pr-feature-user-interest/manage/Privacy/index.md index 412563a4a..d30ef849f 100644 --- a/apis/pr-feature-user-interest/manage/Privacy/index.md +++ b/apis/pr-feature-user-interest/manage/Privacy/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Privacy 1.2.0-feature-user-interest.7 +Version Privacy 1.2.0-feature-user-interest.8 ## Table of Contents @@ -70,15 +70,11 @@ Whether the user allows their automatic content recognition data to be collected To get the value of `allowACRCollection` call the method like this: ```typescript -${method.signature} +function allowACRCollection(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -176,8 +172,7 @@ Response: To set the value of `allowACRCollection` call the method like this: ```typescript -function allowACRCollection(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowACRCollection(value: boolean): Promise ``` Parameters: @@ -188,10 +183,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -399,15 +390,11 @@ Whether the user allows ads to be targeted to the user while watching content in To get the value of `allowAppContentAdTargeting` call the method like this: ```typescript -${method.signature} +function allowAppContentAdTargeting(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -505,8 +492,7 @@ Response: To set the value of `allowAppContentAdTargeting` call the method like this: ```typescript -function allowAppContentAdTargeting(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowAppContentAdTargeting(value: boolean): Promise ``` Parameters: @@ -517,10 +503,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -730,15 +712,11 @@ Whether the user allows data from their camera to be used for Product Analytics To get the value of `allowCameraAnalytics` call the method like this: ```typescript -${method.signature} +function allowCameraAnalytics(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -836,8 +814,7 @@ Response: To set the value of `allowCameraAnalytics` call the method like this: ```typescript -function allowCameraAnalytics(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowCameraAnalytics(value: boolean): Promise ``` Parameters: @@ -848,10 +825,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1059,15 +1032,11 @@ Whether the user allows their usage data to be used for personalization and reco To get the value of `allowPersonalization` call the method like this: ```typescript -${method.signature} +function allowPersonalization(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1165,8 +1134,7 @@ Response: To set the value of `allowPersonalization` call the method like this: ```typescript -function allowPersonalization(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowPersonalization(value: boolean): Promise ``` Parameters: @@ -1177,10 +1145,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1388,15 +1352,11 @@ Whether the user allows ads to be targeted to the user while browsing in the pri To get the value of `allowPrimaryBrowseAdTargeting` call the method like this: ```typescript -${method.signature} +function allowPrimaryBrowseAdTargeting(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1494,8 +1454,7 @@ Response: To set the value of `allowPrimaryBrowseAdTargeting` call the method like this: ```typescript -function allowPrimaryBrowseAdTargeting(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowPrimaryBrowseAdTargeting(value: boolean): Promise ``` Parameters: @@ -1506,10 +1465,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -1719,15 +1674,11 @@ Whether the user allows ads to be targeted to the user while watching content in To get the value of `allowPrimaryContentAdTargeting` call the method like this: ```typescript -${method.signature} +function allowPrimaryContentAdTargeting(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -1825,8 +1776,7 @@ Response: To set the value of `allowPrimaryContentAdTargeting` call the method like this: ```typescript -function allowPrimaryContentAdTargeting(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowPrimaryContentAdTargeting(value: boolean): Promise ``` Parameters: @@ -1837,10 +1787,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -2050,15 +1996,11 @@ Whether the user allows their usage data can be used for analytics about the pro To get the value of `allowProductAnalytics` call the method like this: ```typescript -${method.signature} +function allowProductAnalytics(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -2156,8 +2098,7 @@ Response: To set the value of `allowProductAnalytics` call the method like this: ```typescript -function allowProductAnalytics(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowProductAnalytics(value: boolean): Promise ``` Parameters: @@ -2168,10 +2109,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -2379,15 +2316,11 @@ Whether the user allows their personal data to be included in diagnostic telemet To get the value of `allowRemoteDiagnostics` call the method like this: ```typescript -${method.signature} +function allowRemoteDiagnostics(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -2485,8 +2418,7 @@ Response: To set the value of `allowRemoteDiagnostics` call the method like this: ```typescript -function allowRemoteDiagnostics(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowRemoteDiagnostics(value: boolean): Promise ``` Parameters: @@ -2497,10 +2429,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -2708,15 +2636,11 @@ Whether the user allows resume points for content to show in the main experience To get the value of `allowResumePoints` call the method like this: ```typescript -${method.signature} +function allowResumePoints(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -2814,8 +2738,7 @@ Response: To set the value of `allowResumePoints` call the method like this: ```typescript -function allowResumePoints(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowResumePoints(value: boolean): Promise ``` Parameters: @@ -2826,10 +2749,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3037,15 +2956,11 @@ Whether the user allows their usage data to be used for personalization and reco To get the value of `allowUnentitledPersonalization` call the method like this: ```typescript -${method.signature} +function allowUnentitledPersonalization(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3143,8 +3058,7 @@ Response: To set the value of `allowUnentitledPersonalization` call the method like this: ```typescript -function allowUnentitledPersonalization(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowUnentitledPersonalization(value: boolean): Promise ``` Parameters: @@ -3155,10 +3069,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3368,15 +3278,11 @@ Whether the user allows resume points for content from unentitled providers to s To get the value of `allowUnentitledResumePoints` call the method like this: ```typescript -${method.signature} +function allowUnentitledResumePoints(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3474,8 +3380,7 @@ Response: To set the value of `allowUnentitledResumePoints` call the method like this: ```typescript -function allowUnentitledResumePoints(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowUnentitledResumePoints(value: boolean): Promise ``` Parameters: @@ -3486,10 +3391,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -3699,15 +3600,11 @@ Whether the user allows their watch history from all sources to show in the main To get the value of `allowWatchHistory` call the method like this: ```typescript -${method.signature} +function allowWatchHistory(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -3805,8 +3702,7 @@ Response: To set the value of `allowWatchHistory` call the method like this: ```typescript -function allowWatchHistory(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function allowWatchHistory(value: boolean): Promise ``` Parameters: @@ -3817,10 +3713,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -4136,28 +4028,21 @@ See [Listening for events](../../docs/listening-for-events/) for more informatio Gets the allowed value for all privacy settings ```typescript -${method.signature} +function settings(): Promise ``` Promise resolution: -````typescript -```typescript - -```` - -```` +[PrivacySettings](#privacysettings) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ---------------------------------------- | | uses | xrn:firebolt:capability:privacy:settings | - #### Examples - Default Example JavaScript: @@ -4167,7 +4052,7 @@ import { Privacy } from '@firebolt-js/manage-sdk' let settings = await Privacy.settings() console.log(settings) -```` +``` Value of `settings`: @@ -4282,14 +4167,21 @@ See: [allowWatchHistory](#allowwatchhistory) ### PrivacySettings -````typescript ```typescript - -```` - +type PrivacySettings = { + allowACRCollection: boolean + allowResumePoints: boolean + allowAppContentAdTargeting: boolean + allowCameraAnalytics: boolean + allowPersonalization: boolean + allowPrimaryBrowseAdTargeting: boolean + allowPrimaryContentAdTargeting: boolean + allowProductAnalytics: boolean + allowRemoteDiagnostics: boolean + allowUnentitledPersonalization: boolean + allowUnentitledResumePoints: boolean + allowWatchHistory: boolean +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/manage/SecondScreen/schemas/index.md b/apis/pr-feature-user-interest/manage/SecondScreen/schemas/index.md index 9d620e7f1..73a6cd39c 100644 --- a/apis/pr-feature-user-interest/manage/SecondScreen/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/SecondScreen/schemas/index.md @@ -29,14 +29,12 @@ undefined An a message notification from a second screen device -````typescript ```typescript - -```` - +type SecondScreenEvent = { + type: 'dial' + version?: string + data?: string +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/manage/SecureStorage/index.md b/apis/pr-feature-user-interest/manage/SecureStorage/index.md index c21ecaa89..c9b58a914 100644 --- a/apis/pr-feature-user-interest/manage/SecureStorage/index.md +++ b/apis/pr-feature-user-interest/manage/SecureStorage/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version SecureStorage 1.2.0-feature-user-interest.7 +Version SecureStorage 1.2.0-feature-user-interest.8 ## Table of Contents @@ -44,22 +44,18 @@ A module for storing and retrieving secure data owned by the app Clears all the secure data values for a specific app ```typescript -${method.signature} +function clearForApp(appId: string, scope: StorageScope): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | -------- | -------- | ---------------------------------------------------------- | -| `appId` | `string` | true | appId for which values are removed | -| `scope` | `` | true | The scope of the key/value values: `'device' \| 'account'` | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | --------------------------------------------------------------- | +| `appId` | `string` | true | appId for which values are removed | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the key/value
values: `'device' \| 'account'` | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -120,23 +116,23 @@ Response: Removes single data value for a specific app. ```typescript -${method.signature} +function removeForApp( + appId: string, + scope: StorageScope, + key: string, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------- | -------- | -------- | ---------------------------------------------------------- | -| `appId` | `string` | true | appId for which values are removed | -| `scope` | `` | true | The scope of the key/value values: `'device' \| 'account'` | -| `key` | `string` | true | Key to remove | +| Param | Type | Required | Description | +| ------- | ------------------------------- | -------- | --------------------------------------------------------------- | +| `appId` | `string` | true | appId for which values are removed | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the key/value
values: `'device' \| 'account'` | +| `key` | `string` | true | Key to remove | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -202,25 +198,27 @@ Response: Set or update a secure data value for a specific app. ```typescript -${method.signature} +function setForApp( + appId: string, + scope: StorageScope, + key: string, + value: string, + options: StorageOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| --------- | -------- | -------- | --------------------------------------------------------- | -| `appId` | `string` | true | appId for which value is being set | -| `scope` | `` | true | The scope of the data key values: `'device' \| 'account'` | -| `key` | `string` | true | Key to set | -| `value` | `string` | true | Value to set | -| `options` | `` | false | Optional parameters to set | +| Param | Type | Required | Description | +| --------- | ----------------------------------- | -------- | -------------------------------------------------------------- | +| `appId` | `string` | true | appId for which value is being set | +| `scope` | [`StorageScope`](#storagescope) | true | The scope of the data key
values: `'device' \| 'account'` | +| `key` | `string` | true | Key to set | +| `value` | `string` | true | Value to set | +| `options` | [`StorageOptions`](#storageoptions) | false | Optional parameters to set | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -349,12 +347,10 @@ Response: The scope of the data ```typescript -StorageScope Enumeration: - -| key | value | -|-----|-------| -| DEVICE | device | -| ACCOUNT | account | +StorageScope: { + DEVICE: 'device', + ACCOUNT: 'account', +}, ``` @@ -362,14 +358,10 @@ StorageScope Enumeration: ### StorageOptions -````typescript ```typescript - -```` - +type StorageOptions = { + ttl: number // Seconds from set time before the data expires and is removed +} ``` - - --- -``` diff --git a/apis/pr-feature-user-interest/manage/Types/schemas/index.md b/apis/pr-feature-user-interest/manage/Types/schemas/index.md index 265d7b213..fdb9b7124 100644 --- a/apis/pr-feature-user-interest/manage/Types/schemas/index.md +++ b/apis/pr-feature-user-interest/manage/Types/schemas/index.md @@ -33,16 +33,14 @@ undefined ### AudioProfile ```typescript -AudioProfile Enumeration: - -| key | value | -|-----|-------| -| STEREO | stereo | -| DOLBY_DIGITAL_5_1 | dolbyDigital5.1 | -| DOLBY_DIGITAL_7_1 | dolbyDigital7.1 | -| DOLBY_DIGITAL_5_1_PLUS | dolbyDigital5.1+ | -| DOLBY_DIGITAL_7_1_PLUS | dolbyDigital7.1+ | -| DOLBY_ATMOS | dolbyAtmos | +AudioProfile: { + STEREO: 'stereo', + DOLBY_DIGITAL_5_1: 'dolbyDigital5.1', + DOLBY_DIGITAL_7_1: 'dolbyDigital7.1', + DOLBY_DIGITAL_5_1_PLUS: 'dolbyDigital5.1+', + DOLBY_DIGITAL_7_1_PLUS: 'dolbyDigital7.1+', + DOLBY_ATMOS: 'dolbyAtmos', +}, ``` @@ -50,29 +48,22 @@ AudioProfile Enumeration: ### SemanticVersion -````typescript ```typescript - -```` - -```` - - +type SemanticVersion = { + major: number + minor: number + patch: number + readable: string +} +``` --- ### BooleanMap - - ```typescript -```typescript - -```` - -```` - - +type BooleanMap = {} +``` --- @@ -81,8 +72,8 @@ AudioProfile Enumeration: Localized string supports either a simple `string` or a Map of language codes to strings. When using a simple `string`, the current preferred langauge from `Localization.langauge()` is assumed. ```typescript - -```` +type LocalizedString = string | object +``` --- diff --git a/apis/pr-feature-user-interest/manage/UserGrants/index.md b/apis/pr-feature-user-interest/manage/UserGrants/index.md index 01f223a4a..2f78226c1 100644 --- a/apis/pr-feature-user-interest/manage/UserGrants/index.md +++ b/apis/pr-feature-user-interest/manage/UserGrants/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version UserGrants 1.2.0-feature-user-interest.7 +Version UserGrants 1.2.0-feature-user-interest.8 ## Table of Contents @@ -51,7 +51,7 @@ A module for managing grants given by the user Get all granted and denied user grants for the given app ```typescript -${method.signature} +function app(appId: string): Promise ``` Parameters: @@ -62,10 +62,6 @@ Parameters: Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -169,21 +165,17 @@ Response: Get all granted and denied user grants for the given capability ```typescript -${method.signature} +function capability(capability: Capability): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| Param | Type | Required | Description | +| ------------ | --------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -259,23 +251,23 @@ Response: Clears the grant for a given capability, to a specific app if appropriate. Calling this results in a persisted Denied Grant that lasts for the duration of the Grant Policy lifespan. ```typescript -${method.signature} +function clear( + role: Role, + capability: Capability, + options: GrantModificationOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `role` | `` | true | values: `'use' \| 'manage' \| 'provide'` | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | -| `options` | `` | false | | +| Param | Type | Required | Description | +| ------------ | ------------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `role` | [`Role`](../Capabilities/schemas/#Role) | true |
values: `'use' \| 'manage' \| 'provide'` | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| `options` | [`GrantModificationOptions`](#grantmodificationoptions) | false | | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -343,23 +335,23 @@ Response: Denies a given capability, to a specific app if appropriate. Calling this results in a persisted Denied Grant that lasts for the duration of the Grant Policy lifespan. ```typescript -${method.signature} +function deny( + role: Role, + capability: Capability, + options: GrantModificationOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `role` | `` | true | values: `'use' \| 'manage' \| 'provide'` | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | -| `options` | `` | false | | +| Param | Type | Required | Description | +| ------------ | ------------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `role` | [`Role`](../Capabilities/schemas/#Role) | true |
values: `'use' \| 'manage' \| 'provide'` | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| `options` | [`GrantModificationOptions`](#grantmodificationoptions) | false | | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -427,15 +419,11 @@ Response: Get all granted and denied user grants for the device ```typescript -${method.signature} +function device(): Promise ``` Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -507,23 +495,23 @@ Response: Grants a given capability to a specific app, if appropriate. Calling this results in a persisted active grant that lasts for the duration of the grant policy lifespan. ```typescript -${method.signature} +function grant( + role: Role, + capability: Capability, + options: GrantModificationOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | ---- | -------- | ----------------------------------------------------------------- | -| `role` | `` | true | values: `'use' \| 'manage' \| 'provide'` | -| `capability` | `` | true | pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | -| `options` | `` | false | | +| Param | Type | Required | Description | +| ------------ | ------------------------------------------------------- | -------- | ---------------------------------------------------------------------- | +| `role` | [`Role`](../Capabilities/schemas/#Role) | true |
values: `'use' \| 'manage' \| 'provide'` | +| `capability` | [`Capability`](../Capabilities/schemas/#Capability) | true |
pattern: ^xrn:firebolt:capability:([a-z0-9\-]+)((:[a-z0-9\-]+)?)$ | +| `options` | [`GrantModificationOptions`](#grantmodificationoptions) | false | | Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -591,23 +579,23 @@ Response: Requests Firebolt to carry out a set of user grants for a given application such that the user grant provider is notified or an existing user grant is reused. ```typescript -${method.signature} +function request( + appId: string, + permissions: Permission[], + options: RequestOptions, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------- | -------- | -------- | --------------- | -| `appId` | `string` | true | | -| `permissions` | `` | true | | -| `options` | `` | false | Request options | +| Param | Type | Required | Description | +| ------------- | ----------------------------------- | -------- | --------------- | +| `appId` | `string` | true | | +| `permissions` | `Permission[]` | true | | +| `options` | [`RequestOptions`](#requestoptions) | false | Request options | Promise resolution: -```typescript - -``` - Capabilities: | Role | Capability | @@ -792,12 +780,10 @@ Response: The state the grant is in ```typescript -GrantState Enumeration: - -| key | value | -|-----|-------| -| GRANTED | granted | -| DENIED | denied | +GrantState: { + GRANTED: 'granted', + DENIED: 'denied', +}, ``` @@ -807,29 +793,21 @@ GrantState Enumeration: Options when modifying any grant -````typescript ```typescript - -```` - -```` - - +type GrantModificationOptions = { + appId?: string +} +``` --- ### RequestOptions - - -```typescript ```typescript - -```` - -```` - - +type RequestOptions = { + force?: boolean // Whether to force for user grant even if the previous decision stored +} +``` --- @@ -838,13 +816,11 @@ Options when modifying any grant Information about an app that a grant was for ```typescript -```typescript - -```` - -```` - - +type AppInfo = { + id: string + title?: string +} +``` --- @@ -853,18 +829,21 @@ Information about an app that a grant was for Information about a grant given by a user ```typescript -```typescript - -```` - +type GrantInfo = { + app?: AppInfo // Information about an app that a grant was for + state: GrantState // The state the grant is in + capability: Capability // A Capability is a discrete unit of functionality that a Firebolt device might be able to perform. + role: Role // Role provides access level for the app for a given capability. + lifespan: 'once' | 'forever' | 'appActive' | 'powerActive' | 'seconds' + expires?: string +} ``` See also: - - - - +[AppInfo](#appinfo) +[GrantState](#grantstate) +[Capability](../Capabilities/schemas/#Capability) +[Role](../Capabilities/schemas/#Role) --- -``` diff --git a/apis/pr-feature-user-interest/manage/VoiceGuidance/index.md b/apis/pr-feature-user-interest/manage/VoiceGuidance/index.md index a46ebdd2b..4a4a54e8d 100644 --- a/apis/pr-feature-user-interest/manage/VoiceGuidance/index.md +++ b/apis/pr-feature-user-interest/manage/VoiceGuidance/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version VoiceGuidance 1.2.0-feature-user-interest.7 +Version VoiceGuidance 1.2.0-feature-user-interest.8 ## Table of Contents @@ -48,15 +48,11 @@ Whether or not voice-guidance is enabled. To get the value of `enabled` call the method like this: ```typescript -${method.signature} +function enabled(): Promise ``` Promise resolution: -```typescript -boolean -``` - Capabilities: | Role | Capability | @@ -154,8 +150,7 @@ Response: To set the value of `enabled` call the method like this: ```typescript -function enabled(| `value` | [`boolean`](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function enabled(value: boolean): Promise ``` Parameters: @@ -166,10 +161,6 @@ Parameters: Promise resolution: -```typescript - -``` - #### Examples Default example #1 @@ -487,14 +478,12 @@ The speed at which voice guidance speech will be read back to the user. To get the value of `speed` call the method like this: ```typescript -${method.signature} +function speed(): Promise ``` Promise resolution: -```typescript - -``` +[VoiceSpeed](../Accessibility/schemas/#VoiceSpeed) Capabilities: @@ -593,23 +582,18 @@ Response: To set the value of `speed` call the method like this: ```typescript -function speed(| `value` | [``](${method.param.link}) | ${method.param.required} | ${method.param.summary} ${method.param.constraints} | -): Promise +function speed(value: VoiceSpeed): Promise ``` Parameters: -| Param | Type | Required | Description | -| ---------- | ---- | -------- | ------------ | -| `value` | `` | true | minumum: 0.5 | +| Param | Type | Required | Description | +| ---------- | ---------------------------------------------------- | -------- | ----------------- | +| `value` | [`VoiceSpeed`](../Accessibility/schemas/#VoiceSpeed) | true |
minumum: 0.5 | | maximum: 2 | Promise resolution: -```typescript - -``` - #### Examples Voice guidance speed to 1 @@ -705,7 +689,7 @@ Response: To subscribe to notifications when the value changes, call the method like this: ```typescript -function speed(callback: (value) => ): Promise +function speed(callback: (value) => VoiceSpeed): Promise ``` Promise resolution: diff --git a/apis/pr-feature-user-interest/manage/Wifi/index.md b/apis/pr-feature-user-interest/manage/Wifi/index.md index 6d533de59..cf41c970f 100644 --- a/apis/pr-feature-user-interest/manage/Wifi/index.md +++ b/apis/pr-feature-user-interest/manage/Wifi/index.md @@ -10,7 +10,7 @@ sdk: manage --- -Version Wifi 1.2.0-feature-user-interest.7 +Version Wifi 1.2.0-feature-user-interest.8 ## Table of Contents @@ -49,36 +49,33 @@ A module for providing support for Wifi. Connect the device to the specified SSID. ```typescript -${method.signature} +function connect( + ssid: string, + passphrase: string, + security: WifiSecurityMode, +): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------ | -------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ssid` | `string` | false | | -| `passphrase` | `string` | false | | -| `security` | `` | false | values: `'none' \| 'wep64' \| 'wep128' \| 'wpaPskTkip' \| 'wpaPskAes' \| 'wpa2PskTkip' \| 'wpa2PskAes' \| 'wpaEnterpriseTkip' \| 'wpaEnterpriseAes' \| 'wpa2EnterpriseTkip' \| 'wpa2EnterpriseAes' \| 'wpa2Psk' \| 'wpa2Enterprise' \| 'wpa3PskAes' \| 'wpa3Sae'` | +| Param | Type | Required | Description | +| ------------ | --------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `ssid` | `string` | false | | +| `passphrase` | `string` | false | | +| `security` | [`WifiSecurityMode`](#wifisecuritymode) | false |
values: `'none' \| 'wep64' \| 'wep128' \| 'wpaPskTkip' \| 'wpaPskAes' \| 'wpa2PskTkip' \| 'wpa2PskAes' \| 'wpaEnterpriseTkip' \| 'wpaEnterpriseAes' \| 'wpa2EnterpriseTkip' \| 'wpa2EnterpriseAes' \| 'wpa2Psk' \| 'wpa2Enterprise' \| 'wpa3PskAes' \| 'wpa3Sae'` | Promise resolution: -````typescript -```typescript - -```` - -```` +[AccessPoint](#accesspoint) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:protocol:wifi | - #### Examples - Connect to a wpa2Psk Wifi with password JavaScript: @@ -86,9 +83,9 @@ JavaScript: ```javascript import { Wifi } from '@firebolt-js/manage-sdk' -let connectedWifi = await Wifi.connect("DND", "gargoyle", "wpa2Psk") +let connectedWifi = await Wifi.connect('DND', 'gargoyle', 'wpa2Psk') console.log(connectedWifi) -```` +``` Value of `connectedWifi`: @@ -198,15 +195,11 @@ Response: Disconnect the device if connected via WIFI. ```typescript -${method.signature} +function disconnect(): Promise ``` Promise resolution: -```typescript -void -``` - Capabilities: | Role | Capability | @@ -264,35 +257,28 @@ Response: Scan available wifi networks in the location. ```typescript -${method.signature} +function scan(timeout: Timeout): Promise ``` Parameters: -| Param | Type | Required | Description | -| ------------- | ---- | -------- | ----------- | -| `timeout` | `` | false | minumum: 0 | +| Param | Type | Required | Description | +| ------------- | -------------------------------------- | -------- | --------------- | +| `timeout` | [`Timeout`](../Types/schemas/#Timeout) | false |
minumum: 0 | | maximum: 9999 | Promise resolution: -````typescript -```typescript - -```` - -```` +[AccessPointList](#accesspointlist) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:protocol:wifi | - #### Examples - Successful Wifi List JavaScript: @@ -302,7 +288,7 @@ import { Wifi } from '@firebolt-js/manage-sdk' let list = await Wifi.scan(30) console.log(list) -```` +``` Value of `list`: @@ -386,34 +372,27 @@ Response: Connect to WPS ```typescript -${method.signature} +function wps(security: WPSSecurityPin): Promise ``` Parameters: -| Param | Type | Required | Description | -| ---------- | ---- | -------- | ---------------------------------------------------- | -| `security` | `` | false | values: `'pushButton' \| 'pin' \| 'manufacturerPin'` | +| Param | Type | Required | Description | +| ---------- | ----------------------------------- | -------- | --------------------------------------------------------- | +| `security` | [`WPSSecurityPin`](#wpssecuritypin) | false |
values: `'pushButton' \| 'pin' \| 'manufacturerPin'` | Promise resolution: -````typescript -```typescript - -```` - -```` +[AccessPoint](#accesspoint) Capabilities: -| Role | Capability | -| --------------------- | -------------------------- | +| Role | Capability | +| ---- | ------------------------------------- | | uses | xrn:firebolt:capability:protocol:wifi | - #### Examples - Connect to a WPS Wifi router JavaScript: @@ -421,9 +400,9 @@ JavaScript: ```javascript import { Wifi } from '@firebolt-js/manage-sdk' -let connectedWifi = await Wifi.wps("pushButton") +let connectedWifi = await Wifi.wps('pushButton') console.log(connectedWifi) -```` +``` Value of `connectedWifi`: @@ -477,25 +456,23 @@ Response: Security Mode supported for Wifi ```typescript -WifiSecurityMode Enumeration: - -| key | value | -|-----|-------| -| NONE | none | -| WEP_64 | wep64 | -| WEP_128 | wep128 | -| WPA_PSK_TKIP | wpaPskTkip | -| WPA_PSK_AES | wpaPskAes | -| WPA_2PSK_TKIP | wpa2PskTkip | -| WPA_2PSK_AES | wpa2PskAes | -| WPA_ENTERPRISE_TKIP | wpaEnterpriseTkip | -| WPA_ENTERPRISE_AES | wpaEnterpriseAes | -| WPA_2ENTERPRISE_TKIP | wpa2EnterpriseTkip | -| WPA_2ENTERPRISE_AES | wpa2EnterpriseAes | -| WPA_2PSK | wpa2Psk | -| WPA_2ENTERPRISE | wpa2Enterprise | -| WPA_3PSK_AES | wpa3PskAes | -| WPA_3SAE | wpa3Sae | +WifiSecurityMode: { + NONE: 'none', + WEP_64: 'wep64', + WEP_128: 'wep128', + WPA_PSK_TKIP: 'wpaPskTkip', + WPA_PSK_AES: 'wpaPskAes', + WPA_2PSK_TKIP: 'wpa2PskTkip', + WPA_2PSK_AES: 'wpa2PskAes', + WPA_ENTERPRISE_TKIP: 'wpaEnterpriseTkip', + WPA_ENTERPRISE_AES: 'wpaEnterpriseAes', + WPA_2ENTERPRISE_TKIP: 'wpa2EnterpriseTkip', + WPA_2ENTERPRISE_AES: 'wpa2EnterpriseAes', + WPA_2PSK: 'wpa2Psk', + WPA_2ENTERPRISE: 'wpa2Enterprise', + WPA_3PSK_AES: 'wpa3PskAes', + WPA_3SAE: 'wpa3Sae', +}, ``` @@ -506,13 +483,11 @@ WifiSecurityMode Enumeration: Security pin type for WPS(Wifi Protected Setup). ```typescript -WPSSecurityPin Enumeration: - -| key | value | -|-----|-------| -| PUSH_BUTTON | pushButton | -| PIN | pin | -| MANUFACTURER_PIN | manufacturerPin | +WPSSecurityPin: { + PUSH_BUTTON: 'pushButton', + PIN: 'pin', + MANUFACTURER_PIN: 'manufacturerPin', +}, ``` @@ -542,18 +517,20 @@ Wifi Frequency in Ghz, example 2.4Ghz and 5Ghz. Properties of a scanned wifi list item. -````typescript ```typescript - -```` - -```` +type AccessPoint = { + ssid?: string // Name of the wifi. + securityMode?: WifiSecurityMode // Security Mode supported for Wifi + signalStrength?: WifiSignalStrength // Strength of Wifi signal, value is negative based on RSSI specification. + frequency?: WifiFrequency // Wifi Frequency in Ghz, example 2.4Ghz and 5Ghz. +} +``` See also: - - - +[WifiSecurityMode](#wifisecuritymode) +[WifiSignalStrength](#wifisignalstrength) +[WifiFrequency](#wififrequency) --- @@ -562,15 +539,13 @@ See also: List of scanned Wifi networks available near the device. ```typescript -```typescript - -```` - +type AccessPointList = { + list?: AccessPoint[] // Properties of a scanned wifi list item. +} ``` See also: - +[AccessPoint](#accesspoint) --- -``` diff --git a/requirements/pr-feature-user-interest/specifications/firebolt-open-rpc.json b/requirements/pr-feature-user-interest/specifications/firebolt-open-rpc.json index 39ed92b27..707be6cc3 100644 --- a/requirements/pr-feature-user-interest/specifications/firebolt-open-rpc.json +++ b/requirements/pr-feature-user-interest/specifications/firebolt-open-rpc.json @@ -2,7 +2,7 @@ "openrpc": "1.2.4", "info": { "title": "Firebolt JSON-RPC API", - "version": "1.2.0-feature-user-interest.7", + "version": "1.2.0-feature-user-interest.8", "x-module-descriptions": { "Internal": "Internal methods for SDK / FEE integration", "Accessibility": "The `Accessibility` module provides access to the user/device settings for closed captioning and voice guidance.\n\nApps **SHOULD** attempt o respect these settings, rather than manage and persist seprate settings, which would be different per-app.", diff --git a/requirements/pr-feature-user-interest/specifications/firebolt-specification.json b/requirements/pr-feature-user-interest/specifications/firebolt-specification.json index 0038b62a8..59c878de5 100644 --- a/requirements/pr-feature-user-interest/specifications/firebolt-specification.json +++ b/requirements/pr-feature-user-interest/specifications/firebolt-specification.json @@ -927,7 +927,7 @@ "openrpc": "1.2.4", "info": { "title": "Firebolt JSON-RPC API", - "version": "1.2.0-feature-user-interest.7", + "version": "1.2.0-feature-user-interest.8", "x-module-descriptions": { "Internal": "Internal methods for SDK / FEE integration", "Accessibility": "The `Accessibility` module provides access to the user/device settings for closed captioning and voice guidance.\n\nApps **SHOULD** attempt o respect these settings, rather than manage and persist seprate settings, which would be different per-app.", diff --git a/requirements/pr-feature-user-interest/specifications/intents/index.md b/requirements/pr-feature-user-interest/specifications/intents/index.md index be68a5708..6407b4114 100644 --- a/requirements/pr-feature-user-interest/specifications/intents/index.md +++ b/requirements/pr-feature-user-interest/specifications/intents/index.md @@ -15,6 +15,8 @@ See [Firebolt Requirements Governance](../../governance) for more info. | Contributor | Organization | | --------------- | ------------ | | Jeremy LaCivita | Comcast | +| Simon Grist | Sky | + ## 1. Overview Offen times an end-user has a specific intention that needs to be communicated @@ -35,18 +37,23 @@ additional `data` property. - [3. Intent Action](#3-intent-action) - [4. Intent Context](#4-intent-context) - [5. Intent Data](#5-intent-data) -- [Intent Types](#intent-types) +- [6. Intent Message](#6-intent-message) + - [6.1. App Intent Message](#61-app-intent-message) + - [6.2. Platform Intent Message](#62-platform-intent-message) + - [6.3. Intent Message Type](#63-intent-message-type) + - [6.4. Intent Message Metadata](#64-intent-message-metadata) +- [7. Intent Types](#7-intent-types) ## 3. Intent Action The intent `action` denotes what type of intent it is. -All intents **MUST** have a `string` attribute denoting the type of intent. +All intents **MUST** have an `action` `string` property denoting the type of intent. See the various [Intent Types](#intent-types) below for values. ## 4. Intent Context -The intent `context` provides information on where the intent orginated from. +The intent `context` provides information on where the intent orginated from. All intents **MUST** have a `context` property, which is an object. The `context` object **MUST** have a `source` string property with one of the @@ -64,7 +71,56 @@ any string value. This property denotes an editorial campaign. ## 5. Intent Data If an intent has any additional data, it **MUST** be in the `data` property. -## Intent Types +## 6. Intent Message +When an intent is sent to a Firebolt device from some other system, e.g. a cloud voice service, it **MUST** be wrapped in an `IntentMessage` object so that it can be properly routed after transport. + +An intent message **MUST** have an `intent` object property that is the intent being passed. + +An example intent message: + +```json +{ + "type": "xrn:firebolt:intent:app:launch", + "appId": "Netflix", + "intent": { + "action": "launch", + "context": { + "source": "voice" + } + }, + "metadata": { + "foo": "bar" + } +} +``` + +### 6.1. App Intent Message +If an intent is targeting a specific app, then the intent message **MUST** have an `appId` string property with the appId of the targeted app. + +### 6.2. Platform Intent Message +If an intent messagage does not have an `appId` property, then it **MUST** be targeting the device itself, e.g. a `power` intent to turn off the device. + +### 6.3. Intent Message Type +An intent message **MUST** have a `type` string property for categorizing the intent. + +The type property **MUST** match the regular expression: + +```regex +^xrn:firebolt:intent:(app|platform):[a-zA-Z]+$ +``` + +App Intent Messages **MUST** have the fourth section set to `app`. + +Platform Intent Messages **MUST** have the fourth section set to `platform` + +All Intent Messages **MUST** have the fifth section set to the same value as `intent.action`. + +Platforms may use this to route different types of intents to different subsystems without having to understand the internal structure of Firebolt intent objects. + +### 6.4. Intent Message Metadata +An intent message **MAY** have a `metadata` object property for adding distributor-specific metadata for logging or analytics. The values in `metadata` **MUST NOT** impact how the device interprets the intent. + +## 7. Intent Types - [Play](./play) - [Tune](./tune)