/* 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 { FunnelListItem } from "./types/funnel.type"; import { ChannelShape, DatastreamResponseHandler, FilterFn, FilterFnMap, MetadataObj, ResponseTypes, StreamConfig } from "./types/datastreams.type"; import { JSONValue } from "./types/json.type"; import { ComponentConfig, ReportDefinition } from "./types"; import { Runtime } from "@metrichor/data-rambler"; import { SelectListMember } from "./types/selector.type"; import { StatsBoxListItem } from "./types/statsbox.type"; export namespace Components { interface CronkApp { /** * Example file name */ "report": string; } interface CronkErrormessage { /** * Customised message for error reporting */ "message": string; } interface CronkFunnel { /** * Show/hide count */ "hideCount": boolean; /** * Show/hide label */ "hideLabel": boolean; /** * Show/hide percent */ "hidePercent": boolean; /** * Show/hide stats */ "hideStats": boolean; /** * {label, count}[] of members */ "statsList": FunnelListItem[]; } interface CronkList { /** * Show/hide bullets */ "bullets": boolean; /** * any[] of items to list */ "items": any[]; /** * Render bullets as numbers (true) or not (discs) */ "ordered": boolean; /** * reverse the provided order */ "reverse": boolean; } interface CronkManagedDatastream { /** * Whether or not a datastream is affected by filters like cronk-selector */ "acceptsFilters": boolean; /** * Attach/add a new filter function to apply to members of a datastream */ "addFilter": (fnKey: string, filterFn: FilterFn) => Promise; /** * Channel configuration describing how broadcasts are constructed */ "channels": ChannelShape[]; /** * Stream data source managed externally to component */ "data": JSONValue; /** * List any filter functions applied to the data streams */ "listFilters": () => Promise; /** * Rambler input mapping */ "rambler": string; /** * Rebroadcast latest cached payload to on all configured channels */ "resendBroadcast": () => Promise; /** * sets class `cronk-${this.type}-eventstream` on cronk-managed-datastream element */ "type": string; } interface CronkPage { /** * enable/disable validation ot the cronkite schema */ "disableSchemaValidation": boolean; "getRamblerRuntime": () => Promise; /** * Load new page configuration JSON */ "loadConfig": (newConfig: ReportDefinition | string) => Promise; /** * Page configuration JSON */ "pageConfig": ReportDefinition | string; /** * show or hide the configuration used to render the page */ "showConfig": boolean; /** * validate provided configuration JSON for a page */ "validateConfig": (configIn: unknown) => Promise; } interface CronkPageComponents { } interface CronkPagePanel { /** * Configuration for a specific component */ "panelConfig": ComponentConfig; } interface CronkPollDatastream { /** * Whether or not a datastream is affected by filters like cronk-selector */ "acceptsFilters": boolean; /** * Attach/add a new filter function to apply to members of a datastream */ "addFilter": (fnKey: string, filterFn: FilterFn) => Promise; /** * fetch API request cache strategy */ "cache": RequestCache; /** * Channel configuration describing how broadcasts are constructed */ "channels": ChannelShape[]; /** * fetch API credentials */ "credentials": RequestCredentials; /** * List any filter functions applied to the data streams */ "listFilters": () => Promise; /** * fetch API request mode */ "mode": RequestMode; /** * Polling interval to check URL for changes */ "pollFrequency": number; /** * Rambler input mapping */ "rambler": string; /** * Rebroadcast latest cached payload to on all configured channels */ "resendBroadcast": () => Promise; /** * fetch API response format */ "responseFormat": ResponseTypes; /** * Custom response handler */ "responseHandler": DatastreamResponseHandler; /** * sets class `cronk-${this.type}-eventstream` on cronk-poll-datastream element */ "type": string; /** * fetch API URL */ "url": string | null; } interface CronkProportionBar { /** * Colour of the proportion bar */ "color": string; /** * proportion ( 0 <= value <= 1) */ "value": number; } interface CronkSelector { /** * Custom heading for the selector */ "heading": string; /** * Options visible if less than threshold (1 - N) */ "indexThreshold": number; /** * Label for each selectable - default 'COUNT' */ "label": string; /** * Minimum number of selected members */ "minimumSelection": number; /** * multi select */ "multiselect": boolean; /** * Options visible if greater than threshold */ "proportionThreshold": number; /** * Should all selectable members be selected on initial render */ "selectAllOnLoad": boolean; /** * a list of selectable members {select, label, count}[] */ "selectList": SelectListMember[]; /** * a value that will be used to filter data streams by */ "selector": string; } interface CronkSimpleGrid { /** * Append items to the grid */ "appendItems": () => Promise; /** * How many new elements to attach to grid when the bottom is reached */ "batchSize": number; /** * any[][] for data to be rendered in the table */ "data": any[]; /** * CSS display property */ "display": 'grid' | 'auto'; /** * Style settings for grid header row */ "headerColour": 'primary' | 'secondary' | 'tertiary' | 'dark'; /** * string[] of table headers */ "headers": string[]; /** * How many rows to render before scroll overflow kicks in */ "rows": number; /** * How to sort columns */ "sort": null | [number, string][]; } interface CronkStatsbox { /** * Array of {label: string, value: JSONValue} for stats box headline values */ "statsList": StatsBoxListItem[]; } interface CronkTitle { /** * Specify a title */ "reportTitle": string; } interface CronkVersion { } } export interface CronkPageCustomEvent extends CustomEvent { detail: T; target: HTMLCronkPageElement; } export interface CronkPageComponentsCustomEvent extends CustomEvent { detail: T; target: HTMLCronkPageComponentsElement; } declare global { interface HTMLCronkAppElement extends Components.CronkApp, HTMLStencilElement { } var HTMLCronkAppElement: { prototype: HTMLCronkAppElement; new (): HTMLCronkAppElement; }; interface HTMLCronkErrormessageElement extends Components.CronkErrormessage, HTMLStencilElement { } var HTMLCronkErrormessageElement: { prototype: HTMLCronkErrormessageElement; new (): HTMLCronkErrormessageElement; }; interface HTMLCronkFunnelElement extends Components.CronkFunnel, HTMLStencilElement { } var HTMLCronkFunnelElement: { prototype: HTMLCronkFunnelElement; new (): HTMLCronkFunnelElement; }; interface HTMLCronkListElement extends Components.CronkList, HTMLStencilElement { } var HTMLCronkListElement: { prototype: HTMLCronkListElement; new (): HTMLCronkListElement; }; interface HTMLCronkManagedDatastreamElement extends Components.CronkManagedDatastream, HTMLStencilElement { } var HTMLCronkManagedDatastreamElement: { prototype: HTMLCronkManagedDatastreamElement; new (): HTMLCronkManagedDatastreamElement; }; interface HTMLCronkPageElement extends Components.CronkPage, HTMLStencilElement { } var HTMLCronkPageElement: { prototype: HTMLCronkPageElement; new (): HTMLCronkPageElement; }; interface HTMLCronkPageComponentsElement extends Components.CronkPageComponents, HTMLStencilElement { } var HTMLCronkPageComponentsElement: { prototype: HTMLCronkPageComponentsElement; new (): HTMLCronkPageComponentsElement; }; interface HTMLCronkPagePanelElement extends Components.CronkPagePanel, HTMLStencilElement { } var HTMLCronkPagePanelElement: { prototype: HTMLCronkPagePanelElement; new (): HTMLCronkPagePanelElement; }; interface HTMLCronkPollDatastreamElement extends Components.CronkPollDatastream, HTMLStencilElement { } var HTMLCronkPollDatastreamElement: { prototype: HTMLCronkPollDatastreamElement; new (): HTMLCronkPollDatastreamElement; }; interface HTMLCronkProportionBarElement extends Components.CronkProportionBar, HTMLStencilElement { } var HTMLCronkProportionBarElement: { prototype: HTMLCronkProportionBarElement; new (): HTMLCronkProportionBarElement; }; interface HTMLCronkSelectorElement extends Components.CronkSelector, HTMLStencilElement { } var HTMLCronkSelectorElement: { prototype: HTMLCronkSelectorElement; new (): HTMLCronkSelectorElement; }; interface HTMLCronkSimpleGridElement extends Components.CronkSimpleGrid, HTMLStencilElement { } var HTMLCronkSimpleGridElement: { prototype: HTMLCronkSimpleGridElement; new (): HTMLCronkSimpleGridElement; }; interface HTMLCronkStatsboxElement extends Components.CronkStatsbox, HTMLStencilElement { } var HTMLCronkStatsboxElement: { prototype: HTMLCronkStatsboxElement; new (): HTMLCronkStatsboxElement; }; interface HTMLCronkTitleElement extends Components.CronkTitle, HTMLStencilElement { } var HTMLCronkTitleElement: { prototype: HTMLCronkTitleElement; new (): HTMLCronkTitleElement; }; interface HTMLCronkVersionElement extends Components.CronkVersion, HTMLStencilElement { } var HTMLCronkVersionElement: { prototype: HTMLCronkVersionElement; new (): HTMLCronkVersionElement; }; interface HTMLElementTagNameMap { "cronk-app": HTMLCronkAppElement; "cronk-errormessage": HTMLCronkErrormessageElement; "cronk-funnel": HTMLCronkFunnelElement; "cronk-list": HTMLCronkListElement; "cronk-managed-datastream": HTMLCronkManagedDatastreamElement; "cronk-page": HTMLCronkPageElement; "cronk-page-components": HTMLCronkPageComponentsElement; "cronk-page-panel": HTMLCronkPagePanelElement; "cronk-poll-datastream": HTMLCronkPollDatastreamElement; "cronk-proportion-bar": HTMLCronkProportionBarElement; "cronk-selector": HTMLCronkSelectorElement; "cronk-simple-grid": HTMLCronkSimpleGridElement; "cronk-statsbox": HTMLCronkStatsboxElement; "cronk-title": HTMLCronkTitleElement; "cronk-version": HTMLCronkVersionElement; } } declare namespace LocalJSX { interface CronkApp { /** * Example file name */ "report"?: string; } interface CronkErrormessage { /** * Customised message for error reporting */ "message"?: string; } interface CronkFunnel { /** * Show/hide count */ "hideCount"?: boolean; /** * Show/hide label */ "hideLabel"?: boolean; /** * Show/hide percent */ "hidePercent"?: boolean; /** * Show/hide stats */ "hideStats"?: boolean; /** * {label, count}[] of members */ "statsList"?: FunnelListItem[]; } interface CronkList { /** * Show/hide bullets */ "bullets"?: boolean; /** * any[] of items to list */ "items"?: any[]; /** * Render bullets as numbers (true) or not (discs) */ "ordered"?: boolean; /** * reverse the provided order */ "reverse"?: boolean; } interface CronkManagedDatastream { /** * Whether or not a datastream is affected by filters like cronk-selector */ "acceptsFilters"?: boolean; /** * Channel configuration describing how broadcasts are constructed */ "channels"?: ChannelShape[]; /** * Stream data source managed externally to component */ "data"?: JSONValue; /** * Rambler input mapping */ "rambler"?: string; /** * sets class `cronk-${this.type}-eventstream` on cronk-managed-datastream element */ "type"?: string; } interface CronkPage { /** * enable/disable validation ot the cronkite schema */ "disableSchemaValidation"?: boolean; /** * broadcast to any listener (mostly data streams) that the page has fully rendered and payloads should be rebroadcast to ensure the latest data is set on components */ "onCronkPageReady"?: (event: CronkPageCustomEvent) => void; /** * Page configuration JSON */ "pageConfig"?: ReportDefinition | string; /** * show or hide the configuration used to render the page */ "showConfig"?: boolean; } interface CronkPageComponents { /** * Notify whe component has been finally rendered */ "onComponentsLoaded"?: (event: CronkPageComponentsCustomEvent) => void; } interface CronkPagePanel { /** * Configuration for a specific component */ "panelConfig"?: ComponentConfig; } interface CronkPollDatastream { /** * Whether or not a datastream is affected by filters like cronk-selector */ "acceptsFilters"?: boolean; /** * fetch API request cache strategy */ "cache"?: RequestCache; /** * Channel configuration describing how broadcasts are constructed */ "channels"?: ChannelShape[]; /** * fetch API credentials */ "credentials"?: RequestCredentials; /** * fetch API request mode */ "mode"?: RequestMode; /** * Polling interval to check URL for changes */ "pollFrequency"?: number; /** * Rambler input mapping */ "rambler"?: string; /** * fetch API response format */ "responseFormat"?: ResponseTypes; /** * Custom response handler */ "responseHandler"?: DatastreamResponseHandler; /** * sets class `cronk-${this.type}-eventstream` on cronk-poll-datastream element */ "type"?: string; /** * fetch API URL */ "url"?: string | null; } interface CronkProportionBar { /** * Colour of the proportion bar */ "color"?: string; /** * proportion ( 0 <= value <= 1) */ "value"?: number; } interface CronkSelector { /** * Custom heading for the selector */ "heading"?: string; /** * Options visible if less than threshold (1 - N) */ "indexThreshold"?: number; /** * Label for each selectable - default 'COUNT' */ "label"?: string; /** * Minimum number of selected members */ "minimumSelection"?: number; /** * multi select */ "multiselect"?: boolean; /** * Options visible if greater than threshold */ "proportionThreshold"?: number; /** * Should all selectable members be selected on initial render */ "selectAllOnLoad"?: boolean; /** * a list of selectable members {select, label, count}[] */ "selectList"?: SelectListMember[]; /** * a value that will be used to filter data streams by */ "selector"?: string; } interface CronkSimpleGrid { /** * How many new elements to attach to grid when the bottom is reached */ "batchSize"?: number; /** * any[][] for data to be rendered in the table */ "data"?: any[]; /** * CSS display property */ "display"?: 'grid' | 'auto'; /** * Style settings for grid header row */ "headerColour"?: 'primary' | 'secondary' | 'tertiary' | 'dark'; /** * string[] of table headers */ "headers"?: string[]; /** * How many rows to render before scroll overflow kicks in */ "rows"?: number; /** * How to sort columns */ "sort"?: null | [number, string][]; } interface CronkStatsbox { /** * Array of {label: string, value: JSONValue} for stats box headline values */ "statsList"?: StatsBoxListItem[]; } interface CronkTitle { /** * Specify a title */ "reportTitle"?: string; } interface CronkVersion { } interface IntrinsicElements { "cronk-app": CronkApp; "cronk-errormessage": CronkErrormessage; "cronk-funnel": CronkFunnel; "cronk-list": CronkList; "cronk-managed-datastream": CronkManagedDatastream; "cronk-page": CronkPage; "cronk-page-components": CronkPageComponents; "cronk-page-panel": CronkPagePanel; "cronk-poll-datastream": CronkPollDatastream; "cronk-proportion-bar": CronkProportionBar; "cronk-selector": CronkSelector; "cronk-simple-grid": CronkSimpleGrid; "cronk-statsbox": CronkStatsbox; "cronk-title": CronkTitle; "cronk-version": CronkVersion; } } export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { "cronk-app": LocalJSX.CronkApp & JSXBase.HTMLAttributes; "cronk-errormessage": LocalJSX.CronkErrormessage & JSXBase.HTMLAttributes; "cronk-funnel": LocalJSX.CronkFunnel & JSXBase.HTMLAttributes; "cronk-list": LocalJSX.CronkList & JSXBase.HTMLAttributes; "cronk-managed-datastream": LocalJSX.CronkManagedDatastream & JSXBase.HTMLAttributes; "cronk-page": LocalJSX.CronkPage & JSXBase.HTMLAttributes; "cronk-page-components": LocalJSX.CronkPageComponents & JSXBase.HTMLAttributes; "cronk-page-panel": LocalJSX.CronkPagePanel & JSXBase.HTMLAttributes; "cronk-poll-datastream": LocalJSX.CronkPollDatastream & JSXBase.HTMLAttributes; "cronk-proportion-bar": LocalJSX.CronkProportionBar & JSXBase.HTMLAttributes; "cronk-selector": LocalJSX.CronkSelector & JSXBase.HTMLAttributes; "cronk-simple-grid": LocalJSX.CronkSimpleGrid & JSXBase.HTMLAttributes; "cronk-statsbox": LocalJSX.CronkStatsbox & JSXBase.HTMLAttributes; "cronk-title": LocalJSX.CronkTitle & JSXBase.HTMLAttributes; "cronk-version": LocalJSX.CronkVersion & JSXBase.HTMLAttributes; } } }