// types patches configuration for playerglobal.swc

flash.display.DisplayObject.filters : Array<flash.filters.BitmapFilter>;

-flash.accessibility.Accessibility.new
@:require(flash10_1) flash.accessibility.ISearchableText
@:require(flash10_1) flash.accessibility.ISimpleTextSelection

@:require(flash10_1) flash.automation.ActionGenerator
@:require(flash10_1) flash.automation.AutomationAction
@:require(flash10_1) flash.automation.Configuration
@:require(flash10_1) flash.automation.KeyboardAutomationAction
@:require(flash10_1) flash.automation.MouseAutomationAction
@:require(flash10_1) flash.automation.StageCapture
@:require(flash10_1) flash.automation.StageCaptureEvent

-flash.desktop.Clipboard.new
flash.desktop.Clipboard.formats : Array<ClipboardFormats>;
flash.desktop.Clipboard.$format : ClipboardFormats;
flash.desktop.Clipboard.$transferMode : ClipboardTransferMode;

enum flash.desktop.ClipboardFormats;
enum flash.desktop.ClipboardTransferMode;

enum flash.display.PixelSnapping;
enum flash.display.BlendMode;

@:require(flash10) flash.desktop.Clipboard
@:require(flash10) flash.desktop.ClipboardFormats
@:require(flash10) flash.desktop.ClipboardTransferMode

flash.display.Bitmap.pixelSnapping : PixelSnapping;
flash.display.Bitmap.$pixelSnapping : PixelSnapping;
flash.display.BitmapData.$blendMode : BlendMode;
flash.display.BitmapData.$redArray : Array<Int>;
flash.display.BitmapData.$greenArray : Array<Int>;
flash.display.BitmapData.$blueArray : Array<Int>;
flash.display.BitmapData.$alphaArray : Array<Int>;
flash.display.BitmapData.$offsets : Array<flash.geom.Point>;
@:require(flash10) flash.display.BitmapData.setVector
@:require(flash10) flash.display.BitmapData.getVector
@:require(flash10) flash.display.BitmapData.histogram

@:require(flash10_1) flash.display.Loader.uncaughtErrorEvents;
@:require(flash10_1) flash.display.LoaderInfo.isURLInaccessible;
@:require(flash10_1) flash.display.LoaderInfo.uncaughtErrorEvents;

@:require(flash10_1) flash.display.ColorCorrection
@:require(flash10_1) flash.display.ColorCorrectionSupport
@:require(flash10_1) flash.display.FocusDirection
@:require(flash10_1) flash.display.NativeMenu
@:require(flash10_1) flash.display.NativeMenuItem

@:require(flash10) flash.display.DisplayObject.blendShader
@:require(flash10) flash.display.DisplayObject.rotationX
@:require(flash10) flash.display.DisplayObject.rotationY
@:require(flash10) flash.display.DisplayObject.rotationZ
@:require(flash10) flash.display.DisplayObject.scaleZ
@:require(flash10) flash.display.DisplayObject.z
@:require(flash10) flash.display.DisplayObject.globalToLocal3D
@:require(flash10) flash.display.DisplayObject.local3DToGlobal
-flash.display.DisplayObject.new
flash.display.DisplayObject.blendMode : BlendMode;
flash.display.DisplayObject.opaqueBackground : Null<UInt>;
flash.display.DisplayObjectContainer.getObjectsUnderPoint : Array<DisplayObject>;

@:require(flash10_1) flash.display.Sprite.startTouchDrag;
@:require(flash10_1) flash.display.Sprite.stopTouchDrag;

@:require(flash10_1) flash.display.Stage.wmodeGPU;

enum flash.display.GradientType;
enum flash.display.CapsStyle;
enum flash.display.JointStyle;
enum flash.display.GraphicsPathWinding;
enum flash.display.TriangleCulling;
enum flash.display.InterpolationMethod;
enum flash.display.LineScaleMode;
enum flash.display.ShaderParameterType;
enum flash.display.ShaderPrecision;
enum flash.display.SpreadMethod;
enum flash.display.StageAlign;
enum flash.display.StageDisplayState;
enum flash.display.StageQuality;
enum flash.display.StageScaleMode;
-flash.display.SWFVersion.new

flash.display.Graphics.$type : GradientType;
flash.display.Graphics.$colors : Array<UInt>;
flash.display.Graphics.$spreadMethod : SpreadMethod;
flash.display.Graphics.$interpolationMethod : InterpolationMethod;
flash.display.Graphics.$scaleMode : LineScaleMode;
flash.display.Graphics.$caps : CapsStyle;
flash.display.Graphics.$joints : JointStyle;
flash.display.Graphics.$winding : GraphicsPathWinding;
flash.display.Graphics.$culling : TriangleCulling;
@:require(flash10) flash.display.Graphics.beginShaderFill
@:require(flash10) flash.display.Graphics.copyFrom
@:require(flash10) flash.display.Graphics.drawGraphicsData
@:require(flash10) flash.display.Graphics.drawPath
@:require(flash10) flash.display.Graphics.drawTriangles
@:require(flash10) flash.display.Graphics.lineBitmapStyle
@:require(flash10) flash.display.Graphics.lineShaderStyle


flash.display.GraphicsGradientFill.type : GradientType;
flash.display.GraphicsGradientFill.colors : Array<UInt>;
flash.display.GraphicsGradientFill.spreadMethod : SpreadMethod;
flash.display.GraphicsGradientFill.interpolationMethod : InterpolationMethod;
flash.display.GraphicsGradientFill.alphas : Array<Float>;
flash.display.GraphicsGradientFill.ratios : Array<Float>;
flash.display.GraphicsGradientFill.$type : GradientType;
flash.display.GraphicsGradientFill.$colors : Array<UInt>;
flash.display.GraphicsGradientFill.$spreadMethod : SpreadMethod;
flash.display.GraphicsGradientFill.$interpolationMethod : InterpolationMethod;
flash.display.GraphicsGradientFill.$alphas : Array<Float>;
flash.display.GraphicsGradientFill.$ratios : Array<Float>;
flash.display.GraphicsGradientFill.$matrix : flash.geom.Matrix;

flash.display.GraphicsPath.winding : GraphicsPathWinding;
flash.display.GraphicsPath.$winding : GraphicsPathWinding;

flash.display.GraphicsStroke.scaleMode : LineScaleMode;
flash.display.GraphicsStroke.caps : CapsStyle;
flash.display.GraphicsStroke.joints : JointStyle;
flash.display.GraphicsStroke.$scaleMode : LineScaleMode;
flash.display.GraphicsStroke.$caps : CapsStyle;
flash.display.GraphicsStroke.$joints : JointStyle;

flash.display.GraphicsTrianglePath.culling : TriangleCulling;
flash.display.GraphicsTrianglePath.$culling : TriangleCulling;


@:require(flash10) flash.display.Loader.unloadAndStop

enum flash.display.ActionScriptVersion;
enum flash.display.ColorCorrection;
enum flash.display.ColorCorrectionSupport;

-flash.display.LoaderInfo.new
flash.display.LoaderInfo.parameters : Dynamic<String>;
flash.display.LoaderInfo.actionScriptVersion : ActionScriptVersion;

