/* eslint-disable */ /* tslint:disable */ /** * This is an autogenerated file created by the Stencil compiler. * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime"; import { RouteConfig, RouteHistory } from "./components/kiwi-navigation-shell/kiwi-navigation-shell.store"; import { MaybeAsync } from "./utils/maybe-async"; export namespace Components { interface KiwiNavigationShell { /** * Initial active route. */ "activeRoute": string; /** * Initial breadcrumb. * @example [ { label: 'Categories', to: { key: 'categories' }, }, { label: 'Household & Kitchen', to: { key: 'products', data: { categoryId: 'household+kitchen' } }, }, { label: 'Nicer Dicer', }, ] */ "breadcrumb": RouteHistory; /** * Array of route configuration. * @example [ { routeKey: 'home', label: 'Home', url: '/home', handler: () => { location.href = '/home'; return []; }, } ] */ "routes": RouteConfig< Record, Record >[]; } interface KiwiShellBreadcrumb { } interface KiwiShellLink { /** * If set to true will append class 'active' to the `a` element if the current route equals `routeKey`. Alternatively provide a string which is used as active class instead. When set to false, no class will be attached (default). */ "activeClass": boolean | string; /** * Additional css to be applied to the underlying `a` element. */ "customClass"?: string; /** * Render only the label, without a link. */ "labelOnly"?: true; /** * Data associated to this route. */ "routeData"?: MaybeAsync>; /** * The key of the route config this link should be built off of. */ "routeKey": string; } interface KiwiShellLinkDecorator { /** * Class added to elements marked with `data-shell-active="your-route"` */ "activeClass": string; /** * Cleanup listeners. */ "cleanup": () => Promise; /** * Route data keyed by route key. Will be passed as route data. */ "routeData": Record>; } } declare global { interface HTMLKiwiNavigationShellElement extends Components.KiwiNavigationShell, HTMLStencilElement { } var HTMLKiwiNavigationShellElement: { prototype: HTMLKiwiNavigationShellElement; new (): HTMLKiwiNavigationShellElement; }; interface HTMLKiwiShellBreadcrumbElement extends Components.KiwiShellBreadcrumb, HTMLStencilElement { } var HTMLKiwiShellBreadcrumbElement: { prototype: HTMLKiwiShellBreadcrumbElement; new (): HTMLKiwiShellBreadcrumbElement; }; interface HTMLKiwiShellLinkElement extends Components.KiwiShellLink, HTMLStencilElement { } var HTMLKiwiShellLinkElement: { prototype: HTMLKiwiShellLinkElement; new (): HTMLKiwiShellLinkElement; }; interface HTMLKiwiShellLinkDecoratorElement extends Components.KiwiShellLinkDecorator, HTMLStencilElement { } var HTMLKiwiShellLinkDecoratorElement: { prototype: HTMLKiwiShellLinkDecoratorElement; new (): HTMLKiwiShellLinkDecoratorElement; }; interface HTMLElementTagNameMap { "kiwi-navigation-shell": HTMLKiwiNavigationShellElement; "kiwi-shell-breadcrumb": HTMLKiwiShellBreadcrumbElement; "kiwi-shell-link": HTMLKiwiShellLinkElement; "kiwi-shell-link-decorator": HTMLKiwiShellLinkDecoratorElement; } } declare namespace LocalJSX { interface KiwiNavigationShell { /** * Initial active route. */ "activeRoute"?: string; /** * Initial breadcrumb. * @example [ { label: 'Categories', to: { key: 'categories' }, }, { label: 'Household & Kitchen', to: { key: 'products', data: { categoryId: 'household+kitchen' } }, }, { label: 'Nicer Dicer', }, ] */ "breadcrumb"?: RouteHistory; /** * Array of route configuration. * @example [ { routeKey: 'home', label: 'Home', url: '/home', handler: () => { location.href = '/home'; return []; }, } ] */ "routes": RouteConfig< Record, Record >[]; } interface KiwiShellBreadcrumb { } interface KiwiShellLink { /** * If set to true will append class 'active' to the `a` element if the current route equals `routeKey`. Alternatively provide a string which is used as active class instead. When set to false, no class will be attached (default). */ "activeClass"?: boolean | string; /** * Additional css to be applied to the underlying `a` element. */ "customClass"?: string; /** * Render only the label, without a link. */ "labelOnly"?: true; /** * Data associated to this route. */ "routeData"?: MaybeAsync>; /** * The key of the route config this link should be built off of. */ "routeKey": string; } interface KiwiShellLinkDecorator { /** * Class added to elements marked with `data-shell-active="your-route"` */ "activeClass"?: string; /** * Route data keyed by route key. Will be passed as route data. */ "routeData"?: Record>; } interface IntrinsicElements { "kiwi-navigation-shell": KiwiNavigationShell; "kiwi-shell-breadcrumb": KiwiShellBreadcrumb; "kiwi-shell-link": KiwiShellLink; "kiwi-shell-link-decorator": KiwiShellLinkDecorator; } } export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { "kiwi-navigation-shell": LocalJSX.KiwiNavigationShell & JSXBase.HTMLAttributes; "kiwi-shell-breadcrumb": LocalJSX.KiwiShellBreadcrumb & JSXBase.HTMLAttributes; "kiwi-shell-link": LocalJSX.KiwiShellLink & JSXBase.HTMLAttributes; "kiwi-shell-link-decorator": LocalJSX.KiwiShellLinkDecorator & JSXBase.HTMLAttributes; } } }