declare module "windows.ui.xaml" {
  export class Rect {
    constructor();
  }

  export class Color {
    constructor();
  }

  export class Point {
    constructor();
  }

  export class Size {
    constructor();
  }

  export class Vector3 {
    x: Number;
    y: Number;
    z: Number;
    constructor();
  }

  export class Vector2 {
    x: Number;
    y: Number;
    constructor();
  }

  export class Matrix4x4 {
    m11: Number;
    m12: Number;
    m13: Number;
    m14: Number;
    m21: Number;
    m22: Number;
    m23: Number;
    m24: Number;
    m31: Number;
    m32: Number;
    m33: Number;
    m34: Number;
    m41: Number;
    m42: Number;
    m43: Number;
    m44: Number;
    constructor();
  }

  export enum ApplicationHighContrastAdjustment {
    none,
    auto,
  }

  export enum ApplicationRequiresPointerMode {
    auto,
    whenRequested,
  }

  export enum ApplicationTheme {
    light,
    dark,
  }

  export enum AutomationTextAttributesEnum {
    animationStyleAttribute,
    backgroundColorAttribute,
    bulletStyleAttribute,
    capStyleAttribute,
    cultureAttribute,
    fontNameAttribute,
    fontSizeAttribute,
    fontWeightAttribute,
    foregroundColorAttribute,
    horizontalTextAlignmentAttribute,
    indentationFirstLineAttribute,
    indentationLeadingAttribute,
    indentationTrailingAttribute,
    isHiddenAttribute,
    isItalicAttribute,
    isReadOnlyAttribute,
    isSubscriptAttribute,
    isSuperscriptAttribute,
    marginBottomAttribute,
    marginLeadingAttribute,
    marginTopAttribute,
    marginTrailingAttribute,
    outlineStylesAttribute,
    overlineColorAttribute,
    overlineStyleAttribute,
    strikethroughColorAttribute,
    strikethroughStyleAttribute,
    tabsAttribute,
    textFlowDirectionsAttribute,
    underlineColorAttribute,
    underlineStyleAttribute,
    annotationTypesAttribute,
    annotationObjectsAttribute,
    styleNameAttribute,
    styleIdAttribute,
    linkAttribute,
    isActiveAttribute,
    selectionActiveEndAttribute,
    caretPositionAttribute,
    caretBidiModeAttribute,
  }

  export enum ElementHighContrastAdjustment {
    none,
    application,
    auto,
  }

  export enum ElementSoundKind {
    focus,
    invoke,
    show,
    hide,
    movePrevious,
    moveNext,
    goBack,
  }

  export enum ElementSoundMode {
    default,
    focusOnly,
    off,
  }

  export enum ElementSoundPlayerState {
    auto,
    off,
    on,
  }

  export enum ElementSpatialAudioMode {
    auto,
    off,
    on,
  }

  export enum ElementTheme {
    default,
    light,
    dark,
  }

  export enum FlowDirection {
    leftToRight,
    rightToLeft,
  }

  export enum FocusState {
    unfocused,
    pointer,
    keyboard,
    programmatic,
  }

  export enum FocusVisualKind {
    dottedLine,
    highVisibility,
    reveal,
  }

  export enum FontCapitals {
    normal,
    allSmallCaps,
    smallCaps,
    allPetiteCaps,
    petiteCaps,
    unicase,
    titling,
  }

  export enum FontEastAsianLanguage {
    normal,
    hojoKanji,
    jis04,
    jis78,
    jis83,
    jis90,
    nlcKanji,
    simplified,
    traditional,
    traditionalNames,
  }

  export enum FontEastAsianWidths {
    normal,
    full,
    half,
    proportional,
    quarter,
    third,
  }

  export enum FontFraction {
    normal,
    stacked,
    slashed,
  }

  export enum FontNumeralAlignment {
    normal,
    proportional,
    tabular,
  }

  export enum FontNumeralStyle {
    normal,
    lining,
    oldStyle,
  }

  export enum FontVariants {
    normal,
    superscript,
    subscript,
    ordinal,
    inferior,
    ruby,
  }

  export enum HorizontalAlignment {
    left,
    center,
    right,
    stretch,
  }

  export enum LineStackingStrategy {
    maxHeight,
    blockLineHeight,
    baselineToBaseline,
  }

  export enum OpticalMarginAlignment {
    none,
    trimSideBearings,
  }

  export enum TextAlignment {
    center,
    left,
    start,
    right,
    end,
    justify,
    detectFromContent,
  }

  export enum TextLineBounds {
    full,
    trimToCapHeight,
    trimToBaseline,
    tight,
  }

  export enum TextReadingOrder {
    default,
    useFlowDirection,
    detectFromContent,
  }

  export enum TextTrimming {
    none,
    characterEllipsis,
    wordEllipsis,
    clip,
  }

  export enum TextWrapping {
    noWrap,
    wrap,
    wrapWholeWords,
  }

  export enum Vector3TransitionComponents {
    x,
    y,
    z,
  }

  export enum VerticalAlignment {
    top,
    center,
    bottom,
    stretch,
  }

  export enum Visibility {
    visible,
    collapsed,
  }

  export class DependencyObject {
    dispatcher: Object;
    constructor();

    getValue(dp: DependencyProperty): Object;

    setValue(dp: DependencyProperty, value: Object): void;

    clearValue(dp: DependencyProperty): void;

    readLocalValue(dp: DependencyProperty): Object;

    getAnimationBaseValue(dp: DependencyProperty): Object;

    registerPropertyChangedCallback(dp: DependencyProperty, callback: Object): Number;

    unregisterPropertyChangedCallback(dp: DependencyProperty, token: Number): void;

  }

  export class StateTriggerBase {
    dispatcher: Object;
    constructor();

    setActive(IsActive: Boolean): void;

  }

  export class AdaptiveTrigger {
    static minWindowHeightProperty: DependencyProperty;
    static minWindowWidthProperty: DependencyProperty;
    minWindowWidth: Number;
    minWindowHeight: Number;
    dispatcher: Object;
    constructor();

  }

  export class Application {
    static current: Application;
    resources: ResourceDictionary;
    requestedTheme: ApplicationTheme;
    debugSettings: DebugSettings;
    requiresPointerMode: ApplicationRequiresPointerMode;
    focusVisualKind: FocusVisualKind;
    highContrastAdjustment: ApplicationHighContrastAdjustment;
    constructor();

    static start(callback: Object): void;


    static loadComponent(component: Object, resourceLocator: Object): void;
    static loadComponent(component: Object, resourceLocator: Object, componentResourceLocation: Number): void;


    exit(): void;

    onActivated(args: Object): void;

    onLaunched(args: Object): void;

    onFileActivated(args: Object): void;

    onSearchActivated(args: Object): void;

    onShareTargetActivated(args: Object): void;

    onFileOpenPickerActivated(args: Object): void;

    onFileSavePickerActivated(args: Object): void;

    onCachedFileUpdaterActivated(args: Object): void;

    onWindowCreated(args: WindowCreatedEventArgs): void;

    onBackgroundActivated(args: Object): void;

    addListener(type: "Resuming", listener: (ev: Event) => void): void ;
    removeListener(type: "Resuming", listener: (ev: Event) => void): void ;
    on(type: "Resuming", listener: (ev: Event) => void): void ;
    off(type: "Resuming", listener: (ev: Event) => void): void ;
    