-flash.display.MorphShape.new

@:require(flash10) flash.display.MovieClip.currentFrameLabel
flash.display.MovieClip.currentLabels : Array<FrameLabel>;
flash.display.MovieClip.scenes : Array<Scene>;

flash.display.Scene.labels : Array<FrameLabel>;
flash.display.Scene.$labels : Array<FrameLabel>;

@:require(flash10) flash.display.Shader;
flash.display.Shader.precisionHint : ShaderPrecision;

-flash.display.ShaderParameter.new
flash.display.ShaderParameter.type : ShaderParameterType;

-flash.display.Stage.new
flash.display.Stage.align : StageAlign;
flash.display.Stage.quality : StageQuality;
flash.display.Stage.scaleMode : StageScaleMode;
flash.display.Stage.colorCorrection : ColorCorrection;
flash.display.Stage.colorCorrectionSupport : ColorCorrectionSupport;
flash.display.Stage.displayState : StageDisplayState;
flash.display.Stage.displayState : StageDisplayState;

@:require(flash10) flash.display.Stage.colorCorrection
@:require(flash10) flash.display.Stage.colorCorrectionSupport

@:require(flash10_1) flash.errors.DRMManagerError
@:require(flash10_1) flash.events.AccelerometerEvent
@:require(flash10_1) flash.events.DRMAuthenticateEvent
@:require(flash10_1) flash.events.DRMAuthenticationCompleteEvent
@:require(flash10_1) flash.events.DRMAuthenticationErrorEvent
@:require(flash10_1) flash.events.DRMCustomProperties
@:require(flash10_1) flash.events.DRMErrorEvent
@:require(flash10_1) flash.events.DRMStatusEvent
@:require(flash10_1) flash.events.GeolocationEvent
@:require(flash10_1) flash.events.GestureEvent
@:require(flash10_1) flash.events.GesturePhase
@:require(flash10_1) flash.events.PressAndTapGestureEvent
@:require(flash10_1) flash.events.TouchEvent
@:require(flash10_1) flash.events.TransformGestureEvent
@:require(flash10_1) flash.events.UncaughtErrorEvent;
@:require(flash10_1) flash.events.UncaughtErrorEvents;

@:require(flash10) static flash.events.Event.CLEAR;
@:require(flash10) static flash.events.Event.COPY;
@:require(flash10) static flash.events.Event.CUT;
@:require(flash10) static flash.events.Event.EXIT_FRAME;
@:require(flash10) static flash.events.Event.FRAME_CONSTRUCTED;
@:require(flash10) static flash.events.Event.PASTE;
@:require(flash10) static flash.events.Event.SELECT_ALL;

@:require(flash10) flash.events.ContextMenuEvent.isMouseTargetInaccessible
@:require(flash10) flash.events.FocusEvent.isRelatedObjectInaccessible
@:require(flash10) flash.events.MouseEvent.isRelatedObjectInaccessible

flash.events.IEventDispatcher.$listener : Dynamic -> Void;
flash.events.EventDispatcher.$listener : Dynamic -> Void;

enum flash.events.EventPhase;
enum flash.events.GesturePhase;

flash.events.Event.eventPhase : EventPhase;

flash.events.KeyboardEvent.keyLocation : flash.ui.KeyLocation;
flash.events.KeyboardEvent.$keyLocationValue : flash.ui.KeyLocation;
flash.events.KeyboardEvent.$keyLocation : flash.ui.KeyLocation;

@:require(flash10_1) flash.events.ErrorEvent.errorID;

@:require(flash10_1) flash.events.HTTPStatusEvent.responseHeaders;
@:require(flash10_1) flash.events.HTTPStatusEvent.responseURL;
@:require(flash10_1) static flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS;

@:require(flash10_1) flash.events.IMEEvent.imeClient;
@:require(flash10_1) static flash.events.IMEEvent.IME_START_COMPOSITION;

-flash.events.WeakFunctionClosure.new

-flash.external.ExternalInterface.new

enum flash.filters.BitmapFilterType;
enum flash.filters.DisplacementMapFilterMode;

flash.filters.BevelFilter.type : BitmapFilterType;
flash.filters.BevelFilter.$type : BitmapFilterType;

flash.filters.DisplacementMapFilter.mode : DisplacementMapFilterMode;
flash.filters.DisplacementMapFilter.$mode : DisplacementMapFilterMode;

flash.filters.GradientGlowFilter.type : BitmapFilterType;
flash.filters.GradientGlowFilter.$type : BitmapFilterType;

enum flash.geom.Orientation3D;

flash.geom.Matrix3D.$orientationStyle : Orientation3D;

@:require(flash10) flash.geom.Matrix3D;
@:require(flash10) flash.geom.Utils3D;
@:require(flash10) flash.geom.Vector3D;
@:require(flash10) flash.geom.PerspectiveProjection;
@:require(flash10) flash.geom.Transform.matrix3D;
@:require(flash10) flash.geom.Transform.perspectiveProjection;
@:require(flash10) flash.geom.Transform.getRelativeMatrix3D;

-flash.geom.Utils3D.new

@:require(flash10_1) static flash.media.Camera.isSupported;
@:require(flash10_1) static flash.media.Camera._scanHardware;

enum flash.media.SoundCodec;

flash.media.Microphone.codec : SoundCodec;

@:require(flash10) flash.media.Microphone.codec;
@:require(flash10) flash.media.Microphone.encodeQuality;
@:require(flash10) flash.media.Microphone.framesPerPacket;

@:require(flash10_1) flash.media.Microphone.enableVAD;
@:require(flash10_1) flash.media.Microphone.noiseSuppressionLevel;
@:require(flash10_1) static flash.media.Microphone.isSupported;

@:require(flash10) flash.media.Sound.extract;

@:require(flash10_1) flash.media.Sound.isURLInaccessible;

@:require(flash10) flash.net.FileReference.data;
@:require(flash10) flash.net.FileReference.load;
@:require(flash10) flash.net.FileReference.save;

-flash.media.SoundMixer.new

@:require(flash10_1) flash.net.LocalConnection.isPerUser;
@:require(flash10_1) static flash.net.LocalConnection.isSupported;

flash.net.FileReference.$typeFilter : Array<FileFilter>;
flash.net.FileReferenceList.fileList : Array<FileReference>;
flash.net.FileReferenceList.$typeFilter : Array<FileFilter>;

@:require(flash10_1) flash.net.GroupSpecifier;
@:require(flash10_1) flash.net.NetGroup;
@:require(flash10_1) flash.net.NetGroupInfo;
@:require(flash10_1) flash.net.NetStreamMulticastInfo;

@:require(flash10) flash.net.NetConnection.farID;
@:require(flash10) flash.net.NetConnection.farNonce;
@:require(flash10) flash.net.NetConnection.maxPeerConnections;
@:require(flash10) flash.net.NetConnection.nearID;
@:require(flash10) flash.net.NetConnection.nearNonce;
@:require(flash10) flash.net.NetConnection.protocol;
@:require(flash10) flash.net.NetConnection.unconnectedPeerStreams;

