/**@class android.view.WindowInsetsAnimationController
 Interface to control a window inset animation frame-by-frame.
 @hide pending unhide
*/
var WindowInsetsAnimationController = {

/**Retrieves the {@link Insets} when the windows this animation is controlling are fully hidden.
 <p>
 If there are any animation listeners registered, this value is the same as
 {@link android.view.WindowInsetsAnimationListener.InsetsAnimation#getLowerBound()} that will be passed into the callbacks.
@return {Object {android.graphics.Insets}} Insets when the windows this animation is controlling are fully hidden.
@see InsetsAnimation#getLowerBound()
*/
getHiddenStateInsets : function(  ) {},

/**Retrieves the {@link Insets} when the windows this animation is controlling are fully shown.
 <p>
 In case the size of a window causing insets is changing in the middle of the animation, we
 execute that height change after this animation has finished.
 <p>
 If there are any animation listeners registered, this value is the same as
 {@link android.view.WindowInsetsAnimationListener.InsetsAnimation#getUpperBound()} that will be passed into the callbacks.
@return {Object {android.graphics.Insets}} Insets when the windows this animation is controlling are fully shown.
@see InsetsAnimation#getUpperBound()
*/
getShownStateInsets : function(  ) {},

/**
@return {Object {android.graphics.Insets}} The current insets on the window. These will follow any animation changes.
*/
getCurrentInsets : function(  ) {},

/**
@return {Number} The {@link InsetType}s this object is currently controlling.
*/
getTypes : function(  ) {},

/**Modifies the insets by indirectly moving the windows around in the system that are causing
 window insets.
 <p>
 Note that this will <b>not</b> inform the view system of a full inset change via
 {@link android.view.View#dispatchApplyWindowInsets} in order to avoid a full layout pass during the
 animation. If you'd like to animate views during a window inset animation, register a
 {@link android.view.WindowInsetsAnimationListener} by calling
 {@link android.view.View#setWindowInsetsAnimationListener(WindowInsetsAnimationListener)} that will be
 notified about any insets change via {@link android.view.WindowInsetsAnimationListener#onProgress} during
 the animation.
 <p>
 {@link android.view.View#dispatchApplyWindowInsets} will instead be called once the animation has
 finished, i.e. once {@link #finish} has been called.
@param {Object {Insets}} insets The new insets to apply. Based on the requested insets, the system will
               calculate the positions of the windows in the system causing insets such that
               the resulting insets of that configuration will match the passed in parameter.
               Note that these insets are being clamped to the range from
               {@link #getHiddenStateInsets} to {@link #getShownStateInsets}
@see WindowInsetsAnimationListener
@see View#setWindowInsetsAnimationListener(WindowInsetsAnimationListener)
*/
changeInsets : function(  ) {},

/**
@param {Number} shownTypes The list of windows causing insets that should remain shown after finishing
                   the animation.
*/
finish : function(  ) {},


};