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);
};
var ElDataRowOutletDirective_1, ElHeaderRowOutletDirective_1, ElFooterRowOutletDirective_1, ElCellOutletDirective_1, ElHeaderRowDefDirective_1, ElFooterRowDefDirective_1, ElRowDefDirective_1, ElHeaderRowComponent_1, ElFooterRowComponent_1, ElRowComponent_1;
import { ChangeDetectionStrategy, Component, Directive, Input } from '@angular/core';
import { CdkFooterRow, CdkFooterRowDef, CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef, CdkCellOutlet, DataRowOutlet, HeaderRowOutlet, FooterRowOutlet, } from '@angular/cdk/table';
let ElDataRowOutletDirective = ElDataRowOutletDirective_1 = class ElDataRowOutletDirective extends DataRowOutlet {
};
ElDataRowOutletDirective = ElDataRowOutletDirective_1 = __decorate([
    Directive({
        selector: '[elRowOutlet]',
        providers: [{ provide: DataRowOutlet, useExisting: ElDataRowOutletDirective_1 }],
    })
], ElDataRowOutletDirective);
export { ElDataRowOutletDirective };
let ElHeaderRowOutletDirective = ElHeaderRowOutletDirective_1 = class ElHeaderRowOutletDirective extends HeaderRowOutlet {
};
ElHeaderRowOutletDirective = ElHeaderRowOutletDirective_1 = __decorate([
    Directive({
        selector: '[elHeaderRowOutlet]',
        providers: [{ provide: HeaderRowOutlet, useExisting: ElHeaderRowOutletDirective_1 }],
    })
], ElHeaderRowOutletDirective);
export { ElHeaderRowOutletDirective };
let ElFooterRowOutletDirective = ElFooterRowOutletDirective_1 = class ElFooterRowOutletDirective extends FooterRowOutlet {
};
ElFooterRowOutletDirective = ElFooterRowOutletDirective_1 = __decorate([
    Directive({
        selector: '[elFooterRowOutlet]',
        providers: [{ provide: FooterRowOutlet, useExisting: ElFooterRowOutletDirective_1 }],
    })
], ElFooterRowOutletDirective);
export { ElFooterRowOutletDirective };
let ElCellOutletDirective = ElCellOutletDirective_1 = class ElCellOutletDirective extends CdkCellOutlet {
};
ElCellOutletDirective = ElCellOutletDirective_1 = __decorate([
    Directive({
        selector: '[elCellOutlet]',
        providers: [{ provide: CdkCellOutlet, useExisting: ElCellOutletDirective_1 }],
    })
], ElCellOutletDirective);
export { ElCellOutletDirective };
/**
 * Header row definition for the el-table.
 * Captures the header row's template and other header properties such as the columns to display.
 */
let ElHeaderRowDefDirective = ElHeaderRowDefDirective_1 = class ElHeaderRowDefDirective extends CdkHeaderRowDef {
};
__decorate([
    Input('elHeaderRowDef'),
    __metadata("design:type", Object)
], ElHeaderRowDefDirective.prototype, "columns", void 0);
__decorate([
    Input('elHeaderRowDefSticky'),
    __metadata("design:type", Boolean)
], ElHeaderRowDefDirective.prototype, "sticky", void 0);
ElHeaderRowDefDirective = ElHeaderRowDefDirective_1 = __decorate([
    Directive({
        selector: '[elHeaderRowDef]',
        providers: [{ provide: CdkHeaderRowDef, useExisting: ElHeaderRowDefDirective_1 }],
    })
], ElHeaderRowDefDirective);
export { ElHeaderRowDefDirective };
/**
 * Footer row definition for the el-table.
 * Captures the footer row's template and other footer properties such as the columns to display.
 */
let ElFooterRowDefDirective = ElFooterRowDefDirective_1 = class ElFooterRowDefDirective extends CdkFooterRowDef {
};
__decorate([
    Input('elFooterRowDef'),
    __metadata("design:type", Object)
], ElFooterRowDefDirective.prototype, "columns", void 0);
__decorate([
    Input('elFooterRowDefSticky'),
    __metadata("design:type", Boolean)
], ElFooterRowDefDirective.prototype, "sticky", void 0);
ElFooterRowDefDirective = ElFooterRowDefDirective_1 = __decorate([
    Directive({
        selector: '[elFooterRowDef]',
        providers: [{ provide: CdkFooterRowDef, useExisting: ElFooterRowDefDirective_1 }],
    })
], ElFooterRowDefDirective);
export { ElFooterRowDefDirective };
/**
 * Data row definition for the el-table.
 * Captures the data row's template and other properties such as the columns to display and
 * a when predicate that describes when this row should be used.
 */
let ElRowDefDirective = ElRowDefDirective_1 = class ElRowDefDirective extends CdkRowDef {
};
__decorate([
    Input('elRowDefColumns'),
    __metadata("design:type", Object)
], ElRowDefDirective.prototype, "columns", void 0);
__decorate([
    Input('elRowDefWhen'),
    __metadata("design:type", Function)
], ElRowDefDirective.prototype, "when", void 0);
ElRowDefDirective = ElRowDefDirective_1 = __decorate([
    Directive({
        selector: '[elRowDef]',
        providers: [{ provide: CdkRowDef, useExisting: ElRowDefDirective_1 }],
    })
], ElRowDefDirective);
export { ElRowDefDirective };
/** Footer template container that contains the cell outlet. Adds the right class and role. */
let ElHeaderRowComponent = ElHeaderRowComponent_1 = class ElHeaderRowComponent extends CdkHeaderRow {
};
ElHeaderRowComponent = ElHeaderRowComponent_1 = __decorate([
    Component({
        selector: 'el-header-row, tr[elHeaderRow]',
        template: `
    <ng-container elCellOutlet></ng-container>`,
        host: {
            'class': 'el-header-row',
            'role': 'row',
        },
        changeDetection: ChangeDetectionStrategy.OnPush,
        providers: [{ provide: CdkHeaderRow, useExisting: ElHeaderRowComponent_1 }]
    })
], ElHeaderRowComponent);
export { ElHeaderRowComponent };
/** Footer template container that contains the cell outlet. Adds the right class and role. */
let ElFooterRowComponent = ElFooterRowComponent_1 = class ElFooterRowComponent extends CdkFooterRow {
};
ElFooterRowComponent = ElFooterRowComponent_1 = __decorate([
    Component({
        selector: 'el-footer-row, tr[elFooterRow]',
        template: `
    <ng-container elCellOutlet></ng-container>`,
        host: {
            'class': 'el-footer-row',
            'role': 'row',
        },
        changeDetection: ChangeDetectionStrategy.OnPush,
        providers: [{ provide: CdkFooterRow, useExisting: ElFooterRowComponent_1 }]
    })
], ElFooterRowComponent);
export { ElFooterRowComponent };
/** Data row template container that contains the cell outlet. Adds the right class and role. */
let ElRowComponent = ElRowComponent_1 = class ElRowComponent extends CdkRow {
};
ElRowComponent = ElRowComponent_1 = __decorate([
    Component({
        selector: 'el-row, tr[elRow]',
        template: `
    <ng-container elCellOutlet></ng-container>`,
        host: {
            'class': 'el-row',
            'role': 'row',
        },
        providers: [{ provide: CdkRow, useExisting: ElRowComponent_1 }],
        changeDetection: ChangeDetectionStrategy.OnPush
    })
], ElRowComponent);
export { ElRowComponent };
//# sourceMappingURL=row.js.map