/**
 * @fileoverview added by tsickle
 * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
 */
import { Directive, TemplateRef, Optional, Inject } from '@angular/core';
import { DisplayDensityBase, DisplayDensityToken } from '../core/density';
/**
 * @record
 */
export function IListChild() { }
if (false) {
    /** @type {?} */
    IListChild.prototype.index;
}
/**
 * @hidden
 */
export class IgxListBase extends DisplayDensityBase {
    /**
     * @param {?} _displayDensityOptions
     */
    constructor(_displayDensityOptions) {
        super(_displayDensityOptions);
        this._displayDensityOptions = _displayDensityOptions;
    }
}
IgxListBase.decorators = [
    { type: Directive, args: [{
                selector: '[igxListBase]'
            },] }
];
/** @nocollapse */
IgxListBase.ctorParameters = () => [
    { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [DisplayDensityToken,] }] }
];
if (false) {
    /** @type {?} */
    IgxListBase.prototype.onItemClicked;
    /** @type {?} */
    IgxListBase.prototype.allowLeftPanning;
    /** @type {?} */
    IgxListBase.prototype.allowRightPanning;
    /** @type {?} */
    IgxListBase.prototype.panEndTriggeringThreshold;
    /** @type {?} */
    IgxListBase.prototype.onLeftPan;
    /** @type {?} */
    IgxListBase.prototype.onRightPan;
    /** @type {?} */
    IgxListBase.prototype.onPanStateChange;
    /** @type {?} */
    IgxListBase.prototype.children;
    /** @type {?} */
    IgxListBase.prototype.listItemLeftPanningTemplate;
    /** @type {?} */
    IgxListBase.prototype.listItemRightPanningTemplate;
    /**
     * @type {?}
     * @protected
     */
    IgxListBase.prototype._displayDensityOptions;
}
/** @enum {number} */
const IgxListPanState = {
    NONE: 0, LEFT: 1, RIGHT: 2,
};
export { IgxListPanState };
IgxListPanState[IgxListPanState.NONE] = 'NONE';
IgxListPanState[IgxListPanState.LEFT] = 'LEFT';
IgxListPanState[IgxListPanState.RIGHT] = 'RIGHT';
export class IgxEmptyListTemplateDirective {
    /**
     * @param {?} template
     */
    constructor(template) {
        this.template = template;
    }
}
IgxEmptyListTemplateDirective.decorators = [
    { type: Directive, args: [{
                selector: '[igxEmptyList]'
            },] }
];
/** @nocollapse */
IgxEmptyListTemplateDirective.ctorParameters = () => [
    { type: TemplateRef }
];
if (false) {
    /** @type {?} */
    IgxEmptyListTemplateDirective.prototype.template;
}
export class IgxDataLoadingTemplateDirective {
    /**
     * @param {?} template
     */
    constructor(template) {
        this.template = template;
    }
}
IgxDataLoadingTemplateDirective.decorators = [
    { type: Directive, args: [{
                selector: '[igxDataLoading]'
            },] }
];
/** @nocollapse */
IgxDataLoadingTemplateDirective.ctorParameters = () => [
    { type: TemplateRef }
];
if (false) {
    /** @type {?} */
    IgxDataLoadingTemplateDirective.prototype.template;
}
export class IgxListItemLeftPanningTemplateDirective {
    /**
     * @param {?} template
     */
    constructor(template) {
        this.template = template;
    }
}
IgxListItemLeftPanningTemplateDirective.decorators = [
    { type: Directive, args: [{
                selector: '[igxListItemLeftPanning]'
            },] }
];
/** @nocollapse */
IgxListItemLeftPanningTemplateDirective.ctorParameters = () => [
    { type: TemplateRef }
];
if (false) {
    /** @type {?} */
    IgxListItemLeftPanningTemplateDirective.prototype.template;
}
export class IgxListItemRightPanningTemplateDirective {
    /**
     * @param {?} template
     */
    constructor(template) {
        this.template = template;
    }
}
IgxListItemRightPanningTemplateDirective.decorators = [
    { type: Directive, args: [{
                selector: '[igxListItemRightPanning]'
            },] }
];
/** @nocollapse */
IgxListItemRightPanningTemplateDirective.ctorParameters = () => [
    { type: TemplateRef }
];
if (false) {
    /** @type {?} */
    IgxListItemRightPanningTemplateDirective.prototype.template;
}
//# sourceMappingURL=data:application/json;base64, 