@twurple/common
Version:
Common functions used by the `@twurple` library family.
87 lines • 2.58 kB
TypeScript
/**
* The location of an extension's configuration.
*/
export type HelixExtensionConfigurationLocation = 'hosted' | 'custom' | 'none';
/**
* The support level of subscriptions in an extension.
*/
export type HelixExtensionSubscriptionsSupportLevel = 'optional' | 'none';
/**
* The size of an extension icon.
*/
export type HelixExtensionIconSize = '100x100' | '24x24' | '300x200';
/**
* The state of an extension.
*/
export type HelixExtensionState = 'InTest' | 'InReview' | 'Rejected' | 'Approved' | 'Released' | 'Deprecated' | 'PendingAction' | 'AssetsUploaded' | 'Deleted';
/** @private */
interface HelixExtensionMobileViewData {
viewer_url: string;
}
/** @private */
interface HelixExtensionPanelViewData {
viewer_url: string;
height: number;
can_link_external_content: boolean;
}
/** @private */
interface HelixExtensionOverlayViewData {
viewer_url: string;
can_link_external_content: boolean;
}
/** @private */
interface HelixExtensionComponentViewData {
viewer_url: string;
aspect_width: number;
aspect_height: number;
aspect_ratio_x: number;
aspect_ratio_y: number;
autoscale: boolean;
scale_pixels: number;
target_height: number;
size: number;
zoom: boolean;
zoom_pixels: number;
can_link_external_content: boolean;
}
/** @private */
interface HelixExtensionConfigViewData {
viewer_url: string;
can_link_external_content: boolean;
}
/** @private */
interface HelixExtensionViewsData {
mobile?: HelixExtensionMobileViewData;
panel?: HelixExtensionPanelViewData;
video_overlay?: HelixExtensionOverlayViewData;
component?: HelixExtensionComponentViewData;
config?: HelixExtensionConfigViewData;
}
/** @private */
export interface HelixExtensionData {
author_name: string;
bits_enabled: boolean;
can_install: boolean;
configuration_location: HelixExtensionConfigurationLocation;
description: string;
eula_tos_url: string;
has_chat_support: boolean;
icon_url: string;
icon_urls: Record<HelixExtensionIconSize, string>;
id: string;
name: string;
privacy_policy_url: string;
request_identity_link: boolean;
screenshot_urls: string[];
state: HelixExtensionState;
subscriptions_support_level: HelixExtensionSubscriptionsSupportLevel;
summary: string;
support_email: string;
version: string;
viewer_summary: string;
views: HelixExtensionViewsData;
allowlisted_config_urls: string[];
allowlisted_panel_urls: string[];
}
export {};
//# sourceMappingURL=HelixExtension.external.d.ts.map