import { Component, ElementRef, Inject, Directive, NgModule } from '@angular/core';
import { registerElement } from '@nativescript/angular';
import { ObservableArray } from '@nativescript/core';
import { RadRadialGauge, ScaleStyle, RadialScale, RadialBarIndicator, BarIndicatorStyle, RadialNeedle, TitleStyle, NeedleStyle, SubtitleStyle } from 'nativescript-ui-gauge';
import * as i0 from "@angular/core";
export class RadRadialGaugeComponent {
    constructor(_elementRef) {
        this._elementRef = _elementRef;
        this._radialGauge = _elementRef.nativeElement;
    }
    get nativeElement() {
        return this._radialGauge;
    }
    get radialGauge() {
        return this._radialGauge;
    }
}
RadRadialGaugeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: RadRadialGaugeComponent, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Component });
RadRadialGaugeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: RadRadialGaugeComponent, selector: "RadRadialGauge", ngImport: i0, template: ``, isInline: true });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: RadRadialGaugeComponent, decorators: [{
            type: Component,
            args: [{
                    selector: 'RadRadialGauge',
                    template: ``
                }]
        }], ctorParameters: function () { return [{ type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialScaleDirective {
    constructor(_elementRef) {
        this._elementRef = _elementRef;
        this._radialScale = this._elementRef.nativeElement;
    }
    get radialScale() {
        return this._radialScale;
    }
}
TKRadialScaleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialScaleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialScaleDirective, selector: "RadialScale", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: 'RadialScale'
                }]
        }], ctorParameters: function () { return [{ type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialBarIndicatorDirective {
    constructor(_elementRef) {
        this._elementRef = _elementRef;
        this._barIndicator = this._elementRef.nativeElement;
    }
    get radialScale() {
        return this._barIndicator;
    }
}
TKRadialBarIndicatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialBarIndicatorDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialBarIndicatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialBarIndicatorDirective, selector: "RadialBarIndicator", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialBarIndicatorDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: 'RadialBarIndicator'
                }]
        }], ctorParameters: function () { return [{ type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialNeedleDirective {
    constructor(_elementRef) {
        this._elementRef = _elementRef;
        this._radialNeedle = this._elementRef.nativeElement;
    }
    get radialNeedle() {
        return this._radialNeedle;
    }
}
TKRadialNeedleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialNeedleDirective, deps: [{ token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialNeedleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialNeedleDirective, selector: "RadialNeedle", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialNeedleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: 'RadialNeedle'
                }]
        }], ctorParameters: function () { return [{ type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialGaugeScalesDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const scale = this._elementRef.nativeElement;
        const gauge = this.owner.radialGauge;
        if (gauge.scales) {
            gauge.scales.push(scale);
        }
        else {
            gauge.scales = new ObservableArray([scale]);
        }
    }
}
TKRadialGaugeScalesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeScalesDirective, deps: [{ token: RadRadialGaugeComponent }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialGaugeScalesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialGaugeScalesDirective, selector: "[tkRadialGaugeScales]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeScalesDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialGaugeScales]'
                }]
        }], ctorParameters: function () { return [{ type: RadRadialGaugeComponent, decorators: [{
                    type: Inject,
                    args: [RadRadialGaugeComponent]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialScaleStyleDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const radialScaleStyle = this._elementRef.nativeElement;
        this.owner.radialScale.scaleStyle = radialScaleStyle;
    }
}
TKRadialScaleStyleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleStyleDirective, deps: [{ token: TKRadialScaleDirective }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialScaleStyleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialScaleStyleDirective, selector: "[tkRadialScaleStyle]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleStyleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialScaleStyle]'
                }]
        }], ctorParameters: function () { return [{ type: TKRadialScaleDirective, decorators: [{
                    type: Inject,
                    args: [TKRadialScaleDirective]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialScaleIndicatorsDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const barIndicator = this._elementRef.nativeElement;
        const scale = this.owner.radialScale;
        if (scale.indicators) {
            scale.indicators.push(barIndicator);
        }
        else {
            scale.indicators = new ObservableArray([barIndicator]);
        }
    }
}
TKRadialScaleIndicatorsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleIndicatorsDirective, deps: [{ token: TKRadialScaleDirective }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialScaleIndicatorsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialScaleIndicatorsDirective, selector: "[tkRadialScaleIndicators]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialScaleIndicatorsDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialScaleIndicators]'
                }]
        }], ctorParameters: function () { return [{ type: TKRadialScaleDirective, decorators: [{
                    type: Inject,
                    args: [TKRadialScaleDirective]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialBarIndicatorStyleDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const indicatorStyle = this._elementRef.nativeElement;
        this.owner.radialScale.indicatorStyle = indicatorStyle;
    }
}
TKRadialBarIndicatorStyleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialBarIndicatorStyleDirective, deps: [{ token: TKRadialBarIndicatorDirective }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialBarIndicatorStyleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialBarIndicatorStyleDirective, selector: "[tkRadialBarIndicatorStyle]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialBarIndicatorStyleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialBarIndicatorStyle]'
                }]
        }], ctorParameters: function () { return [{ type: TKRadialBarIndicatorDirective, decorators: [{
                    type: Inject,
                    args: [TKRadialBarIndicatorDirective]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialGaugeTitleStyleDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const style = this._elementRef.nativeElement;
        this.owner.radialGauge.titleStyle = style;
    }
}
TKRadialGaugeTitleStyleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeTitleStyleDirective, deps: [{ token: RadRadialGaugeComponent }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialGaugeTitleStyleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialGaugeTitleStyleDirective, selector: "[tkRadialGaugeTitleStyle]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeTitleStyleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialGaugeTitleStyle]'
                }]
        }], ctorParameters: function () { return [{ type: RadRadialGaugeComponent, decorators: [{
                    type: Inject,
                    args: [RadRadialGaugeComponent]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialGaugeSubtitleStyleDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const style = this._elementRef.nativeElement;
        this.owner.radialGauge.subtitleStyle = style;
    }
}
TKRadialGaugeSubtitleStyleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeSubtitleStyleDirective, deps: [{ token: RadRadialGaugeComponent }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialGaugeSubtitleStyleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialGaugeSubtitleStyleDirective, selector: "[tkRadialGaugeSubtitleStyle]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialGaugeSubtitleStyleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialGaugeSubtitleStyle]'
                }]
        }], ctorParameters: function () { return [{ type: RadRadialGaugeComponent, decorators: [{
                    type: Inject,
                    args: [RadRadialGaugeComponent]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export class TKRadialNeedleStyleDirective {
    constructor(owner, _elementRef) {
        this.owner = owner;
        this._elementRef = _elementRef;
    }
    ngOnInit() {
        const style = this._elementRef.nativeElement;
        this.owner.radialNeedle.needleStyle = style;
    }
}
TKRadialNeedleStyleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialNeedleStyleDirective, deps: [{ token: TKRadialNeedleDirective }, { token: ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
TKRadialNeedleStyleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: TKRadialNeedleStyleDirective, selector: "[tkRadialNeedleStyle]", ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TKRadialNeedleStyleDirective, decorators: [{
            type: Directive,
            args: [{
                    selector: '[tkRadialNeedleStyle]'
                }]
        }], ctorParameters: function () { return [{ type: TKRadialNeedleDirective, decorators: [{
                    type: Inject,
                    args: [TKRadialNeedleDirective]
                }] }, { type: i0.ElementRef, decorators: [{
                    type: Inject,
                    args: [ElementRef]
                }] }]; } });
export const GAUGES_DIRECTIVES = [RadRadialGaugeComponent, TKRadialScaleDirective, TKRadialGaugeScalesDirective, TKRadialScaleStyleDirective, TKRadialScaleIndicatorsDirective, TKRadialBarIndicatorStyleDirective, TKRadialBarIndicatorDirective, TKRadialGaugeTitleStyleDirective, TKRadialNeedleStyleDirective, TKRadialNeedleDirective, TKRadialGaugeSubtitleStyleDirective];
registerElement('RadRadialGauge', () => RadRadialGauge);
registerElement('RadialScale', () => RadialScale);
registerElement('ScaleStyle', () => ScaleStyle);
registerElement('RadialBarIndicator', () => RadialBarIndicator);
registerElement('BarIndicatorStyle', () => BarIndicatorStyle);
registerElement('RadialNeedle', () => RadialNeedle);
registerElement('TitleStyle', () => TitleStyle);
registerElement('SubtitleStyle', () => SubtitleStyle);
registerElement('NeedleStyle', () => NeedleStyle);
export class NativeScriptUIGaugeModule {
}
NativeScriptUIGaugeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: NativeScriptUIGaugeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
NativeScriptUIGaugeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: NativeScriptUIGaugeModule, declarations: [RadRadialGaugeComponent, TKRadialScaleDirective, TKRadialGaugeScalesDirective, TKRadialScaleStyleDirective, TKRadialScaleIndicatorsDirective, TKRadialBarIndicatorStyleDirective, TKRadialBarIndicatorDirective, TKRadialGaugeTitleStyleDirective, TKRadialNeedleStyleDirective, TKRadialNeedleDirective, TKRadialGaugeSubtitleStyleDirective], exports: [RadRadialGaugeComponent, TKRadialScaleDirective, TKRadialGaugeScalesDirective, TKRadialScaleStyleDirective, TKRadialScaleIndicatorsDirective, TKRadialBarIndicatorStyleDirective, TKRadialBarIndicatorDirective, TKRadialGaugeTitleStyleDirective, TKRadialNeedleStyleDirective, TKRadialNeedleDirective, TKRadialGaugeSubtitleStyleDirective] });
NativeScriptUIGaugeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: NativeScriptUIGaugeModule });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: NativeScriptUIGaugeModule, decorators: [{
            type: NgModule,
            args: [{
                    declarations: [GAUGES_DIRECTIVES],
                    exports: [GAUGES_DIRECTIVES]
                }]
        }] });
//# sourceMappingURL=data:application/json;base64, 