@:require(flash10) flash.net.NetStream.farID;
@:require(flash10) flash.net.NetStream.farNonce;
@:require(flash10) flash.net.NetStream.info;
@:require(flash10) flash.net.NetStream.maxPauseBufferTime;
@:require(flash10) flash.net.NetStream.nearNonce;
@:require(flash10) flash.net.NetStream.peerStreams;
@:require(flash10) flash.net.NetStream.onPeerConnect;
@:require(flash10) flash.net.NetStream.play2;
@:require(flash10) static flash.net.NetStream.CONNECT_TO_FMS;
@:require(flash10) static flash.net.NetStream.DIRECT_CONNECTIONS;

@:require(flash10_1) flash.net.NetStream.audioReliable;
@:require(flash10_1) flash.net.NetStream.audioSampleAccess;
@:require(flash10_1) flash.net.NetStream.backBufferLength;
@:require(flash10_1) flash.net.NetStream.backBufferTime;
@:require(flash10_1) flash.net.NetStream.bufferTimeMax;
@:require(flash10_1) flash.net.NetStream.dataReliable;
@:require(flash10_1) flash.net.NetStream.inBufferSeek;
@:require(flash10_1) flash.net.NetStream.multicastAvailabilitySendToAll;
@:require(flash10_1) flash.net.NetStream.multicastAvailabilityUpdatePeriod;
@:require(flash10_1) flash.net.NetStream.multicastFetchPeriod;
@:require(flash10_1) flash.net.NetStream.multicastInfo;
@:require(flash10_1) flash.net.NetStream.multicastPushNeighborLimit;
@:require(flash10_1) flash.net.NetStream.multicastRelayMarginDuration;
@:require(flash10_1) flash.net.NetStream.multicastWindowDuration;
@:require(flash10_1) flash.net.NetStream.videoReliable;
@:require(flash10_1) flash.net.NetStream.videoSampleAccess;
@:require(flash10_1) flash.net.NetStream.appendBytes;
@:require(flash10_1) flash.net.NetStream.appendBytesAction;
@:require(flash10_1) flash.net.NetStream.attach;
@:require(flash10_1) flash.net.NetStream.step;

@:require(flash10_1) flash.net.NetStreamInfo.videoLossRate;

@:require(flash10_1) flash.net.NetStreamPlayOptions.offset;

@:require(flash10_1) static flash.net.URLRequestMethod.DELETE;
@:require(flash10_1) static flash.net.URLRequestMethod.HEAD;
@:require(flash10_1) static flash.net.URLRequestMethod.OPTIONS;
@:require(flash10_1) static flash.net.URLRequestMethod.PUT;

@:require(flash10) flash.net.Socket.timeout;
@:require(flash10) flash.net.XMLSocket.timeout;

-flash.net.ObjectEncoding.new
-flash.net.URLRequestMethod.new

enum flash.net.URLLoaderDataFormat;

flash.net.Socket.endian : flash.utils.Endian;
flash.net.URLLoader.dataFormat : URLLoaderDataFormat;
flash.net.URLRequest.requestHeaders : Array<URLRequestHeader>;
flash.net.URLStream.endian : flash.utils.Endian;

enum flash.printing.PrintJobOrientation;

flash.printing.PrintJob.orientation : PrintJobOrientation;
@:require(flash10_1) static flash.printing.PrintJob.isSupported;

-flash.sampler.DeleteObjectSample.new
-flash.sampler.NewObjectSample.new
-flash.sampler.Sample.new
flash.sampler.Sample.stack : Array<StackFrame>;
-flash.sampler.StackFrame.new
@:require(flash10_1) flash.sampler.NewObjectSample.size;
@:require(flash10_1) flash.sampler.StackFrame.scriptID;

-flash.system.Capabilities.new
-flash.system.IME.new
-flash.system.FSCommand.new

enum flash.system.IMEConversionMode;

static flash.system.IME.conversionMode : IMEConversionMode

@:require(flash10) flash.system.ApplicationDomain.domainMemory;
@:require(flash10) static flash.system.ApplicationDomain.MIN_DOMAIN_MEMORY_LENGTH;

@:require(flash10) static flash.system.Capabilities.isEmbeddedInAcrobat;
@:require(flash10) static flash.system.Capabilities.maxLevelIDC;

@:require(flash10_1) static flash.system.Capabilities.cpuArchitecture;
@:require(flash10_1) static flash.system.Capabilities.supports32BitProcesses;
@:require(flash10_1) static flash.system.Capabilities.supports64BitProcesses;
@:require(flash10_1) static flash.system.Capabilities.touchscreenType;
static flash.system.Capabilities.touchscreenType : TouchscreenType;

enum flash.system.TouchscreenType;


@:require(flash10_1) static flash.system.IME.isSupported;
@:require(flash10_1) static flash.system.IME.compositionAbandoned;
@:require(flash10_1) static flash.system.IME.compositionSelectionChanged;


@:require(flash10) flash.system.JPEGLoaderContext;


@:require(flash10_1) flash.system.LoaderContext.allowCodeImport;
@:require(flash10_1) flash.system.LoaderContext.allowLoadBytesCodeExecution;

@:require(flash10_1) static flash.system.Security.APPLICATION;
@:require(flash10_1) static flash.system.Security.duplicateSandboxBridgeInputArguments;
@:require(flash10_1) static flash.system.Security.duplicateSandboxBridgeOutputArgument;

@:require(flash10_1) static flash.system.System.currentTime;
@:require(flash10_1) static flash.system.System.freeMemory;
@:require(flash10_1) static flash.system.System.preciseStartupTime;
@:require(flash10_1) static flash.system.System.privateMemory;
@:require(flash10_1) static flash.system.System.totalMemoryNumber;
@:require(flash10_1) static flash.system.System.disposeXML;
@:require(flash10_1) static flash.system.System.nativeConstructionOnly;

enum flash.system.SecurityPanel;

-flash.system.Security.new
flash.system.Security.$panel : SecurityPanel
-flash.system.SecurityDomain.new
-flash.system.System.new
flash.system.SystemUpdater.$typer : SystemAdapterType;

enum flash.text.AntiAliasType;
enum flash.text.GridFitType;
enum flash.text.FontStyle;
enum flash.text.FontType;
enum flash.text.TextDisplayMode;
enum flash.text.TextFieldType;
enum flash.text.TextFieldAutoSize;
enum flash.text.TextFormatAlign;
enum flash.text.TextFormatDisplay;
enum flash.text.TextColorType;

flash.text.Font.fontStyle : FontStyle;
flash.text.Font.fontType : FontType;
static flash.text.Font.enumerateFonts : Array<Font>;
flash.text.TextField.autoSize : TextFieldAutoSize;
flash.text.TextField.antiAliasType : AntiAliasType;
flash.text.TextField.gridFitType : GridFitType;
flash.text.TextField.type : TextFieldType;

