declare module "windows.ui.xaml.hosting" {
  export class Rect {
    constructor();
  }

  export class Size {
    constructor();
  }

  export class HostingContract {
    constructor();
  }

  export class ElementCompositionPreview {
    constructor();

    static getElementVisual(element: Object): Object;


    static getElementChildVisual(element: Object): Object;


    static setElementChildVisual(element: Object, visual: Object): void;


    static getScrollViewerManipulationPropertySet(scrollViewer: Object): Object;


  }

  export class IXamlUIPresenterHost {
    constructor();

    resolveFileResource(path: String): String;

  }

  export class IXamlUIPresenterHost2 {
    constructor();

    getGenericXamlFilePath(): String;

  }

  export class IXamlUIPresenterHost3 {
    constructor();

    resolveDictionaryResource(dictionary: Object, dictionaryKey: Object, suggestedValue: Object): Object;

  }

  export class XamlUIPresenter {
    static completeTimelinesAutomatically: Boolean;
    themeResourcesXaml: String;
    themeKey: String;
    rootElement: Object;
    constructor();

    static getFlyoutPlacementTargetInfo(placementTarget: Object, preferredPlacement: Number, targetPreferredPlacement: Number, allowFallbacks: Boolean): Object;


    static getFlyoutPlacement(placementTargetBounds: Object, controlSize: Object, minControlSize: Object, containerRect: Object, targetPreferredPlacement: Number, allowFallbacks: Boolean, chosenPlacement: Number): Object;


    static setHost(host: IXamlUIPresenterHost): void;


    static notifyWindowSizeChanged(): void;


    setSize(width: Number, height: Number): void;

    render(): void;

    present(): void;

  }

}



