import React, { ReactElement } from 'react'; import * as O from 'fp-ts/lib/Option'; import { CommonComponentType } from '@monorail/types'; import { DisplayType } from '@monorail/visualComponents/inputs/inputTypes'; import { DropdownStateType, DropdownType } from './helpers'; import { InteractionController } from './interaction'; import { DropdownParser } from './parsers'; import { DropdownRender } from './render'; export declare const ItemContainer: import("styled-components").StyledComponent<"div", any, CommonComponentType, never>; export declare type DropdownSkinCommonType = { placeholder?: string; disabled?: boolean; clearable?: boolean; error?: O.Option; required?: boolean; label?: string; display?: DisplayType; extraWidth?: number; }; export declare type DropdownSkinHookProps = { parser: DropdownParser; interaction: InteractionController; } & DropdownSkinCommonType & CommonComponentType; export declare type DropdownSkinComponent = (props: DropdownSkinHookProps) => (state: DropdownStateType) => ReactElement; declare type DropdownSkinProps = { skin: DropdownSkinHookProps; state: DropdownStateType; render: DropdownRender; }; export declare const DropdownSkin: ({ skin, state, render, }: DropdownSkinProps) => React.ReactElement, string | ((props: any) => React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>; export declare const useDropdownSkin: (skin: DropdownSkinHookProps) => (state: DropdownStateType) => ReactElement; export declare const createDropdownCustomSkin: (render: Partial>) => DropdownSkinComponent; export {};