import React from 'react'; import { SelectProps as MuiSelectProps } from '@mui/material'; export interface SelectorStyleProps { /** If input is readOnly */ readOnly?: boolean; } export declare const StyledSelect: import("@emotion/styled").StyledComponent<(import("@mui/material").FilledSelectProps & import("@mui/material").BaseSelectProps & import("@mui/system").MUIStyledCommonProps) | (import("@mui/material").StandardSelectProps & import("@mui/material").BaseSelectProps & import("@mui/system").MUIStyledCommonProps) | (import("@mui/material").OutlinedSelectProps & import("@mui/material").BaseSelectProps & import("@mui/system").MUIStyledCommonProps), {}, {}>; export declare const StyledInputLabel: import("@emotion/styled").StyledComponent & import("@mui/material/OverridableComponent").CommonProps & Omit, HTMLLabelElement>, "required" | "size" | "color" | "children" | "className" | "style" | "classes" | "error" | "disabled" | "sx" | "margin" | "filled" | "variant" | "focused" | "disableAnimation" | "shrink"> & import("@mui/system").MUIStyledCommonProps & { component?: React.ElementType | undefined; } & { open: boolean; }, {}, {}>; export declare const StyledHelperText: import("@emotion/styled").StyledComponent, HTMLParagraphElement>, "required" | "children" | "className" | "style" | "classes" | "error" | "disabled" | "sx" | "margin" | "filled" | "variant" | "focused"> & import("@mui/system").MUIStyledCommonProps & { component?: React.ElementType | undefined; }, {}, {}>; export type ErkSelectValue = Multiple extends true ? Type[] : Clearable extends true ? Type | undefined : Type; export interface ErkSelectProps extends Omit, SelectorStyleProps { /** if selecting multiple values */ multiple?: Multiple; /** If the usar can clear the value */ clearable?: Clearable; /** If the input is loading */ loading?: boolean; /** children to display in the options */ children?: React.ReactNode; /** Currently selected value */ value?: ErkSelectValue; onChange?: (value: ErkSelectValue) => void; /** String to place in the label */ label?: string; /** The helper Text to display */ helperText?: string; /** Label to display on clearable */ clearLabel?: string; /** labelMargin */ labelMargin?: number; } export type CustomErkSelectOnChangeType = Multiple extends true ? ChangeType[] : Clearable extends true ? ChangeType | undefined : ChangeType; export interface CustomErkSelectProps extends Omit, 'onChange'> { onChange?: (value: CustomErkSelectOnChangeType) => void; } /** * Generic textfield with apps designs. Is class due to the use in the react-hook-forms library */ declare class ErkSelect extends React.Component> { render(): JSX.Element; } export default ErkSelect;