var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
import { autoinject, customElement, noView, processContent, TargetInstruction } from "aurelia-framework";
function parseElement(compiler, resources, element, instruction) {
    var html = element.innerHTML;
    if (html !== '') {
        instruction.template = html;
    }
    element.innerHTML = '';
}
function getTemplate(targetInstruction) {
    return "<template>" + targetInstruction.elementInstruction.template + "</template>";
}
export var AgCellTemplate = (function () {
    function AgCellTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgCellTemplate = __decorate([
        customElement('ag-cell-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgCellTemplate);
    return AgCellTemplate;
}());
export var AgEditorTemplate = (function () {
    function AgEditorTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgEditorTemplate = __decorate([
        customElement('ag-editor-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgEditorTemplate);
    return AgEditorTemplate;
}());
export var AgFilterTemplate = (function () {
    function AgFilterTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgFilterTemplate = __decorate([
        customElement('ag-filter-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgFilterTemplate);
    return AgFilterTemplate;
}());
export var AgHeaderTemplate = (function () {
    function AgHeaderTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgHeaderTemplate = __decorate([
        customElement('ag-header-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgHeaderTemplate);
    return AgHeaderTemplate;
}());
export var AgHeaderGroupTemplate = (function () {
    function AgHeaderGroupTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgHeaderGroupTemplate = __decorate([
        customElement('ag-header-group-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgHeaderGroupTemplate);
    return AgHeaderGroupTemplate;
}());
export var AgPinnedRowTemplate = (function () {
    function AgPinnedRowTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgPinnedRowTemplate = __decorate([
        customElement('ag-pinned-row-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgPinnedRowTemplate);
    return AgPinnedRowTemplate;
}());
export var AgFullWidthRowTemplate = (function () {
    function AgFullWidthRowTemplate(targetInstruction) {
        this.template = getTemplate(targetInstruction);
    }
    AgFullWidthRowTemplate = __decorate([
        customElement('ag-full-width-row-template'),
        noView(),
        autoinject(),
        processContent(parseElement),
        __metadata("design:paramtypes", [TargetInstruction])
    ], AgFullWidthRowTemplate);
    return AgFullWidthRowTemplate;
}());

//# sourceMappingURL=agTemplate.js.map
