UNPKG

@polymer/polymer

Version:

The Polymer library makes it easy to create your own web components. Give your element some markup and properties, and then use it on a site. Polymer provides features like dynamic templates and data binding to reduce the amount of boilerplate you need to

120 lines (106 loc) 3.67 kB
/** * @fileoverview Externs for Polymer Pass and external Polymer API * @externs * * @license * Copyright (c) 2017 The Polymer Project Authors. All rights reserved. * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt * Code distributed by Google as part of the polymer project is also * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt */ /* eslint-disable */ /** * @typedef {{ * type: !Function, * value: (* | undefined), * readOnly: (boolean | undefined), * computed: (string | undefined), * reflectToAttribute: (boolean | undefined), * notify: (boolean | undefined), * observer: (string | function(this:?, ?, ?) | undefined) * }} */ let PolymerElementPropertiesMeta; /** * @typedef {Object<string, !Function|!PolymerElementPropertiesMeta>} */ let PolymerElementProperties; let PolymerInit = function(){}; /** @type {string} */ PolymerInit.prototype.is; /** @type {(string | undefined)} */ PolymerInit.prototype.extends; /** @type {(!PolymerElementProperties | undefined)} */ PolymerInit.prototype.properties; /** @type {(!Array<string> | undefined)} */ PolymerInit.prototype.observers; /** @type {(!HTMLTemplateElement | string | undefined)} */ PolymerInit.prototype.template; /** @type {(!Object<string, *> | undefined)} */ PolymerInit.prototype.hostAttributes; /** @type {(!Object<string, string> | undefined)} */ PolymerInit.prototype.listeners; let PolymerElementConstructor = function (){}; /** @type {(string | undefined)} */ PolymerElementConstructor.is; /** @type {(string | undefined)} */ PolymerElementConstructor.extends; /** @type {(!PolymerElementProperties | undefined)} */ PolymerElementConstructor.properties; /** @type {(!Array<string> | undefined)} */ PolymerElementConstructor.observers; /** @type {(!HTMLTemplateElement | string | undefined)} */ PolymerElementConstructor.template; let PropertiesMixinConstructor = function (){}; /** @type {(!PolymerElementProperties | undefined)} */ PropertiesMixinConstructor.properties; /** * @param {!PolymerInit} init * @return {!function(new:HTMLElement)} */ function Polymer(init){} /** * @type {(function(*,string,string,Node):*)|undefined} */ Polymer.sanitizeDOMValue; /** * @param {string} string * @param {Object} obj * @return {string} */ function JSCompiler_renameProperty(string, obj) {} /** @record */ function PolymerTelemetry(){} /** @type {number} */ PolymerTelemetry.instanceCount; /** @type {Array<HTMLElement>} */ PolymerTelemetry.registrations; /** @type {function(HTMLElement)} */ PolymerTelemetry._regLog; /** @type {function(HTMLElement)} */ PolymerTelemetry.register; /** @type {function(HTMLElement)} */ PolymerTelemetry.dumpRegistrations;; /** @type {PolymerTelemetry} */ Polymer.telemetry; /** @type {string} */ Polymer.version; // nb. This is explicitly 'var', as Closure Compiler checks that this is the case. /** * @constructor * @extends {HTMLElement} * @implements {Polymer_LegacyElementMixin} */ var PolymerElement = function() {}; /** On create callback. */ PolymerElement.prototype.created = function() {}; /** On ready callback. */ PolymerElement.prototype.ready = function() {}; /** On registered callback. */ PolymerElement.prototype.registered = function() {}; /** On attached to the DOM callback. */ PolymerElement.prototype.attached = function() {}; /** On detached from the DOM callback. */ PolymerElement.prototype.detached = function() {};