google-closure-compiler
Version:
Check, compile, optimize and compress Javascript with Closure-Compiler
1,340 lines (1,060 loc) • 35.4 kB
JavaScript
/*
* Copyright 2016 The Closure Compiler Authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview An externs file for the Angular Material library.
* @externs
*/
/**
* @const
*/
var md = {};
/******************************************************************************
* $bottonSheet Service
*****************************************************************************/
/** @interface */
md.$bottomSheet = function() {};
/**
* @typedef {{
* templateUrl: (string|!Object|undefined),
* template: (string|undefined),
* scope: (!Object|undefined),
* preserveScope: (boolean|undefined),
* controller: (!angular.Injectable|string|undefined),
* locals: (!Object|undefined),
* targetEvent: (!Object|undefined),
* resolve: (!Object|undefined),
* controllerAs: (string|undefined),
* parent: (!Element|undefined),
* disableParentScroll: (boolean|undefined),
* bindToController: (boolean|undefined),
* }}
*/
md.$bottomSheet.options;
/**
* @param {!md.$bottomSheet.options} options
* @return {!angular.$q.Promise}
*/
md.$bottomSheet.prototype.show = function(options) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$bottomSheet.prototype.hide = function(opt_response) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$bottomSheet.prototype.cancel = function(opt_response) {};
/******************************************************************************
* $dialog Service
*****************************************************************************/
/** @interface */
md.$dialog = function() {};
/**
* @typedef {{
* templateUrl: (string|!Object|undefined),
* template: (string|undefined),
* contentElement: (string|Element|undefined),
* autoWrap: (boolean|undefined),
* targetEvent: (Object|undefined),
* openFrom: (string|!Element|!Object|undefined),
* closeTo: (string|!Element|!Object|undefined),
* scope: (!angular.Scope|undefined),
* preserveScope: (boolean|undefined),
* disableParentScroll: (boolean|undefined),
* hasBackdrop: (boolean|undefined),
* clickOutsideToClose: (boolean|undefined),
* escapeToClose: (boolean|undefined),
* focusOnOpen: (boolean|undefined),
* controller: (angular.Injectable|string|undefined),
* locals: (Object|undefined),
* bindToController: (boolean|undefined),
* resolve: (Object|undefined),
* controllerAs: (string|undefined),
* parent: (angular.JQLite|Element|undefined),
* onShowing: (Function|undefined),
* onComplete: (Function|undefined),
* onRemoving: (Function|undefined),
* fullscreen: (boolean|undefined)
* }}
*/
md.$dialog.options;
/** @interface */
md.$dialog.AlertConfig_ = function() {};
/**
* @param {string} title
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.title = function(title) {};
/**
* @deprecated `$mdDialog.alert().content` is deprecated!
* Use textContent or htmlContent instead.
* @param {?string} textContent
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.content = function(textContent) {};
/**
* @param {?string} textContent
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.textContent = function(textContent) {};
/**
* @param {string} htmlContent
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.htmlContent = function(htmlContent) {};
/**
* @param {string} ariaLabel
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.ariaLabel = function(ariaLabel) {};
/**
* @param {string} ok
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.ok = function(ok) {};
/**
* @param {string} theme
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.theme = function(theme) {};
/**
* @param {boolean} close
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.clickOutsideToClose = function(close) {};
/**
* @param {boolean} close
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.escapeToClose = function(close) {};
/**
* @param {boolean} multiple
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.multiple = function(multiple) {};
/**
* @param {Object|undefined} event
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.targetEvent = function(event) {};
/**
* @param {string} css
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.css = function(css) {};
/**
* @param {angular.JQLite|Element|undefined} parent
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.AlertConfig_.prototype.parent = function(parent) {};
/** @interface */
md.$dialog.ConfirmConfig_ = function() {};
/**
* @param {string} title
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.title = function(title) {};
/**
* @deprecated `$mdDialog.confirm().content` is deprecated!
* Use textContent or htmlContent instead.
* @param {?string} textContent
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.content = function(textContent) {};
/**
* @param {?string} textContent
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.textContent = function(textContent) {};
/**
* @param {string} htmlContent
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.htmlContent = function(htmlContent) {};
/**
* @param {string} ariaLabel
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.ariaLabel = function(ariaLabel) {};
/**
* @param {string} ok
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.ok = function(ok) {};
/**
* @param {string} cancel
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.cancel = function(cancel) {};
/**
* @param {string} theme
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.theme = function(theme) {};
/**
* @param {boolean} close
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.clickOutsideToClose = function(close) {};
/**
* @param {boolean} close
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.escapeToClose = function(close) {};
/**
* @param {boolean} multiple
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.multiple = function(multiple) {};
/**
* @param {Object|undefined} event
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.targetEvent = function(event) {};
/**
* @param {angular.JQLite|Element|undefined} parent
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.parent = function(parent) {};
/**
* @param {string} css
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.css = function(css) {};
/**
* @param {boolean} scroll
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.ConfirmConfig_.prototype.disableParentScroll = function(scroll) {};
/** @interface */
md.$dialog.PromptConfig_ = function() {};
/**
* @param {string} title
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.title = function(title) {};
/**
* @deprecated `$mdDialog.prompt().content` is deprecated!
* Use textContent or htmlContent instead.
* @param {?string} textContent
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.content = function(textContent) {};
/**
* @param {?string} textContent
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.textContent = function(textContent) {};
/**
* @param {string} htmlContent
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.htmlContent = function(htmlContent) {};
/**
* @param {string} ariaLabel
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.ariaLabel = function(ariaLabel) {};
/**
* @param {string} placeholder
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.placeholder = function(placeholder) {};
/**
* @param {string} initialValue
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.initialValue = function(initialValue) {};
/**
* @param {string} ok
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.ok = function(ok) {};
/**
* @param {string} cancel
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.cancel = function(cancel) {};
/**
* @param {string} theme
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.theme = function(theme) {};
/**
* @param {boolean} close
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.clickOutsideToClose = function(close) {};
/**
* @param {boolean} close
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.escapeToClose = function(close) {};
/**
* @param {boolean} multiple
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.multiple = function(multiple) {};
/**
* @param {Object|undefined} event
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.targetEvent = function(event) {};
/**
* @param {angular.JQLite|Element|undefined} parent
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.parent = function(parent) {};
/**
* @param {string} css
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.css = function(css) {};
/**
* @param {boolean} required
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.PromptConfig_.prototype.required = function(required) {};
/** @typedef {!md.$dialog.options|!md.$dialog.ConfirmConfig_|
* !md.$dialog.AlertConfig_|!md.$dialog.PromptConfig_} */
md.$dialog.Config;
/**
* @param {!md.$dialog.Config} options
* @return {!angular.$q.Promise}
*/
md.$dialog.prototype.show = function(options) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$dialog.prototype.hide = function(opt_response) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$dialog.prototype.cancel = function(opt_response) {};
/**
* @param {!md.$dialog.Config=} options
* @return {!md.$dialog.AlertConfig_}
*/
md.$dialog.prototype.alert = function(options) {};
/**
* @param {!md.$dialog.Config=} options
* @return {!md.$dialog.ConfirmConfig_}
*/
md.$dialog.prototype.confirm = function(options) {};
/**
* @param {!md.$dialog.Config=} options
* @return {!md.$dialog.PromptConfig_}
*/
md.$dialog.prototype.prompt = function(options) {};
/******************************************************************************
* $toast Service
*****************************************************************************/
/** @constructor */
md.$toast = function() {};
/**
* @typedef {{
* templateUrl: (string|!Object|undefined),
* template: (string|undefined),
* hideDelay: (boolean|number|undefined),
* position: (string|undefined),
* controller: (angular.Injectable|string|undefined),
* locals: (Object|undefined),
* bindToController: (boolean|undefined),
* resolve: (Object|undefined),
* controllerAs: (string|undefined),
* toastClass: (string|undefined),
* }}
*/
md.$toast.options;
/**
* @param {md.$toast.options|md.$toast.preset} optionsOrPreset
* @return {!angular.$q.Promise}
*/
md.$toast.prototype.show = function(optionsOrPreset) {};
/**
* @param {string} text
* @return {!angular.$q.Promise}
*/
md.$toast.prototype.showSimple = function(text) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$toast.prototype.hide = function(opt_response) {};
/**
* @param {*=} opt_response An argument for the resolved promise.
*/
md.$toast.prototype.cancel = function(opt_response) {};
/** @param {string} content */
md.$toast.prototype.updateTextContent = function(content) {};
/** @record */
md.$toast.preset = function() {};
/**
* @param {string} action
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.action = function(action) {};
/**
* @param {string} actionKey
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.actionKey = function(actionKey) {};
/**
* @param {boolean} capsule
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.capsule = function(capsule) {};
/**
* @param {string} content
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.content = function(content) {};
/**
* @param {boolean|number} delay
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.hideDelay = function(delay) {};
/**
* @param {string} content
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.textContent = function(content) {};
/**
* @param {boolean} highlight
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.highlightAction = function(highlight) {};
/**
* @param {string} theme
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.theme = function(theme) {};
/**
* @param {?JQLiteSelector} parent
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.parent = function(parent) {};
/**
* @param {string} position
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.position = function(position) {};
/**
* @param {string} className
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.highlightClass = function(className) {};
/**
* @param {string} className
* @return {!md.$toast.preset}
*/
md.$toast.preset.prototype.toastClass = function(className) {};
/**
* @param {!md.$toast.options=} options
* @return {!md.$toast.preset}
*/
md.$toast.prototype.simple = function(options) {};
/******************************************************************************
* $sidenav Service
*****************************************************************************/
/**
* @typedef {{
* isLockedOpen: function():boolean,
* isOpen: function():boolean,
* toggle: function(),
* open: function(),
* close: function(),
* onClose: function(function()),
* }}
*/
md._sidenavService;
/**
* Sidenav service is actually a function that returns an object.
* @typedef {
* function(string, boolean=):md._sidenavService
* }
*/
md.$sidenav;
/******************************************************************************
* $mdAriaProvider service
*****************************************************************************/
/** @interface */
md.$mdAriaProvider = function() {};
md.$mdAriaProvider.prototype.disableWarnings = function() {};
/******************************************************************************
* $mdThemingProvider
*****************************************************************************/
/** @interface */
md.$mdThemingProvider = function() {};
/** @param {boolean} alwaysWatch */
md.$mdThemingProvider.prototype.alwaysWatchTheme = function(alwaysWatch) {};
/** @param {boolean} onDemand */
md.$mdThemingProvider.prototype.generateThemesOnDemand = function(onDemand) {};
/**
* @param {string} name
* @param {!Object<string,string>} palette
* @return {!md.$mdThemingProvider}
*/
md.$mdThemingProvider.prototype.definePalette = function(name, palette) {};
/**
* @param {string} name
* @param {!Object<string,string>} extension
* @return {!Object<string,string>}
*/
md.$mdThemingProvider.prototype.extendPalette = function(name, extension) {};
/** @param {string} name */
md.$mdThemingProvider.prototype.setDefaultTheme = function(name) {};
/**
* @param {string} name
* @param {string=} opt_parentTheme
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.prototype.theme = function(name, opt_parentTheme) {};
/** @param {string} nonce */
md.$mdThemingProvider.prototype.setNonce = function(nonce) {};
/** @param {string} styles */
md.$mdThemingProvider.prototype.registerStyles = function(styles) {};
/**
* @param {?Object=} options
* @return {!Function}
*/
md.$mdThemingProvider.prototype.enableBrowserColor = function(options) {};
/******************************************************************************
* $mdTheming service
*****************************************************************************/
/** @interface */
md.$mdTheming = function() {};
/**
* @param {string} name
* @return {boolean}
*/
md.$mdTheming.prototype.registered = function(name) {};
/** @return {string} */
md.$mdTheming.prototype.defaultTheme = function() {};
/** @param {string} name */
md.$mdTheming.prototype.generateTheme = function(name) {};
/** @type {boolean} */
md.$mdTheming.prototype.ALWAYS_WATCH;
/** @type {!Object<string, !Object<string,string>>} */
md.$mdTheming.prototype.PALETTES;
/** @type {!Object<string, !md.$mdThemingProvider.Theme>} */
md.$mdTheming.prototype.THEMES;
/******************************************************************************/
/**
* @param {string} name
* @interface
*/
md.$mdThemingProvider.Theme = function(name) {};
/** @type {string} */
md.$mdThemingProvider.Theme.prototype.name;
/** @type {!Object<string,string>} */
md.$mdThemingProvider.Theme.prototype.colors;
/** @type {boolean} */
md.$mdThemingProvider.Theme.prototype.isDark;
/**
* @param {string} primaryPalette
* @param {Object<string,string>=} opt_hues
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.Theme.prototype.primaryPalette =
function(primaryPalette, opt_hues) {};
/**
* @param {string} accentPalette
* @param {Object<string,string>=} opt_hues
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.Theme.prototype.accentPalette =
function(accentPalette, opt_hues) {};
/**
* @param {string} backgroundPalette
* @param {Object<string,string>=} opt_hues
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.Theme.prototype.backgroundPalette =
function(backgroundPalette, opt_hues) {};
/**
* @param {string} warnPalette
* @param {Object<string,string>=} opt_hues
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.Theme.prototype.warnPalette =
function(warnPalette, opt_hues) {};
/**
* @param {boolean=} opt_isDark
* @return {!md.$mdThemingProvider.Theme}
*/
md.$mdThemingProvider.Theme.prototype.dark = function(opt_isDark) {};
/******************************************************************************
* $mdColors Service
*****************************************************************************/
/** @interface */
md.$mdColors = function() {};
/**
* @param {!angular.JQLite} element
* @param {?Object} colorExpression
*/
md.$mdColors.prototype.applyThemeColors = function(element, colorExpression) {};
/**
* @param {string} expression
* @return {string}
*/
md.$mdColors.prototype.getThemeColor = function(expression) {};
/******************************************************************************
* $mdIcon Service
*****************************************************************************/
/** @typedef {function(string): !angular.$q.Promise<!Element>} */
md.$mdIcon;
/******************************************************************************
* $mdIconProvider Service
*****************************************************************************/
/** @interface */
md.$mdIconProvider = function() {};
/**
* @param {string} id
* @param {string|!Object} url
* @param {number=} opt_iconSize
* @return {!md.$mdIconProvider}
*/
md.$mdIconProvider.prototype.icon = function(id, url, opt_iconSize) {};
/**
* @param {string} id
* @param {string|!Object} url
* @param {number=} opt_iconSize
* @return {!md.$mdIconProvider}
*/
md.$mdIconProvider.prototype.iconSet = function(id, url, opt_iconSize) {};
/**
* @param {string|!Object} url
* @param {number=} opt_iconSize
* @return {!md.$mdIconProvider}
*/
md.$mdIconProvider.prototype.defaultIconSet = function(url, opt_iconSize) {};
/**
* @param {number} iconSize
* @return {!md.$mdIconProvider}
*/
md.$mdIconProvider.prototype.defaultIconSize = function(iconSize) {};
/**
* @param {string} name
* @return {!md.$mdIconProvider}
*/
md.$mdIconProvider.prototype.defaultFontSet = function(name) {};
/******************************************************************************
* $mdMedia Service
*****************************************************************************/
/**
* @typedef {function(string): boolean}
*/
md.$mdMedia;
/******************************************************************************
* $mdMenu Service
*****************************************************************************/
/** @interface */
md.$mdMenu = function() {};
/**
* @param {*=} opt_reason Data to resolve the promise with.
* @param {*=} opt_options
* @return {!angular.$q.Promise}
*/
md.$mdMenu.prototype.hide = function(opt_reason, opt_options) {};
/******************************************************************************
* $mdMenu that is provided to the scope of the trigger element so that the
* menu can be closed/opened from the template.
* https://material.angularjs.org/latest/api/directive/mdMenu
*****************************************************************************/
/** @interface */
md.menu = function() {};
/** @param {!Event=} opt_event */
md.menu.prototype.open = function(opt_event) {};
/**
* @param {boolean=} opt_skipFocus
* @param {*=} opt_closeOptions
*/
md.menu.prototype.close = function(opt_skipFocus, opt_closeOptions) {};
/******************************************************************************
* $mdSelect Service
*****************************************************************************/
/** @interface */
md.$select = function() {};
/**
* @param {*} options
* @return {!angular.$q.Promise}
*/
md.$select.prototype.show = function(options) {};
/**
* @param {VALUE=} opt_reason Data to resolve the promise with.
* @param {*=} opt_options
* @return {!angular.$q.Promise<VALUE>}
* @template VALUE
*/
md.$select.prototype.hide = function(opt_reason, opt_options) {};
/**
* @param {VALUE=} opt_reason Data to reject the promise with.
* @param {*=} opt_options
* @return {!angular.$q.Promise<VALUE>}
* @template VALUE
*/
md.$select.prototype.cancel = function(opt_reason, opt_options) {};
/******************************************************************************
* $mdDateLocaleProvider
*****************************************************************************/
/** @interface */
md.$mdDateLocaleProvider = function() {};
/** @type {Array<string>} */
md.$mdDateLocaleProvider.prototype.months;
/** @type {Array<string>} */
md.$mdDateLocaleProvider.prototype.shortMonths;
/** @type {Array<string>} */
md.$mdDateLocaleProvider.prototype.days;
/** @type {Array<string>} */
md.$mdDateLocaleProvider.prototype.shortDays;
/** @type {number} */
md.$mdDateLocaleProvider.prototype.firstDayOfWeek;
/** @type {Array<string|number>} */
md.$mdDateLocaleProvider.prototype.dates;
/** @type {string} */
md.$mdDateLocaleProvider.prototype.msgCalendar;
/** @type {string} */
md.$mdDateLocaleProvider.prototype.msgOpenCalendar;
// The functions on $mdDateLocaleProvider are defined as fields because
// they are meant to be directly set by consuming code.
/** @type {function(string): Date} */
md.$mdDateLocaleProvider.prototype.parseDate = function(dateString) {};
/** @type {function(Date): string} */
md.$mdDateLocaleProvider.prototype.formatDate = function(date) {};
/** @type {function(Date): string} */
md.$mdDateLocaleProvider.prototype.monthHeaderFormatter = function(date) {};
/** @type {function(number): string} */
md.$mdDateLocaleProvider.prototype.weekNumberFormatter = function(weekNum) {};
/** @type {function(Date): string} */
md.$mdDateLocaleProvider.prototype.longDateFormatter = function(date) {};
/** @type {function(string): boolean} */
md.$mdDateLocaleProvider.prototype.isDateComplete = function(dateString) {};
/******************************************************************************
* $mdGestureProvider
*****************************************************************************/
/** @interface */
md.$mdGestureProvider = function() {};
/**
* @return {boolean}
*/
md.$mdGestureProvider.prototype.skipClickHijack = function() {};
/******************************************************************************
* $mdInkRippleProvider
*****************************************************************************/
/** @interface */
md.$mdInkRippleProvider = function() {};
md.$mdInkRippleProvider.prototype.disableInkRipple = function() {};
/******************************************************************************
* VirtualRepeatContainerController
*****************************************************************************/
/** @interface */
md.VirtualRepeatContainerController = function() {};
/** @return {boolean} */
md.VirtualRepeatContainerController.prototype.isHorizontal = function() {};
/** @return {number} */
md.VirtualRepeatContainerController.prototype.getSize = function() {};
/** @return {number} */
md.VirtualRepeatContainerController.prototype.getScrollSize = function() {};
/** @return {number} */
md.VirtualRepeatContainerController.prototype.getScrollOffset = function() {};
/** @param {number} position */
md.VirtualRepeatContainerController.prototype.scrollTo = function(position) {};
/** @param {number} index */
md.VirtualRepeatContainerController.prototype.scrollToIndex =
function(index) {};
md.VirtualRepeatContainerController.prototype.resetScroll = function() {};
/******************************************************************************
* VirtualRepeatController
*****************************************************************************/
/** @interface */
md.VirtualRepeatController = function() {};
/** @return {?number} */
md.VirtualRepeatController.prototype.getItemSize = function() {};
/******************************************************************************
* $panel Service
*****************************************************************************/
/** @constructor */
md.$panel = function() {};
/**
* @typedef {{
* template: (string|undefined),
* templateUrl: (string|!Object|undefined),
* controller: (angular.Injectable|string|undefined),
* controllerAs: (string|undefined),
* locals: (!Object|undefined),
* resolve: (!Object|undefined),
* attachTo: (!angular.JQLite|!Element|undefined),
* propagateContainerEvents: (boolean|undefined),
* panelClass: (string|undefined),
* position: (!md.$panel.MdPanelPosition|undefined),
* clickOutsideToClose: (boolean|undefined),
* escapeToClose: (boolean|undefined),
* trapFocus: (boolean|undefined),
* focusOnOpen: (boolean|undefined),
* fullscreen: (boolean|undefined),
* animation: (!md.$panel.MdPanelAnimation|undefined),
* hasBackdrop: (boolean|undefined),
* disableParentScroll: (boolean|undefined),
* onDomAdded: (Function|undefined),
* onOpenComplete: (Function|undefined),
* onRemoving: (Function|undefined),
* onDomRemoved: (Function|undefined),
* origin: (!angular.JQLite|!Element|undefined),
* onCloseSuccess: (function(!md.$panel.MdPanelRef, string)|undefined),
* groupName: (string|!Array<string>|undefined),
* }}
*/
md.$panel.config;
/**
* @param {!md.$panel.config=} opt_config
* @return {!md.$panel.MdPanelRef}
*/
md.$panel.prototype.create = function(opt_config) {};
/**
* @param {!md.$panel.config=} opt_config
* @return {!angular.$q.Promise<!md.$panel.MdPanelRef>}
*/
md.$panel.prototype.open = function(opt_config) {};
/** @return {!md.$panel.MdPanelPosition} */
md.$panel.prototype.newPanelPosition = function() {};
/** @return {!md.$panel.MdPanelAnimation} */
md.$panel.prototype.newPanelAnimation = function() {};
/**
* @param {string} groupName
* @param {{maxOpen: (number|undefined)}=} opt_config
* @return {{
* panels: !Array<!md.$panel.MdPanelRef>,
* openPanels: !Array<!md.$panel.MdPanelRef>,
* maxOpen: number,
* }}
*/
md.$panel.prototype.newPanelGroup = function(groupName, opt_config) {};
/**
* @param {string} groupName
* @param {number} maxOpen
*/
md.$panel.prototype.setGroupMaxOpen = function(groupName, maxOpen) {};
/**
* Possible values of xPosition.
* @enum {string}
*/
md.$panel.prototype.xPosition = {
CENTER: 'center',
ALIGN_START: 'align-start',
ALIGN_END: 'align-end',
OFFSET_START: 'offset-start',
OFFSET_END: 'offset-end',
};
/**
* Possible values of yPosition.
* @enum {string}
*/
md.$panel.prototype.yPosition = {
CENTER: 'center',
ALIGN_TOPS: 'align-tops',
ALIGN_BOTTOMS: 'align-bottoms',
ABOVE: 'above',
BELOW: 'below',
};
/**
* Possible values of absPosition.
* @enum {string}
*/
md.$panel.prototype.absPosition = {
TOP: 'top',
RIGHT: 'right',
BOTTOM: 'bottom',
LEFT: 'left',
};
/**
* Possible default animations.
* @enum {string}
*/
md.$panel.prototype.animation = {
SLIDE: 'md-panel-animate-slide',
SCALE: 'md-panel-animate-scale',
FADE: 'md-panel-animate-fade',
};
/**
* Possible types of interceptors.
* @enum {string}
*/
md.$panel.prototype.interceptorTypes = {
CLOSE: 'onClose',
};
/**
* Possible reasons for close.
* @enum {string}
*/
md.$panel.prototype.closeReasons = {
CLICK_OUTSIDE: 'clickOutsideToClose',
ESCAPE: 'escapeToClose',
};
/**
* @param {!md.$panel.config} config
* @param {!angular.$injector} $injector
* @interface
*/
md.$panel.MdPanelRef = function(config, $injector) {};
/** @type {string} */
md.$panel.MdPanelRef.prototype.id;
/** @type {!md.$panel.config} */
md.$panel.MdPanelRef.prototype.config;
/** @type {!angular.JQLite|undefined} */
md.$panel.MdPanelRef.prototype.panelContainer;
/** @type {!angular.JQLite|undefined} */
md.$panel.MdPanelRef.prototype.panelEl;
/** @type {boolean} */
md.$panel.MdPanelRef.prototype.isAttached;
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.open = function() {};
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.close = function() {};
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.attach = function() {};
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.detach = function() {};
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.show = function() {};
/** @return {!angular.$q.Promise<!md.$panel.MdPanelRef>} */
md.$panel.MdPanelRef.prototype.hide = function() {};
md.$panel.MdPanelRef.prototype.destroy = function() {};
/**
* @param {string} type
* @param {function(): !angular.$q.Promise<*>} callback
* @return {!md.$panel.MdPanelRef}
*/
md.$panel.MdPanelRef.prototype.registerInterceptor =
function(type, callback) {};
/**
* @param {string} type
* @param {function(): !angular.$q.Promise<*>} callback
* @return {!md.$panel.MdPanelRef}
*/
md.$panel.MdPanelRef.prototype.removeInterceptor = function(type, callback) {};
/**
* @param {string=} opt_type
* @return {!md.$panel.MdPanelRef}
*/
md.$panel.MdPanelRef.prototype.removeAllInterceptors = function(opt_type) {};
/**
* @param {string} classToAdd
* @param {boolean} toElement
*/
md.$panel.MdPanelRef.prototype.addClass =
function(classToAdd, toElement) {};
/**
* @param {string} classToRemove
* @param {boolean} fromElement
*/
md.$panel.MdPanelRef.prototype.removeClass =
function(classToRemove, fromElement) {};
/**
* @param {string} classToToggle
* @param {boolean} onElement
*/
md.$panel.MdPanelRef.prototype.toggleClass =
function(classToToggle, onElement) {};
/** @param {!md.$panel.MdPanelPosition} position */
md.$panel.MdPanelRef.prototype.updatePosition = function(position) {};
/**
* @param {!angular.$window} $window
* @interface
*/
md.$panel.MdPanelPosition = function($window) {};
/** @return {!md.$panel.MdPanelPosition} */
md.$panel.MdPanelPosition.prototype.absolute = function() {};
/**
* @param {string|!Element|!angular.JQLite} element
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.relativeTo = function(element) {};
/**
* @param {string=} opt_top
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.top = function(opt_top) {};
/**
* @param {string=} opt_bottom
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.bottom = function(opt_bottom) {};
/**
* @param {string=} opt_left
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.left = function(opt_left) {};
/**
* @param {string=} opt_right
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.right = function(opt_right) {};
/** @return {!md.$panel.MdPanelPosition} */
md.$panel.MdPanelPosition.prototype.centerHorizontally = function() {};
/** @return {!md.$panel.MdPanelPosition} */
md.$panel.MdPanelPosition.prototype.centerVertically = function() {};
/** @return {!md.$panel.MdPanelPosition} */
md.$panel.MdPanelPosition.prototype.center = function() {};
/**
* @param {string} xPosition
* @param {string} yPosition
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.addPanelPosition =
function(xPosition, yPosition) {};
/**
* @param {string|function(md.$panel.MdPanelPosition): string} offsetX
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.withOffsetX = function(offsetX) {};
/**
* @param {string|function(md.$panel.MdPanelPosition): string} offsetY
* @return {!md.$panel.MdPanelPosition}
*/
md.$panel.MdPanelPosition.prototype.withOffsetY = function(offsetY) {};
/**
* @param {!angular.$injector} $injector
* @interface
*/
md.$panel.MdPanelAnimation = function($injector) {};
/**
* @param {string|!Element|!Event|{top: number, left: number}} openFrom
* @return {!md.$panel.MdPanelAnimation}
*/
md.$panel.MdPanelAnimation.prototype.openFrom = function(openFrom) {};
/**
* @param {string|!Element|{top: number, left: number}} closeTo
* @return {!md.$panel.MdPanelAnimation}
*/
md.$panel.MdPanelAnimation.prototype.closeTo = function(closeTo) {};
/**
* @param {number|{open: number, close: number}} duration
* @returns {!md.$panel.MdPanelAnimation}
*/
md.$panel.MdPanelAnimation.prototype.duration = function(duration) {};
/**
* @param {string|{open: string, close: string}} cssClass
* @return {!md.$panel.MdPanelAnimation}
*/
md.$panel.MdPanelAnimation.prototype.withAnimation = function(cssClass) {};
/******************************************************************************
* DatePickerCtrl
*****************************************************************************/
/** @interface */
md.DatePickerCtrl = function() {};
/**
* @param {Date=} opt_date
*/
md.DatePickerCtrl.prototype.updateErrorState = function(opt_date) {};