| 
									
										
										
										
											2018-03-14 13:24:27 -07:00
										 |  |  | export declare function createCustomElement<P>(component: Type<any>, config: NgElementConfig): NgElementConstructor<P>; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export declare abstract class NgElement extends HTMLElement { | 
					
						
							|  |  |  |     protected ngElementEventsSubscription: Subscription | null; | 
					
						
							| 
									
										
										
										
											2020-07-15 12:21:04 +02:00
										 |  |  |     protected abstract ngElementStrategy: NgElementStrategy; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  |     abstract attributeChangedCallback(attrName: string, oldValue: string | null, newValue: string, namespace?: string): void; | 
					
						
							|  |  |  |     abstract connectedCallback(): void; | 
					
						
							|  |  |  |     abstract disconnectedCallback(): void; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-26 09:09:35 -08:00
										 |  |  | export declare interface NgElementConfig { | 
					
						
							| 
									
										
										
										
											2018-03-01 22:34:21 -08:00
										 |  |  |     injector: Injector; | 
					
						
							|  |  |  |     strategyFactory?: NgElementStrategyFactory; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-26 09:09:35 -08:00
										 |  |  | export declare interface NgElementConstructor<P> { | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  |     readonly observedAttributes: string[]; | 
					
						
							| 
									
										
										
										
											2020-03-04 17:27:27 -08:00
										 |  |  |     new (injector?: Injector): NgElement & WithProperties<P>; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-26 09:09:35 -08:00
										 |  |  | export declare interface NgElementStrategy { | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  |     events: Observable<NgElementStrategyEvent>; | 
					
						
							|  |  |  |     connect(element: HTMLElement): void; | 
					
						
							|  |  |  |     disconnect(): void; | 
					
						
							| 
									
										
										
										
											2018-03-02 10:08:16 -08:00
										 |  |  |     getInputValue(propName: string): any; | 
					
						
							|  |  |  |     setInputValue(propName: string, value: string): void; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-26 09:09:35 -08:00
										 |  |  | export declare interface NgElementStrategyEvent { | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  |     name: string; | 
					
						
							|  |  |  |     value: any; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-26 09:09:35 -08:00
										 |  |  | export declare interface NgElementStrategyFactory { | 
					
						
							| 
									
										
										
										
											2018-03-06 14:02:25 -08:00
										 |  |  |     create(injector: Injector): NgElementStrategy; | 
					
						
							| 
									
										
										
										
											2018-02-28 09:45:11 -08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export declare const VERSION: Version; | 
					
						
							| 
									
										
										
										
											2018-03-02 10:08:16 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export declare type WithProperties<P> = { | 
					
						
							|  |  |  |     [property in keyof P]: P[property]; | 
					
						
							|  |  |  | }; |