/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0
*/
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
declare namespace APL {
export class Deletable {
public delete();
}
export class Derive extends Deletable {
public static extend(className : string, def : ClassDef) : new () => T;
public static implement(className : string, def : ClassDef) : T;
}
export interface Updated {
id : number;
props : Array<{key : number, value : any}>;
}
export interface Import {
id : number;
name : string;
version : string;
source? : string;
}
export interface Padding {
left : number;
right : number;
top : number;
bottom : number;
}
export interface IMediaState {
trackIndex : number;
trackCount : number;
currentTime : number;
duration : number;
paused : boolean;
ended : boolean;
}
export interface ClassDef {
__parent? : ClassDef;
__construct? : Function;
__destruct? : Function;
[key : string] : any;
}
export class Module {
public onRuntimeInitialized : () => void;
public ConfigurationChange : typeof ConfigurationChange;
public Content : typeof Content;
public DocumentConfig : typeof DocumentConfig;
public ExtensionCommandDefinition : typeof ExtensionCommandDefinition;
public ExtensionFilterDefinition : typeof ExtensionFilterDefinition;
public ExtensionClient : typeof ExtensionClient;
public ExtensionEventHandler : typeof ExtensionEventHandler;
public Context : typeof Context;
public RootConfig : typeof RootConfig;
public Metrics : typeof Metrics;
public LiveMap : typeof LiveMap;
public LiveArray : typeof LiveArray;
public AudioPlayer : typeof AudioPlayer;
public AudioPlayerFactory: typeof AudioPlayerFactory;
public MediaPlayer: typeof MediaPlayer;
public MediaPlayerFactory: typeof MediaPlayerFactory;
public Session : typeof Session;
public DocumentManager : typeof DocumentManager;
public PackageManager : typeof PackageManager;
}
}
declare var Module : APL.Module;