This cluster provides an interface for launching content on a Video Player device such as a Streaming Media Player, Smart TV or Smart Screen.

This cluster would be supported on a Video Player device or devices that can playback content, such as a Streaming Media Player, Smart TV or Smart Screen. This cluster supports playing back content referenced by URL. It supports finding content by type and global identifier, and either playing the content or displaying the search results.

The cluster server for Content Launcher is implemented by an endpoint that can launch content, such as a Video Player, or an endpoint representing a Content App on such a device.

When this cluster is implemented for an Content App Endpoint (Endpoint with type “Content App” and having an Application Basic cluster), the Video Player device shall launch the application when a client invokes the LaunchContent or LaunchURL commands.

ContentLauncherCluster supports optional features that you can enable with the ContentLauncherCluster.with() factory method.

MatterSpecification.v13.Cluster § 6.7

interface Cluster {
    attributes: {};
    base: undefined;
    commands: {};
    events: {};
    extensions: readonly [{
        component: {
            attributes: {
                acceptHeader: Attribute<string[], any>;
                supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                    dash: BitFlag;
                    hls: BitFlag;
                }>, any>;
            };
            commands: {
                launchUrl: Command<TypeFromFields<{
                    brandingInformation: OptionalFieldType<TypeFromFields<{
                        background: OptionalFieldType<(...)>;
                        logo: OptionalFieldType<(...)>;
                        progressBar: OptionalFieldType<(...)>;
                        providerName: FieldType<(...)>;
                        splash: OptionalFieldType<(...)>;
                        waterMark: OptionalFieldType<(...)>;
                    }>>;
                    contentUrl: FieldType<string>;
                    displayString: OptionalFieldType<string>;
                    playbackPreferences: OptionalFieldType<TypeFromFields<{
                        audioTracks: OptionalFieldType<(...)>;
                        playbackPosition: OptionalFieldType<(...)>;
                        textTrack: OptionalFieldType<(...)>;
                    }>>;
                }>, TypeFromFields<{
                    data: OptionalFieldType<string>;
                    status: FieldType<ContentLauncher.Status>;
                }>, any>;
            };
        };
        flags: {
            urlPlayback: true;
        };
    }, {
        component: {
            commands: {
                launchContent: Command<TypeFromFields<{
                    autoPlay: FieldType<boolean>;
                    data: OptionalFieldType<string>;
                    playbackPreferences: OptionalFieldType<TypeFromFields<{
                        audioTracks: OptionalFieldType<(...)>;
                        playbackPosition: OptionalFieldType<(...)>;
                        textTrack: OptionalFieldType<(...)>;
                    }>>;
                    search: FieldType<TypeFromFields<{
                        parameterList: FieldType<(...)>;
                    }>>;
                    useCurrentContext: OptionalFieldType<boolean>;
                }>, TypeFromFields<{
                    data: OptionalFieldType<string>;
                    status: FieldType<ContentLauncher.Status>;
                }>, any>;
            };
        };
        flags: {
            contentSearch: true;
        };
    }, {
        component: {};
        flags: {
            contentSearch: true;
        };
    }, {
        component: {};
        flags: {
            urlPlayback: true;
        };
    }];
    features: {
        advancedSeek: BitFlag;
        audioTracks: BitFlag;
        contentSearch: BitFlag;
        textTracks: BitFlag;
        urlPlayback: BitFlag;
    };
    id: Branded<1290, "ClusterId">;
    name: "ContentLauncher";
    revision: 2;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: {}