flash.text.TextFormat.align : TextFormatAlign;
flash.text.TextFormat.blockIndent : Null<Float>
flash.text.TextFormat.bold : Null<Bool>;
flash.text.TextFormat.bullet : Null<Bool>;
flash.text.TextFormat.color : Null<UInt>;
flash.text.TextFormat.display : TextFormatDisplay;
flash.text.TextFormat.indent : Null<Float>;
flash.text.TextFormat.italic : Null<Bool>;
flash.text.TextFormat.kerning : Null<Bool>;
flash.text.TextFormat.leading : Null<Float>;
flash.text.TextFormat.leftMargin : Null<Float>;
flash.text.TextFormat.letterSpacing : Null<Float>;
flash.text.TextFormat.rightMargin : Null<Float>;
flash.text.TextFormat.size : Null<Float>;
flash.text.TextFormat.tabStops : Array<UInt>;
flash.text.TextFormat.underline : Null<Bool>;
flash.text.TextFormat.$size : Null<Float>;
flash.text.TextFormat.$color : Null<UInt>;
flash.text.TextFormat.$bold : Null<Bool>;
flash.text.TextFormat.$italic : Null<Bool>;
flash.text.TextFormat.$underline : Null<Bool>;
flash.text.TextFormat.$align : TextFormatAlign;
flash.text.TextFormat.$leftMargin : Null<Float>;
flash.text.TextFormat.$rightMargin : Null<Float>;
flash.text.TextFormat.$indent : Null<Float>;
flash.text.TextFormat.$leading : Null<Float>;

@:require(flash10) static flash.text.TextField.isFontCompatible;

-flash.text.TextRenderer.new
static flash.text.TextRenderer.antiAliasType : AntiAliasType;
static flash.text.TextRenderer.displayMode : TextDisplayMode;
flash.text.TextRenderer.$fontStyle : FontStyle;
flash.text.TextRenderer.$colorType : TextColorType;

@:require(flash10_1) static flash.text.engine.FontDescription.isDeviceFontCompatible;
@:require(flash10_1) flash.text.engine.SpaceJustifier.maximumSpacing;
@:require(flash10_1) flash.text.engine.SpaceJustifier.minimumSpacing;
@:require(flash10_1) flash.text.engine.SpaceJustifier.optimumSpacing;
@:require(flash10_1) flash.text.engine.TextBlock.recreateTextLine;
@:require(flash10_1) flash.text.engine.TextBlock.releaseLineCreationData;
@:require(flash10_1) flash.text.engine.TextLine.hasTabs;

flash.text.engine.ContentElement.textRotation : TextRotation;
flash.text.engine.ContentElement.$textRotation : TextRotation;

flash.text.engine.EastAsianJustifier.justificationStyle : JustificationStyle;
flash.text.engine.EastAsianJustifier.$justificationStyle : JustificationStyle;
flash.text.engine.EastAsianJustifier.$lineJustification : LineJustification;

enum flash.text.engine.BreakOpportunity;
enum flash.text.engine.CFFHinting;
enum flash.text.engine.DigitCase;
enum flash.text.engine.DigitWidth;
enum flash.text.engine.FontLookup;
enum flash.text.engine.FontPosture;
enum flash.text.engine.FontWeight;
enum flash.text.engine.JustificationStyle;
enum flash.text.engine.Kerning;
enum flash.text.engine.LigatureLevel;
enum flash.text.engine.LineJustification;
enum flash.text.engine.RenderingMode;
enum flash.text.engine.TabAlignment;
enum flash.text.engine.TextBaseline;
enum flash.text.engine.TextLineCreationResult;
enum flash.text.engine.TextLineValidity;
enum flash.text.engine.TextRotation;
enum flash.text.engine.TypographicCase;


flash.text.engine.ElementFormat.alignmentBaseline : TextBaseline;
flash.text.engine.ElementFormat.breakOpportunity : BreakOpportunity;
flash.text.engine.ElementFormat.digitCase : DigitCase;
flash.text.engine.ElementFormat.digitWidth : DigitWidth;
flash.text.engine.ElementFormat.dominantBaseline : TextBaseline;
flash.text.engine.ElementFormat.kerning : Kerning;
flash.text.engine.ElementFormat.ligatureLevel : LigatureLevel;
flash.text.engine.ElementFormat.textRotation : TextRotation;
flash.text.engine.ElementFormat.typographicCase : TypographicCase;
flash.text.engine.ElementFormat.$alignmentBaseline : TextBaseline;
flash.text.engine.ElementFormat.$breakOpportunity : BreakOpportunity;
flash.text.engine.ElementFormat.$digitCase : DigitCase;
flash.text.engine.ElementFormat.$digitWidth : DigitWidth;
flash.text.engine.ElementFormat.$dominantBaseline : TextBaseline;
flash.text.engine.ElementFormat.$kerning : Kerning;
flash.text.engine.ElementFormat.$ligatureLevel : LigatureLevel;
flash.text.engine.ElementFormat.$textRotation : TextRotation;
flash.text.engine.ElementFormat.$typographicCase : TypographicCase;

flash.text.engine.FontDescription.cffHinting : CFFHinting;
flash.text.engine.FontDescription.fontLookup : FontLookup;
flash.text.engine.FontDescription.fontPosture : FontPosture;
flash.text.engine.FontDescription.fontWeight : FontWeight;
flash.text.engine.FontDescription.renderingMode : RenderingMode;
flash.text.engine.FontDescription.$cffHinting : CFFHinting;
flash.text.engine.FontDescription.$fontLookup : FontLookup;
flash.text.engine.FontDescription.$fontPosture : FontPosture;
flash.text.engine.FontDescription.$fontWeight : FontWeight;
flash.text.engine.FontDescription.$renderingMode : RenderingMode;

flash.text.engine.GraphicElement.$textRotation : TextRotation;
flash.text.engine.GroupElement.$textRotation : TextRotation;
flash.text.engine.SpaceJustifier.$lineJustification : LineJustification;
flash.text.engine.TabStop.alignment : TabAlignment;
flash.text.engine.TabStop.$alignment : TabAlignment;

flash.text.engine.TextBlock.baselineZero : TextBaseline;
flash.text.engine.TextBlock.lineRotation : TextRotation;
flash.text.engine.TextBlock.textLineCreationResult : TextLineCreationResult;
flash.text.engine.TextBlock.$baselineZero : TextBaseline;
flash.text.engine.TextBlock.$lineRotation : TextRotation;
flash.text.engine.TextBlock.$textLineCreationResult : TextLineCreationResult;

flash.text.engine.TextElement.$textRotation : TextRotation;

flash.text.engine.TextJustifier.lineJustification : LineJustification;
flash.text.engine.TextJustifier.$lineJustification : LineJustification;

flash.text.engine.TextLine.baseline : TextBaseline;

-flash.trace.Trace.new

-static flash.xml.XMLList.length
-static flash.xml.XML.length
-flash.text.engine.TextElement.text

-flash.ui.Keyboard.new
-flash.ui.Mouse.new

enum flash.ui.MultitouchInputMode;

-flash.ui.Multitouch.new
flash.ui.Multitouch.inputMode : MultitouchInputMode;

@:require(flash10) flash.ui.ContextMenu.clipboardItems;
@:require(flash10) flash.ui.ContextMenu.clipboardMenu;
@:require(flash10) flash.ui.ContextMenu.link;

@:require(flash10_1) static flash.ui.ContextMenu.isSupported;

@:require(flash10) static flash.ui.Mouse.cursor;
static flash.ui.Mouse.cursor : Dynamic;

