diff --git a/interfaces.d.ts b/interfaces.d.ts index 9ff30e0ac7..79fb54cde4 100644 --- a/interfaces.d.ts +++ b/interfaces.d.ts @@ -26,11 +26,28 @@ export interface PolymerInit { extends?: string; properties?: PolymerElementProperties; observers?: string[]; - template?: HTMLTemplateElement|string; + _template?: HTMLTemplateElement; hostAttributes?: {[key: string]: any}; listeners?: {[key: string]: string}; + behaviors?: BehaviorInit | BehaviorInit[]; + + // Lifecycle methods + registered?(): void; + created?(): void; + attached?(): void; + detached?(): void; + ready?(): void; + attributeChanged?(name: string, old?: string, value?: string): void; + + // Allow any other user-defined properties + [others: string]: any; } +export type BehaviorInit = Pick< + PolymerInit, + Exclude +>; + // Types from "externs/polymer-internal-shared-types.js" export interface StampedTemplate extends DocumentFragment {