base: undefined
commands: {}
events: {}
extensions: readonly [{
    component: {
        attributes: {
            acceptHeader: Attribute<string[], any>;
            supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                dash: BitFlag;
                hls: BitFlag;
            }>, any>;
        };
        commands: {
            launchUrl: Command<TypeFromFields<{
                brandingInformation: OptionalFieldType<TypeFromFields<{
                    background: OptionalFieldType<(...)>;
                    logo: OptionalFieldType<(...)>;
                    progressBar: OptionalFieldType<(...)>;
                    providerName: FieldType<(...)>;
                    splash: OptionalFieldType<(...)>;
                    waterMark: OptionalFieldType<(...)>;
                }>>;
                contentUrl: FieldType<string>;
                displayString: OptionalFieldType<string>;
                playbackPreferences: OptionalFieldType<TypeFromFields<{
                    audioTracks: OptionalFieldType<(...)>;
                    playbackPosition: OptionalFieldType<(...)>;
                    textTrack: OptionalFieldType<(...)>;
                }>>;
            }>, TypeFromFields<{
                data: OptionalFieldType<string>;
                status: FieldType<ContentLauncher.Status>;
            }>, any>;
        };
    };
    flags: {
        urlPlayback: true;
    };
}, {
    component: {
        commands: {
            launchContent: Command<TypeFromFields<{
                autoPlay: FieldType<boolean>;
                data: OptionalFieldType<string>;
                playbackPreferences: OptionalFieldType<TypeFromFields<{
                    audioTracks: OptionalFieldType<(...)>;
                    playbackPosition: OptionalFieldType<(...)>;
                    textTrack: OptionalFieldType<(...)>;
                }>>;
                search: FieldType<TypeFromFields<{
                    parameterList: FieldType<(...)>;
                }>>;
                useCurrentContext: OptionalFieldType<boolean>;
            }>, TypeFromFields<{
                data: OptionalFieldType<string>;
                status: FieldType<ContentLauncher.Status>;
            }>, any>;
        };
    };
    flags: {
        contentSearch: true;
    };
}, {
    component: {};
    flags: {
        contentSearch: true;
    };
}, {
    component: {};
    flags: {
        urlPlayback: true;
    };
}]
features: {
    advancedSeek: BitFlag;
    audioTracks: BitFlag;
    contentSearch: BitFlag;
    textTracks: BitFlag;
    urlPlayback: BitFlag;
}

Type declaration

  • ReadonlyadvancedSeek: BitFlag

    AdvancedSeek

    Enables clients to implement more advanced media seeking behavior in their user interface, such as for example a "seek bar".

  • ReadonlyaudioTracks: BitFlag

    AudioTracks

    Device or app supports Audio Tracks.

  • ReadonlycontentSearch: BitFlag

    ContentSearch

    Device supports content search (non-app specific)

  • ReadonlytextTracks: BitFlag

    TextTracks

    Device or app supports Text Tracks.

  • ReadonlyurlPlayback: BitFlag

    UrlPlayback

    Device supports basic URL-based file playback

id: Branded<1290, "ClusterId">
name
revision
supportedFeatures: {}
unknown