@:require(flash10_1) static flash.ui.Keyboard.A;
@:require(flash10_1) static flash.ui.Keyboard.B;
@:require(flash10_1) static flash.ui.Keyboard.C;
@:require(flash10_1) static flash.ui.Keyboard.D;
@:require(flash10_1) static flash.ui.Keyboard.E;
@:require(flash10_1) static flash.ui.Keyboard.F;
@:require(flash10_1) static flash.ui.Keyboard.G;
@:require(flash10_1) static flash.ui.Keyboard.H;
@:require(flash10_1) static flash.ui.Keyboard.I;
@:require(flash10_1) static flash.ui.Keyboard.J;
@:require(flash10_1) static flash.ui.Keyboard.K;
@:require(flash10_1) static flash.ui.Keyboard.L;
@:require(flash10_1) static flash.ui.Keyboard.M;
@:require(flash10_1) static flash.ui.Keyboard.N;
@:require(flash10_1) static flash.ui.Keyboard.O;
@:require(flash10_1) static flash.ui.Keyboard.P;
@:require(flash10_1) static flash.ui.Keyboard.Q;
@:require(flash10_1) static flash.ui.Keyboard.R;
@:require(flash10_1) static flash.ui.Keyboard.S;
@:require(flash10_1) static flash.ui.Keyboard.T;
@:require(flash10_1) static flash.ui.Keyboard.U;
@:require(flash10_1) static flash.ui.Keyboard.V;
@:require(flash10_1) static flash.ui.Keyboard.W;
@:require(flash10_1) static flash.ui.Keyboard.X;
@:require(flash10_1) static flash.ui.Keyboard.Y;
@:require(flash10_1) static flash.ui.Keyboard.Z;
@:require(flash10_1) static flash.ui.Keyboard.ALTERNATE;
@:require(flash10_1) static flash.ui.Keyboard.BACKQUOTE;
@:require(flash10_1) static flash.ui.Keyboard.BACKSLASH;
@:require(flash10_1) static flash.ui.Keyboard.COMMA;
@:require(flash10_1) static flash.ui.Keyboard.COMMAND;
@:require(flash10_1) static flash.ui.Keyboard.CharCodeStrings;
@:require(flash10_1) static flash.ui.Keyboard.EQUAL;
@:require(flash10_1) static flash.ui.Keyboard.LEFTBRACKET;
@:require(flash10_1) static flash.ui.Keyboard.MINUS;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_0;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_1;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_2;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_3;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_4;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_5;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_6;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_7;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_8;
@:require(flash10_1) static flash.ui.Keyboard.NUMBER_9;
@:require(flash10_1) static flash.ui.Keyboard.NUMPAD;
@:require(flash10_1) static flash.ui.Keyboard.PERIOD;
@:require(flash10_1) static flash.ui.Keyboard.QUOTE;
@:require(flash10_1) static flash.ui.Keyboard.RIGHTBRACKET;
@:require(flash10_1) static flash.ui.Keyboard.SEMICOLON;
@:require(flash10_1) static flash.ui.Keyboard.SLASH;
@:require(flash10_1) static flash.ui.Keyboard.hasVirtualKeyboard;
@:require(flash10_1) static flash.ui.Keyboard.physicalKeyboardType;

enum flash.ui.KeyboardType;
enum flash.ui.KeyLocation;

static flash.ui.Keyboard.physicalKeyboardType : KeyboardType;

@:require(flash10_1) flash.ui.Multitouch;
static flash.ui.Multitouch.inputMode : MultitouchInputMode;
@:require(flash10_1) flash.ui.MultitouchInputMode;

@:require(flash10_1) static flash.ui.Keyboard.STRING_BEGIN;
@:require(flash10_1) static flash.ui.Keyboard.STRING_BREAK;
@:require(flash10_1) static flash.ui.Keyboard.STRING_CLEARDISPLAY;
@:require(flash10_1) static flash.ui.Keyboard.STRING_CLEARLINE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_DELETE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_DELETECHAR;
@:require(flash10_1) static flash.ui.Keyboard.STRING_DELETELINE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_DOWNARROW;
@:require(flash10_1) static flash.ui.Keyboard.STRING_END;
@:require(flash10_1) static flash.ui.Keyboard.STRING_EXECUTE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F1;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F10;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F11;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F12;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F13;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F14;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F15;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F16;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F17;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F18;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F19;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F2;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F20;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F21;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F22;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F23;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F24;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F25;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F26;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F27;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F28;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F29;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F3;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F30;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F31;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F32;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F33;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F34;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F35;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F4;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F5;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F6;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F7;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F8;
@:require(flash10_1) static flash.ui.Keyboard.STRING_F9;
@:require(flash10_1) static flash.ui.Keyboard.STRING_FIND;
@:require(flash10_1) static flash.ui.Keyboard.STRING_HELP;
@:require(flash10_1) static flash.ui.Keyboard.STRING_HOME;
@:require(flash10_1) static flash.ui.Keyboard.STRING_INSERT;
@:require(flash10_1) static flash.ui.Keyboard.STRING_INSERTCHAR;
@:require(flash10_1) static flash.ui.Keyboard.STRING_INSERTLINE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_LEFTARROW;
@:require(flash10_1) static flash.ui.Keyboard.STRING_MENU;
@:require(flash10_1) static flash.ui.Keyboard.STRING_MODESWITCH;
@:require(flash10_1) static flash.ui.Keyboard.STRING_NEXT;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PAGEDOWN;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PAGEUP;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PAUSE;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PREV;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PRINT;
@:require(flash10_1) static flash.ui.Keyboard.STRING_PRINTSCREEN;
@:require(flash10_1) static flash.ui.Keyboard.STRING_REDO;
@:require(flash10_1) static flash.ui.Keyboard.STRING_RESET;
@:require(flash10_1) static flash.ui.Keyboard.STRING_RIGHTARROW;
@:require(flash10_1) static flash.ui.Keyboard.STRING_SCROLLLOCK;
@:require(flash10_1) static flash.ui.Keyboard.STRING_SELECT;
@:require(flash10_1) static flash.ui.Keyboard.STRING_STOP;
@:require(flash10_1) static flash.ui.Keyboard.STRING_SYSREQ;
@:require(flash10_1) static flash.ui.Keyboard.STRING_SYSTEM;
@:require(flash10_1) static flash.ui.Keyboard.STRING_UNDO;
@:require(flash10_1) static flash.ui.Keyboard.STRING_UPARROW;
@:require(flash10_1) static flash.ui.Keyboard.STRING_USER;

@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_BEGIN;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_BREAK;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_CLEARDISPLAY;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_CLEARLINE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_DELETE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_DELETECHAR;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_DELETELINE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_DOWNARROW;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_END;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_EXECUTE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F1;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F10;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F11;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F12;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F13;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F14;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F15;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F16;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F17;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F18;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F19;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F2;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F20;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F21;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F22;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F23;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F24;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F25;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F26;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F27;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F28;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F29;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F3;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F30;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F31;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F32;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F33;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F34;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F35;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F4;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F5;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F6;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F7;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F8;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_F9;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_FIND;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_HELP;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_HOME;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_INSERT;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_INSERTCHAR;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_INSERTLINE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_LEFTARROW;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_MENU;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_MODESWITCH;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_NEXT;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PAGEDOWN;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PAGEUP;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PAUSE;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PREV;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PRINT;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_PRINTSCREEN;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_REDO;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_RESET;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_RIGHTARROW;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_SCROLLLOCK;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_SELECT;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_STOP;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_SYSREQ;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_SYSTEM;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_UNDO;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_UPARROW;
@:require(flash10_1) static flash.ui.Keyboard.KEYNAME_USER;

