UNPKG

52.7 kBJavaScriptView Raw
1/**
2 * @fileoverview Generated typings for Polymer mixins
3 * @externs
4 * @suppress {checkPrototypalTypes}
5 *
6 * @license
7 * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
8 * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
9 * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
10 * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
11 * Code distributed by Google as part of the polymer project is also
12 * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
13 */
14/* eslint-disable */
15/**
16* @interface
17*/
18function Polymer_PropertiesChanged(){}
19/** @type {boolean} */
20Polymer_PropertiesChanged.prototype.__dataEnabled;
21
22/**
23* @override
24* @param {string} property Name of the property
25* @param {boolean=} readOnly When true, no setter is created; the
26 protected `_setProperty` function must be used to set the property
27* @return {void}
28*/
29Polymer_PropertiesChanged.prototype._createPropertyAccessor = function(property, readOnly){};
30/**
31* @override
32* @param {string} property Name of the property
33*/
34Polymer_PropertiesChanged.prototype._addPropertyToAttributeMap = function(property){};
35/**
36* @override
37* @param {string} property Name of the property
38* @param {boolean=} readOnly When true, no setter is created
39* @return {void}
40*/
41Polymer_PropertiesChanged.prototype._definePropertyAccessor = function(property, readOnly){};
42/**
43* @override
44* @return {void}
45*/
46Polymer_PropertiesChanged.prototype.ready = function(){};
47/**
48* @override
49* @return {void}
50*/
51Polymer_PropertiesChanged.prototype._initializeProperties = function(){};
52/**
53* @override
54* @param {Object} props Bag of property values that were overwritten
55 when creating property accessors.
56* @return {void}
57*/
58Polymer_PropertiesChanged.prototype._initializeInstanceProperties = function(props){};
59/**
60* @override
61* @param {string} property Name of the property
62* @param {*} value Value to set
63* @return {void}
64*/
65Polymer_PropertiesChanged.prototype._setProperty = function(property, value){};
66/**
67* @override
68* @param {string} property Name of property
69* @return {*}
70*/
71Polymer_PropertiesChanged.prototype._getProperty = function(property){};
72/**
73* @override
74* @param {string} property Name of the property
75* @param {*} value Value to set
76* @param {boolean=} ext Not used here; affordance for closure
77* @return {boolean}
78*/
79Polymer_PropertiesChanged.prototype._setPendingProperty = function(property, value, ext){};
80/**
81* @param {string} property Name of the property
82* @return {boolean}
83*/
84Polymer_PropertiesChanged.prototype._isPropertyPending = function(property){};
85/**
86* @override
87* @return {void}
88*/
89Polymer_PropertiesChanged.prototype._invalidateProperties = function(){};
90/**
91* @override
92* @return {void}
93*/
94Polymer_PropertiesChanged.prototype._enableProperties = function(){};
95/**
96* @override
97* @return {void}
98*/
99Polymer_PropertiesChanged.prototype._flushProperties = function(){};
100/**
101* @override
102* @param {!Object} currentProps Bag of all current accessor values
103* @param {?Object} changedProps Bag of properties changed since the last
104 call to `_propertiesChanged`
105* @param {?Object} oldProps Bag of previous values for each property
106 in `changedProps`
107* @return {boolean}
108*/
109Polymer_PropertiesChanged.prototype._shouldPropertiesChange = function(currentProps, changedProps, oldProps){};
110/**
111* @override
112* @param {!Object} currentProps Bag of all current accessor values
113* @param {?Object} changedProps Bag of properties changed since the last
114 call to `_propertiesChanged`
115* @param {?Object} oldProps Bag of previous values for each property
116 in `changedProps`
117* @return {void}
118*/
119Polymer_PropertiesChanged.prototype._propertiesChanged = function(currentProps, changedProps, oldProps){};
120/**
121* @override
122* @param {string} property Property name
123* @param {*} value New property value
124* @param {*} old Previous property value
125* @return {boolean}
126*/
127Polymer_PropertiesChanged.prototype._shouldPropertyChange = function(property, value, old){};
128/**
129* @override
130* @param {string} name Name of attribute that changed
131* @param {?string} old Old attribute value
132* @param {?string} value New attribute value
133* @param {?string} namespace Attribute namespace.
134* @return {void}
135*/
136Polymer_PropertiesChanged.prototype.attributeChangedCallback = function(name, old, value, namespace){};
137/**
138* @override
139* @param {string} attribute Name of attribute to deserialize.
140* @param {?string} value of the attribute.
141* @param {*=} type type to deserialize to, defaults to the value
142returned from `typeForProperty`
143* @return {void}
144*/
145Polymer_PropertiesChanged.prototype._attributeToProperty = function(attribute, value, type){};
146/**
147* @override
148* @param {string} property Property name to reflect.
149* @param {string=} attribute Attribute name to reflect to.
150* @param {*=} value Property value to refect.
151* @return {void}
152*/
153Polymer_PropertiesChanged.prototype._propertyToAttribute = function(property, attribute, value){};
154/**
155* @override
156* @param {Element} node Element to set attribute to.
157* @param {*} value Value to serialize.
158* @param {string} attribute Attribute name to serialize to.
159* @return {void}
160*/
161Polymer_PropertiesChanged.prototype._valueToNodeAttribute = function(node, value, attribute){};
162/**
163* @override
164* @param {*} value Property value to serialize.
165* @return {(string | undefined)}
166*/
167Polymer_PropertiesChanged.prototype._serializeValue = function(value){};
168/**
169* @override
170* @param {?string} value Value to deserialize.
171* @param {*=} type Type to deserialize the string to.
172* @return {*}
173*/
174Polymer_PropertiesChanged.prototype._deserializeValue = function(value, type){};
175/**
176* @param {!Object} props Object whose keys are names of accessors.
177* @return {void}
178*/
179Polymer_PropertiesChanged.createProperties = function(props){};
180/**
181* @param {string} property Property to convert
182* @return {string}
183*/
184Polymer_PropertiesChanged.attributeNameForProperty = function(property){};
185/**
186* @param {string} name Name of property
187* @return {void}
188*/
189Polymer_PropertiesChanged.typeForProperty = function(name){};
190/**
191* @interface
192* @extends {Polymer_PropertiesChanged}
193*/
194function Polymer_PropertyAccessors(){}
195/**
196* @override
197* @param {string} property Name of the property
198* @param {boolean=} readOnly When true, no setter is created
199
200When calling on a prototype, any overwritten values are saved in
201`__dataProto`, and it is up to the subclasser to decide how/when
202to set those properties back into the accessor. When calling on an
203instance, the overwritten value is set via `_setPendingProperty`,
204and the user should call `_invalidateProperties` or `_flushProperties`
205for the values to take effect.
206* @return {void}
207*/
208Polymer_PropertyAccessors.prototype._definePropertyAccessor = function(property, readOnly){};
209/**
210* @override
211* @return {void}
212*/
213Polymer_PropertyAccessors.prototype._initializeProperties = function(){};
214/**
215* @override
216* @param {string} prop Property name
217* @return {boolean}
218*/
219Polymer_PropertyAccessors.prototype._isPropertyPending = function(prop){};
220/**
221* @override
222* @param {*} value Property value to serialize.
223* @return {(string | undefined)}
224*/
225Polymer_PropertyAccessors.prototype._serializeValue = function(value){};
226/**
227* @override
228* @param {?string} value Attribute value to deserialize.
229* @param {*=} type Type to deserialize the string to.
230* @return {*}
231*/
232Polymer_PropertyAccessors.prototype._deserializeValue = function(value, type){};
233/**
234* @override
235* @param {Object} props Bag of property values that were overwritten
236 when creating property accessors.
237* @return {void}
238*/
239Polymer_PropertyAccessors.prototype._initializeProtoProperties = function(props){};
240/**
241* @override
242* @param {string} attribute Name of attribute to ensure is set.
243* @param {string} value of the attribute.
244* @return {void}
245*/
246Polymer_PropertyAccessors.prototype._ensureAttribute = function(attribute, value){};
247/**
248* @override
249* @param {string} property Property name
250* @return {boolean}
251*/
252Polymer_PropertyAccessors.prototype._hasAccessor = function(property){};
253/**
254* @param {string} property Property to convert
255* @return {string}
256*/
257Polymer_PropertyAccessors.attributeNameForProperty = function(property){};
258/**
259* @return {void}
260*/
261Polymer_PropertyAccessors.createPropertiesForAttributes = function(){};
262/**
263* @interface
264*/
265function Polymer_TemplateStamp(){}
266/**
267* @override
268* @param {!HTMLTemplateElement} template Template to stamp
269* @param {TemplateInfo=} templateInfo Optional template info associated
270 with the template to be stamped; if omitted the template will be
271 automatically parsed.
272* @return {!StampedTemplate}
273*/
274Polymer_TemplateStamp.prototype._stampTemplate = function(template, templateInfo){};
275/**
276* @override
277* @param {!EventTarget} node Node to add listener on
278* @param {string} eventName Name of event
279* @param {string} methodName Name of method
280* @param {*=} context Context the method will be called on (defaults
281 to `node`)
282* @return {Function}
283*/
284Polymer_TemplateStamp.prototype._addMethodEventListenerToNode = function(node, eventName, methodName, context){};
285/**
286* @override
287* @param {!EventTarget} node Node to add event listener to
288* @param {string} eventName Name of event
289* @param {function (!Event): void} handler Listener function to add
290* @return {void}
291*/
292Polymer_TemplateStamp.prototype._addEventListenerToNode = function(node, eventName, handler){};
293/**
294* @override
295* @param {!EventTarget} node Node to remove event listener from
296* @param {string} eventName Name of event
297* @param {function (!Event): void} handler Listener function to remove
298* @return {void}
299*/
300Polymer_TemplateStamp.prototype._removeEventListenerFromNode = function(node, eventName, handler){};
301/**
302* @param {!HTMLTemplateElement} template Template to parse
303* @param {TemplateInfo=} outerTemplateInfo Template metadata from the outer
304 template, for parsing nested templates
305* @return {!TemplateInfo}
306*/
307Polymer_TemplateStamp._parseTemplate = function(template, outerTemplateInfo){};
308/**
309* @param {!HTMLTemplateElement} template .
310* @param {!TemplateInfo} templateInfo .
311* @param {!NodeInfo} nodeInfo .
312* @return {boolean}
313*/
314Polymer_TemplateStamp._parseTemplateContent = function(template, templateInfo, nodeInfo){};
315/**
316* @param {Node} node Node to parse
317* @param {!TemplateInfo} templateInfo Template metadata for current template
318* @param {!NodeInfo} nodeInfo Node metadata for current template.
319* @return {boolean}
320*/
321Polymer_TemplateStamp._parseTemplateNode = function(node, templateInfo, nodeInfo){};
322/**
323* @param {Node} root Root node whose `childNodes` will be parsed
324* @param {!TemplateInfo} templateInfo Template metadata for current template
325* @param {!NodeInfo} nodeInfo Node metadata for current template.
326* @return {void}
327*/
328Polymer_TemplateStamp._parseTemplateChildNodes = function(root, templateInfo, nodeInfo){};
329/**
330* @param {HTMLTemplateElement} node Node to parse (a <template>)
331* @param {TemplateInfo} outerTemplateInfo Template metadata for current template
332 that includes the template `node`
333* @param {!NodeInfo} nodeInfo Node metadata for current template.
334* @return {boolean}
335*/
336Polymer_TemplateStamp._parseTemplateNestedTemplate = function(node, outerTemplateInfo, nodeInfo){};
337/**
338* @param {Element} node Node to parse
339* @param {!TemplateInfo} templateInfo Template metadata for current
340 template
341* @param {!NodeInfo} nodeInfo Node metadata for current template.
342* @return {boolean}
343*/
344Polymer_TemplateStamp._parseTemplateNodeAttributes = function(node, templateInfo, nodeInfo){};
345/**
346* @param {Element} node Node to parse
347* @param {!TemplateInfo} templateInfo Template metadata for current template
348* @param {!NodeInfo} nodeInfo Node metadata for current template.
349* @param {string} name Attribute name
350* @param {string} value Attribute value
351* @return {boolean}
352*/
353Polymer_TemplateStamp._parseTemplateNodeAttribute = function(node, templateInfo, nodeInfo, name, value){};
354/**
355* @param {HTMLTemplateElement} template Template to retrieve `content` for
356* @return {DocumentFragment}
357*/
358Polymer_TemplateStamp._contentForTemplate = function(template){};
359/**
360* @interface
361* @extends {Polymer_TemplateStamp}
362* @extends {Polymer_PropertyAccessors}
363*/
364function Polymer_PropertyEffects(){}
365/** @type {boolean} */
366Polymer_PropertyEffects.prototype.__dataClientsReady;
367
368/** @type {Array} */
369Polymer_PropertyEffects.prototype.__dataPendingClients;
370
371/** @type {Object} */
372Polymer_PropertyEffects.prototype.__dataToNotify;
373
374/** @type {Object} */
375Polymer_PropertyEffects.prototype.__dataLinkedPaths;
376
377/** @type {boolean} */
378Polymer_PropertyEffects.prototype.__dataHasPaths;
379
380/** @type {Object} */
381Polymer_PropertyEffects.prototype.__dataCompoundStorage;
382
383/** @type {Polymer_PropertyEffects} */
384Polymer_PropertyEffects.prototype.__dataHost;
385
386/** @type {!Object} */
387Polymer_PropertyEffects.prototype.__dataTemp;
388
389/** @type {boolean} */
390Polymer_PropertyEffects.prototype.__dataClientsInitialized;
391
392/** @type {!Object} */
393Polymer_PropertyEffects.prototype.__data;
394
395/** @type {(!Object | null)} */
396Polymer_PropertyEffects.prototype.__dataPending;
397
398/** @type {!Object} */
399Polymer_PropertyEffects.prototype.__dataOld;
400
401/** @type {Object} */
402Polymer_PropertyEffects.prototype.__computeEffects;
403
404/** @type {Object} */
405Polymer_PropertyEffects.prototype.__computeInfo;
406
407/** @type {Object} */
408Polymer_PropertyEffects.prototype.__reflectEffects;
409
410/** @type {Object} */
411Polymer_PropertyEffects.prototype.__notifyEffects;
412
413/** @type {Object} */
414Polymer_PropertyEffects.prototype.__propagateEffects;
415
416/** @type {Object} */
417Polymer_PropertyEffects.prototype.__observeEffects;
418
419/** @type {Object} */
420Polymer_PropertyEffects.prototype.__readOnly;
421
422/** @type {!TemplateInfo} */
423Polymer_PropertyEffects.prototype.__templateInfo;
424
425/** @type {boolean} */
426Polymer_PropertyEffects.prototype._overrideLegacyUndefined;
427
428/** @type {undefined} */
429Polymer_PropertyEffects.prototype.PROPERTY_EFFECT_TYPES;
430
431/**
432* @override
433* @param {!HTMLTemplateElement} template Template to stamp
434* @param {TemplateInfo=} templateInfo Optional bound template info associated
435 with the template to be stamped; if omitted the template will be
436 automatically bound.
437* @return {!StampedTemplate}
438*/
439Polymer_PropertyEffects.prototype._stampTemplate = function(template, templateInfo){};
440/**
441* @override
442* @return {void}
443*/
444Polymer_PropertyEffects.prototype.ready = function(){};
445/**
446* @override
447* @return {void}
448*/
449Polymer_PropertyEffects.prototype._initializeProperties = function(){};
450/**
451* @override
452* @param {Object} props Properties to initialize on the instance
453* @return {void}
454*/
455Polymer_PropertyEffects.prototype._initializeInstanceProperties = function(props){};
456/**
457* @override
458* @param {string} property Name of the property
459* @param {*} value Value to set
460* @return {void}
461*/
462Polymer_PropertyEffects.prototype._setProperty = function(property, value){};
463/**
464* @override
465* @param {string} property Name of the property
466* @param {*} value Value to set
467* @param {boolean=} shouldNotify True if property should fire notification
468 event (applies only for `notify: true` properties)
469* @return {boolean}
470*/
471Polymer_PropertyEffects.prototype._setPendingProperty = function(property, value, shouldNotify){};
472/**
473* @override
474* @return {void}
475*/
476Polymer_PropertyEffects.prototype._invalidateProperties = function(){};
477/**
478* @override
479* @param {!Object} currentProps Bag of all current accessor values
480* @param {?Object} changedProps Bag of properties changed since the last
481 call to `_propertiesChanged`
482* @param {?Object} oldProps Bag of previous values for each property
483 in `changedProps`
484* @return {void}
485*/
486Polymer_PropertyEffects.prototype._propertiesChanged = function(currentProps, changedProps, oldProps){};
487/**
488* @override
489* @param {Object} props Properties to initialize on the prototype
490* @return {void}
491*/
492Polymer_PropertyEffects.prototype._initializeProtoProperties = function(props){};
493/**
494* @return {void}
495*/
496Polymer_PropertyEffects.prototype._registerHost = function(){};
497/**
498* @override
499* @param {string} property Property that should trigger the effect
500* @param {string} type Effect type, from this.PROPERTY_EFFECT_TYPES
501* @param {Object=} effect Effect metadata object
502* @return {void}
503*/
504Polymer_PropertyEffects.prototype._addPropertyEffect = function(property, type, effect){};
505/**
506* @override
507* @param {string} property Property the effect was associated with
508* @param {string} type Effect type, from this.PROPERTY_EFFECT_TYPES
509* @param {Object=} effect Effect metadata object to remove
510* @return {void}
511*/
512Polymer_PropertyEffects.prototype._removePropertyEffect = function(property, type, effect){};
513/**
514* @override
515* @param {string} property Property name
516* @param {string=} type Effect type, from this.PROPERTY_EFFECT_TYPES
517* @return {boolean}
518*/
519Polymer_PropertyEffects.prototype._hasPropertyEffect = function(property, type){};
520/**
521* @override
522* @param {string} property Property name
523* @return {boolean}
524*/
525Polymer_PropertyEffects.prototype._hasReadOnlyEffect = function(property){};
526/**
527* @override
528* @param {string} property Property name
529* @return {boolean}
530*/
531Polymer_PropertyEffects.prototype._hasNotifyEffect = function(property){};
532/**
533* @override
534* @param {string} property Property name
535* @return {boolean}
536*/
537Polymer_PropertyEffects.prototype._hasReflectEffect = function(property){};
538/**
539* @override
540* @param {string} property Property name
541* @return {boolean}
542*/
543Polymer_PropertyEffects.prototype._hasComputedEffect = function(property){};
544/**
545* @override
546* @param {(string | !Array.<(number | string)>)} path Path to set
547* @param {*} value Value to set
548* @param {boolean=} shouldNotify Set to true if this change should
549 cause a property notification event dispatch
550* @param {boolean=} isPathNotification If the path being set is a path
551 notification of an already changed value, as opposed to a request
552 to set and notify the change. In the latter `false` case, a dirty
553 check is performed and then the value is set to the path before
554 enqueuing the pending property change.
555* @return {boolean}
556*/
557Polymer_PropertyEffects.prototype._setPendingPropertyOrPath = function(path, value, shouldNotify, isPathNotification){};
558/**
559* @override
560* @param {!Node} node The node to set a property on
561* @param {string} prop The property to set
562* @param {*} value The value to set
563* @return {void}
564*/
565Polymer_PropertyEffects.prototype._setUnmanagedPropertyToNode = function(node, prop, value){};
566/**
567* @override
568* @param {Object} client PropertyEffects client to enqueue
569* @return {void}
570*/
571Polymer_PropertyEffects.prototype._enqueueClient = function(client){};
572/**
573* @override
574* @return {void}
575*/
576Polymer_PropertyEffects.prototype._flushClients = function(){};
577/**
578* @override
579* @return {void}
580*/
581Polymer_PropertyEffects.prototype._readyClients = function(){};
582/**
583* @override
584* @param {Object} props Bag of one or more key-value pairs whose key is
585 a property and value is the new value to set for that property.
586* @param {boolean=} setReadOnly When true, any private values set in
587 `props` will be set. By default, `setProperties` will not set
588 `readOnly: true` root properties.
589* @return {void}
590*/
591Polymer_PropertyEffects.prototype.setProperties = function(props, setReadOnly){};
592/**
593* @override
594* @param {Object} changedProps Bag of changed properties
595* @param {Object} oldProps Bag of previous values for changed properties
596* @param {boolean} hasPaths True with `props` contains one or more paths
597* @return {void}
598*/
599Polymer_PropertyEffects.prototype._propagatePropertyChanges = function(changedProps, oldProps, hasPaths){};
600/**
601* @param {*} templateInfo
602* @param {*} changedProps
603* @param {*} oldProps
604* @param {*} hasPaths
605* @return {void}
606*/
607Polymer_PropertyEffects.prototype._runEffectsForTemplate = function(templateInfo, changedProps, oldProps, hasPaths){};
608/**
609* @override
610* @param {(string | !Array.<(string | number)>)} to Target path to link.
611* @param {(string | !Array.<(string | number)>)} from Source path to link.
612* @return {void}
613*/
614Polymer_PropertyEffects.prototype.linkPaths = function(to, from){};
615/**
616* @override
617* @param {(string | !Array.<(string | number)>)} path Target path to unlink.
618* @return {void}
619*/
620Polymer_PropertyEffects.prototype.unlinkPaths = function(path){};
621/**
622* @override
623* @param {string} path Path that should be notified.
624* @param {Array} splices Array of splice records indicating ordered
625 changes that occurred to the array. Each record should have the
626 following fields:
627 * index: index at which the change occurred
628 * removed: array of items that were removed from this index
629 * addedCount: number of new items added at this index
630 * object: a reference to the array in question
631 * type: the string literal 'splice'
632
633 Note that splice records _must_ be normalized such that they are
634 reported in index order (raw results from `Object.observe` are not
635 ordered and must be normalized/merged before notifying).
636* @return {void}
637*/
638Polymer_PropertyEffects.prototype.notifySplices = function(path, splices){};
639/**
640* @override
641* @param {(string | !Array.<(string | number)>)} path Path to the value
642 to read. The path may be specified as a string (e.g. `foo.bar.baz`)
643 or an array of path parts (e.g. `['foo.bar', 'baz']`). Note that
644 bracketed expressions are not supported; string-based path parts
645 *must* be separated by dots. Note that when dereferencing array
646 indices, the index may be used as a dotted part directly
647 (e.g. `users.12.name` or `['users', 12, 'name']`).
648* @param {Object=} root Root object from which the path is evaluated.
649* @return {*}
650*/
651Polymer_PropertyEffects.prototype.get = function(path, root){};
652/**
653* @override
654* @param {(string | !Array.<(string | number)>)} path Path to the value
655 to write. The path may be specified as a string (e.g. `'foo.bar.baz'`)
656 or an array of path parts (e.g. `['foo.bar', 'baz']`). Note that
657 bracketed expressions are not supported; string-based path parts
658 *must* be separated by dots. Note that when dereferencing array
659 indices, the index may be used as a dotted part directly
660 (e.g. `'users.12.name'` or `['users', 12, 'name']`).
661* @param {*} value Value to set at the specified path.
662* @param {Object=} root Root object from which the path is evaluated.
663 When specified, no notification will occur.
664* @return {void}
665*/
666Polymer_PropertyEffects.prototype.set = function(path, value, root){};
667/**
668* @override
669* @param {(string | !Array.<(string | number)>)} path Path to array.
670* @param {...*} items Items to push onto array
671* @return {number}
672*/
673Polymer_PropertyEffects.prototype.push = function(path, items){};
674/**
675* @override
676* @param {(string | !Array.<(string | number)>)} path Path to array.
677* @return {*}
678*/
679Polymer_PropertyEffects.prototype.pop = function(path){};
680/**
681* @override
682* @param {(string | !Array.<(string | number)>)} path Path to array.
683* @param {number} start Index from which to start removing/inserting.
684* @param {number=} deleteCount Number of items to remove.
685* @param {...*} items Items to insert into array.
686* @return {!Array}
687*/
688Polymer_PropertyEffects.prototype.splice = function(path, start, deleteCount, items){};
689/**
690* @override
691* @param {(string | !Array.<(string | number)>)} path Path to array.
692* @return {*}
693*/
694Polymer_PropertyEffects.prototype.shift = function(path){};
695/**
696* @override
697* @param {(string | !Array.<(string | number)>)} path Path to array.
698* @param {...*} items Items to insert info array
699* @return {number}
700*/
701Polymer_PropertyEffects.prototype.unshift = function(path, items){};
702/**
703* @override
704* @param {string} path Path that should be notified.
705* @param {*=} value Value at the path (optional).
706* @return {void}
707*/
708Polymer_PropertyEffects.prototype.notifyPath = function(path, value){};
709/**
710* @override
711* @param {string} property Property name
712* @param {boolean=} protectedSetter Creates a custom protected setter
713 when `true`.
714* @return {void}
715*/
716Polymer_PropertyEffects.prototype._createReadOnlyProperty = function(property, protectedSetter){};
717/**
718* @override
719* @param {string} property Property name
720* @param {(string | function (*, *))} method Function or name of observer method
721 to call
722* @param {boolean=} dynamicFn Whether the method name should be included as
723 a dependency to the effect.
724* @return {void}
725*/
726Polymer_PropertyEffects.prototype._createPropertyObserver = function(property, method, dynamicFn){};
727/**
728* @override
729* @param {string} expression Method expression
730* @param {(boolean | Object)=} dynamicFn Boolean or object map indicating
731 whether method names should be included as a dependency to the effect.
732* @return {void}
733*/
734Polymer_PropertyEffects.prototype._createMethodObserver = function(expression, dynamicFn){};
735/**
736* @override
737* @param {string} property Property name
738* @return {void}
739*/
740Polymer_PropertyEffects.prototype._createNotifyingProperty = function(property){};
741/**
742* @override
743* @param {string} property Property name
744* @return {void}
745*/
746Polymer_PropertyEffects.prototype._createReflectedProperty = function(property){};
747/**
748* @override
749* @param {string} property Name of computed property to set
750* @param {string} expression Method expression
751* @param {(boolean | Object)=} dynamicFn Boolean or object map indicating
752 whether method names should be included as a dependency to the effect.
753* @return {void}
754*/
755Polymer_PropertyEffects.prototype._createComputedProperty = function(property, expression, dynamicFn){};
756/**
757* @override
758* @param {!HTMLTemplateElement} template Template containing binding
759bindings
760* @param {boolean=} instanceBinding When false (default), performs
761"prototypical" binding of the template and overwrites any previously
762bound template for the class. When true (as passed from
763`_stampTemplate`), the template info is instanced and linked into the
764list of bound templates.
765* @return {!TemplateInfo}
766*/
767Polymer_PropertyEffects.prototype._bindTemplate = function(template, instanceBinding){};
768/**
769* @override
770* @param {!StampedTemplate} dom DocumentFragment previously returned
771 from `_stampTemplate` associated with the nodes to be removed
772* @return {void}
773*/
774Polymer_PropertyEffects.prototype._removeBoundDom = function(dom){};
775/**
776* @param {Node} node Node to parse
777* @param {TemplateInfo} templateInfo Template metadata for current template
778* @param {NodeInfo} nodeInfo Node metadata for current template node
779* @return {boolean}
780*/
781Polymer_PropertyEffects._parseTemplateNode = function(node, templateInfo, nodeInfo){};
782/**
783* @param {Node} node Node to parse
784* @param {TemplateInfo} templateInfo Template metadata for current template
785* @param {NodeInfo} nodeInfo Node metadata for current template node
786* @return {boolean}
787*/
788Polymer_PropertyEffects._parseTemplateNestedTemplate = function(node, templateInfo, nodeInfo){};
789/**
790* @param {Element} node Node to parse
791* @param {TemplateInfo} templateInfo Template metadata for current template
792* @param {NodeInfo} nodeInfo Node metadata for current template node
793* @param {string} name Attribute name
794* @param {string} value Attribute value
795* @return {boolean}
796*/
797Polymer_PropertyEffects._parseTemplateNodeAttribute = function(node, templateInfo, nodeInfo, name, value){};
798/**
799* @param {string} property Property that should trigger the effect
800* @param {string} type Effect type, from this.PROPERTY_EFFECT_TYPES
801* @param {Object=} effect Effect metadata object
802* @return {void}
803*/
804Polymer_PropertyEffects.addPropertyEffect = function(property, type, effect){};
805/**
806* @param {string} property Property name
807* @param {(string | function (*, *))} method Function or name of observer method to call
808* @param {boolean=} dynamicFn Whether the method name should be included as
809 a dependency to the effect.
810* @return {void}
811*/
812Polymer_PropertyEffects.createPropertyObserver = function(property, method, dynamicFn){};
813/**
814* @param {string} expression Method expression
815* @param {(boolean | Object)=} dynamicFn Boolean or object map indicating
816* @return {void}
817*/
818Polymer_PropertyEffects.createMethodObserver = function(expression, dynamicFn){};
819/**
820* @param {string} property Property name
821* @return {void}
822*/
823Polymer_PropertyEffects.createNotifyingProperty = function(property){};
824/**
825* @param {string} property Property name
826* @param {boolean=} protectedSetter Creates a custom protected setter
827 when `true`.
828* @return {void}
829*/
830Polymer_PropertyEffects.createReadOnlyProperty = function(property, protectedSetter){};
831/**
832* @param {string} property Property name
833* @return {void}
834*/
835Polymer_PropertyEffects.createReflectedProperty = function(property){};
836/**
837* @param {string} property Name of computed property to set
838* @param {string} expression Method expression
839* @param {(boolean | Object)=} dynamicFn Boolean or object map indicating whether
840 method names should be included as a dependency to the effect.
841* @return {void}
842*/
843Polymer_PropertyEffects.createComputedProperty = function(property, expression, dynamicFn){};
844/**
845* @param {!HTMLTemplateElement} template Template containing binding
846 bindings
847* @return {!TemplateInfo}
848*/
849Polymer_PropertyEffects.bindTemplate = function(template){};
850/**
851* @param {Object} templateInfo Template metadata to add effect to
852* @param {string} prop Property that should trigger the effect
853* @param {Object=} effect Effect metadata object
854* @return {void}
855*/
856Polymer_PropertyEffects._addTemplatePropertyEffect = function(templateInfo, prop, effect){};
857/**
858* @param {string} text Text to parse from attribute or textContent
859* @param {Object} templateInfo Current template metadata
860* @return {Array.<!BindingPart>}
861*/
862Polymer_PropertyEffects._parseBindings = function(text, templateInfo){};
863/**
864* @param {!Polymer_PropertyEffects} inst Element that should be used as
865 scope for binding dependencies
866* @param {BindingPart} part Binding part metadata
867* @param {string} path Property/path that triggered this effect
868* @param {Object} props Bag of current property changes
869* @param {Object} oldProps Bag of previous values for changed properties
870* @param {boolean} hasPaths True with `props` contains one or more paths
871* @return {*}
872*/
873Polymer_PropertyEffects._evaluateBinding = function(inst, part, path, props, oldProps, hasPaths){};
874/**
875* @interface
876* @extends {Polymer_PropertiesChanged}
877*/
878function Polymer_PropertiesMixin(){}
879/**
880* @override
881* @return {void}
882*/
883Polymer_PropertiesMixin.prototype._initializeProperties = function(){};
884/**
885* @override
886* @return {void}
887*/
888Polymer_PropertiesMixin.prototype.connectedCallback = function(){};
889/**
890* @override
891* @return {void}
892*/
893Polymer_PropertiesMixin.prototype.disconnectedCallback = function(){};
894/**
895* @param {string} name Name of property
896* @return {*}
897*/
898Polymer_PropertiesMixin.typeForProperty = function(name){};
899/**
900* @return {void}
901*/
902Polymer_PropertiesMixin.finalize = function(){};
903/**
904* @return {void}
905*/
906Polymer_PropertiesMixin._finalizeClass = function(){};
907/**
908* @interface
909* @extends {Polymer_PropertyEffects}
910* @extends {Polymer_PropertiesMixin}
911*/
912function Polymer_ElementMixin(){}
913/** @type {HTMLTemplateElement} */
914Polymer_ElementMixin.prototype._template;
915
916/** @type {string} */
917Polymer_ElementMixin.prototype._importPath;
918
919/** @type {string} */
920Polymer_ElementMixin.prototype.rootPath;
921
922/** @type {string} */
923Polymer_ElementMixin.prototype.importPath;
924
925/** @type {(StampedTemplate | HTMLElement | ShadowRoot)} */
926Polymer_ElementMixin.prototype.root;
927
928/** @type {!Object.<string, !Element>} */
929Polymer_ElementMixin.prototype.$;
930
931/**
932* @override
933* @return {void}
934*/
935Polymer_ElementMixin.prototype.ready = function(){};
936/**
937* @override
938* @return {void}
939*/
940Polymer_ElementMixin.prototype._initializeProperties = function(){};
941/**
942* @override
943* @return {void}
944*/
945Polymer_ElementMixin.prototype._readyClients = function(){};
946/**
947* @override
948* @return {void}
949*/
950Polymer_ElementMixin.prototype.connectedCallback = function(){};
951/**
952* @override
953* @param {string} property Name of the property
954* @return {boolean}
955*/
956Polymer_ElementMixin.prototype._canApplyPropertyDefault = function(property){};
957/**
958* @override
959* @param {StampedTemplate} dom to attach to the element.
960* @return {ShadowRoot}
961*/
962Polymer_ElementMixin.prototype._attachDom = function(dom){};
963/**
964* @override
965* @param {Object=} properties Bag of custom property key/values to
966 apply to this element.
967* @return {void}
968*/
969Polymer_ElementMixin.prototype.updateStyles = function(properties){};
970/**
971* @override
972* @param {string} url URL to resolve.
973* @param {string=} base Optional base URL to resolve against, defaults
974to the element's `importPath`
975* @return {string}
976*/
977Polymer_ElementMixin.prototype.resolveUrl = function(url, base){};
978/**
979* @param {!HTMLTemplateElement} template Template
980* @param {!TemplateInfo} templateInfo Template metadata for current template
981* @param {!NodeInfo} nodeInfo Node metadata for current template.
982* @return {boolean}
983*/
984Polymer_ElementMixin._parseTemplateContent = function(template, templateInfo, nodeInfo){};
985/**
986* @param {!Object} props .
987* @return {void}
988*/
989Polymer_ElementMixin.createProperties = function(props){};
990/**
991* @param {Object} templateInfo Template metadata to add effect to
992* @param {string} prop Property that should trigger the effect
993* @param {Object=} effect Effect metadata object
994* @return {void}
995*/
996Polymer_ElementMixin._addTemplatePropertyEffect = function(templateInfo, prop, effect){};
997/**
998* @return {void}
999*/
1000Polymer_ElementMixin._finalizeClass = function(){};
1001/**
1002* @return {void}
1003*/
1004Polymer_ElementMixin._prepareTemplate = function(){};
1005/**
1006* @param {Object} observers Array of observer descriptors for
1007 this class
1008* @param {Object} dynamicFns Object containing keys for any properties
1009 that are functions and should trigger the effect when the function
1010 reference is changed
1011* @return {void}
1012*/
1013Polymer_ElementMixin.createObservers = function(observers, dynamicFns){};
1014/**
1015* @param {string} cssText Text containing styling to process
1016* @param {string} baseURI Base URI to rebase CSS paths against
1017* @return {string}
1018*/
1019Polymer_ElementMixin._processStyleText = function(cssText, baseURI){};
1020/**
1021* @param {string} is Tag name (or type extension name) for this element
1022* @return {void}
1023*/
1024Polymer_ElementMixin._finalizeTemplate = function(is){};
1025/**
1026* @interface
1027*/
1028function Polymer_GestureEventListeners(){}
1029/**
1030* @override
1031* @param {!EventTarget} node Node to add event listener to
1032* @param {string} eventName Name of event
1033* @param {function (!Event): void} handler Listener function to add
1034* @return {void}
1035*/
1036Polymer_GestureEventListeners.prototype._addEventListenerToNode = function(node, eventName, handler){};
1037/**
1038* @override
1039* @param {!EventTarget} node Node to remove event listener from
1040* @param {string} eventName Name of event
1041* @param {function (!Event): void} handler Listener function to remove
1042* @return {void}
1043*/
1044Polymer_GestureEventListeners.prototype._removeEventListenerFromNode = function(node, eventName, handler){};
1045/**
1046* @interface
1047* @extends {Polymer_PropertyAccessors}
1048*/
1049function Polymer_DirMixin(){}
1050/** @type {boolean} */
1051Polymer_DirMixin.prototype.__autoDirOptOut;
1052
1053/**
1054* @override
1055* @return {void}
1056*/
1057Polymer_DirMixin.prototype.ready = function(){};
1058/**
1059* @override
1060* @return {void}
1061*/
1062Polymer_DirMixin.prototype.connectedCallback = function(){};
1063/**
1064* @override
1065* @return {void}
1066*/
1067Polymer_DirMixin.prototype.disconnectedCallback = function(){};
1068/**
1069* @param {string} cssText .
1070* @param {string} baseURI .
1071* @return {string}
1072*/
1073Polymer_DirMixin._processStyleText = function(cssText, baseURI){};
1074/**
1075* @param {string} text CSS text to replace DIR
1076* @return {string}
1077*/
1078Polymer_DirMixin._replaceDirInCssText = function(text){};
1079/**
1080* @interface
1081* @extends {Polymer_ElementMixin}
1082*/
1083function Polymer_DisableUpgradeMixin(){}
1084/** @type {(boolean | undefined)} */
1085Polymer_DisableUpgradeMixin.prototype.__isUpgradeDisabled;
1086
1087/**
1088* @override
1089* @return {void}
1090*/
1091Polymer_DisableUpgradeMixin.prototype._initializeProperties = function(){};
1092/**
1093* @override
1094* @return {void}
1095*/
1096Polymer_DisableUpgradeMixin.prototype._enableProperties = function(){};
1097/**
1098* @override
1099* @param {string} name Attribute name.
1100* @param {?string} old The previous value for the attribute.
1101* @param {?string} value The new value for the attribute.
1102* @param {?string} namespace The XML namespace for the attribute.
1103* @return {void}
1104*/
1105Polymer_DisableUpgradeMixin.prototype.attributeChangedCallback = function(name, old, value, namespace){};
1106/**
1107* @override
1108* @return {void}
1109*/
1110Polymer_DisableUpgradeMixin.prototype.connectedCallback = function(){};
1111/**
1112* @override
1113* @return {void}
1114*/
1115Polymer_DisableUpgradeMixin.prototype.disconnectedCallback = function(){};
1116/**
1117* @override
1118*/
1119Polymer_DisableUpgradeMixin.prototype._canApplyPropertyDefault = function(property){};
1120/**
1121* @interface
1122* @extends {Polymer_ElementMixin}
1123* @extends {Polymer_GestureEventListeners}
1124* @extends {Polymer_DirMixin}
1125*/
1126function Polymer_LegacyElementMixin(){}
1127/** @type {boolean} */
1128Polymer_LegacyElementMixin.prototype.isAttached;
1129
1130/** @type {?WeakMap.<!Element, !Object.<string, !Function>>} */
1131Polymer_LegacyElementMixin.prototype.__boundListeners;
1132
1133/** @type {?Object.<string, ?Function>} */
1134Polymer_LegacyElementMixin.prototype._debouncers;
1135
1136/** @type {(boolean | undefined)} */
1137Polymer_LegacyElementMixin.prototype.__isUpgradeDisabled;
1138
1139/** @type {(boolean | undefined)} */
1140Polymer_LegacyElementMixin.prototype.__needsAttributesAtConnected;
1141
1142/** @type {(boolean | undefined)} */
1143Polymer_LegacyElementMixin.prototype._legacyForceObservedAttributes;
1144
1145/** @type {?Node} */
1146Polymer_LegacyElementMixin.prototype.domHost;
1147
1148/** @type {string} */
1149Polymer_LegacyElementMixin.prototype.is;
1150
1151/**
1152* @override
1153* @return {void}
1154*/
1155Polymer_LegacyElementMixin.prototype.ready = function(){};
1156/**
1157* @override
1158* @return {void}
1159*/
1160Polymer_LegacyElementMixin.prototype._initializeProperties = function(){};
1161/**
1162* @override
1163* @return {void}
1164*/
1165Polymer_LegacyElementMixin.prototype._enableProperties = function(){};
1166/**
1167* @override
1168* @param {string} name Name of attribute.
1169* @param {?string} old Old value of attribute.
1170* @param {?string} value Current value of attribute.
1171* @param {?string} namespace Attribute namespace.
1172* @return {void}
1173*/
1174Polymer_LegacyElementMixin.prototype.attributeChangedCallback = function(name, old, value, namespace){};
1175/**
1176* @override
1177* @return {void}
1178*/
1179Polymer_LegacyElementMixin.prototype.connectedCallback = function(){};
1180/**
1181* @override
1182* @return {void}
1183*/
1184Polymer_LegacyElementMixin.prototype.disconnectedCallback = function(){};
1185/**
1186* @override
1187*/
1188Polymer_LegacyElementMixin.prototype._canApplyPropertyDefault = function(property){};
1189/**
1190* @override
1191* @return {void}
1192*/
1193Polymer_LegacyElementMixin.prototype.created = function(){};
1194/**
1195* @override
1196* @return {void}
1197*/
1198Polymer_LegacyElementMixin.prototype.setAttribute = function(name, value){};
1199/**
1200* @override
1201* @return {void}
1202*/
1203Polymer_LegacyElementMixin.prototype.removeAttribute = function(name){};
1204/**
1205* @override
1206* @return {void}
1207*/
1208Polymer_LegacyElementMixin.prototype.attached = function(){};
1209/**
1210* @override
1211* @return {void}
1212*/
1213Polymer_LegacyElementMixin.prototype.detached = function(){};
1214/**
1215* @override
1216* @param {string} name Name of attribute.
1217* @param {?string} old Old value of attribute.
1218* @param {?string} value Current value of attribute.
1219* @return {void}
1220*/
1221Polymer_LegacyElementMixin.prototype.attributeChanged = function(name, old, value){};
1222/**
1223* @return {void}
1224*/
1225Polymer_LegacyElementMixin.prototype._takeAttributes = function(){};
1226/**
1227* @override
1228* @return {void}
1229*/
1230Polymer_LegacyElementMixin.prototype._registered = function(){};
1231/**
1232* @override
1233* @return {void}
1234*/
1235Polymer_LegacyElementMixin.prototype._ensureAttributes = function(){};
1236/**
1237* @override
1238* @return {void}
1239*/
1240Polymer_LegacyElementMixin.prototype._applyListeners = function(){};
1241/**
1242* @override
1243* @param {*} value Value to deserialize
1244* @return {(string | undefined)}
1245*/
1246Polymer_LegacyElementMixin.prototype.serialize = function(value){};
1247/**
1248* @override
1249* @param {string} value String to deserialize
1250* @param {*} type Type to deserialize the string to
1251* @return {*}
1252*/
1253Polymer_LegacyElementMixin.prototype.deserialize = function(value, type){};
1254/**
1255* @override
1256* @param {string} property Property name to reflect.
1257* @param {string=} attribute Attribute name to reflect.
1258* @param {*=} value Property value to reflect.
1259* @return {void}
1260*/
1261Polymer_LegacyElementMixin.prototype.reflectPropertyToAttribute = function(property, attribute, value){};
1262/**
1263* @override
1264* @param {*} value Value to serialize.
1265* @param {string} attribute Attribute name to serialize to.
1266* @param {Element} node Element to set attribute to.
1267* @return {void}
1268*/
1269Polymer_LegacyElementMixin.prototype.serializeValueToAttribute = function(value, attribute, node){};
1270/**
1271* @override
1272* @param {Object} prototype Target object to copy properties to.
1273* @param {Object} api Source object to copy properties from.
1274* @return {Object}
1275*/
1276Polymer_LegacyElementMixin.prototype.extend = function(prototype, api){};
1277/**
1278* @override
1279* @param {!Object} target Target object to copy properties to.
1280* @param {!Object} source Source object to copy properties from.
1281* @return {!Object}
1282*/
1283Polymer_LegacyElementMixin.prototype.mixin = function(target, source){};
1284/**
1285* @override
1286* @param {Object} object The object on which to set the prototype.
1287* @param {Object} prototype The prototype that will be set on the given
1288`object`.
1289* @return {Object}
1290*/
1291Polymer_LegacyElementMixin.prototype.chainObject = function(object, prototype){};
1292/**
1293* @override
1294* @param {HTMLTemplateElement} template HTML template element to instance.
1295* @return {!DocumentFragment}
1296*/
1297Polymer_LegacyElementMixin.prototype.instanceTemplate = function(template){};
1298/**
1299* @override
1300* @param {string} type Name of event type.
1301* @param {*=} detail Detail value containing event-specific
1302 payload.
1303* @param {{bubbles: (boolean | undefined), cancelable: (boolean | undefined), composed: (boolean | undefined)}=} options Object specifying options. These may include:
1304 `bubbles` (boolean, defaults to `true`),
1305 `cancelable` (boolean, defaults to false), and
1306 `node` on which to fire the event (HTMLElement, defaults to `this`).
1307* @return {!Event}
1308*/
1309Polymer_LegacyElementMixin.prototype.fire = function(type, detail, options){};
1310/**
1311* @override
1312* @param {?EventTarget} node Element to add event listener to.
1313* @param {string} eventName Name of event to listen for.
1314* @param {string} methodName Name of handler method on `this` to call.
1315* @return {void}
1316*/
1317Polymer_LegacyElementMixin.prototype.listen = function(node, eventName, methodName){};
1318/**
1319* @override
1320* @param {?EventTarget} node Element to remove event listener from.
1321* @param {string} eventName Name of event to stop listening to.
1322* @param {string} methodName Name of handler method on `this` to not call
1323 anymore.
1324* @return {void}
1325*/
1326Polymer_LegacyElementMixin.prototype.unlisten = function(node, eventName, methodName){};
1327/**
1328* @override
1329* @param {string=} direction Direction to allow scrolling
1330Defaults to `all`.
1331* @param {Element=} node Element to apply scroll direction setting.
1332Defaults to `this`.
1333* @return {void}
1334*/
1335Polymer_LegacyElementMixin.prototype.setScrollDirection = function(direction, node){};
1336/**
1337* @override
1338* @param {string} slctr Selector to run on this local DOM scope
1339* @return {Element}
1340*/
1341Polymer_LegacyElementMixin.prototype.$$ = function(slctr){};
1342/**
1343* @override
1344* @return {void}
1345*/
1346Polymer_LegacyElementMixin.prototype.distributeContent = function(){};
1347/**
1348* @override
1349* @return {!Array.<!Node>}
1350*/
1351Polymer_LegacyElementMixin.prototype.getEffectiveChildNodes = function(){};
1352/**
1353* @override
1354* @param {string} selector Selector to run.
1355* @return {!Array.<!Node>}
1356*/
1357Polymer_LegacyElementMixin.prototype.queryDistributedElements = function(selector){};
1358/**
1359* @override
1360* @return {!Array.<!Node>}
1361*/
1362Polymer_LegacyElementMixin.prototype.getEffectiveChildren = function(){};
1363/**
1364* @override
1365* @return {string}
1366*/
1367Polymer_LegacyElementMixin.prototype.getEffectiveTextContent = function(){};
1368/**
1369* @override
1370* @param {string} selector Selector to run.
1371* @return {Node}
1372*/
1373Polymer_LegacyElementMixin.prototype.queryEffectiveChildren = function(selector){};
1374/**
1375* @override
1376* @param {string} selector Selector to run.
1377* @return {!Array.<!Node>}
1378*/
1379Polymer_LegacyElementMixin.prototype.queryAllEffectiveChildren = function(selector){};
1380/**
1381* @override
1382* @param {string=} slctr CSS selector to choose the desired
1383 `<slot>`. Defaults to `content`.
1384* @return {!Array.<!Node>}
1385*/
1386Polymer_LegacyElementMixin.prototype.getContentChildNodes = function(slctr){};
1387/**
1388* @override
1389* @param {string=} slctr CSS selector to choose the desired
1390 `<content>`. Defaults to `content`.
1391* @return {!Array.<!HTMLElement>}
1392*/
1393Polymer_LegacyElementMixin.prototype.getContentChildren = function(slctr){};
1394/**
1395* @override
1396* @param {?Node} node The element to be checked.
1397* @return {boolean}
1398*/
1399Polymer_LegacyElementMixin.prototype.isLightDescendant = function(node){};
1400/**
1401* @override
1402* @param {!Element} node The element to be checked.
1403* @return {boolean}
1404*/
1405Polymer_LegacyElementMixin.prototype.isLocalDescendant = function(node){};
1406/**
1407* @override
1408* @param {!Element} container Container element to scope
1409* @param {boolean=} shouldObserve if true, start a mutation observer for added nodes to the container
1410* @return {?MutationObserver}
1411*/
1412Polymer_LegacyElementMixin.prototype.scopeSubtree = function(container, shouldObserve){};
1413/**
1414* @override
1415* @param {string} property The css property name.
1416* @return {string}
1417*/
1418Polymer_LegacyElementMixin.prototype.getComputedStyleValue = function(property){};
1419/**
1420* @override
1421* @param {string} jobName String to identify the debounce job.
1422* @param {function (): void} callback Function that is called (with `this`
1423 context) when the wait time elapses.
1424* @param {number=} wait Optional wait time in milliseconds (ms) after the
1425 last signal that must elapse before invoking `callback`
1426* @return {!Object}
1427*/
1428Polymer_LegacyElementMixin.prototype.debounce = function(jobName, callback, wait){};
1429/**
1430* @override
1431* @param {string} jobName The name of the debouncer started with `debounce`
1432* @return {boolean}
1433*/
1434Polymer_LegacyElementMixin.prototype.isDebouncerActive = function(jobName){};
1435/**
1436* @override
1437* @param {string} jobName The name of the debouncer started with `debounce`
1438* @return {void}
1439*/
1440Polymer_LegacyElementMixin.prototype.flushDebouncer = function(jobName){};
1441/**
1442* @override
1443* @param {string} jobName The name of the debouncer started with `debounce`
1444* @return {void}
1445*/
1446Polymer_LegacyElementMixin.prototype.cancelDebouncer = function(jobName){};
1447/**
1448* @override
1449* @param {!Function} callback The callback function to run, bound to
1450 `this`.
1451* @param {number=} waitTime Time to wait before calling the
1452 `callback`. If unspecified or 0, the callback will be run at microtask
1453 timing (before paint).
1454* @return {number}
1455*/
1456Polymer_LegacyElementMixin.prototype.async = function(callback, waitTime){};
1457/**
1458* @override
1459* @param {number} handle Handle returned from original `async` call to
1460 cancel.
1461* @return {void}
1462*/
1463Polymer_LegacyElementMixin.prototype.cancelAsync = function(handle){};
1464/**
1465* @override
1466* @param {string} tag HTML element tag to create.
1467* @param {Object=} props Object of properties to configure on the
1468 instance.
1469* @return {!Element}
1470*/
1471Polymer_LegacyElementMixin.prototype.create = function(tag, props){};
1472/**
1473* @override
1474* @param {string} selector Selector to test.
1475* @param {!Element=} node Element to test the selector against.
1476* @return {boolean}
1477*/
1478Polymer_LegacyElementMixin.prototype.elementMatches = function(selector, node){};
1479/**
1480* @override
1481* @param {string} name HTML attribute name
1482* @param {boolean=} bool Boolean to force the attribute on or off.
1483 When unspecified, the state of the attribute will be reversed.
1484* @return {boolean}
1485*/
1486Polymer_LegacyElementMixin.prototype.toggleAttribute = function(name, bool){};
1487/**
1488* @override
1489* @param {string} name CSS class name
1490* @param {boolean=} bool Boolean to force the class on or off.
1491 When unspecified, the state of the class will be reversed.
1492* @param {Element=} node Node to target. Defaults to `this`.
1493* @return {void}
1494*/
1495Polymer_LegacyElementMixin.prototype.toggleClass = function(name, bool, node){};
1496/**
1497* @override
1498* @param {string} transformText Transform setting.
1499* @param {Element=} node Element to apply the transform to.
1500Defaults to `this`
1501* @return {void}
1502*/
1503Polymer_LegacyElementMixin.prototype.transform = function(transformText, node){};
1504/**
1505* @override
1506* @param {(number | string)} x X offset.
1507* @param {(number | string)} y Y offset.
1508* @param {(number | string)} z Z offset.
1509* @param {Element=} node Element to apply the transform to.
1510Defaults to `this`.
1511* @return {void}
1512*/
1513Polymer_LegacyElementMixin.prototype.translate3d = function(x, y, z, node){};
1514/**
1515* @override
1516* @param {(string | !Array.<(number | string)>)} arrayOrPath Path to array from
1517 which to remove the item
1518 (or the array itself).
1519* @param {*} item Item to remove.
1520* @return {Array}
1521*/
1522Polymer_LegacyElementMixin.prototype.arrayDelete = function(arrayOrPath, item){};
1523/**
1524* @override
1525* @param {string} level One of 'log', 'warn', 'error'
1526* @param {Array} args Array of strings or objects to log
1527* @return {void}
1528*/
1529Polymer_LegacyElementMixin.prototype._logger = function(level, args){};
1530/**
1531* @override
1532* @param {...*} args Array of strings or objects to log
1533* @return {void}
1534*/
1535Polymer_LegacyElementMixin.prototype._log = function(args){};
1536/**
1537* @override
1538* @param {...*} args Array of strings or objects to log
1539* @return {void}
1540*/
1541Polymer_LegacyElementMixin.prototype._warn = function(args){};
1542/**
1543* @override
1544* @param {...*} args Array of strings or objects to log
1545* @return {void}
1546*/
1547Polymer_LegacyElementMixin.prototype._error = function(args){};
1548/**
1549* @override
1550* @param {string} methodName Method name to associate with message
1551* @param {...*} args Array of strings or objects to log
1552* @return {!Array}
1553*/
1554Polymer_LegacyElementMixin.prototype._logf = function(methodName, args){};
1555/**
1556* @interface
1557*/
1558function Polymer_MutableData(){}
1559/**
1560* @param {string} property Property name
1561* @param {*} value New property value
1562* @param {*} old Previous property value
1563* @return {boolean}
1564*/
1565Polymer_MutableData.prototype._shouldPropertyChange = function(property, value, old){};
1566/**
1567* @interface
1568*/
1569function Polymer_OptionalMutableData(){}
1570/** @type {boolean | null | undefined} */
1571Polymer_OptionalMutableData.prototype.mutableData;
1572
1573/**
1574* @param {string} property Property name
1575* @param {*} value New property value
1576* @param {*} old Previous property value
1577* @return {boolean}
1578*/
1579Polymer_OptionalMutableData.prototype._shouldPropertyChange = function(property, value, old){};
1580/**
1581* @interface
1582* @extends {Polymer_ElementMixin}
1583*/
1584function Polymer_ArraySelectorMixin(){}
1585/** @type {Array | null | undefined} */
1586Polymer_ArraySelectorMixin.prototype.items;
1587
1588/** @type {boolean | null | undefined} */
1589Polymer_ArraySelectorMixin.prototype.multi;
1590
1591/** @type {(?Object | ?Array.<!Object>)} */
1592Polymer_ArraySelectorMixin.prototype.selected;
1593
1594/** @type {?Object} */
1595Polymer_ArraySelectorMixin.prototype.selectedItem;
1596
1597/** @type {boolean | null | undefined} */
1598Polymer_ArraySelectorMixin.prototype.toggle;
1599
1600/**
1601* @override
1602* @return {void}
1603*/
1604Polymer_ArraySelectorMixin.prototype.clearSelection = function(){};
1605/**
1606* @override
1607* @param {*} item Item from `items` array to test
1608* @return {boolean}
1609*/
1610Polymer_ArraySelectorMixin.prototype.isSelected = function(item){};
1611/**
1612* @override
1613* @param {number} idx Index from `items` array to test
1614* @return {boolean}
1615*/
1616Polymer_ArraySelectorMixin.prototype.isIndexSelected = function(idx){};
1617/**
1618* @override
1619* @param {*} item Item from `items` array to deselect
1620* @return {void}
1621*/
1622Polymer_ArraySelectorMixin.prototype.deselect = function(item){};
1623/**
1624* @override
1625* @param {number} idx Index from `items` array to deselect
1626* @return {void}
1627*/
1628Polymer_ArraySelectorMixin.prototype.deselectIndex = function(idx){};
1629/**
1630* @override
1631* @param {*} item Item from `items` array to select
1632* @return {void}
1633*/
1634Polymer_ArraySelectorMixin.prototype.select = function(item){};
1635/**
1636* @override
1637* @param {number} idx Index from `items` array to select
1638* @return {void}
1639*/
1640Polymer_ArraySelectorMixin.prototype.selectIndex = function(idx){};
1641/**
1642* @interface
1643* @extends {Polymer_PropertyEffects}
1644*/
1645function Polymer_StrictBindingParser(){}
1646/**
1647* @param {string} text Text to parse from attribute or textContent
1648* @param {Object} templateInfo Current template metadata
1649* @return {Array.<!BindingPart>}
1650*/
1651Polymer_StrictBindingParser._parseBindings = function(text, templateInfo){};
1652/**
1653* @interface
1654*/
1655function Polymer_LegacyDataMixin(){}
1656/**
1657* @interface
1658*/
1659function Polymer_TemplatizeMixin(){}
\No newline at end of file