intentful
Version:
Create Custom Skills with less headache
984 lines (983 loc) • 46.3 kB
TypeScript
/**
* This file was automatically generated by json-schema-to-typescript.
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
* and run json-schema-to-typescript to regenerate this file.
*/
import { LocaleString } from '../../types';
export type AnytimePermissionName = 'alexa::alerts:reminders:skill:readwrite' | 'alexa::alerts:timers:skill:readwrite' | 'alexa::assist:enablement' | 'alexa::async_event:write' | 'alexa::devices:all:notifications:write' | 'alexa::devices:all:proactive_suggestions:write' | 'alexa::health:profile:write' | 'alexa::health:telehealth' | 'alexa::home:customization' | 'alexa::home_protection' | 'alexa::household:lists:read' | 'alexa::household:lists:write' | 'alexa::music:cast' | 'alexa::skill:products:entitlements' | 'alexa::skill:resumption' | 'amazon_communication::calling' | 'avs::distributed_audio';
export type EndpointRegistration = 'DYNAMIC_REGISTRATION' | 'STATIC_REGISTRATION';
export type SSLCertificateType = 'SelfSigned' | 'Trusted' | 'Wildcard';
export type AlexaForBusinessInterfaceRequestName = 'Create' | 'Search' | 'Update';
export type Version = '1.0';
export type CatalogName = 'GOOGLE_PLAY_STORE' | 'IOS_APP_STORE';
export type AndroidCommonIntentName = 'ADD_CALENDAR_EVENT' | 'OPEN_SETTINGS' | 'PLAY_MEDIA' | 'SHOW_IN_MAP' | 'START_PHONE_CALL';
export type CatalogType = 'GOOGLE_PLAY_STORE' | 'IOS_APP_STORE';
export type PlayStoreCommonSchemeName = 'MAPS' | 'TEL';
export type IOSAppStoreCommonSchemeName = 'MAPS' | 'TEL';
export type ViewportMode = 'AUTO' | 'HUB' | 'MOBILE' | 'PC' | 'TV';
export type ViewportShape = 'RECTANGLE' | 'ROUND';
export type RequestRoutingConfigurationRequestType = 'Alexa.Presentation.APL.UserEvent' | 'SessionEndedRequest';
export type DM_RequestRoutingConfigurationTargetName = 'AMAZON.Conversations' | 'skill';
export type CustomTemplateView = 'SMART_PROPERTIES';
export type EducationInterfaceNameSpace = 'Alexa.Education.Course' | 'Alexa.Education.Coursework' | 'Alexa.Education.Grade.Course' | 'Alexa.Education.Grade.Coursework' | 'Alexa.Education.Profile.Student' | 'Alexa.Education.School.Communication';
export type EducationInterfaceRequestName = 'Get';
export type EducationInterfaceVersion = '1.0';
export type FlashBriefingContentType = 'AUDIO' | 'TEXT';
export type FlashBriefingGenre = 'ARTS_AND_CULTURE' | 'BUSINESS' | 'ENTERTAINMENT' | 'HEADLINE_NEWS' | 'HEALTH_AND_FITNESS' | 'HUMOR' | 'LIFESTYLE' | 'OTHER' | 'POLITICS' | 'PRODUCTIVITY_AND_UTILITIES' | 'SCIENCE' | 'SPORTS' | 'TECHNOLOGY';
export type FlashBriefingUpdateFrequency = 'DAILY' | 'HOURLY' | 'WEEKLY';
/**
* @minItems 1
*/
export type HealthAliases = [HealthAlias, ...HealthAlias[]];
export type HealthProtocolVersion = '1.0' | '2.0';
export type KnowledgeApisEnablementChannel = 'A4B' | 'ASP' | 'PUBLIC';
export type MusicCapabilities = MusicCapability[];
export type MusicContentName = 'ON_DEMAND' | 'PODCAST' | 'RADIO';
export type MusicContentTypes = MusicContentType[];
export type LambdaSSLCertificateType = 'SelfSigned' | 'Trusted' | 'Wildcard';
/**
* @minItems 1`
*/
export type MusicAliases = [MusicAlias, ...MusicAlias[]];
export type MusicFeatures = MusicFeature[];
export type MusicWordmarks = MusicWordmark[];
export type SmartHomeProtocol = '2' | '2.0' | '3' | '3.0';
export type VideoCatalogInfoType = 'FIRE_TV' | 'INGESTED_CONTENT_IDENTIFIER' | 'LIVE_TV_MSO' | 'SOFTWARE_APPLICATION_INGESTION_IDENTIFIER' | 'STATION_INGESTION_IDENTIFIER';
export type VideoFeature = {
name: 'VIDEO_WEB_PLAYER';
players: VideoWebPlayer[];
version: string;
[k: string]: unknown;
} | {
name: 'VIDEO_VOICE_PROFILE';
version: string;
[k: string]: unknown;
} | {
configurations: VideoWebAppConfig;
name: 'VIDEO_WEB_APP';
version: string;
[k: string]: unknown;
} | {
assets?: VideoAssets[];
configurations?: VideoSkillAssetsConfig;
name: 'VIDEO_SKILL_ASSETS';
version: string;
[k: string]: unknown;
};
export type VideoWebPlayer = {
type: 'DEFAULT';
uri: string;
} | {
backgroundImageUri?: string;
logoImageUri?: string;
type: 'AVS_3P_PROVIDED';
uri: string;
};
export type VideoEntryPoint = {
type: 'LANDING_PAGE';
uri?: string;
} | {
categories: VideoCategory[];
type: 'TEMPLATED_LANDING_PAGE';
uri?: string;
} | {
type: 'CUSTOM_WEB_LANDING_PAGE';
uri?: string;
url: string;
} | {
type: 'LOGIN';
uri?: string;
} | {
type: 'CUSTOM_WEB_PLAYER';
uri?: string;
url?: string;
};
export type ImageVideoAssetsType = 'BACKGROUND_DEFAULT' | 'LANDING_PAGE' | 'LOGO_DEFAULT' | 'SPLASH_SCREEN';
export type VideoPromptNameType = 'Default';
export type EventNameType = 'ALL_LISTS_CHANGED' | 'AUDIO_ITEM_PLAYBACK_FAILED' | 'AUDIO_ITEM_PLAYBACK_FINISHED' | 'AUDIO_ITEM_PLAYBACK_STARTED' | 'AUDIO_ITEM_PLAYBACK_STOPPED' | 'Alexa.Camera.PhotoCaptureController.CancelCaptureFailed' | 'Alexa.Camera.PhotoCaptureController.CancelCaptureFinished' | 'Alexa.Camera.PhotoCaptureController.CaptureFailed' | 'Alexa.Camera.PhotoCaptureController.CaptureFinished' | 'Alexa.Camera.VideoCaptureController.CancelCaptureFailed' | 'Alexa.Camera.VideoCaptureController.CancelCaptureFinished' | 'Alexa.Camera.VideoCaptureController.CaptureFailed' | 'Alexa.Camera.VideoCaptureController.CaptureFinished' | 'Alexa.Camera.VideoCaptureController.CaptureStarted' | 'Alexa.FileManager.UploadController.CancelUploadFailed' | 'Alexa.FileManager.UploadController.CancelUploadFinished' | 'Alexa.FileManager.UploadController.UploadFailed' | 'Alexa.FileManager.UploadController.UploadFinished' | 'Alexa.FileManager.UploadController.UploadStarted' | 'Alexa.Presentation.APL.LoadIndexListData' | 'Alexa.Presentation.APL.RuntimeError' | 'Alexa.Presentation.APL.UserEvent' | 'Alexa.Presentation.HTML.Event' | 'Alexa.Presentation.HTML.LifecycleStateChanged' | 'Alexa.Presentation.PresentationDismissed' | 'Alexa.Video.Xray.ShowDetailsFailed' | 'Alexa.Video.Xray.ShowDetailsSuccessful' | 'AudioPlayer.PlaybackFailed' | 'AudioPlayer.PlaybackFinished' | 'AudioPlayer.PlaybackNearlyFinished' | 'AudioPlayer.PlaybackStarted' | 'AudioPlayer.PlaybackStopped' | 'CardRenderer.DisplayContentFinished' | 'CardRenderer.DisplayContentStarted' | 'CardRenderer.ReadContentFinished' | 'CardRenderer.ReadContentStarted' | 'CustomInterfaceController.EventsReceived' | 'CustomInterfaceController.Expired' | 'DeviceSetup.SetupCompleted' | 'Display.ElementSelected' | 'Display.UserEvent' | 'EffectsController.RequestEffectChangeRequest' | 'EffectsController.RequestGuiChangeRequest' | 'EffectsController.StateReceiptChangeRequest' | 'FitnessSessionController.FitnessSessionEnded' | 'FitnessSessionController.FitnessSessionError' | 'FitnessSessionController.FitnessSessionPaused' | 'FitnessSessionController.FitnessSessionResumed' | 'FitnessSessionController.FitnessSessionStarted' | 'GameEngine.InputHandlerEvent' | 'IN_SKILL_PRODUCT_SUBSCRIPTION_ENDED' | 'IN_SKILL_PRODUCT_SUBSCRIPTION_RENEWED' | 'IN_SKILL_PRODUCT_SUBSCRIPTION_STARTED' | 'ITEMS_CREATED' | 'ITEMS_DELETED' | 'ITEMS_UPDATED' | 'LIST_CREATED' | 'LIST_DELETED' | 'LIST_UPDATED' | 'Legacy.ActivityManager.ActivityContextRemovedEvent' | 'Legacy.ActivityManager.ActivityInterrupted' | 'Legacy.ActivityManager.FocusChanged' | 'Legacy.AlertsController.DismissCommand' | 'Legacy.AlertsController.SnoozeCommand' | 'Legacy.AudioPlayer.AudioStutter' | 'Legacy.AudioPlayer.InitialPlaybackProgressReport' | 'Legacy.AudioPlayer.Metadata' | 'Legacy.AudioPlayer.PeriodicPlaybackProgressReport' | 'Legacy.AudioPlayer.PlaybackError' | 'Legacy.AudioPlayer.PlaybackFinished' | 'Legacy.AudioPlayer.PlaybackIdle' | 'Legacy.AudioPlayer.PlaybackInterrupted' | 'Legacy.AudioPlayer.PlaybackNearlyFinished' | 'Legacy.AudioPlayer.PlaybackPaused' | 'Legacy.AudioPlayer.PlaybackResumed' | 'Legacy.AudioPlayer.PlaybackStarted' | 'Legacy.AudioPlayer.PlaybackStutterFinished' | 'Legacy.AudioPlayer.PlaybackStutterStarted' | 'Legacy.AudioPlayerGui.ButtonClickedEvent' | 'Legacy.AudioPlayerGui.LyricsViewedEvent' | 'Legacy.AuxController.DirectionChanged' | 'Legacy.AuxController.EnabledStateChanged' | 'Legacy.AuxController.InputActivityStateChanged' | 'Legacy.AuxController.PluggedStateChanged' | 'Legacy.BluetoothNetwork.CancelPairingMode' | 'Legacy.BluetoothNetwork.DeviceConnectedFailure' | 'Legacy.BluetoothNetwork.DeviceConnectedSuccess' | 'Legacy.BluetoothNetwork.DeviceDisconnectedFailure' | 'Legacy.BluetoothNetwork.DeviceDisconnectedSuccess' | 'Legacy.BluetoothNetwork.DevicePairFailure' | 'Legacy.BluetoothNetwork.DevicePairSuccess' | 'Legacy.BluetoothNetwork.DeviceUnpairFailure' | 'Legacy.BluetoothNetwork.DeviceUnpairSuccess' | 'Legacy.BluetoothNetwork.EnterPairingModeFailure' | 'Legacy.BluetoothNetwork.EnterPairingModeSuccess' | 'Legacy.BluetoothNetwork.MediaControlFailure' | 'Legacy.BluetoothNetwork.MediaControlSuccess' | 'Legacy.BluetoothNetwork.ScanDevicesReport' | 'Legacy.BluetoothNetwork.SetDeviceCategoriesFailed' | 'Legacy.BluetoothNetwork.SetDeviceCategoriesSucceeded' | 'Legacy.ContentManager.ContentPlaybackTerminated' | 'Legacy.DeviceNotification.DeleteNotificationFailed' | 'Legacy.DeviceNotification.DeleteNotificationSucceeded' | 'Legacy.DeviceNotification.NotificationEnteredBackground' | 'Legacy.DeviceNotification.NotificationEnteredForground' | 'Legacy.DeviceNotification.NotificationStarted' | 'Legacy.DeviceNotification.NotificationStopped' | 'Legacy.DeviceNotification.NotificationSync' | 'Legacy.DeviceNotification.SetNotificationFailed' | 'Legacy.DeviceNotification.SetNotificationSucceeded' | 'Legacy.EqualizerController.EqualizerChanged' | 'Legacy.ExternalMediaPlayer.AuthorizationComplete' | 'Legacy.ExternalMediaPlayer.Error' | 'Legacy.ExternalMediaPlayer.Event' | 'Legacy.ExternalMediaPlayer.Login' | 'Legacy.ExternalMediaPlayer.Logout' | 'Legacy.ExternalMediaPlayer.ReportDiscoveredPlayers' | 'Legacy.ExternalMediaPlayer.RequestToken' | 'Legacy.FavoritesController.Error' | 'Legacy.FavoritesController.Response' | 'Legacy.GameEngine.GameInputEvent' | 'Legacy.HomeAutoWifiController.DeviceReconnected' | 'Legacy.HomeAutoWifiController.HttpNotified' | 'Legacy.HomeAutoWifiController.SsdpDiscoveryFinished' | 'Legacy.HomeAutoWifiController.SsdpServiceDiscovered' | 'Legacy.HomeAutoWifiController.SsdpServiceTerminated' | 'Legacy.ListModel.AddItemRequest' | 'Legacy.ListModel.DeleteItemRequest' | 'Legacy.ListModel.GetPageByOrdinalRequest' | 'Legacy.ListModel.GetPageByTokenRequest' | 'Legacy.ListModel.ListStateUpdateRequest' | 'Legacy.ListModel.UpdateItemRequest' | 'Legacy.ListRenderer.GetListPageByOrdinal' | 'Legacy.ListRenderer.GetListPageByToken' | 'Legacy.ListRenderer.ListItemEvent' | 'Legacy.MediaGrouping.GroupChangeNotificationEvent' | 'Legacy.MediaGrouping.GroupChangeResponseEvent' | 'Legacy.MediaGrouping.GroupSyncEvent' | 'Legacy.MediaPlayer.PlaybackError' | 'Legacy.MediaPlayer.PlaybackFinished' | 'Legacy.MediaPlayer.PlaybackIdle' | 'Legacy.MediaPlayer.PlaybackNearlyFinished' | 'Legacy.MediaPlayer.PlaybackPaused' | 'Legacy.MediaPlayer.PlaybackResumed' | 'Legacy.MediaPlayer.PlaybackStarted' | 'Legacy.MediaPlayer.PlaybackStopped' | 'Legacy.MediaPlayer.SequenceItemsRequested' | 'Legacy.MediaPlayer.SequenceModified' | 'Legacy.MeetingClientController.Event' | 'Legacy.Microphone.AudioRecording' | 'Legacy.PhoneCallController.Event' | 'Legacy.PlaybackController.ButtonCommand' | 'Legacy.PlaybackController.LyricsViewedEvent' | 'Legacy.PlaybackController.NextCommand' | 'Legacy.PlaybackController.PauseCommand' | 'Legacy.PlaybackController.PlayCommand' | 'Legacy.PlaybackController.PreviousCommand' | 'Legacy.PlaybackController.ToggleCommand' | 'Legacy.PlaylistController.ErrorResponse' | 'Legacy.PlaylistController.Response' | 'Legacy.Presentation.PresentationDismissedEvent' | 'Legacy.Presentation.PresentationUserEvent' | 'Legacy.SconeRemoteControl.Next' | 'Legacy.SconeRemoteControl.PlayPause' | 'Legacy.SconeRemoteControl.Previous' | 'Legacy.SconeRemoteControl.VolumeDown' | 'Legacy.SconeRemoteControl.VolumeUp' | 'Legacy.SipClient.Event' | 'Legacy.SoftwareUpdate.CheckSoftwareUpdateReport' | 'Legacy.SoftwareUpdate.InitiateSoftwareUpdateReport' | 'Legacy.Speaker.MuteChanged' | 'Legacy.Speaker.VolumeChanged' | 'Legacy.SpeechRecognizer.WakeWordChanged' | 'Legacy.SpeechSynthesizer.SpeechFinished' | 'Legacy.SpeechSynthesizer.SpeechInterrupted' | 'Legacy.SpeechSynthesizer.SpeechStarted' | 'Legacy.SpeechSynthesizer.SpeechSynthesizerError' | 'Legacy.Spotify.Event' | 'Legacy.System.UserInactivity' | 'Legacy.UDPController.BroadcastResponse' | 'LocalApplication.Alexa.Translation.LiveTranslation.Event' | 'LocalApplication.AlexaNotifications.Event' | 'LocalApplication.AlexaPlatformTestSpeechlet.Event' | 'LocalApplication.AlexaVision.Event' | 'LocalApplication.AlexaVoiceLayer.Event' | 'LocalApplication.AvaPhysicalShopping.Event' | 'LocalApplication.Calendar.Event' | 'LocalApplication.Closet.Event' | 'LocalApplication.Communications.Event' | 'LocalApplication.DeviceMessaging.Event' | 'LocalApplication.DigitalDash.Event' | 'LocalApplication.FireflyShopping.Event' | 'LocalApplication.Gallery.Event' | 'LocalApplication.HHOPhotos.Event' | 'LocalApplication.HomeAutomationMedia.Event' | 'LocalApplication.KnightContacts.Event' | 'LocalApplication.KnightHome.Event' | 'LocalApplication.KnightHomeThingsToTry.Event' | 'LocalApplication.LocalMediaPlayer.Event' | 'LocalApplication.LocalVoiceUI.Event' | 'LocalApplication.MShop.Event' | 'LocalApplication.MShopPurchasing.Event' | 'LocalApplication.NotificationsApp.Event' | 'LocalApplication.Photos.Event' | 'LocalApplication.Sentry.Event' | 'LocalApplication.SipClient.Event' | 'LocalApplication.SipUserAgent.Event' | 'LocalApplication.VideoExperienceService.Event' | 'LocalApplication.WebVideoPlayer.Event' | 'LocalApplication.todoRenderer.Event' | 'Messaging.MessageReceived' | 'MessagingController.UpdateConversationsStatus' | 'MessagingController.UpdateMessagesStatusRequest' | 'MessagingController.UpdateSendMessageStatusRequest' | 'MessagingController.UploadConversations' | 'PlaybackController.NextCommandIssued' | 'PlaybackController.PauseCommandIssued' | 'PlaybackController.PlayCommandIssued' | 'PlaybackController.PreviousCommandIssued' | 'REMINDER_CREATED' | 'REMINDER_DELETED' | 'REMINDER_STARTED' | 'REMINDER_STATUS_CHANGED' | 'REMINDER_UPDATED' | 'SKILL_ACCOUNT_LINKED' | 'SKILL_DISABLED' | 'SKILL_ENABLED' | 'SKILL_NOTIFICATION_SUBSCRIPTION_CHANGED' | 'SKILL_PERMISSION_ACCEPTED' | 'SKILL_PERMISSION_CHANGED' | 'SKILL_PROACTIVE_SUBSCRIPTION_CHANGED';
export type InSessionPermissionName = 'alexa::a4b:lock:readwrite' | 'alexa::accounts:preferredAmazonMarketplace:read' | 'alexa::alexa-media-automatic-playback-movement:status:read' | 'alexa::alexa-media-automatic-playback-movement:status:write' | 'alexa::authenticate:2:mandatory' | 'alexa::authenticate:2:optional' | 'alexa::autoplay:status:read' | 'alexa::autoplay:status:write' | 'alexa::calendar:events:read' | 'alexa::customer_id:read' | 'alexa::device_address:read' | 'alexa::device_id:read' | 'alexa::device_type:read' | 'alexa::deviceaccess:ambiancelighting:read' | 'alexa::deviceaccess:ambiancelighting:write' | 'alexa::devices:all:address:full:read' | 'alexa::devices:all:coarse_location:read' | 'alexa::devices:all:geolocation:read' | 'alexa::devices:all:geolocation_update:read' | 'alexa::devices:all:tokenized_geolocation:read' | 'alexa::devices:all:user_activity:read' | 'alexa::devices:app:push_notifications' | 'alexa::energy:devices:state:read' | 'alexa::entities:knowledge:skill:read' | 'alexa::identity:enrollment:face:enrolledPersons:read' | 'alexa::identity:enrollment:face:enrolledPersons:write' | 'alexa::images:skill:read' | 'alexa::legacy_platform_session:read' | 'alexa::location:enablement:read' | 'alexa::origin_ip_address:read' | 'alexa::persistent_endpoint_id:read' | 'alexa::persistent_unit_id::read' | 'alexa::person_id:read' | 'alexa::personality:explicit:read' | 'alexa::personality:explicit:write' | 'alexa::profile:email:read' | 'alexa::profile:given_name:read' | 'alexa::profile:mobile_number:read' | 'alexa::profile:name:read' | 'alexa::raw_person_id:read' | 'alexa::skill:apl:disable_default_template' | 'alexa::skill:cds:monetization' | 'alexa::skill:shared_activities:readwrite' | 'alexa::speechrecognizer:wakewords:read' | 'alexa::speechrecognizer:wakewords:write' | 'alexa::user_experience_guidance:read' | 'alexa::utterance_id:read' | 'alexa:devices:all:address:country_and_postal_code:read' | 'payments:autopay_consent';
export type ManifestVersion = '1.0';
export type PermissionName = 'alexa::alerts:reminders:skill:readwrite' | 'alexa::alerts:timers:skill:readwrite' | 'alexa::async_event:write' | 'alexa::authenticate:2:mandatory' | 'alexa::authenticate:2:optional' | 'alexa::customer_id:read' | 'alexa::device_id:read' | 'alexa::device_type:read' | 'alexa::devices:all:address:full:read' | 'alexa::devices:all:coarse_location:read' | 'alexa::devices:all:geolocation:read' | 'alexa::devices:all:notifications:urgent:write' | 'alexa::devices:all:notifications:write' | 'alexa::devices:all:tokenized_geolocation:read' | 'alexa::energy:devices:state:read' | 'alexa::health:profile:write' | 'alexa::household:lists:read' | 'alexa::household:lists:write' | 'alexa::measurement_system::readwrite' | 'alexa::music:cast' | 'alexa::origin_ip_address:read' | 'alexa::person_id:read' | 'alexa::personality:explicit:read' | 'alexa::personality:explicit:write' | 'alexa::profile:email:read' | 'alexa::profile:given_name:read' | 'alexa::profile:mobile_number:read' | 'alexa::profile:name:read' | 'alexa::raw_person_id:read' | 'alexa::skill:cds:monetization' | 'alexa::skill:proactive_enablement' | 'alexa::skill:products:entitlements' | 'alexa::user_experience_guidance:read' | 'alexa::utterance_id:read' | 'alexa:devices:all:address:country_and_postal_code:read' | 'avs::distributed_audio' | 'dash::vendor:read:endpoints' | 'payments:autopay_consent';
export type DataProtectionProvider = 'AWS_KMS' | 'KEY_MASTER';
export type DistributionCountries = 'AD' | 'AE' | 'AF' | 'AG' | 'AI' | 'AL' | 'AM' | 'AN' | 'AO' | 'AQ' | 'AR' | 'AS' | 'AT' | 'AU' | 'AW' | 'AX' | 'AZ' | 'BA' | 'BB' | 'BD' | 'BE' | 'BF' | 'BG' | 'BH' | 'BI' | 'BJ' | 'BL' | 'BM' | 'BN' | 'BO' | 'BR' | 'BS' | 'BT' | 'BV' | 'BW' | 'BY' | 'BZ' | 'CA' | 'CC' | 'CD' | 'CF' | 'CG' | 'CH' | 'CI' | 'CK' | 'CL' | 'CM' | 'CN' | 'CO' | 'CR' | 'CV' | 'CX' | 'CY' | 'CZ' | 'DE' | 'DJ' | 'DK' | 'DM' | 'DO' | 'DZ' | 'EC' | 'EE' | 'EG' | 'EH' | 'ER' | 'ES' | 'ET' | 'FI' | 'FJ' | 'FK' | 'FM' | 'FO' | 'FR' | 'GA' | 'GB' | 'GD' | 'GE' | 'GF' | 'GG' | 'GH' | 'GI' | 'GL' | 'GM' | 'GN' | 'GP' | 'GQ' | 'GR' | 'GS' | 'GT' | 'GU' | 'GW' | 'GY' | 'HK' | 'HM' | 'HN' | 'HR' | 'HT' | 'HU' | 'ID' | 'IE' | 'IL' | 'IM' | 'IN' | 'IO' | 'IQ' | 'IS' | 'IT' | 'JE' | 'JM' | 'JO' | 'JP' | 'KE' | 'KG' | 'KH' | 'KI' | 'KM' | 'KN' | 'KR' | 'KW' | 'KY' | 'KZ' | 'LA' | 'LB' | 'LC' | 'LI' | 'LK' | 'LR' | 'LS' | 'LT' | 'LU' | 'LV' | 'LY' | 'MA' | 'MC' | 'MD' | 'ME' | 'MF' | 'MG' | 'MH' | 'MK' | 'ML' | 'MM' | 'MN' | 'MO' | 'MP' | 'MQ' | 'MR' | 'MS' | 'MT' | 'MU' | 'MV' | 'MW' | 'MX' | 'MY' | 'MZ' | 'NA' | 'NC' | 'NE' | 'NF' | 'NG' | 'NI' | 'NL' | 'NO' | 'NP' | 'NR' | 'NU' | 'NZ' | 'OM' | 'PA' | 'PE' | 'PF' | 'PG' | 'PH' | 'PK' | 'PL' | 'PM' | 'PN' | 'PR' | 'PS' | 'PT' | 'PW' | 'PY' | 'QA' | 'RE' | 'RO' | 'RS' | 'RU' | 'RW' | 'SA' | 'SB' | 'SC' | 'SE' | 'SG' | 'SH' | 'SI' | 'SJ' | 'SK' | 'SL' | 'SM' | 'SN' | 'SO' | 'SR' | 'ST' | 'SV' | 'SZ' | 'TC' | 'TD' | 'TF' | 'TG' | 'TH' | 'TJ' | 'TK' | 'TL' | 'TM' | 'TN' | 'TO' | 'TR' | 'TT' | 'TV' | 'TW' | 'TZ' | 'UA' | 'UG' | 'UM' | 'US' | 'UY' | 'UZ' | 'VA' | 'VC' | 'VE' | 'VG' | 'VI' | 'VN' | 'VU' | 'WF' | 'WS' | 'YE' | 'YT' | 'ZA' | 'ZM' | 'ZW';
export type DistributionMode = 'PRIVATE' | 'PUBLIC';
export type GadgetSupportRequirement = 'OPTIONAL' | 'REQUIRED';
export type MediaSource = {
location: string;
type: 'URI';
[k: string]: unknown;
} | {
catalogId: string;
filePathInUpload: string;
type: 'CATALOG_UPLOAD';
uploadId: string;
[k: string]: unknown;
};
export type Currency = 'USD';
export type OfferType = 'ENTITLEMENT' | 'SUBSCRIPTION';
export type SubscriptionPaymentFrequency = 'MONTHLY' | 'YEARLY';
export type TaxInformationCategory = 'INFORMATION_SERVICES' | 'NEWSPAPERS' | 'PERIODICALS' | 'SOFTWARE' | 'STREAMING_AUDIO' | 'STREAMING_RADIO' | 'VIDEO';
export interface SkillManifestModel {
manifest: SkillManifest;
}
export interface SkillManifest {
anytimePermissions?: AnytimePermissionItems[];
apis?: SkillManifestApis;
authorizedClients?: AuthorizedClient[];
blueprint?: Blueprint;
encryptionInfo?: EncryptionInfo;
events?: SkillManifestEvents;
inSessionPermissions?: InSessionPermissionItems[];
manifestVersion?: ManifestVersion;
permissions?: PermissionItems[];
privacyAndCompliance?: SkillManifestPrivacyAndCompliance;
publishingInformation?: SkillManifestPublishingInformation;
}
export interface AnytimePermissionItems {
name: AnytimePermissionName;
}
export interface SkillManifestApis {
alexaForBusiness?: AlexaForBusinessApis;
custom?: CustomApis;
education?: EducationApis;
flashBriefing?: FlashBriefingApis;
health?: HealthApis;
householdList?: HouseHoldList;
knowledge?: KnowledgeApis;
mobileApps?: MobileAppsApis;
music?: MusicApis;
narrative?: NarrativeApis;
smartHome?: SmartHomeApis;
video?: VideoApis;
}
export interface AlexaForBusinessApis {
endpoint: SkillManifestEndpoint;
interfaces: AlexaForBusinessInterface[];
regions?: {
NA?: Region;
};
}
export interface SkillManifestEndpoint {
endpointRegistration?: EndpointRegistration;
requestEnvelopeVersionSupported?: string;
sslCertificateType?: SSLCertificateType;
uri: string;
}
export interface AlexaForBusinessInterface {
namespace: string;
/**
* @minItems 2
*/
requests: [AlexaForBusinessInterfaceRequest, AlexaForBusinessInterfaceRequest, ...AlexaForBusinessInterfaceRequest[]];
version: Version;
}
export interface AlexaForBusinessInterfaceRequest {
name: AlexaForBusinessInterfaceRequestName;
}
export interface Region {
endpoint: SkillManifestEndpoint;
}
export interface CustomApis {
answerGroups?: Custom_AnswerGroups;
appLink?: AppLink;
dialogManagement?: DialogManagement;
endpoint?: SkillManifestEndpointAllAllowedTypesEndpointUri;
interfaces?: Interface[];
locales?: {
'ar-SA'?: CustomLocalizedInformation;
'de-DE'?: CustomLocalizedInformation;
'en-AU'?: CustomLocalizedInformation;
'en-CA'?: CustomLocalizedInformation;
'en-GB'?: CustomLocalizedInformation;
'en-IN'?: CustomLocalizedInformation;
'en-US'?: CustomLocalizedInformation;
'es-ES'?: CustomLocalizedInformation;
'es-MX'?: CustomLocalizedInformation;
'es-US'?: CustomLocalizedInformation;
'fr-CA'?: CustomLocalizedInformation;
'fr-FR'?: CustomLocalizedInformation;
'hi-IN'?: CustomLocalizedInformation;
'it-IT'?: CustomLocalizedInformation;
'ja-JP'?: CustomLocalizedInformation;
'nl-NL'?: CustomLocalizedInformation;
'pt-BR'?: CustomLocalizedInformation;
};
regions?: {
EU?: RegionAllAllowedTypesEndpointUri;
FE?: RegionAllAllowedTypesEndpointUri;
IN?: RegionAllAllowedTypesEndpointUri;
NA?: RegionAllAllowedTypesEndpointUri;
};
requestRoutingConfiguration?: RequestRoutingConfiguration[];
/**
* @minItems 1
*/
tasks?: [CustomTask, ...CustomTask[]];
templateView?: CustomTemplateView;
}
export interface Custom_AnswerGroups {
groupId?: string;
[k: string]: unknown;
}
export interface AppLink {
/**
* @minItems 1
*/
linkedAndroidCommonIntents?: [LinkedAndroidCommonIntent, ...LinkedAndroidCommonIntent[]];
/**
* @minItems 1
*/
linkedApplications?: [LinkedApplication, ...LinkedApplication[]];
linkedCommonSchemes?: LinkedCommonSchemes;
/**
* @minItems 1
*/
linkedWebDomains?: [string, ...string[]];
}
export interface LinkedAndroidCommonIntent {
catalogType: CatalogName;
intentName: AndroidCommonIntentName;
}
export interface LinkedApplication {
/**
* @minItems 1
*/
androidCustomIntents?: [AndroidCustomIntent, ...AndroidCustomIntent[]];
catalogInfo: CatalogInfo;
/**
* @minItems 1
*/
customSchemes?: [string, ...string[]];
/**
* @minItems 1
*/
domains?: [string, ...string[]];
friendlyName: FriendlyName;
}
export interface AndroidCustomIntent {
action?: string;
component?: string;
}
export interface CatalogInfo {
identifier: string;
type: CatalogType;
}
export interface FriendlyName {
default: string;
/**
* @minItems 1
*/
localizedNames?: [LocalizedName, ...LocalizedName[]];
}
export interface LocalizedName {
locale: string;
name: string;
}
export interface LinkedCommonSchemes {
/**
* @minItems 1
*/
GOOGLE_PLAY_STORE?: [PlayStoreCommonSchemeName, ...PlayStoreCommonSchemeName[]];
/**
* @minItems 1
*/
IOS_APP_STORE?: [IOSAppStoreCommonSchemeName, ...IOSAppStoreCommonSchemeName[]];
}
export interface DialogManagement {
dialogManagers: DialogManager[];
sessionStartDelegationStrategy?: DialogDelegationStrategy;
}
export interface DialogManager {
type: 'AMAZON.Conversations';
}
export interface DialogDelegationStrategy {
target: string;
}
export interface SkillManifestEndpointAllAllowedTypesEndpointUri {
requestEnvelopeVersionSupported?: string;
sslCertificateType?: SSLCertificateType;
uri: string;
}
export interface Interface {
autoInitializedExtensions?: ExtensionInitializationRequest[];
customNamespaces?: {
[k: string]: CustomNamespace;
};
minimumApmlVersion?: string;
minimumTemplateVersion?: string;
packages?: DataStorePackage[];
requestedExtensions?: ExtensionRequest[];
requestedModules?: DataStoreModuleRequest[];
supportedViewports?: ViewportSpecification[];
supportsCorrelationTokenBasedRouting?: boolean;
type?: 'ALEXA_AUGMENTATION_EFFECTS_CONTROLLER' | 'ALEXA_CAMERA_PHOTO_CAPTURE_CONTROLLER' | 'ALEXA_CAMERA_VIDEO_CAPTURE_CONTROLLER' | 'ALEXA_EXTENSION' | 'ALEXA_FILE_MANAGER_UPLOAD_CONTROLLER' | 'ALEXA_PRESENTATION_APL' | 'ALEXA_SEARCH' | 'APP_LINKS' | 'APP_LINKS_V2' | 'AUDIO_PLAYER' | 'CAN_FULFILL_INTENT_REQUEST' | 'CUSTOM_INTERFACE' | 'GADGET_CONTROLLER' | 'GAME_ENGINE' | 'RENDER_TEMPLATE' | 'VIDEO_APP';
}
export interface ExtensionInitializationRequest {
settings?: {
[k: string]: string;
};
uri: string;
}
export interface CustomNamespace {
eventNames?: string[];
stateNames?: string[];
[k: string]: unknown;
}
export interface DataStorePackage {
id: string;
}
export interface ExtensionRequest {
uri: string;
}
export interface DataStoreModuleRequest {
uri: string;
}
export interface ViewportSpecification {
maxHeight?: number;
maxWidth?: number;
minHeight?: number;
minWidth?: number;
mode: ViewportMode;
shape: ViewportShape;
}
export interface CustomLocalizedInformation {
dialogManagement?: CustomLocalizedInformationDialogManagement;
}
export interface CustomLocalizedInformationDialogManagement {
sessionStartDelegationStrategy?: CustomDialogManagement_SessionStartDelegationStrategy;
}
export interface CustomDialogManagement_SessionStartDelegationStrategy {
target: string;
}
export interface RegionAllAllowedTypesEndpointUri {
endpoint: SkillManifestEndpointAllAllowedTypesEndpointUri;
}
export interface RequestRoutingConfiguration {
requestType: RequestRoutingConfigurationRequestType;
targetName?: DM_RequestRoutingConfigurationTargetName;
targetType: 'DIALOG_MANAGER';
}
export interface CustomTask {
name: string;
version: string;
}
export interface EducationApis {
endpoint: SkillManifestEndpoint;
interfaces: EducationInterface[];
locales: {
'en-US'?: LocalizedEducationInformation;
};
regions?: {
NA?: Region;
};
}
export interface EducationInterface {
namespace: EducationInterfaceNameSpace;
requests: EducationInterfaceRequest[];
version: EducationInterfaceVersion;
}
export interface EducationInterfaceRequest {
name: EducationInterfaceRequestName;
}
export interface LocalizedEducationInformation {
promptName: string;
}
export interface FlashBriefingApis {
locales: {
'ar-SA'?: LocalizedFlashBriefingInfo;
'de-DE'?: LocalizedFlashBriefingInfo;
'en-AU'?: LocalizedFlashBriefingInfo;
'en-CA'?: LocalizedFlashBriefingInfo;
'en-GB'?: LocalizedFlashBriefingInfo;
'en-IN'?: LocalizedFlashBriefingInfo;
'en-US'?: LocalizedFlashBriefingInfo;
'es-ES'?: LocalizedFlashBriefingInfo;
'es-MX'?: LocalizedFlashBriefingInfo;
'es-US'?: LocalizedFlashBriefingInfo;
'fr-CA'?: LocalizedFlashBriefingInfo;
'fr-FR'?: LocalizedFlashBriefingInfo;
'hi-IN'?: LocalizedFlashBriefingInfo;
'it-IT'?: LocalizedFlashBriefingInfo;
'ja-JP'?: LocalizedFlashBriefingInfo;
'nl-NL'?: LocalizedFlashBriefingInfo;
'pt-BR'?: LocalizedFlashBriefingInfo;
};
}
export interface LocalizedFlashBriefingInfo {
customErrorMessage: string;
/**
* @minItems 1
* @maxItems 50
*/
feeds: [LocalizedFlashBriefingInfoItems, ...LocalizedFlashBriefingInfoItems[]];
}
export interface LocalizedFlashBriefingInfoItems {
contentType: FlashBriefingContentType;
genre: FlashBriefingGenre;
imageUri?: null | string;
isDefault: boolean;
logicalName?: string;
name: string;
updateFrequency: FlashBriefingUpdateFrequency;
url: null | string;
vuiPreamble?: string;
}
export interface HealthApis {
endpoint: SkillManifestEndpoint;
interfaces?: HealthInterface[];
locales?: {
'de-DE'?: LocalizedHealthInfo;
'en-US'?: LocalizedHealthInfo;
'es-US'?: LocalizedHealthInfo;
};
protocolVersion?: HealthProtocolVersion;
regions?: {
NA?: Region;
};
}
export interface HealthInterface {
namespace: string;
requests?: HealthRequest[];
version?: string;
}
export interface HealthRequest {
name?: string;
}
export interface LocalizedHealthInfo {
aliases?: HealthAliases;
promptName?: string;
}
export interface HealthAlias {
name?: string;
}
export interface HouseHoldList {
[k: string]: unknown;
}
export interface KnowledgeApis {
enablementChannel?: KnowledgeApisEnablementChannel;
locales?: {
'en-US'?: LocalizedKnowledgeInformation;
};
}
export interface LocalizedKnowledgeInformation {
answerAttribution?: string;
}
export interface MobileAppsApis {
}
export interface MusicApis {
capabilities?: MusicCapabilities;
contentTypes?: MusicContentTypes;
endpoint: LambdaEndpointAllAllowedTypesLambdaEndpointUri;
interfaces?: MusicInterfaces[];
locales?: {
'ar-SA'?: LocalizedMusicInfo;
'de-DE'?: LocalizedMusicInfo;
'en-AU'?: LocalizedMusicInfo;
'en-CA'?: LocalizedMusicInfo;
'en-GB'?: LocalizedMusicInfo;
'en-IN'?: LocalizedMusicInfo;
'en-US'?: LocalizedMusicInfo;
'es-ES'?: LocalizedMusicInfo;
'es-MX'?: LocalizedMusicInfo;
'es-US'?: LocalizedMusicInfo;
'fr-CA'?: LocalizedMusicInfo;
'fr-FR'?: LocalizedMusicInfo;
'hi-IN'?: LocalizedMusicInfo;
'it-IT'?: LocalizedMusicInfo;
'ja-JP'?: LocalizedMusicInfo;
'nl-NL'?: LocalizedMusicInfo;
'pt-BR'?: LocalizedMusicInfo;
};
protocolVersion?: string;
regions?: {
EU?: LambdaRegionAllAllowedTypesLambdaEndpointUri;
FE?: LambdaRegionAllAllowedTypesLambdaEndpointUri;
IN?: LambdaRegionAllAllowedTypesLambdaEndpointUri;
NA?: LambdaRegionAllAllowedTypesLambdaEndpointUri;
};
}
export interface MusicCapability {
name?: string;
namespace?: string;
version?: string;
}
export interface MusicContentType {
name?: MusicContentName;
}
export interface LambdaEndpointAllAllowedTypesLambdaEndpointUri {
sslCertificateType?: LambdaSSLCertificateType;
uri: string;
}
export interface MusicInterfaces {
namespace: string;
requests?: MusicRequest[];
version?: string;
}
export interface MusicRequest {
name?: string;
}
export interface LocalizedMusicInfo {
aliases?: MusicAliases;
features?: MusicFeatures;
promptName?: string;
wordmarkLogos?: MusicWordmarks;
}
export interface MusicAlias {
name?: string;
}
export interface MusicFeature {
name?: string;
}
export interface MusicWordmark {
uri?: string;
}
export interface LambdaRegionAllAllowedTypesLambdaEndpointUri {
endpoint: LambdaEndpointAllAllowedTypesLambdaEndpointUri;
}
export interface NarrativeApis {
locales: {
'ar-SA'?: LocalizedNarrativeInfo;
'de-DE'?: LocalizedNarrativeInfo;
'en-AU'?: LocalizedNarrativeInfo;
'en-CA'?: LocalizedNarrativeInfo;
'en-GB'?: LocalizedNarrativeInfo;
'en-IN'?: LocalizedNarrativeInfo;
'en-US'?: LocalizedNarrativeInfo;
'es-ES'?: LocalizedNarrativeInfo;
'es-MX'?: LocalizedNarrativeInfo;
'es-US'?: LocalizedNarrativeInfo;
'fr-CA'?: LocalizedNarrativeInfo;
'fr-FR'?: LocalizedNarrativeInfo;
'hi-IN'?: LocalizedNarrativeInfo;
'it-IT'?: LocalizedNarrativeInfo;
'ja-JP'?: LocalizedNarrativeInfo;
'pt-BR'?: LocalizedNarrativeInfo;
};
}
export interface LocalizedNarrativeInfo {
/**
* @minItems 1
* @maxItems 5
*/
aliases: [string] | [string, string] | [string, string, string] | [string, string, string, string] | [string, string, string, string, string];
}
export interface SmartHomeApis {
endpoint: LambdaEndpoint;
localFulfillment?: LocalFulfillment;
protocolVersion: SmartHomeProtocol;
regions?: {
EU?: LambdaRegion;
FE?: LambdaRegion;
IN?: LambdaRegion;
NA?: LambdaRegion;
};
}
export interface LambdaEndpoint {
sslCertificateType?: LambdaSSLCertificateType;
uri: string;
}
export interface LocalFulfillment {
}
export interface LambdaRegion {
endpoint: LambdaEndpoint;
}
export interface VideoApis {
countries?: {
AE?: VideoCountryInfo;
AR?: VideoCountryInfo;
AT?: VideoCountryInfo;
AU?: VideoCountryInfo;
BE?: VideoCountryInfo;
BR?: VideoCountryInfo;
CA?: VideoCountryInfo;
CH?: VideoCountryInfo;
CL?: VideoCountryInfo;
CO?: VideoCountryInfo;
CR?: VideoCountryInfo;
DE?: VideoCountryInfo;
DK?: VideoCountryInfo;
EC?: VideoCountryInfo;
EG?: VideoCountryInfo;
ES?: VideoCountryInfo;
FI?: VideoCountryInfo;
FR?: VideoCountryInfo;
GB?: VideoCountryInfo;
HK?: VideoCountryInfo;
ID?: VideoCountryInfo;
IE?: VideoCountryInfo;
IL?: VideoCountryInfo;
IN?: VideoCountryInfo;
IT?: VideoCountryInfo;
JP?: VideoCountryInfo;
KR?: VideoCountryInfo;
LU?: VideoCountryInfo;
MX?: VideoCountryInfo;
MY?: VideoCountryInfo;
NL?: VideoCountryInfo;
NO?: VideoCountryInfo;
NZ?: VideoCountryInfo;
PE?: VideoCountryInfo;
PH?: VideoCountryInfo;
PL?: VideoCountryInfo;
PT?: VideoCountryInfo;
SA?: VideoCountryInfo;
SE?: VideoCountryInfo;
SG?: VideoCountryInfo;
TH?: VideoCountryInfo;
TR?: VideoCountryInfo;
TW?: VideoCountryInfo;
US?: VideoCountryInfo;
ZA?: VideoCountryInfo;
};
endpoint?: LambdaEndpointAllLambdaTypesEndpointUri;
locales: {
'ar-SA'?: VideoApisLocale;
'de-DE'?: VideoApisLocale;
'en-AU'?: VideoApisLocale;
'en-CA'?: VideoApisLocale;
'en-GB'?: VideoApisLocale;
'en-IN'?: VideoApisLocale;
'en-US'?: VideoApisLocale;
'es-ES'?: VideoApisLocale;
'es-MX'?: VideoApisLocale;
'es-US'?: VideoApisLocale;
'fr-CA'?: VideoApisLocale;
'fr-FR'?: VideoApisLocale;
'hi-IN'?: VideoApisLocale;
'it-IT'?: VideoApisLocale;
'ja-JP'?: VideoApisLocale;
'nl-NL'?: VideoApisLocale;
'pt-BR'?: VideoApisLocale;
};
protocolVersion?: string;
regions?: {
EU?: VideoRegionAllAllowedTypesEndpointUri;
FE?: VideoRegionAllAllowedTypesEndpointUri;
IN?: VideoRegionAllAllowedTypesEndpointUri;
NA?: VideoRegionAllAllowedTypesEndpointUri;
};
}
export interface VideoCountryInfo {
catalogInformation?: VideoCatalogInfo[];
[k: string]: unknown;
}
export interface VideoCatalogInfo {
sourceId: string;
type?: VideoCatalogInfoType;
[k: string]: unknown;
}
export interface LambdaEndpointAllLambdaTypesEndpointUri {
sslCertificateType?: LambdaSSLCertificateType;
uri: string;
}
export interface VideoApisLocale {
alexaVideoCatalogIngestion?: AlexaVideoCatalogIngestion;
features?: VideoFeature[];
promptNames?: VideoPromptName[];
videoProviderLogoUri?: null | string;
/**
* @minItems 1
*/
videoProviderTargetingNames: [string, ...string[]];
[k: string]: unknown;
}
export interface AlexaVideoCatalogIngestion {
alexaVideoCatalogIngestionS3BucketName?: string;
isAlexaVideoCatalogIngestionEnabled: boolean;
}
export interface VideoWebAppConfig {
entryPoints: VideoEntryPoint[];
[k: string]: unknown;
}
export interface VideoCategory {
id: string;
type: 'PRESET';
}
export interface VideoAssets {
imageType: ImageVideoAssetsType;
sources?: ImageVideoAssetSource[];
type: 'IMAGE';
uri?: string;
}
export interface ImageVideoAssetSource {
heightPixels: number;
url: string;
widthPixels: number;
}
export interface VideoSkillAssetsConfig {
assets: VideoAssets[];
[k: string]: unknown;
}
export interface VideoPromptName {
name: string;
type: VideoPromptNameType;
[k: string]: unknown;
}
export interface VideoRegionAllAllowedTypesEndpointUri {
endpoint: SkillManifestEndpointAllAllowedTypesEndpointUri;
upchannel?: UpChannelItems[];
}
export interface UpChannelItems {
type?: string;
uri?: string;
}
export interface AuthorizedClient {
/**
* @minItems 1
*/
applications: [AuthorizedClientLwaApplication, ...AuthorizedClientLwaApplication[]];
authenticationProvider: 'LWA';
}
export interface AuthorizedClientLwaApplication {
appStoreAppId?: string;
clientId?: string;
type: 'LWA_ANDROID';
}
export interface Blueprint {
blueprintVersion?: string;
id: string;
limitedVisibility?: boolean;
name: string;
skillDataVersion?: string;
skipCertification?: boolean;
}
export interface EncryptionInfo {
[k: string]: {
[k: string]: unknown;
};
}
export interface SkillManifestEvents {
endpoint: SkillManifestEndpointAaaCoralHttpHttpsLambdaEndpointUri;
publications?: EventPublications[];
regions?: {
EU?: RegionAaaCoralHttpHttpsLambdaEndpointUri;
FE?: RegionAaaCoralHttpHttpsLambdaEndpointUri;
IN?: RegionAaaCoralHttpHttpsLambdaEndpointUri;
NA?: RegionAaaCoralHttpHttpsLambdaEndpointUri;
};
subscriptions?: EventName[];
}
export interface SkillManifestEndpointAaaCoralHttpHttpsLambdaEndpointUri {
endpointRegistration?: EndpointRegistration;
requestEnvelopeVersionSupported?: string;
sslCertificateType?: SSLCertificateType;
uri: string;
}
export interface EventPublications {
eventName?: string;
topicIds?: string[];
}
export interface RegionAaaCoralHttpHttpsLambdaEndpointUri {
endpoint: SkillManifestEndpointAaaCoralHttpHttpsLambdaEndpointUri;
}
export interface EventName {
eventName?: EventNameType;
}
export interface InSessionPermissionItems {
name: InSessionPermissionName;
}
export interface PermissionItems {
name: PermissionName;
}
export interface SkillManifestPrivacyAndCompliance {
allowsPurchases: boolean;
containsAds: boolean;
criticalDataHandling?: CriticalDataHandling;
isChildDirected: boolean;
isExportCompliant: boolean | null;
locales?: {
'ar-SA'?: SkillManifestLocalizedPrivacyAndCompliance;
'de-DE'?: SkillManifestLocalizedPrivacyAndCompliance;
'en-AU'?: SkillManifestLocalizedPrivacyAndCompliance;
'en-CA'?: SkillManifestLocalizedPrivacyAndCompliance;
'en-GB'?: SkillManifestLocalizedPrivacyAndCompliance;
'en-IN'?: SkillManifestLocalizedPrivacyAndCompliance;
'en-US'?: SkillManifestLocalizedPrivacyAndCompliance;
'es-ES'?: SkillManifestLocalizedPrivacyAndCompliance;
'es-MX'?: SkillManifestLocalizedPrivacyAndCompliance;
'es-US'?: SkillManifestLocalizedPrivacyAndCompliance;
'fr-CA'?: SkillManifestLocalizedPrivacyAndCompliance;
'fr-FR'?: SkillManifestLocalizedPrivacyAndCompliance;
'hi-IN'?: SkillManifestLocalizedPrivacyAndCompliance;
'it-IT'?: SkillManifestLocalizedPrivacyAndCompliance;
'ja-JP'?: SkillManifestLocalizedPrivacyAndCompliance;
'nl-NL'?: SkillManifestLocalizedPrivacyAndCompliance;
'pt-BR'?: SkillManifestLocalizedPrivacyAndCompliance;
};
shoppingKit?: ShoppingKit;
usesAdveristingInfo?: UsesAdvertisingInfo;
usesPersonalInfo: boolean;
}
export interface CriticalDataHandling {
dataProtectionProvider?: DataProtectionProvider;
}
export interface SkillManifestLocalizedPrivacyAndCompliance {
privacyPolicyUrl?: null | string;
termsOfUseUrl?: null | string;
}
export interface ShoppingKit {
isAmazonAssociatesOnAlexaEnabled?: boolean;
isShoppingActionsEnabled?: boolean;
}
export interface UsesAdvertisingInfo {
usesAlexaAdvertisingId?: boolean;
}
export interface SkillManifestPublishingInformation {
automaticClonedLocale?: AutomaticClonedLocale;
automaticDistribution?: AutomaticDistribution;
category?: string;
description?: string;
distributionCountries?: DistributionCountries[];
distributionMode?: DistributionMode;
gadgetSupport?: ManifestGadgetSupport;
isAvailableWorldwide?: boolean;
locales?: {
[locale in LocaleString]?: SkillManifestLocalizedPublishingInformation;
};
name?: string;
paidSkillInformation?: PaidSkillInformation;
testingInstructions?: string;
}
export interface AutomaticClonedLocale {
locales: LocalesByAutomaticClonedLocale[];
[k: string]: unknown;
}
export interface LocalesByAutomaticClonedLocale {
source: string;
targets?: string[];
[k: string]: unknown;
}
export interface AutomaticDistribution {
isActive: boolean;
sourceLocaleForLanguages?: SourceLanguageForLocales[];
}
export interface SourceLanguageForLocales {
language: string;
sourceLocale: string;
}
export interface ManifestGadgetSupport {
maxGadgetButtons?: number;
minGadgetButtons?: number;
numPlayersMax?: number;
numPlayersMin?: number;
requirement: GadgetSupportRequirement;
}
export interface SkillManifestLocalizedPublishingInformation {
customProductPrompts?: CustomProductPrompts;
description?: string;
/**
* @minItems 1
* @maxItems 4
*/
examplePhrases?: string[];
/**
* @maxItems 30
*/
keywords?: string[];
largeIconUri?: null | string;
name: string;
preview?: Preview;
smallIconUri?: null | string;
summary?: string;
updatesDescription?: string;
}
export interface CustomProductPrompts {
purchaseConfirmationDescription: string;
purchasePromptDescription: string;
[k: string]: unknown;
}
export interface Preview {
assets?: {
mobileRectangle?: AssetProfile;
pcRectangle?: AssetProfile;
};
[k: string]: unknown;
}
export interface AssetProfile {
/**
* @minItems 1
* @maxItems 5
*/
images?: [PreviewImage] | [PreviewImage, PreviewImage] | [PreviewImage, PreviewImage, PreviewImage] | [PreviewImage, PreviewImage, PreviewImage, PreviewImage] | [PreviewImage, PreviewImage, PreviewImage, PreviewImage, PreviewImage];
/**
* @minItems 1
* @maxItems 1
*/
videos?: [PreviewVideo];
[k: string]: unknown;
}
export interface PreviewImage {
source: MediaSource;
[k: string]: unknown;
}
export interface PreviewVideo {
featuredFrame?: MediaSource;
source: MediaSource;
[k: string]: unknown;
}
export interface PaidSkillInformation {
pricing: {
/**
* @minItems 1
* @maxItems 1
*/
'amazon.ca'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.co.jp'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.co.uk'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.com'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.de'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.es'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.fr'?: [MarketplacePricing];
/**
* @minItems 1
* @maxItems 1
*/
'amazon.it'?: [MarketplacePricing];
};
taxInformation: TaxInformation;
[k: string]: unknown;
}
export interface MarketplacePricing {
currency: Currency;
freeTrialInformation?: FreeTrialInformation;
offerType: OfferType;
price: number;
subscriptionInformation?: SubscriptionInformation;
[k: string]: unknown;
}
export interface FreeTrialInformation {
freeTrialDuration: string;
[k: string]: unknown;
}
export interface SubscriptionInformation {
subscriptionPaymentFrequency: SubscriptionPaymentFrequency;
[k: string]: unknown;
}
export interface TaxInformation {
category: TaxInformationCategory;
[k: string]: unknown;
}