UNPKG

@intuitionrobotics/thunderstorm

Version:
41 lines 1.51 kB
"use strict"; /* * Thunderstorm is a full web app framework! * * Typescript & Express backend infrastructure that natively runs on firebase function * Typescript & React frontend infrastructure * * Copyright (C) 2020 Intuition Robotics * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // import * as React from "react"; // // export type InferItemType<R> = R extends Renderer<infer Item> ? Item : "Make sure the Renderer Renders the correct item type e.g. (props:{item:Item}) => React.ReactNode"; // // export type Renderer<Item> = React.ElementType<{ item: Item }> // // export type RendererMap<T= any> = { // [k: string]: Renderer<T> // } // // export type ItemWrapper<Rm extends RendererMap, K extends keyof Rm = keyof Rm, Item = InferItemType<Rm[K]>> = { // item: Item // type: K // } // // export type GenericRenderer<Rm extends RendererMap, ItemType extends ItemWrapper<Rm> = ItemWrapper<Rm>> = { // rendererMap: Rm // items: ItemType[] // } //# sourceMappingURL=renderer-map.js.map