export type PlayerDeckMuteState = 'default' | 'unmuted'; export interface PlayerDeckPlayIconConfiguration { /** * Specifies if the play icon is hidden. * Defaults to false. */ hidden?: boolean; /** * The width of play icon. The icon is always square. * Sizing is independent of `imageName`: it applies to the default icon as well. * Defaults to 50 on iOS and 50dp on Android. */ iconWidth?: number; /** * The name of the image bundled with your app, used to replace the default play icon. * On iOS, add the image to the asset catalogs(Images.xcassets, Assets.xcassets etc.). * On Android, add the drawable to res/drawable and pass its name without the file extension. * Leave it unset to keep the component's default icon. * The icon is rendered as-is with no tint applied, so a multi-color image, such as one that * carries its own circular backdrop, keeps its colors. */ imageName?: string; /** * The system image name. * Only supported on iOS. */ systemImageName?: string; } export interface PlayerDeckShareButtonConfiguration { /** * Specifies if the share button is hidden. * Defaults to false. */ hidden?: boolean; } export interface PlayerDeckMuteButtonConfiguration { /** * Specifies if the mute button is hidden. * Defaults to false. */ hidden?: boolean; } export interface PlayerDeckFullScreenConfiguration { /** * Specifies if full screen is enabled. * Defaults to true. */ isEnabled?: boolean; } export interface PlayerDeckAutoplayConfiguration { /** * Specifies if autoplay is enabled. * Defaults to true. */ isEnabled?: boolean; } export interface PlayerDeckSubtitleConfiguration { /** * Whether to swap the mute button and subtitle button positions. * Only supported on iOS. */ swapMuteAndSubtitleButtons?: boolean; /** * The subtitle text color in hex string (e.g. "#FFFFFF"). */ textColor?: string; /** * The subtitle background color in hex string (e.g. "#000000"). */ backgroundColor?: string; } export interface PlayerDeckPadding { top?: number; right?: number; bottom?: number; left?: number; } export interface PlayerDeckConfiguration { /** * The background color of the player deck in hex string (e.g. "#FFFFFF"). */ backgroundColor?: string; /** * The corner radius of each deck item. * Defaults to 8 on iOS. */ cornerRadius?: number; /** * The spacing between each item within the deck. */ itemSpacing?: number; /** * The insets to be applied to the content of the deck. */ contentPadding?: PlayerDeckPadding; /** * Configuration of the play icon. */ playIcon?: PlayerDeckPlayIconConfiguration; /** * Whether to show the ad badge (sponsored label). * Defaults to false. */ showAdBadge?: boolean; /** * Configuration of the share button. */ shareButton?: PlayerDeckShareButtonConfiguration; /** * Configuration of the mute button. * Only supported on iOS. */ muteButton?: PlayerDeckMuteButtonConfiguration; /** * Configuration of autoplay. */ autoplay?: PlayerDeckAutoplayConfiguration; /** * Configuration of the full screen behavior. */ fullScreen?: PlayerDeckFullScreenConfiguration; /** * The mute state when the player deck is first displayed. * Defaults to 'default'. * Only supported on iOS. */ onFirstDisplayMuteState?: PlayerDeckMuteState; /** * The subtitle configuration. * Only supported on iOS. */ subtitleConfiguration?: PlayerDeckSubtitleConfiguration; }