import { Directive , ViewContainerRef , ContentChildren , ContentChild } from '@angular/core' ; import { ComplexBase , ArrayBase , setValue } from '@syncfusion/ej2-angular-base' ; import { Template } from '@syncfusion/ej2-angular-base' ; import { ColorMappingsDirective } from './colormapping.directive' ; let input = [ 'animationDelay' , 'animationDuration' , 'border' , 'bubbleType' , 'colorMapping' , 'colorValuePath' , 'dataSource' , 'fill' , 'highlightSettings' , 'maxRadius' , 'minRadius' , 'opacity' , 'query' , 'selectionSettings' , 'tooltipSettings' , 'valuePath' , 'visible' ] ; let outputs = [ ] ; /**
 * Layer Directive
 * ```html
 * <e-layers>
 * <e-layer>
 * <e-bubbleSettings>
 * <e-bubbleSetting>
 * </e-bubbleSetting>
 * </e-bubbleSettings>
 * </e-layer>
 * </e-layers>
 * ```
 */ @ Directive ( { selector : 'e-layer>e-bubbleSettings>e-bubbleSetting' , inputs : input , outputs : outputs , queries : { childColorMapping : new ContentChild ( ColorMappingsDirective ) } } ) export class BubbleDirective extends ComplexBase < BubbleDirective > { public directivePropList : any ; public childColorMapping : any ; public tags : string [ ] = [ 'colorMapping' ] ; default public animationDelay : any ; default public animationDuration : any ; /**
     * Sets and gets the options to customize the color and width of the border for the bubble in maps.
     */ public border : any ; default public bubbleType : any ; default public colorMapping : any ; default public colorValuePath : any ; isobservable default public dataSource : any ; default public fill : any ; /**
     * Sets and gets the highlight settings for the bubble in maps.
     */ public highlightSettings : any ; default public maxRadius : any ; default public minRadius : any ; default public opacity : any ; default public query : any ; /**
     * Sets and gets the selection settings for the bubble in maps.
     */ public selectionSettings : any ; /**
     * Sets and gets the options to customize the tooltip for the bubbles in maps.
     */ public tooltipSettings : any ; default public valuePath : any ; default public visible : any ; @ ContentChild ( 'tooltipSettingsTemplate' ) @ Template ( ) public tooltipSettings_template : any ; constructor ( private viewContainerRef ) { super ( ) ; setValue ( 'currentInstance' , this , this . viewContainerRef ) ; this . registerEvents ( outputs ) ; this . directivePropList = input ; } } private @ Directive ( { selector : 'e-layer>e-bubbleSettings' , queries : { children : new ContentChildren ( BubbleDirective ) } , } ) export class BubblesDirective extends ArrayBase < BubblesDirective > { constructor ( ) { super ( 'bubblesettings' ) ; } }