@builder.io/mitosis
Version:
Write components once, run everywhere. Compiles to Vue, React, Solid, and Liquid. Import code from Figma and Builder.io
38 lines (37 loc) • 1.48 kB
TypeScript
import { StencilPropOption, ToStencilOptions } from '../../../generators/stencil/types';
import { MitosisComponent, MitosisState } from '../../../types/mitosis-component';
import { MitosisNode } from '../../../types/mitosis-node';
export declare const getTagName: (name: string, { prefix }: ToStencilOptions) => string;
export declare const getPropsAsCode: ({ props, propOptions, defaultProps, json, }: {
props: string[];
json: MitosisComponent;
defaultProps?: MitosisState | undefined;
propOptions: Record<string, StencilPropOption>;
}) => string;
/**
* Check for root element if it needs a wrapping <Host>
* @param children
*/
export declare const needsWrap: (children: MitosisNode[]) => boolean;
/**
* Dynamically creates all imports from `@stencil/core`
* @param wrap
* @param events
* @param props
* @param dataString
* @param watch
*/
export declare const getStencilCoreImportsAsString: ({ wrap, events, props, dataString, watch, }: {
wrap: boolean;
events: string[];
props: string[];
dataString: string;
watch: boolean;
}) => string;
export declare const getImports: (json: MitosisComponent, options: ToStencilOptions, childComponents: string[]) => string;
/**
* Converts the deps string into an array of strings
* @param deps The hook dependencies as string e.g.: "[this.a,this.b]"
*/
export declare const getDepsAsArray: (deps: string) => string[];
export declare const getExportsAndLocal: (json: MitosisComponent) => string;