@:require(flash10_1) static flash.ui.Mouse.supportsCursor;

enum flash.utils.Endian;

@:native("RegExp") flash.utils.RegExp;
-static flash.utils.RegExp.length;

flash.utils.ObjectInput.endian : Endian;
flash.utils.ObjectOutput.endian : Endian;
flash.utils.ByteArray.endian : Endian;
flash.utils.IDataInput.endian : Endian;
flash.utils.IDataOutput.endian : Endian;

@:require(flash10) flash.utils.ByteArray.clear;
@:require(flash10) flash.utils.ByteArray.deflate;
@:require(flash10) flash.utils.ByteArray.inflate;

@:require(flash10) flash.utils.SetIntervalTimer.clearArrayEntry;

-flash.utils.Namespace.toString
-flash.utils.Namespace.valueOf
-static flash.utils.Namespace.length

-flash.utils.QName.toString
-flash.utils.QName.valueOf
-static flash.utils.QName.length

enum flash.xml.XMLNodeType;

flash.xml.XMLNode.nodeType : XMLNodeType;
flash.xml.XMLNode.$type : XMLNodeType;

flash.xml.XML.namespace : flash.utils.Namespace;
flash.xml.XML.parent : XML;
flash.xml.XMLList.namespace : flash.utils.Namespace;
flash.xml.XMLList.parent : XML;
flash.xml.XMLTag.type : XMLNodeType;


enum flash.system.SystemUpdaterType;

@:require(flash10_1) flash.system.SystemUpdater;
flash.system.SystemUpdater.$type : SystemUpdaterType;

@:require(flash10_1) flash.sensors.Accelerometer;
@:require(flash10_1) flash.sensors.Geolocation;

@:require(flash10_1) flash.globalization.Collator;
@:require(flash10_1) flash.globalization.CurrencyFormatter;
@:require(flash10_1) flash.globalization.DateTimeFormatter;
@:require(flash10_1) flash.globalization.LocaleID;
@:require(flash10_1) flash.globalization.StringTools;
@:require(flash10_1) flash.globalization.NumberFormatter;
@:require(flash10_1) flash.globalization.NumberParseResult;

enum flash.globalization.CollatorMode;
enum flash.globalization.DateTimeNameContext;
enum flash.globalization.DateTimeNameStyle;
enum flash.globalization.DateTimeStyle;
enum flash.globalization.LastOperationStatus;
enum flash.globalization.NationalDigitsType;

flash.globalization.Collator.lastOperationStatus : LastOperationStatus;
flash.globalization.Collator.$initialMode : CollatorMode;
flash.globalization.CurrencyFormatter.lastOperationStatus : LastOperationStatus;

flash.globalization.DateTimeFormatter.lastOperationStatus : LastOperationStatus;
flash.globalization.DateTimeFormatter.$dateStyle : DateTimeStyle;
flash.globalization.DateTimeFormatter.$nameStyle : DateTimeNameStyle;
flash.globalization.DateTimeFormatter.$timeStyle : DateTimeStyle;
flash.globalization.DateTimeFormatter.$context : DateTimeNameContext;
flash.globalization.DateTimeFormatter.getDateStyle : DateTimeStyle;
flash.globalization.DateTimeFormatter.getTimeStyle : DateTimeStyle;
flash.globalization.DateTimeFormatter.getDateTimePattern : DateTimeStyle;
flash.globalization.LocaleID.lastOperationStatus : LastOperationStatus;
flash.globalization.NumberFormatter.lastOperationStatus : LastOperationStatus;
flash.globalization.NumberFormatter.digitsType : NationalDigitsType;
flash.globalization.StringTools.lastOperationStatus : LastOperationStatus;

// FP 10.2

@:require(flash10_2) flash.ui.MouseCursorData;
@:require(flash10_2) flash.events.StageVideoEvent;
@:require(flash10_2) flash.events.VideoEvent;
@:require(flash10_2) flash.media.MicrophoneEnhancedMode;
@:require(flash10_2) flash.media.MicrophoneEnhancedOptions;
@:require(flash10_2) flash.media.StageVideo;

@:require(flash10_2) flash.display.Stage.color;
@:require(flash10_2) flash.display.Stage.stageVideos;

@:require(flash10_2) flash.media.Microphone.enhancedOptions;
@:require(flash10_2) static flash.media.Microphone.getEnhancedMicrophone;

@:require(flash10_2) flash.system.Capabilities.allowsFullScreen;

@:require(flash10_2) static flash.ui.Keyboard.AUDIO;
@:require(flash10_2) static flash.ui.Keyboard.BACK;
@:require(flash10_2) static flash.ui.Keyboard.BLUE;
@:require(flash10_2) static flash.ui.Keyboard.CHANNEL_DOWN;
@:require(flash10_2) static flash.ui.Keyboard.CHANNEL_UP;
@:require(flash10_2) static flash.ui.Keyboard.DVR;
@:require(flash10_2) static flash.ui.Keyboard.EXIT;
@:require(flash10_2) static flash.ui.Keyboard.FAST_FORWARD;
@:require(flash10_2) static flash.ui.Keyboard.GREEN;
@:require(flash10_2) static flash.ui.Keyboard.GUIDE;
@:require(flash10_2) static flash.ui.Keyboard.HELP;
@:require(flash10_2) static flash.ui.Keyboard.INFO;
@:require(flash10_2) static flash.ui.Keyboard.INPUT;
@:require(flash10_2) static flash.ui.Keyboard.LAST;
@:require(flash10_2) static flash.ui.Keyboard.LIVE;
@:require(flash10_2) static flash.ui.Keyboard.MASTER_SHELL;
@:require(flash10_2) static flash.ui.Keyboard.MENU;
@:require(flash10_2) static flash.ui.Keyboard.NEXT;
@:require(flash10_2) static flash.ui.Keyboard.PAUSE;
@:require(flash10_2) static flash.ui.Keyboard.PLAY;
@:require(flash10_2) static flash.ui.Keyboard.PREVIOUS;
@:require(flash10_2) static flash.ui.Keyboard.RECORD;
@:require(flash10_2) static flash.ui.Keyboard.RED;
@:require(flash10_2) static flash.ui.Keyboard.REWIND;
@:require(flash10_2) static flash.ui.Keyboard.SEARCH;
@:require(flash10_2) static flash.ui.Keyboard.SETUP;
@:require(flash10_2) static flash.ui.Keyboard.SKIP_BACKWARD;
@:require(flash10_2) static flash.ui.Keyboard.SKIP_FORWARD;
@:require(flash10_2) static flash.ui.Keyboard.STOP;
@:require(flash10_2) static flash.ui.Keyboard.SUBTITLE;
@:require(flash10_2) static flash.ui.Keyboard.VOD;
@:require(flash10_2) static flash.ui.Keyboard.YELLOW;

