/*!
 * KoliBri - The accessible HTML-Standard
 */
import { h } from "@stencil/core";
import { KolPaginationWcTag } from "../../core/component-names";
export class KolPagination {
    constructor() {
        this._boundaryCount = 1;
        this._hasButtons = true;
        this._pageSize = 1;
        this._pageSizeOptions = [];
        this._siblingCount = 1;
        this._tooltipAlign = 'top';
    }
    render() {
        return (h(KolPaginationWcTag, { key: 'bc90292d4f75a96446852b57fbcae6d90988d553', _boundaryCount: this._boundaryCount, _label: this._label, _customClass: this._customClass, _on: this._on, _hasButtons: this._hasButtons, _page: this._page, _pageSize: this._pageSize, _pageSizeOptions: this._pageSizeOptions, _siblingCount: this._siblingCount, _tooltipAlign: this._tooltipAlign, _max: this._max }));
    }
    static get is() { return "kol-pagination"; }
    static get encapsulation() { return "shadow"; }
    static get originalStyleUrls() {
        return {
            "default": ["./style.scss"]
        };
    }
    static get styleUrls() {
        return {
            "default": ["style.css"]
        };
    }
    static get properties() {
        return {
            "_boundaryCount": {
                "type": "number",
                "mutable": false,
                "complexType": {
                    "original": "number",
                    "resolved": "number | undefined",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines the amount of pages to show next to the outer arrow buttons."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_boundary-count",
                "defaultValue": "1"
            },
            "_customClass": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "CustomClassPropType",
                    "resolved": "string | undefined",
                    "references": {
                        "CustomClassPropType": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::CustomClassPropType"
                        }
                    }
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines the custom class attribute if _variant=\"custom\" is set."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_custom-class"
            },
            "_label": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "LabelPropType",
                    "resolved": "string | undefined",
                    "references": {
                        "LabelPropType": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::LabelPropType"
                        }
                    }
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.)."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_label"
            },
            "_hasButtons": {
                "type": "any",
                "mutable": false,
                "complexType": {
                    "original": "boolean | Stringified<PaginationHasButton>",
                    "resolved": "boolean | string | undefined | { first: boolean; last: boolean; next: boolean; previous: boolean; }",
                    "references": {
                        "Stringified": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::Stringified"
                        },
                        "PaginationHasButton": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::PaginationHasButton"
                        }
                    }
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines which navigation buttons to render (first, last, next, previous buttons)."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_has-buttons",
                "defaultValue": "true"
            },
            "_page": {
                "type": "number",
                "mutable": false,
                "complexType": {
                    "original": "number",
                    "resolved": "number",
                    "references": {}
                },
                "required": true,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Defines the current page."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_page"
            },
            "_pageSize": {
                "type": "number",
                "mutable": true,
                "complexType": {
                    "original": "number",
                    "resolved": "number",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Defines the amount of entries to show per page."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_page-size",
                "defaultValue": "1"
            },
            "_pageSizeOptions": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "Stringified<number[]>",
                    "resolved": "number[] | string",
                    "references": {
                        "Stringified": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::Stringified"
                        }
                    }
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Defines the options for the page-size-select."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_page-size-options",
                "defaultValue": "[]"
            },
            "_on": {
                "type": "unknown",
                "mutable": false,
                "complexType": {
                    "original": "KoliBriPaginationButtonCallbacks",
                    "resolved": "{ onChangePage?: EventValueOrEventCallback<Event, number> | undefined; onChangePageSize?: EventValueOrEventCallback<Event, number> | undefined; onClick?: EventValueOrEventCallback<Event, number> | undefined; }",
                    "references": {
                        "KoliBriPaginationButtonCallbacks": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::KoliBriPaginationButtonCallbacks"
                        }
                    }
                },
                "required": true,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Gibt an, auf welche Callback-Events reagiert werden."
                },
                "getter": false,
                "setter": false
            },
            "_siblingCount": {
                "type": "number",
                "mutable": false,
                "complexType": {
                    "original": "number",
                    "resolved": "number | undefined",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines the amount of pages to show next to the current page."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_sibling-count",
                "defaultValue": "1"
            },
            "_tooltipAlign": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "TooltipAlignPropType",
                    "resolved": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined",
                    "references": {
                        "TooltipAlignPropType": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::TooltipAlignPropType"
                        }
                    }
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Defines where to show the Tooltip preferably: top, right, bottom or left."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_tooltip-align",
                "defaultValue": "'top'"
            },
            "_max": {
                "type": "number",
                "mutable": false,
                "complexType": {
                    "original": "MaxPropType",
                    "resolved": "number",
                    "references": {
                        "MaxPropType": {
                            "location": "import",
                            "path": "../../schema",
                            "id": "src/schema/index.ts::MaxPropType"
                        }
                    }
                },
                "required": true,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Defines the maximum value of the element."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "_max"
            }
        };
    }
}
//# sourceMappingURL=shadow.js.map