Methods

  • Modify elements using ElementModifier.alter.

    Type Parameters

    • const AlterationsT extends Alterations<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      acceptHeader: Attribute<string[], any>;
                      supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                          dash: BitFlag;
                          hls: BitFlag;
                      }>, any>;
                  };
                  commands: {
                      launchUrl: Command<TypeFromFields<{
                          brandingInformation: OptionalFieldType<(...)>;
                          contentUrl: FieldType<(...)>;
                          displayString: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  urlPlayback: true;
              };
          }, {
              component: {
                  commands: {
                      launchContent: Command<TypeFromFields<{
                          autoPlay: FieldType<(...)>;
                          data: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                          search: FieldType<(...)>;
                          useCurrentContext: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  urlPlayback: true;
              };
          }];
          features: {
              advancedSeek: BitFlag;
              audioTracks: BitFlag;
              contentSearch: BitFlag;
              textTracks: BitFlag;
              urlPlayback: BitFlag;
          };
          id: 1290;
          name: "ContentLauncher";
          revision: 2;
      }>>

    Parameters

    Returns WithAlterations<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, AlterationsT>

  • Modify elements using ElementModifier.enable.

    Type Parameters

    • const FlagsT extends ElementFlags<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      acceptHeader: Attribute<string[], any>;
                      supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                          dash: BitFlag;
                          hls: BitFlag;
                      }>, any>;
                  };
                  commands: {
                      launchUrl: Command<TypeFromFields<{
                          brandingInformation: OptionalFieldType<(...)>;
                          contentUrl: FieldType<(...)>;
                          displayString: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  urlPlayback: true;
              };
          }, {
              component: {
                  commands: {
                      launchContent: Command<TypeFromFields<{
                          autoPlay: FieldType<(...)>;
                          data: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                          search: FieldType<(...)>;
                          useCurrentContext: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  urlPlayback: true;
              };
          }];
          features: {
              advancedSeek: BitFlag;
              audioTracks: BitFlag;
              contentSearch: BitFlag;
              textTracks: BitFlag;
              urlPlayback: BitFlag;
          };
          id: 1290;
          name: "ContentLauncher";
          revision: 2;
      }>>

    Parameters

    Returns WithFlags<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, FlagsT>

  • Modify elements using ElementModifier.set.

    Type Parameters

    • const ValuesT extends {}

    Parameters

    Returns WithValues<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, ValuesT>

  • Select features using ClusterComposer.compose.

    Type Parameters

    • const SelectionT extends FeatureSelection<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      acceptHeader: Attribute<string[], any>;
                      supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                          dash: BitFlag;
                          hls: BitFlag;
                      }>, any>;
                  };
                  commands: {
                      launchUrl: Command<TypeFromFields<{
                          brandingInformation: OptionalFieldType<(...)>;
                          contentUrl: FieldType<(...)>;
                          displayString: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  urlPlayback: true;
              };
          }, {
              component: {
                  commands: {
                      launchContent: Command<TypeFromFields<{
                          autoPlay: FieldType<(...)>;
                          data: OptionalFieldType<(...)>;
                          playbackPreferences: OptionalFieldType<(...)>;
                          search: FieldType<(...)>;
                          useCurrentContext: OptionalFieldType<(...)>;
                      }>, TypeFromFields<{
                          data: OptionalFieldType<(...)>;
                          status: FieldType<(...)>;
                      }>, any>;
                  };
              };
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  contentSearch: true;
              };
          }, {
              component: {};
              flags: {
                  urlPlayback: true;
              };
          }];
          features: {
              advancedSeek: BitFlag;
              audioTracks: BitFlag;
              contentSearch: BitFlag;
              textTracks: BitFlag;
              urlPlayback: BitFlag;
          };
          id: 1290;
          name: "ContentLauncher";
          revision: 2;
      }>>

    Parameters

    Returns Of<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    acceptHeader: Attribute<string[], any>;
                    supportedStreamingProtocols: Attribute<TypeFromPartialBitSchema<{
                        dash: BitFlag;
                        hls: BitFlag;
                    }>, any>;
                };
                commands: {
                    launchUrl: Command<TypeFromFields<{
                        brandingInformation: OptionalFieldType<(...)>;
                        contentUrl: FieldType<(...)>;
                        displayString: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                urlPlayback: true;
            };
        }, {
            component: {
                commands: {
                    launchContent: Command<TypeFromFields<{
                        autoPlay: FieldType<(...)>;
                        data: OptionalFieldType<(...)>;
                        playbackPreferences: OptionalFieldType<(...)>;
                        search: FieldType<(...)>;
                        useCurrentContext: OptionalFieldType<(...)>;
                    }>, TypeFromFields<{
                        data: OptionalFieldType<(...)>;
                        status: FieldType<(...)>;
                    }>, any>;
                };
            };
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                contentSearch: true;
            };
        }, {
            component: {};
            flags: {
                urlPlayback: true;
            };
        }];
        features: {
            advancedSeek: BitFlag;
            audioTracks: BitFlag;
            contentSearch: BitFlag;
            textTracks: BitFlag;
            urlPlayback: BitFlag;
        };
        id: 1290;
        name: "ContentLauncher";
        revision: 2;
    }>, SelectionT>