@:require(flash10_2) static flash.ui.Mouse.registerCursor;

enum flash.media.MicrophoneEnhancedMode;

flash.media.MicrophoneEnhancedOptions.mode : MicrophoneEnhancedMode;

enum flash.display.FocusDirection;


// FLASH 11 FEATURES

-flash.automation.Configuration.new

@:require(flash11) flash.display.DisplayObjectContainer.removeChildren;
@:require(flash11) flash.display.Graphics.cubicCurveTo;
@:require(flash11) flash.display.GraphicsPath.cubicCurveTo;

@:require(flash11) flash.display.InteractiveObject.needsSoftKeyboard;
@:require(flash11) flash.display.InteractiveObject.softKeyboardInputAreaOfInterest;
@:require(flash11) flash.display.InteractiveObject.requestSoftKeyboard;

@:require(flash11) flash.display.MovieClip.isPlaying;

@:require(flash11) flash.display.Stage.displayContextInfo;
@:require(flash11) flash.display.Stage.softKeyboardRect;
@:require(flash11) flash.display.Stage.stage3Ds;
@:require(flash11) flash.display.Stage3D;

-flash.display.Stage.constructor;
-flash.display.Stage.hasOwnProperty;
-flash.display.Stage.isPrototypeOf;
-flash.display.Stage.propertyIsEnumerable;
-flash.display.Stage.setPropertyIsEnumerable;
-flash.display.Stage.toLocaleString;
-flash.display.Stage.valueOf;

enum flash.display3D.Context3DBlendFactor;
enum flash.display3D.;

@:require(flash11) static flash.events.Event.CONTEXT3D_CREATE;
@:require(flash11) static flash.events.Event.TEXT_INTERACTION_MODE_CHANGE;

@:require(flash11) static flash.events.StageVideoEvent.RENDER_STATUS_AVAILABLE;
@:require(flash11) static flash.events.StageVideoEvent.STAGE_VIDEO_STATE;

@:require(flash11) flash.geom.Matrix3D.copyColumnFrom;
@:require(flash11) flash.geom.Matrix3D.copyColumnTo;
@:require(flash11) flash.geom.Matrix3D.copyFrom;
@:require(flash11) flash.geom.Matrix3D.copyRawDataFrom;
@:require(flash11) flash.geom.Matrix3D.copyRawDataTo;
@:require(flash11) flash.geom.Matrix3D.copyRowFrom;
@:require(flash11) flash.geom.Matrix3D.copyRowTo;
@:require(flash11) flash.geom.Matrix3D.copyToMatrix3D;

@:require(flash11) flash.geom.Matrix.copyColumnFrom;
@:require(flash11) flash.geom.Matrix.copyColumnTo;
@:require(flash11) flash.geom.Matrix.copyFrom;
@:require(flash11) flash.geom.Matrix.copyRowFrom;
@:require(flash11) flash.geom.Matrix.copyRowTo;
@:require(flash11) flash.geom.Matrix.setTo;

@:require(flash11) flash.geom.Point.copyFrom;
@:require(flash11) flash.geom.Point.setTo;

@:require(flash11) flash.geom.Rectangle.copyFrom;
@:require(flash11) flash.geom.Rectangle.setTo;

@:require(flash11) flash.geom.Vector3D.copyFrom;
@:require(flash11) flash.geom.Vector3D.setTo;



@:require(flash11) flash.media.Sound.loadCompressedDataFromByteArray;
@:require(flash11) flash.media.Sound.loadPCMFromByteArray;

@:require(flash11) flash.net.Socket.bytesPending;

-flash.display3D.Context3DClearMask.new;
enum flash.display3D.Context3DCompareMode;
enum flash.display3D.Context3DProgramType;
enum flash.display3D.Context3DRenderMode;
enum flash.display3D.Context3DStencilAction;
enum flash.display3D.Context3DTextureFormat;
enum flash.display3D.Context3DTriangleFace;
enum flash.display3D.Context3DVertexBufferFormat;

-flash.display.Stage3D.new;
-flash.display3D.Context3D.new;
-flash.display3D.IndexBuffer3D.new;
-flash.display3D.Program3D.new;
-flash.display3D.VertexBuffer3D.new;
-flash.display3D.textures.CubeTexture.new;
-flash.display3D.textures.TextureBase.new;
-flash.display3D.textures.Texture.new;

flash.display3D.Context3D.$sourceFactor : Context3DBlendFactor;
flash.display3D.Context3D.$destinationFactor : Context3DBlendFactor;
flash.display3D.Context3D.$format : Context3DTextureFormat;
flash.display3D.Context3D.$triangleFaceToCull : Context3DTriangleFace;
flash.display3D.Context3D.$triangleFace : Context3DTriangleFace;
flash.display3D.Context3D.$passCompareMode : Context3DCompareMode;
flash.display3D.Context3D.$compareMode : Context3DCompareMode;
flash.display3D.Context3D.$programType : Context3DProgramType;
flash.display3D.Context3D.$actionOnBothPass : Context3DStencilAction;
flash.display3D.Context3D.$actionOnDepthFail : Context3DStencilAction;
flash.display3D.Context3D.$actionOnDepthPassStencilFail : Context3DStencilAction;
flash.display3D.Context3D.$setVertexBufferAt__format : Context3DVertexBufferFormat;

@:require(flash11) flash.net.NetStream.useHardwareDecoder;
@:require(flash11) flash.net.NetStream.videoStreamSettings;

@:require(flash11) flash.net.SecureSocket;
@:require(flash11) flash.net.NetMonitor;

@:require(flash11) static flash.system.Capabilities.hasMultiChannelAudio;

@:require(flash11) flash.system.LoaderContext.imageDecodingPolicy;
@:require(flash11) flash.system.LoaderContext.parameters;
@:require(flash11) flash.system.LoaderContext.requestedContentParent;

enum flash.system.ImageDecodingPolicy;

flash.system.LoaderContext.imageDecodingPolicy : ImageDecodingPolicy;

@:require(flash11) static flash.system.Security.pageDomain;

@:require(flash11) static flash.system.System.processCPUUsage;
@:require(flash11) static flash.system.System.pauseForGCIfCollectionImminent;

@:require(flash11) static flash.ui.Mouse.supportsNativeCursor;
@:require(flash11) static flash.ui.Mouse.unregisterCursor;

-flash.ui.MouseCursor.new;

@:require(flash11) flash.utils.CompressionAlgorithm;
enum flash.utils.CompressionAlgorithm;

@:require(flash11) flash.xml.XML.toJSON;
@:require(flash11) flash.xml.XMLList.toJSON;

flash.utils.ByteArray.$algorithm : CompressionAlgorithm;

@:require(flash11) flash.text.TextField.textInteractionMode;

enum flash.text.TextInteractionMode;

flash.text.TextField.textInteractionMode : TextInteractionMode;

// 11.2

enum flash.display.BitmapCompressColorSpace;

@:require(flash11_2) flash.display.BitmapData.compress;
@:require(flash11_2) flash.media.Camera.position;
@:require(flash11_2) flash.net.NetStream.dispose;

@:require(flash11_2) flash.display.StageWorker;
@:require(flash11_2) flash.display.Worker;
@:require(flash11_8) flash.events.GameInputEvent;
@:require(flash11_2) flash.events.ThrottleEvent;

