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;