    addListener(type: "Suspending", listener: (ev: Event) => void): void ;
    removeListener(type: "Suspending", listener: (ev: Event) => void): void ;
    on(type: "Suspending", listener: (ev: Event) => void): void ;
    off(type: "Suspending", listener: (ev: Event) => void): void ;
    
    addListener(type: "UnhandledException", listener: (ev: Event) => void): void ;
    removeListener(type: "UnhandledException", listener: (ev: Event) => void): void ;
    on(type: "UnhandledException", listener: (ev: Event) => void): void ;
    off(type: "UnhandledException", listener: (ev: Event) => void): void ;
    
    addListener(type: "EnteredBackground", listener: (ev: Event) => void): void ;
    removeListener(type: "EnteredBackground", listener: (ev: Event) => void): void ;
    on(type: "EnteredBackground", listener: (ev: Event) => void): void ;
    off(type: "EnteredBackground", listener: (ev: Event) => void): void ;
    
    addListener(type: "LeavingBackground", listener: (ev: Event) => void): void ;
    removeListener(type: "LeavingBackground", listener: (ev: Event) => void): void ;
    on(type: "LeavingBackground", listener: (ev: Event) => void): void ;
    off(type: "LeavingBackground", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class ApplicationInitializationCallbackParams {
    constructor();

  }

  export class BindingFailedEventArgs {
    message: String;
    constructor();

  }

  export class BringIntoViewOptions {
    targetRect: Object;
    animationDesired: Boolean;
    verticalOffset: Number;
    verticalAlignmentRatio: Number;
    horizontalOffset: Number;
    horizontalAlignmentRatio: Number;
    constructor();

  }

  export class RoutedEventArgs {
    originalSource: Object;
    constructor();

  }

  export class BringIntoViewRequestedEventArgs {
    verticalOffset: Number;
    targetRect: Object;
    targetElement: UIElement;
    horizontalOffset: Number;
    handled: Boolean;
    animationDesired: Boolean;
    horizontalAlignmentRatio: Number;
    verticalAlignmentRatio: Number;
    originalSource: Object;
    constructor();

  }

  export class BrushTransition {
    duration: Number;
    constructor();

  }

  export class ResourceDictionary {
    source: Object;
    mergedDictionaries: Object;
    themeDictionaries: Object;
    dispatcher: Object;
    constructor();

    lookup(key: Object): Object;

    hasKey(key: Object): Boolean;

    getView(): Object;

    insert(key: Object, value: Object): Boolean;

    remove(key: Object): void;

    clear(): void;

    first(): Object;

  }

  export class ColorPaletteResources {
    listMedium: Object;
    listLow: Object;
    errorText: Object;
    chromeWhite: Object;
    chromeMediumLow: Object;
    chromeMedium: Object;
    chromeLow: Object;
    chromeHigh: Object;
    chromeGray: Object;
    chromeDisabledLow: Object;
    chromeDisabledHigh: Object;
    chromeBlackMediumLow: Object;
    chromeBlackMedium: Object;
    chromeBlackLow: Object;
    chromeBlackHigh: Object;
    chromeAltLow: Object;
    baseMediumLow: Object;
    baseMediumHigh: Object;
    baseMedium: Object;
    baseLow: Object;
    baseHigh: Object;
    altMediumLow: Object;
    altMediumHigh: Object;
    altMedium: Object;
    altLow: Object;
    altHigh: Object;
    accent: Object;
    source: Object;
    mergedDictionaries: Object;
    themeDictionaries: Object;
    dispatcher: Object;
    constructor();

  }

  export class UIElement {
    static holdingEvent: RoutedEvent;
    static isDoubleTapEnabledProperty: DependencyProperty;
    static isHitTestVisibleProperty: DependencyProperty;
    static isHoldingEnabledProperty: DependencyProperty;
    static isRightTapEnabledProperty: DependencyProperty;
    static keyDownEvent: RoutedEvent;
    static keyUpEvent: RoutedEvent;
    static manipulationCompletedEvent: RoutedEvent;
    static manipulationDeltaEvent: RoutedEvent;
    static isTapEnabledProperty: DependencyProperty;
    static manipulationInertiaStartingEvent: RoutedEvent;
    static manipulationModeProperty: DependencyProperty;
    static manipulationStartedEvent: RoutedEvent;
    static manipulationStartingEvent: RoutedEvent;
    static opacityProperty: DependencyProperty;
    static pointerCanceledEvent: RoutedEvent;
    static pointerCaptureLostEvent: RoutedEvent;
    static pointerCapturesProperty: DependencyProperty;
    static pointerEnteredEvent: RoutedEvent;
    static pointerExitedEvent: RoutedEvent;
    static pointerMovedEvent: RoutedEvent;
    static pointerPressedEvent: RoutedEvent;
    static pointerWheelChangedEvent: RoutedEvent;
    static projectionProperty: DependencyProperty;
    static renderTransformOriginProperty: DependencyProperty;
    static renderTransformProperty: DependencyProperty;
    static rightTappedEvent: RoutedEvent;
    static dragEnterEvent: RoutedEvent;
    static tappedEvent: RoutedEvent;
    static transitionsProperty: DependencyProperty;
    static useLayoutRoundingProperty: DependencyProperty;
    static visibilityProperty: DependencyProperty;
    static allowDropProperty: DependencyProperty;
    static cacheModeProperty: DependencyProperty;
    static clipProperty: DependencyProperty;
    static doubleTappedEvent: RoutedEvent;
    static pointerReleasedEvent: RoutedEvent;
    static dragLeaveEvent: RoutedEvent;
    static dragOverEvent: RoutedEvent;
    static dropEvent: RoutedEvent;
    static shadowProperty: DependencyProperty;
    static compositeModeProperty: DependencyProperty;
    static canDragProperty: DependencyProperty;
    static transform3DProperty: DependencyProperty;
    static accessKeyProperty: DependencyProperty;
    static accessKeyScopeOwnerProperty: DependencyProperty;
    static contextFlyoutProperty: DependencyProperty;
    static isAccessKeyScopeProperty: DependencyProperty;
    static exitDisplayModeOnAccessKeyInvokedProperty: DependencyProperty;
    static highContrastAdjustmentProperty: DependencyProperty;
    static keyTipHorizontalOffsetProperty: DependencyProperty;
    static keyTipPlacementModeProperty: DependencyProperty;
    static keyTipVerticalOffsetProperty: DependencyProperty;
    static lightsProperty: DependencyProperty;
    static xYFocusDownNavigationStrategyProperty: DependencyProperty;
    static xYFocusKeyboardNavigationProperty: DependencyProperty;
    static xYFocusLeftNavigationStrategyProperty: DependencyProperty;
    static xYFocusRightNavigationStrategyProperty: DependencyProperty;
    static xYFocusUpNavigationStrategyProperty: DependencyProperty;
    static tabFocusNavigationProperty: DependencyProperty;
    static gettingFocusEvent: RoutedEvent;
    static losingFocusEvent: RoutedEvent;
    static noFocusCandidateFoundEvent: RoutedEvent;
    static characterReceivedEvent: RoutedEvent;
    static previewKeyDownEvent: RoutedEvent;
    static previewKeyUpEvent: RoutedEvent;
    static bringIntoViewRequestedEvent: RoutedEvent;
    static contextRequestedEvent: RoutedEvent;
    static keyTipTargetProperty: DependencyProperty;
    static keyboardAcceleratorPlacementModeProperty: DependencyProperty;
    static keyboardAcceleratorPlacementTargetProperty: DependencyProperty;
    static canBeScrollAnchorProperty: DependencyProperty;
    transitions: Object;
    projection: Object;
    renderTransformOrigin: Object;
    opacity: Number;
    manipulationMode: Number;
    isTapEnabled: Boolean;
    isRightTapEnabled: Boolean;
    isHoldingEnabled: Boolean;
    isHitTestVisible: Boolean;
    isDoubleTapEnabled: Boolean;
    allowDrop: Boolean;
    clip: Object;
    cacheMode: Object;
    useLayoutRounding: Boolean;
    renderTransform: Object;
    visibility: Visibility;
    desiredSize: Object;
    pointerCaptures: Object;
    renderSize: Object;
    xamlRoot: XamlRoot;
    shadow: Object;
    actualOffset: Vector3;
    actualSize: Vector2;
    uIContext: Object;
    compositeMode: Number;
    transform3D: Object;
    canDrag: Boolean;
    isAccessKeyScope: Boolean;
    exitDisplayModeOnAccessKeyInvoked: Boolean;
    contextFlyout: Object;
    accessKeyScopeOwner: DependencyObject;
    accessKey: String;
    keyTipHorizontalOffset: Number;
    highContrastAdjustment: ElementHighContrastAdjustment;
    xYFocusRightNavigationStrategy: Number;
    xYFocusKeyboardNavigation: Number;
    xYFocusDownNavigationStrategy: Number;
    tabFocusNavigation: Number;
    keyTipVerticalOffset: Number;
    xYFocusUpNavigationStrategy: Number;
    keyTipPlacementMode: Number;
    xYFocusLeftNavigationStrategy: Number;
    lights: Object;
    keyboardAccelerators: Object;
    keyboardAcceleratorPlacementTarget: DependencyObject;
    keyboardAcceleratorPlacementMode: Number;
    keyTipTarget: DependencyObject;
    translationTransition: Vector3Transition;
    opacityTransition: ScalarTransition;
    transformMatrix: Matrix4x4;
    scaleTransition: Vector3Transition;
    scale: Vector3;
    rotationTransition: ScalarTransition;
    rotationAxis: Vector3;
    rotation: Number;
    translation: Vector3;
    centerPoint: Vector3;
    canBeScrollAnchor: Boolean;
    dispatcher: Object;
    constructor();

    static registerAsScrollPort(element: UIElement): void;


    static tryStartDirectManipulation(value: Object): Boolean;


    startDragAsync(pointerPoint: Object, callback: (error: Error, result: Number) => void): void ;

    onCreateAutomationPeer(): Object;

    onDisconnectVisualChildren(): void;

    findSubElementsForTouchTargeting(point: Object, boundingRect: Object): Object;

    getChildrenInTabFocusOrder(): Object;

    onProcessKeyboardAccelerators(args: Object): void;

    onKeyboardAcceleratorInvoked(args: Object): void;

    onBringIntoViewRequested(e: BringIntoViewRequestedEventArgs): void;

    populatePropertyInfoOverride(propertyName: String, animationPropertyInfo: Object): void;

    populatePropertyInfo(propertyName: String, propertyInfo: Object): void;

    startBringIntoView(): void;
    startBringIntoView(options: BringIntoViewOptions): void;

    tryInvokeKeyboardAccelerator(args: Object): void;

    startAnimation(animation: Object): void;

    stopAnimation(animation: Object): void;

    measure(availableSize: Object): void;

    arrange(finalRect: Object): void;

    capturePointer(value: Object): Boolean;

    releasePointerCapture(value: Object): void;

    releasePointerCaptures(): void;

    addHandler(routedEvent: RoutedEvent, handler: Object, handledEventsToo: Boolean): void;

    removeHandler(routedEvent: RoutedEvent, handler: Object): void;

    transformToVisual(visual: UIElement): Object;

    invalidateMeasure(): void;

    invalidateArrange(): void;

    updateLayout(): void;

    cancelDirectManipulations(): Boolean;

    addListener(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    removeListener(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    on(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    off(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragEnter", listener: (ev: Event) => void): void ;
    removeListener(type: "DragEnter", listener: (ev: Event) => void): void ;
    on(type: "DragEnter", listener: (ev: Event) => void): void ;
    off(type: "DragEnter", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragLeave", listener: (ev: Event) => void): void ;
    removeListener(type: "DragLeave", listener: (ev: Event) => void): void ;
    on(type: "DragLeave", listener: (ev: Event) => void): void ;
    off(type: "DragLeave", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragOver", listener: (ev: Event) => void): void ;
    removeListener(type: "DragOver", listener: (ev: Event) => void): void ;
    on(type: "DragOver", listener: (ev: Event) => void): void ;
    off(type: "DragOver", listener: (ev: Event) => void): void ;
    
    addListener(type: "Drop", listener: (ev: Event) => void): void ;
    removeListener(type: "Drop", listener: (ev: Event) => void): void ;
    on(type: "Drop", listener: (ev: Event) => void): void ;
    off(type: "Drop", listener: (ev: Event) => void): void ;
    
    addListener(type: "GotFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "GotFocus", listener: (ev: Event) => void): void ;
    on(type: "GotFocus", listener: (ev: Event) => void): void ;
    off(type: "GotFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "Holding", listener: (ev: Event) => void): void ;
    removeListener(type: "Holding", listener: (ev: Event) => void): void ;
    on(type: "Holding", listener: (ev: Event) => void): void ;
    off(type: "Holding", listener: (ev: Event) => void): void ;
    
    addListener(type: "KeyDown", listener: (ev: Event) => void): void ;
    removeListener(type: "KeyDown", listener: (ev: Event) => void): void ;
    on(type: "KeyDown", listener: (ev: Event) => void): void ;
    off(type: "KeyDown", listener: (ev: Event) => void): void ;
    
    addListener(type: "KeyUp", listener: (ev: Event) => void): void ;
    removeListener(type: "KeyUp", listener: (ev: Event) => void): void ;
    on(type: "KeyUp", listener: (ev: Event) => void): void ;
    off(type: "KeyUp", listener: (ev: Event) => void): void ;
    
    addListener(type: "LostFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "LostFocus", listener: (ev: Event) => void): void ;
    on(type: "LostFocus", listener: (ev: Event) => void): void ;
    off(type: "LostFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    on(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    off(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    on(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    off(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    on(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    off(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    on(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    off(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    on(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    off(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    on(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    off(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    on(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    off(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerEntered", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerEntered", listener: (ev: Event) => void): void ;
    on(type: "PointerEntered", listener: (ev: Event) => void): void ;
    off(type: "PointerEntered", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerExited", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerExited", listener: (ev: Event) => void): void ;
    on(type: "PointerExited", listener: (ev: Event) => void): void ;
    off(type: "PointerExited", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerMoved", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerMoved", listener: (ev: Event) => void): void ;
    on(type: "PointerMoved", listener: (ev: Event) => void): void ;
    off(type: "PointerMoved", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerPressed", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerPressed", listener: (ev: Event) => void): void ;
    on(type: "PointerPressed", listener: (ev: Event) => void): void ;
    off(type: "PointerPressed", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerReleased", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerReleased", listener: (ev: Event) => void): void ;
    on(type: "PointerReleased", listener: (ev: Event) => void): void ;
    off(type: "PointerReleased", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    on(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    off(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "RightTapped", listener: (ev: Event) => void): void ;
    removeListener(type: "RightTapped", listener: (ev: Event) => void): void ;
    on(type: "RightTapped", listener: (ev: Event) => void): void ;
    off(type: "RightTapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "Tapped", listener: (ev: Event) => void): void ;
    removeListener(type: "Tapped", listener: (ev: Event) => void): void ;
    on(type: "Tapped", listener: (ev: Event) => void): void ;
    off(type: "Tapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "DragStarting", listener: (ev: Event) => void): void ;
    on(type: "DragStarting", listener: (ev: Event) => void): void ;
    off(type: "DragStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "DropCompleted", listener: (ev: Event) => void): void ;
    removeListener(type: "DropCompleted", listener: (ev: Event) => void): void ;
    on(type: "DropCompleted", listener: (ev: Event) => void): void ;
    off(type: "DropCompleted", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    
    addListener(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    removeListener(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    on(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    off(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    
    addListener(type: "ContextRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "ContextRequested", listener: (ev: Event) => void): void ;
    on(type: "ContextRequested", listener: (ev: Event) => void): void ;
    off(type: "ContextRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: "GettingFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "GettingFocus", listener: (ev: Event) => void): void ;
    on(type: "GettingFocus", listener: (ev: Event) => void): void ;
    off(type: "GettingFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "LosingFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "LosingFocus", listener: (ev: Event) => void): void ;
    on(type: "LosingFocus", listener: (ev: Event) => void): void ;
    off(type: "LosingFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    removeListener(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    on(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    off(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    
    addListener(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    removeListener(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    on(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    off(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    
    addListener(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    removeListener(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    on(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    off(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    
    addListener(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    removeListener(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    on(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    off(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    
    addListener(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    removeListener(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    on(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    off(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    
    addListener(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    on(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    off(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class FrameworkElement {
    static actualHeightProperty: DependencyProperty;
    static actualWidthProperty: DependencyProperty;
    static dataContextProperty: DependencyProperty;
    static flowDirectionProperty: DependencyProperty;
    static heightProperty: DependencyProperty;
    static horizontalAlignmentProperty: DependencyProperty;
    static languageProperty: DependencyProperty;
    static marginProperty: DependencyProperty;
    static maxHeightProperty: DependencyProperty;
    static maxWidthProperty: DependencyProperty;
    static minHeightProperty: DependencyProperty;
    static minWidthProperty: DependencyProperty;
    static nameProperty: DependencyProperty;
    static styleProperty: DependencyProperty;
    static tagProperty: DependencyProperty;
    static verticalAlignmentProperty: DependencyProperty;
    static widthProperty: DependencyProperty;
    static requestedThemeProperty: DependencyProperty;
    static allowFocusOnInteractionProperty: DependencyProperty;
    static allowFocusWhenDisabledProperty: DependencyProperty;
    static focusVisualMarginProperty: DependencyProperty;
    static focusVisualPrimaryBrushProperty: DependencyProperty;
    static focusVisualPrimaryThicknessProperty: DependencyProperty;
    static focusVisualSecondaryBrushProperty: DependencyProperty;
    static focusVisualSecondaryThicknessProperty: DependencyProperty;
    static actualThemeProperty: DependencyProperty;
    static holdingEvent: RoutedEvent;
    static isDoubleTapEnabledProperty: DependencyProperty;
    static isHitTestVisibleProperty: DependencyProperty;
    static isHoldingEnabledProperty: DependencyProperty;
    static isRightTapEnabledProperty: DependencyProperty;
    static keyDownEvent: RoutedEvent;
    static keyUpEvent: RoutedEvent;
    static manipulationCompletedEvent: RoutedEvent;
    static manipulationDeltaEvent: RoutedEvent;
    static isTapEnabledProperty: DependencyProperty;
    static manipulationInertiaStartingEvent: RoutedEvent;
    static manipulationModeProperty: DependencyProperty;
    static manipulationStartedEvent: RoutedEvent;
    static manipulationStartingEvent: RoutedEvent;
    static opacityProperty: DependencyProperty;
    static pointerCanceledEvent: RoutedEvent;
    static pointerCaptureLostEvent: RoutedEvent;
    static pointerCapturesProperty: DependencyProperty;
    static pointerEnteredEvent: RoutedEvent;
    static pointerExitedEvent: RoutedEvent;
    static pointerMovedEvent: RoutedEvent;
    static pointerPressedEvent: RoutedEvent;
    static pointerWheelChangedEvent: RoutedEvent;
    static projectionProperty: DependencyProperty;
    static renderTransformOriginProperty: DependencyProperty;
    static renderTransformProperty: DependencyProperty;
    static rightTappedEvent: RoutedEvent;
    static dragEnterEvent: RoutedEvent;
    static tappedEvent: RoutedEvent;
    static transitionsProperty: DependencyProperty;
    static useLayoutRoundingProperty: DependencyProperty;
    static visibilityProperty: DependencyProperty;
    static allowDropProperty: DependencyProperty;
    static cacheModeProperty: DependencyProperty;
    static clipProperty: DependencyProperty;
    static doubleTappedEvent: RoutedEvent;
    static pointerReleasedEvent: RoutedEvent;
    static dragLeaveEvent: RoutedEvent;
    static dragOverEvent: RoutedEvent;
    static dropEvent: RoutedEvent;
    static shadowProperty: DependencyProperty;
    static compositeModeProperty: DependencyProperty;
    static canDragProperty: DependencyProperty;
    static transform3DProperty: DependencyProperty;
    static accessKeyProperty: DependencyProperty;
    static accessKeyScopeOwnerProperty: DependencyProperty;
    static contextFlyoutProperty: DependencyProperty;
    static isAccessKeyScopeProperty: DependencyProperty;
    static exitDisplayModeOnAccessKeyInvokedProperty: DependencyProperty;
    static highContrastAdjustmentProperty: DependencyProperty;
    static keyTipHorizontalOffsetProperty: DependencyProperty;
    static keyTipPlacementModeProperty: DependencyProperty;
    static keyTipVerticalOffsetProperty: DependencyProperty;
    static lightsProperty: DependencyProperty;
    static xYFocusDownNavigationStrategyProperty: DependencyProperty;
    static xYFocusKeyboardNavigationProperty: DependencyProperty;
    static xYFocusLeftNavigationStrategyProperty: DependencyProperty;
    static xYFocusRightNavigationStrategyProperty: DependencyProperty;
    static xYFocusUpNavigationStrategyProperty: DependencyProperty;
    static tabFocusNavigationProperty: DependencyProperty;
    static gettingFocusEvent: RoutedEvent;
    static losingFocusEvent: RoutedEvent;
    static noFocusCandidateFoundEvent: RoutedEvent;
    static characterReceivedEvent: RoutedEvent;
    static previewKeyDownEvent: RoutedEvent;
    static previewKeyUpEvent: RoutedEvent;
    static bringIntoViewRequestedEvent: RoutedEvent;
    static contextRequestedEvent: RoutedEvent;
    static keyTipTargetProperty: DependencyProperty;
    static keyboardAcceleratorPlacementModeProperty: DependencyProperty;
    static keyboardAcceleratorPlacementTargetProperty: DependencyProperty;
    static canBeScrollAnchorProperty: DependencyProperty;
    width: Number;
    verticalAlignment: VerticalAlignment;
    tag: Object;
    style: Style;
    resources: ResourceDictionary;
    name: String;
    minWidth: Number;
    minHeight: Number;
    maxWidth: Number;
    maxHeight: Number;
    margin: Thickness;
    language: String;
    horizontalAlignment: HorizontalAlignment;
    height: Number;
    flowDirection: FlowDirection;
    dataContext: Object;
    actualHeight: Number;
    actualWidth: Number;
    baseUri: Object;
    parent: DependencyObject;
    triggers: TriggerCollection;
    requestedTheme: ElementTheme;
    focusVisualSecondaryThickness: Thickness;
    focusVisualSecondaryBrush: Object;
    focusVisualPrimaryThickness: Thickness;
    focusVisualPrimaryBrush: Object;
    focusVisualMargin: Thickness;
    allowFocusWhenDisabled: Boolean;
    allowFocusOnInteraction: Boolean;
    actualTheme: ElementTheme;
    isLoaded: Boolean;
    transitions: Object;
    projection: Object;
    renderTransformOrigin: Object;
    opacity: Number;
    manipulationMode: Number;
    isTapEnabled: Boolean;
    isRightTapEnabled: Boolean;
    isHoldingEnabled: Boolean;
    isHitTestVisible: Boolean;
    isDoubleTapEnabled: Boolean;
    allowDrop: Boolean;
    clip: Object;
    cacheMode: Object;
    useLayoutRounding: Boolean;
    renderTransform: Object;
    visibility: Visibility;
    desiredSize: Object;
    pointerCaptures: Object;
    renderSize: Object;
    xamlRoot: XamlRoot;
    shadow: Object;
    actualOffset: Vector3;
    actualSize: Vector2;
    uIContext: Object;
    compositeMode: Number;
    transform3D: Object;
    canDrag: Boolean;
    isAccessKeyScope: Boolean;
    exitDisplayModeOnAccessKeyInvoked: Boolean;
    contextFlyout: Object;
    accessKeyScopeOwner: DependencyObject;
    accessKey: String;
    keyTipHorizontalOffset: Number;
    highContrastAdjustment: ElementHighContrastAdjustment;
    xYFocusRightNavigationStrategy: Number;
    xYFocusKeyboardNavigation: Number;
    xYFocusDownNavigationStrategy: Number;
    tabFocusNavigation: Number;
    keyTipVerticalOffset: Number;
    xYFocusUpNavigationStrategy: Number;
    keyTipPlacementMode: Number;
    xYFocusLeftNavigationStrategy: Number;
    lights: Object;
    keyboardAccelerators: Object;
    keyboardAcceleratorPlacementTarget: DependencyObject;
    keyboardAcceleratorPlacementMode: Number;
    keyTipTarget: DependencyObject;
    translationTransition: Vector3Transition;
    opacityTransition: ScalarTransition;
    transformMatrix: Matrix4x4;
    scaleTransition: Vector3Transition;
    scale: Vector3;
    rotationTransition: ScalarTransition;
    rotationAxis: Vector3;
    rotation: Number;
    translation: Vector3;
    centerPoint: Vector3;
    canBeScrollAnchor: Boolean;
    dispatcher: Object;
    constructor();

    static deferTree(element: DependencyObject): void;


    getBindingExpression(dp: DependencyProperty): Object;

    invalidateViewport(): void;

    measureOverride(availableSize: Object): Object;

    arrangeOverride(finalSize: Object): Object;

    onApplyTemplate(): void;

    goToElementStateCore(stateName: String, useTransitions: Boolean): Boolean;

    findName(name: String): Object;

    setBinding(dp: DependencyProperty, binding: Object): void;

    addListener(type: "LayoutUpdated", listener: (ev: Event) => void): void ;
    removeListener(type: "LayoutUpdated", listener: (ev: Event) => void): void ;
    on(type: "LayoutUpdated", listener: (ev: Event) => void): void ;
    off(type: "LayoutUpdated", listener: (ev: Event) => void): void ;
    
    addListener(type: "Loaded", listener: (ev: Event) => void): void ;
    removeListener(type: "Loaded", listener: (ev: Event) => void): void ;
    on(type: "Loaded", listener: (ev: Event) => void): void ;
    off(type: "Loaded", listener: (ev: Event) => void): void ;
    
    addListener(type: "SizeChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "SizeChanged", listener: (ev: Event) => void): void ;
    on(type: "SizeChanged", listener: (ev: Event) => void): void ;
    off(type: "SizeChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "Unloaded", listener: (ev: Event) => void): void ;
    removeListener(type: "Unloaded", listener: (ev: Event) => void): void ;
    on(type: "Unloaded", listener: (ev: Event) => void): void ;
    off(type: "Unloaded", listener: (ev: Event) => void): void ;
    
    addListener(type: "DataContextChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "DataContextChanged", listener: (ev: Event) => void): void ;
    on(type: "DataContextChanged", listener: (ev: Event) => void): void ;
    off(type: "DataContextChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "Loading", listener: (ev: Event) => void): void ;
    removeListener(type: "Loading", listener: (ev: Event) => void): void ;
    on(type: "Loading", listener: (ev: Event) => void): void ;
    off(type: "Loading", listener: (ev: Event) => void): void ;
    
    addListener(type: "ActualThemeChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "ActualThemeChanged", listener: (ev: Event) => void): void ;
    on(type: "ActualThemeChanged", listener: (ev: Event) => void): void ;
    off(type: "ActualThemeChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "EffectiveViewportChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "EffectiveViewportChanged", listener: (ev: Event) => void): void ;
    on(type: "EffectiveViewportChanged", listener: (ev: Event) => void): void ;
    off(type: "EffectiveViewportChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    removeListener(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    on(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    off(type: "DoubleTapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragEnter", listener: (ev: Event) => void): void ;
    removeListener(type: "DragEnter", listener: (ev: Event) => void): void ;
    on(type: "DragEnter", listener: (ev: Event) => void): void ;
    off(type: "DragEnter", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragLeave", listener: (ev: Event) => void): void ;
    removeListener(type: "DragLeave", listener: (ev: Event) => void): void ;
    on(type: "DragLeave", listener: (ev: Event) => void): void ;
    off(type: "DragLeave", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragOver", listener: (ev: Event) => void): void ;
    removeListener(type: "DragOver", listener: (ev: Event) => void): void ;
    on(type: "DragOver", listener: (ev: Event) => void): void ;
    off(type: "DragOver", listener: (ev: Event) => void): void ;
    
    addListener(type: "Drop", listener: (ev: Event) => void): void ;
    removeListener(type: "Drop", listener: (ev: Event) => void): void ;
    on(type: "Drop", listener: (ev: Event) => void): void ;
    off(type: "Drop", listener: (ev: Event) => void): void ;
    
    addListener(type: "GotFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "GotFocus", listener: (ev: Event) => void): void ;
    on(type: "GotFocus", listener: (ev: Event) => void): void ;
    off(type: "GotFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "Holding", listener: (ev: Event) => void): void ;
    removeListener(type: "Holding", listener: (ev: Event) => void): void ;
    on(type: "Holding", listener: (ev: Event) => void): void ;
    off(type: "Holding", listener: (ev: Event) => void): void ;
    
    addListener(type: "KeyDown", listener: (ev: Event) => void): void ;
    removeListener(type: "KeyDown", listener: (ev: Event) => void): void ;
    on(type: "KeyDown", listener: (ev: Event) => void): void ;
    off(type: "KeyDown", listener: (ev: Event) => void): void ;
    
    addListener(type: "KeyUp", listener: (ev: Event) => void): void ;
    removeListener(type: "KeyUp", listener: (ev: Event) => void): void ;
    on(type: "KeyUp", listener: (ev: Event) => void): void ;
    off(type: "KeyUp", listener: (ev: Event) => void): void ;
    
    addListener(type: "LostFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "LostFocus", listener: (ev: Event) => void): void ;
    on(type: "LostFocus", listener: (ev: Event) => void): void ;
    off(type: "LostFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    on(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    off(type: "ManipulationCompleted", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    on(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    off(type: "ManipulationDelta", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    on(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    off(type: "ManipulationInertiaStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    on(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    off(type: "ManipulationStarted", listener: (ev: Event) => void): void ;
    
    addListener(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    on(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    off(type: "ManipulationStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    on(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    off(type: "PointerCanceled", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    on(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    off(type: "PointerCaptureLost", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerEntered", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerEntered", listener: (ev: Event) => void): void ;
    on(type: "PointerEntered", listener: (ev: Event) => void): void ;
    off(type: "PointerEntered", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerExited", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerExited", listener: (ev: Event) => void): void ;
    on(type: "PointerExited", listener: (ev: Event) => void): void ;
    off(type: "PointerExited", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerMoved", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerMoved", listener: (ev: Event) => void): void ;
    on(type: "PointerMoved", listener: (ev: Event) => void): void ;
    off(type: "PointerMoved", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerPressed", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerPressed", listener: (ev: Event) => void): void ;
    on(type: "PointerPressed", listener: (ev: Event) => void): void ;
    off(type: "PointerPressed", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerReleased", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerReleased", listener: (ev: Event) => void): void ;
    on(type: "PointerReleased", listener: (ev: Event) => void): void ;
    off(type: "PointerReleased", listener: (ev: Event) => void): void ;
    
    addListener(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    on(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    off(type: "PointerWheelChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "RightTapped", listener: (ev: Event) => void): void ;
    removeListener(type: "RightTapped", listener: (ev: Event) => void): void ;
    on(type: "RightTapped", listener: (ev: Event) => void): void ;
    off(type: "RightTapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "Tapped", listener: (ev: Event) => void): void ;
    removeListener(type: "Tapped", listener: (ev: Event) => void): void ;
    on(type: "Tapped", listener: (ev: Event) => void): void ;
    off(type: "Tapped", listener: (ev: Event) => void): void ;
    
    addListener(type: "DragStarting", listener: (ev: Event) => void): void ;
    removeListener(type: "DragStarting", listener: (ev: Event) => void): void ;
    on(type: "DragStarting", listener: (ev: Event) => void): void ;
    off(type: "DragStarting", listener: (ev: Event) => void): void ;
    
    addListener(type: "DropCompleted", listener: (ev: Event) => void): void ;
    removeListener(type: "DropCompleted", listener: (ev: Event) => void): void ;
    on(type: "DropCompleted", listener: (ev: Event) => void): void ;
    off(type: "DropCompleted", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyDisplayDismissed", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyDisplayRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    removeListener(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    on(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    off(type: "AccessKeyInvoked", listener: (ev: Event) => void): void ;
    
    addListener(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    removeListener(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    on(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    off(type: "ContextCanceled", listener: (ev: Event) => void): void ;
    
    addListener(type: "ContextRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "ContextRequested", listener: (ev: Event) => void): void ;
    on(type: "ContextRequested", listener: (ev: Event) => void): void ;
    off(type: "ContextRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: "GettingFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "GettingFocus", listener: (ev: Event) => void): void ;
    on(type: "GettingFocus", listener: (ev: Event) => void): void ;
    off(type: "GettingFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "LosingFocus", listener: (ev: Event) => void): void ;
    removeListener(type: "LosingFocus", listener: (ev: Event) => void): void ;
    on(type: "LosingFocus", listener: (ev: Event) => void): void ;
    off(type: "LosingFocus", listener: (ev: Event) => void): void ;
    
    addListener(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    removeListener(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    on(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    off(type: "NoFocusCandidateFound", listener: (ev: Event) => void): void ;
    
    addListener(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    removeListener(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    on(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    off(type: "CharacterReceived", listener: (ev: Event) => void): void ;
    
    addListener(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    removeListener(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    on(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    off(type: "PreviewKeyDown", listener: (ev: Event) => void): void ;
    
    addListener(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    removeListener(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    on(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    off(type: "PreviewKeyUp", listener: (ev: Event) => void): void ;
    
    addListener(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    removeListener(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    on(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    off(type: "ProcessKeyboardAccelerators", listener: (ev: Event) => void): void ;
    
    addListener(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    removeListener(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    on(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    off(type: "BringIntoViewRequested", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class FrameworkTemplate {
    dispatcher: Object;
    constructor();

  }

  export class DataContextChangedEventArgs {
    handled: Boolean;
    newValue: Object;
    constructor();

  }

  export class DataTemplate {
    static extensionInstanceProperty: DependencyProperty;
    dispatcher: Object;
    constructor();

    static getExtensionInstance(element: FrameworkElement): IDataTemplateExtension;


    static setExtensionInstance(element: FrameworkElement, value: IDataTemplateExtension): void;


    loadContent(): DependencyObject;

    getElement(args: ElementFactoryGetArgs): UIElement;

    recycleElement(args: ElementFactoryRecycleArgs): void;

  }

  export class DataTemplateKey {
    dataType: Object;
    constructor();
    constructor(dataType: Object);

  }

  export class DebugSettings {
    isOverdrawHeatMapEnabled: Boolean;
    isBindingTracingEnabled: Boolean;
    enableFrameRateCounter: Boolean;
    enableRedrawRegions: Boolean;
    isTextPerformanceVisualizationEnabled: Boolean;
    failFastOnErrors: Boolean;
    constructor();

    addListener(type: "BindingFailed", listener: (ev: Event) => void): void ;
    removeListener(type: "BindingFailed", listener: (ev: Event) => void): void ;
    on(type: "BindingFailed", listener: (ev: Event) => void): void ;
    off(type: "BindingFailed", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class DependencyObjectCollection {
    dispatcher: Object;
    constructor();

    getAt(index: Number): DependencyObject;

    getView(): Object;

    indexOf(value: DependencyObject, index: Number): Boolean;

    setAt(index: Number, value: DependencyObject): void;

    insertAt(index: Number, value: DependencyObject): void;

    removeAt(index: Number): void;

    append(value: DependencyObject): void;

    removeAtEnd(): void;

    clear(): void;

    getMany();
    replaceAll(items: Array<Object>): void;

    first(): Object;

    addListener(type: "VectorChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "VectorChanged", listener: (ev: Event) => void): void ;
    on(type: "VectorChanged", listener: (ev: Event) => void): void ;
    off(type: "VectorChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class DependencyProperty {
    static unsetValue: Object;
    constructor();

    static register(name: String, propertyType: Object, ownerType: Object, typeMetadata: PropertyMetadata): DependencyProperty;


    static registerAttached(name: String, propertyType: Object, ownerType: Object, defaultMetadata: PropertyMetadata): DependencyProperty;


    getMetadata(forType: Object): PropertyMetadata;

  }

  export class DependencyPropertyChangedEventArgs {
    newValue: Object;
    oldValue: Object;
    property: DependencyProperty;
    constructor();

  }

  export class DispatcherTimer {
    interval: Number;
    isEnabled: Boolean;
    constructor();

    start(): void;

    stop(): void;

    addListener(type: "Tick", listener: (ev: Event) => void): void ;
    removeListener(type: "Tick", listener: (ev: Event) => void): void ;
    on(type: "Tick", listener: (ev: Event) => void): void ;
    off(type: "Tick", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class DragEventArgs {
    handled: Boolean;
    data: Object;
    acceptedOperation: Number;
    dataView: Object;
    dragUIOverride: DragUIOverride;
    modifiers: Number;
    allowedOperations: Number;
    originalSource: Object;
    constructor();

    getPosition(relativeTo: UIElement): Object;

    getDeferral(): DragOperationDeferral;

  }

  export class DragOperationDeferral {
    constructor();

    complete(): void;

  }

  export class DragStartingEventArgs {
    cancel: Boolean;
    data: Object;
    dragUI: DragUI;
    allowedOperations: Number;
    originalSource: Object;
    constructor();

    getDeferral(): DragOperationDeferral;

    getPosition(relativeTo: UIElement): Object;

  }

  export class DragUI {
    constructor();

    setContentFromBitmapImage(bitmapImage: Object): void;
    setContentFromBitmapImage(bitmapImage: Object, anchorPoint: Object): void;

    setContentFromSoftwareBitmap(softwareBitmap: Object): void;
    setContentFromSoftwareBitmap(softwareBitmap: Object, anchorPoint: Object): void;

    setContentFromDataPackage(): void;

  }

  export class DragUIOverride {
    isGlyphVisible: Boolean;
    isContentVisible: Boolean;
    isCaptionVisible: Boolean;
    caption: String;
    constructor();

    clear(): void;

    setContentFromBitmapImage(bitmapImage: Object): void;
    setContentFromBitmapImage(bitmapImage: Object, anchorPoint: Object): void;

    setContentFromSoftwareBitmap(softwareBitmap: Object): void;
    setContentFromSoftwareBitmap(softwareBitmap: Object, anchorPoint: Object): void;

  }

  export class DropCompletedEventArgs {
    dropResult: Number;
    originalSource: Object;
    constructor();

  }

  export class EffectiveViewportChangedEventArgs {
    bringIntoViewDistanceX: Number;
    bringIntoViewDistanceY: Number;
    effectiveViewport: Object;
    maxViewport: Object;
    constructor();

  }

  export class ElementFactoryGetArgs {
    parent: UIElement;
    data: Object;
    constructor();

  }

  export class ElementFactoryRecycleArgs {
    parent: UIElement;
    element: UIElement;
    constructor();

  }

  export class ElementSoundPlayer {
    static volume: Number;
    static state: ElementSoundPlayerState;
    static spatialAudioMode: ElementSpatialAudioMode;
    constructor();

    static play(sound: ElementSoundKind): void;


  }

  export class TriggerBase {
    dispatcher: Object;
    constructor();

  }

  export class EventTrigger {
    routedEvent: RoutedEvent;
    actions: TriggerActionCollection;
    dispatcher: Object;
    constructor();

  }

  export class ExceptionRoutedEventArgs {
    errorMessage: String;
    originalSource: Object;
    constructor();

  }

  export class FrameworkView {
    constructor();

    initialize(applicationView: Object): void;

    setWindow(window: Object): void;

    load(entryPoint: String): void;

    run(): void;

    uninitialize(): void;

  }

  export class FrameworkViewSource {
    constructor();

    createView(): Object;

  }

  export class IDataTemplateExtension {
    constructor();

    resetTemplate(): void;

    processBinding(phase: Number): Boolean;

    processBindings(arg: Object): Number;

  }

  export class IElementFactory {
    constructor();

    getElement(args: ElementFactoryGetArgs): UIElement;

    recycleElement(args: ElementFactoryRecycleArgs): void;

  }

  export class TriggerAction {
    dispatcher: Object;
    constructor();

  }

  export class MediaFailedRoutedEventArgs {
    errorTrace: String;
    errorMessage: String;
    originalSource: Object;
    constructor();

  }

  export class PointHelper {
    constructor();

    static fromCoordinates(x: Number, y: Number): Object;


  }

  export class PropertyMetadata {
    createDefaultValueCallback: Object;
    defaultValue: Object;
    constructor();
    constructor(defaultValue: Object);
    constructor(defaultValue: Object, propertyChangedCallback: Object);

    static create(defaultValue: Object): PropertyMetadata;
    static create(defaultValue: Object, propertyChangedCallback: Object): PropertyMetadata;
    static create(createDefaultValueCallback: Object): PropertyMetadata;
    static create(createDefaultValueCallback: Object, propertyChangedCallback: Object): PropertyMetadata;


  }

  export class PropertyPath {
    path: String;
    dispatcher: Object;
    constructor();
    constructor(path: String);

  }

  export class RectHelper {
    static empty: Object;
    constructor();

    static fromCoordinatesAndDimensions(x: Number, y: Number, width: Number, height: Number): Object;


    static fromPoints(point1: Object, point2: Object): Object;


    static fromLocationAndSize(location: Object, size: Object): Object;


    static getIsEmpty(target: Object): Boolean;


    static getBottom(target: Object): Number;


    static getLeft(target: Object): Number;


    static getRight(target: Object): Number;


    static getTop(target: Object): Number;


    static contains(target: Object, point: Object): Boolean;


    static equals(target: Object, value: Object): Boolean;


    static intersect(target: Object, rect: Object): Object;


    static union(target: Object, point: Object): Object;
    static union(target: Object, rect: Object): Object;


  }

  export class RoutedEvent {
    constructor();

  }

  export class ScalarTransition {
    duration: Number;
    constructor();

  }

  export class SetterBase {
    isSealed: Boolean;
    dispatcher: Object;
    constructor();

  }

  export class Setter {
    value: Object;
    property: DependencyProperty;
    target: TargetPropertyPath;
    isSealed: Boolean;
    dispatcher: Object;
    constructor();
    constructor(targetProperty: DependencyProperty, value: Object);

  }

  export class SetterBaseCollection {
    isSealed: Boolean;
    constructor();

    getAt(index: Number): SetterBase;

    getView(): Object;

    indexOf(value: SetterBase, index: Number): Boolean;

    setAt(index: Number, value: SetterBase): void;

    insertAt(index: Number, value: SetterBase): void;

    removeAt(index: Number): void;

    append(value: SetterBase): void;

    removeAtEnd(): void;

    clear(): void;

    getMany();
    replaceAll(items: Array<Object>): void;

    first(): Object;

  }

  export class SizeChangedEventArgs {
    newSize: Object;
    previousSize: Object;
    originalSource: Object;
    constructor();

  }

  export class SizeHelper {
    static empty: Object;
    constructor();

    static fromDimensions(width: Number, height: Number): Object;


    static getIsEmpty(target: Object): Boolean;


    static equals(target: Object, value: Object): Boolean;


  }

  export class StateTrigger {
    static isActiveProperty: DependencyProperty;
    isActive: Boolean;
    dispatcher: Object;
    constructor();

  }

  export class Style {
    targetType: Object;
    basedOn: Style;
    isSealed: Boolean;
    setters: SetterBaseCollection;
    dispatcher: Object;
    constructor();
    constructor(targetType: Object);

    seal(): void;

  }

  export class StyleTypedPropertyAttribute {
    typeId: Object;
    constructor();

  }

  export class TargetPropertyPath {
    target: Object;
    path: PropertyPath;
    constructor();
    constructor(targetProperty: DependencyProperty);

  }

  export class TemplatePartAttribute {
    typeId: Object;
    constructor();

  }

  export class TemplateVisualStateAttribute {
    typeId: Object;
    constructor();

  }

  export class TriggerActionCollection {
    constructor();

    getAt(index: Number): TriggerAction;

    getView(): Object;

    indexOf(value: TriggerAction, index: Number): Boolean;

    setAt(index: Number, value: TriggerAction): void;

    insertAt(index: Number, value: TriggerAction): void;

    removeAt(index: Number): void;

    append(value: TriggerAction): void;

    removeAtEnd(): void;

    clear(): void;

    getMany();
    replaceAll(items: Array<Object>): void;

    first(): Object;

  }

  export class TriggerCollection {
    constructor();

    getAt(index: Number): TriggerBase;

    getView(): Object;

    indexOf(value: TriggerBase, index: Number): Boolean;

    setAt(index: Number, value: TriggerBase): void;

    insertAt(index: Number, value: TriggerBase): void;

    removeAt(index: Number): void;

    append(value: TriggerBase): void;

    removeAtEnd(): void;

    clear(): void;

    getMany();
    replaceAll(items: Array<Object>): void;

    first(): Object;

  }

  export class UIElementWeakCollection {
    constructor();

    getAt(index: Number): UIElement;

    getView(): Object;

    indexOf(value: UIElement, index: Number): Boolean;

    setAt(index: Number, value: UIElement): void;

    insertAt(index: Number, value: UIElement): void;

    removeAt(index: Number): void;

    append(value: UIElement): void;

    removeAtEnd(): void;

    clear(): void;

    getMany();
    replaceAll(items: Array<Object>): void;

    first(): Object;

  }

  export class UnhandledExceptionEventArgs {
    handled: Boolean;
    exception: Number;
    message: String;
    constructor();

  }

  export class Vector3Transition {
    duration: Number;
    components: Vector3TransitionComponents;
    constructor();

  }

  export class VisualState {
    storyboard: Object;
    name: String;
    setters: SetterBaseCollection;
    stateTriggers: Object;
    dispatcher: Object;
    constructor();

  }

  export class VisualStateChangedEventArgs {
    oldState: VisualState;
    newState: VisualState;
    control: Object;
    constructor();

  }

  export class VisualStateGroup {
    currentState: VisualState;
    name: String;
    states: Object;
    transitions: Object;
    dispatcher: Object;
    constructor();

    addListener(type: "CurrentStateChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "CurrentStateChanged", listener: (ev: Event) => void): void ;
    on(type: "CurrentStateChanged", listener: (ev: Event) => void): void ;
    off(type: "CurrentStateChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "CurrentStateChanging", listener: (ev: Event) => void): void ;
    removeListener(type: "CurrentStateChanging", listener: (ev: Event) => void): void ;
    on(type: "CurrentStateChanging", listener: (ev: Event) => void): void ;
    off(type: "CurrentStateChanging", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class VisualStateManager {
    static customVisualStateManagerProperty: DependencyProperty;
    dispatcher: Object;
    constructor();

    static getVisualStateGroups(obj: FrameworkElement): Object;


    static getCustomVisualStateManager(obj: FrameworkElement): VisualStateManager;


    static setCustomVisualStateManager(obj: FrameworkElement, value: VisualStateManager): void;


    static goToState(control: Object, stateName: String, useTransitions: Boolean): Boolean;


    raiseCurrentStateChanging(stateGroup: VisualStateGroup, oldState: VisualState, newState: VisualState, control: Object): void;

    raiseCurrentStateChanged(stateGroup: VisualStateGroup, oldState: VisualState, newState: VisualState, control: Object): void;

    goToStateCore(control: Object, templateRoot: FrameworkElement, stateName: String, group: VisualStateGroup, state: VisualState, useTransitions: Boolean): Boolean;

  }

  export class VisualTransition {
    to: String;
    storyboard: Object;
    generatedEasingFunction: Object;
    generatedDuration: Duration;
    from: String;
    dispatcher: Object;
    constructor();

  }

  export class Window {
    static current: Window;
    content: UIElement;
    bounds: Object;
    coreWindow: Object;
    dispatcher: Object;
    visible: Boolean;
    compositor: Object;
    uIContext: Object;
    constructor();

    activate(): void;

    close(): void;

    setTitleBar(value: UIElement): void;

    addListener(type: "Activated", listener: (ev: Event) => void): void ;
    removeListener(type: "Activated", listener: (ev: Event) => void): void ;
    on(type: "Activated", listener: (ev: Event) => void): void ;
    off(type: "Activated", listener: (ev: Event) => void): void ;
    
    addListener(type: "Closed", listener: (ev: Event) => void): void ;
    removeListener(type: "Closed", listener: (ev: Event) => void): void ;
    on(type: "Closed", listener: (ev: Event) => void): void ;
    off(type: "Closed", listener: (ev: Event) => void): void ;
    
    addListener(type: "SizeChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "SizeChanged", listener: (ev: Event) => void): void ;
    on(type: "SizeChanged", listener: (ev: Event) => void): void ;
    off(type: "SizeChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: "VisibilityChanged", listener: (ev: Event) => void): void ;
    removeListener(type: "VisibilityChanged", listener: (ev: Event) => void): void ;
    on(type: "VisibilityChanged", listener: (ev: Event) => void): void ;
    off(type: "VisibilityChanged", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class WindowCreatedEventArgs {
    window: Window;
    constructor();

  }

  export class XamlRoot {
    content: UIElement;
    isHostVisible: Boolean;
    rasterizationScale: Number;
    size: Object;
    uIContext: Object;
    constructor();

    addListener(type: "Changed", listener: (ev: Event) => void): void ;
    removeListener(type: "Changed", listener: (ev: Event) => void): void ;
    on(type: "Changed", listener: (ev: Event) => void): void ;
    off(type: "Changed", listener: (ev: Event) => void): void ;
    
    addListener(type: string, listener: (ev: Event) => void): void ;
    removeListener(type: string, listener: (ev: Event) => void): void ;
    on(type: string, listener: (ev: Event) => void): void ;
    off(type: string, listener: (ev: Event) => void): void ;
    

  }

  export class XamlRootChangedEventArgs {
    constructor();

  }

}