flash.events.ThrottleEvent.$type : ThrottleType;

enum flash.events.ThrottleType;

@:require(flash11_8) flash.ui.GameInput;
@:require(flash11_8) flash.ui.GameInputDevice;
-flash.ui.GameInput.new;

@:require(flash11_2) flash.utils.Telemetry;

enum flash.ui.GameInputFinger;
enum flash.ui.GameInputHand;
enum flash.ui.GameInputControlType;

flash.ui.GameInputControl.finger : flash.ui.GameInputFinger;
flash.ui.GameInputControl.hand : flash.ui.GameInputHand;
flash.ui.GameInputControl.type : flash.ui.GameInputControlType;


// 11.2

@:require(flash11_2) flash.display3D.Context3D.setProgramConstantsFromByteArray
@:require(flash11_2) flash.display.Stage.mouseLock;

@:require(flash11_2) flash.events.MouseEvent.movementX;
@:require(flash11_2) flash.events.MouseEvent.movementY;

@:require(flash11_2) static flash.events.MouseEvent.CONTEXT_MENU;
@:require(flash11_2) static flash.events.MouseEvent.MIDDLE_CLICK;
@:require(flash11_2) static flash.events.MouseEvent.MIDDLE_MOUSE_DOWN;
@:require(flash11_2) static flash.events.MouseEvent.MIDDLE_MOUSE_UP;
@:require(flash11_2) static flash.events.MouseEvent.RIGHT_CLICK;
@:require(flash11_2) static flash.events.MouseEvent.RIGHT_MOUSE_DOWN;
@:require(flash11_2) static flash.events.MouseEvent.RIGHT_MOUSE_UP;


// 11.3

@:require(flash11_3) flash.display.BitmapData.drawWithQuality

flash.display.BitmapData.$quality : StageQuality;

enum flash.display.BitmapEncodingColorSpace;

flash.display.JPEGXREncoderOptions.$colorSpace : BitmapEncodingColorSpace;
flash.display.JPEGXREncoderOptions.colorSpace : BitmapEncodingColorSpace;

@:require(flash11_3) flash.display.BitmapData.encode
@:require(flash11_3) flash.display.Stage.allowsFullScreenInteractive

@:require(flash11_3) static flash.events.Event.FRAME_LABEL;
@:require(flash11_3) static flash.events.Event.SUSPEND;

@:require(flash11_3) static flash.events.FullScreenEvent.FULL_SCREEN_INTERACTIVE_ACCEPTED;
@:require(flash11_3) flash.events.FullScreenEvent.interactive;

@:require(flash11_3) static flash.events.MouseEvent.RELEASE_OUTSIDE;

@:require(flash11_3) flash.net.NetStream.useJitterBuffer;

@:require(flash11_3) flash.system.ApplicationDomain.getQualifiedDefinitionNames;

@:require(flash11_3) flash.system.SecurityDomain.domainID;

@:require(flash11_3) flash.system.ApplicationInstaller;
@:require(flash11_3) flash.system.AuthorizedFeatures;
@:require(flash11_3) flash.system.AuthorizedFeaturesLoader;

@:require(flash11_3) static flash.events.Event.TEXTURE_READY;


// 11.4

@:require(flash11_4) flash.display.BitmapData.copyPixelsToByteArray;

@:require(flash11_4) flash.concurrent.Mutex;
@:require(flash11_4) flash.concurrent.Condition;

enum flash.display3D.Context3DProfile;

flash.display.Stage3D.$profile : flash.display3D.Context3DProfile;

@:require(flash11_4) flash.display.LoaderInfo.childSandboxBridge;
@:require(flash11_4) flash.display.LoaderInfo.parentSandboxBridge;

@:require(flash11_4) flash.display.Stage.contentsScaleFactor;


@:require(flash11_4) flash.media.Camera.copyToByteArray;
@:require(flash11_4) flash.media.Camera.copyToVector;
@:require(flash11_4) flash.media.Camera.drawToBitmapData;
@:require(flash11_4) flash.media.StageVideo.attachCamera;

@:require(flash11_4) flash.net.URLStream.diskCacheEnabled;
@:require(flash11_4) flash.net.URLStream.length;
@:require(flash11_4) flash.net.URLStream.position;
@:require(flash11_4) flash.net.URLStream.stop;

@:require(flash11_4) flash.system.AuthorizedFeatures.enableDiskCache;
@:require(flash11_4) flash.system.AuthorizedFeatures.isFeatureEnabled;
@:require(flash11_4) flash.system.AuthorizedFeatures.isNegativeToken;
@:require(flash11_4) flash.system.AuthorizedFeaturesLoader.makeGlobal;

@:require(flash11_4) flash.utils.ByteArray.shareable;
@:require(flash11_4) flash.utils.ByteArray.atomicCompareAndSwapIntAt;
@:require(flash11_4) flash.utils.ByteArray.atomicCompareAndSwapLength;

//not supported @:require(flash11_4) flash.utils.CompressionAlgorithm.LZMA;

@:require(flash11_4) flash.system.Worker;
@:require(flash11_4) flash.system.WorkerDomain;

@:require(flash11_4) flash.system.MessageChannel;

-flash.system.Worker.new;
-flash.system.MessageChannel.new;

flash.system.Worker.state : WorkerState;
flash.system.MessageChannel.state : MessageChannelState;

enum flash.system.WorkerState;
enum flash.system.MessageChannelState;


// ---  11.6 API

enum flash.display3D.Context3DMipFilter
enum flash.display3D.Context3DTextureFilter
enum flash.display3D.Context3DWrapMode
enum flash.system.ApplicationInstallerMode

@:require(flash11_6) flash.display3D.Context3D.setSamplerStateAt
flash.display3D.Context3D.$wrap : Context3DWrapMode;
flash.display3D.Context3D.$filter : Context3DTextureFilter;
flash.display3D.Context3D.$mipfilter : Context3DMipFilter;

-flash.display.DisplayObject.metaData

@:require(flash11_6) flash.display.Graphics.readGraphicsData

@:require(flash11_7) flash.media.StageVideo.attachAVStream;
@:require(flash11_7) static flash.net.SharedObject.preventBackup;
@:require(flash11_7) flash.system.AuthorizedFeatures.enableHLSPlayback;
@:require(flash11_7) flash.system.AuthorizedFeaturesLoader.loadAuthorizedFeaturesFromData;

// requires com.adobe.tvsdk.mediacore.MediaPlayer which we don't include
flash.system.AuthorizedFeatures.$enableMediaPlayerHLSPlayback__player : Dynamic;

@:require(flash11_8) flash.display.DisplayObjectContainer.stopAllMovieClips
@:require(flash11_8) flash.display3D.Context3D.createRectangleTexture

@:require(flash12) flash.display.Stage3D.requestContext3DMatchingProfiles
@:require(flash12) flash.display3D.Context3D.profile

flash.display3D.Context3D.$bufferUsage : Context3DBufferUsage
enum flash.display3D.Context3DBufferUsage

@:native("flash.profiler.Telemetry") flash.utils.Telemetry

@:require(flash12) flash.display3D.Context3DBufferUsage


