import React, { ComponentProps } from 'react';
import type { DropdownNodeSelect, MergedSelectProps as MergedSelectPropsNewHope, DistributiveOmit, DistributivePick } from '@salutejs/plasma-new-hope';
declare const SelectNewHope: React.FunctionComponent<import("@salutejs/plasma-new-hope/types/engines/types").PropsType<{
    view: {
        default: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        positive: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        warning: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        negative: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        accent: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        secondary: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        clear: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        dark: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        black: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        white: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    size: {
        l: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        m: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        s: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        xs: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    labelPlacement: {
        inner: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        outer: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    chipView: {
        default: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        secondary: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        accent: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    hintView: {
        default: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    hintSize: {
        m: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
        s: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    disabled: {
        true: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
    readOnly: {
        true: import("@salutejs/plasma-new-hope/types/engines/types").PolymorphicClassName;
    };
}> & ((import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").RequiredProps & {
    hintText: string;
    hintTrigger?: "hover" | "click";
    hintView?: string;
    hintSize?: string;
    hintTargetIcon?: React.ReactNode;
    hintTargetPlacement?: "inner" | "outer";
    hintPlacement?: import("@salutejs/plasma-new-hope/styled-components").PopoverPlacement | Array<import("@salutejs/plasma-new-hope/styled-components").PopoverPlacementBasic>;
    hintHasArrow?: boolean;
    hintOffset?: [number, number];
    hintWidth?: string;
    hintContentLeft?: React.ReactNode;
} & {
    target?: "textfield-like";
    view?: "default" | "positive" | "warning" | "negative";
    contentLeft?: React.ReactNode;
    placeholder?: string;
    helperText?: string;
    chipType?: "default" | "text";
    chipClickArea?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").ChipClickArea;
} & {
    multiselect?: false;
    separator?: never;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>) | (import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").RequiredProps & {
    hintText: string;
    hintTrigger?: "hover" | "click";
    hintView?: string;
    hintSize?: string;
    hintTargetIcon?: React.ReactNode;
    hintTargetPlacement?: "inner" | "outer";
    hintPlacement?: import("@salutejs/plasma-new-hope/styled-components").PopoverPlacement | Array<import("@salutejs/plasma-new-hope/styled-components").PopoverPlacementBasic>;
    hintHasArrow?: boolean;
    hintOffset?: [number, number];
    hintWidth?: string;
    hintContentLeft?: React.ReactNode;
} & {
    target?: "textfield-like";
    view?: "default" | "positive" | "warning" | "negative";
    contentLeft?: React.ReactNode;
    placeholder?: string;
    helperText?: string;
    chipType?: "default" | "text";
    chipClickArea?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").ChipClickArea;
} & {
    multiselect?: true;
    separator?: string;
    selectAllOptions?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectAllProps;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>) | (import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").RequiredProps & {
    hintTrigger?: never;
    hintText?: never;
    hintView?: never;
    hintSize?: never;
    hintTargetIcon?: never;
    hintTargetPlacement?: never;
    hintPlacement?: never;
    hintHasArrow?: never;
    hintOffset?: never;
    hintWidth?: never;
    hintContentLeft?: never;
} & {
    target?: "textfield-like";
    view?: "default" | "positive" | "warning" | "negative";
    contentLeft?: React.ReactNode;
    placeholder?: string;
    helperText?: string;
    chipType?: "default" | "text";
    chipClickArea?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").ChipClickArea;
} & {
    multiselect?: false;
    separator?: never;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>) | (import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").RequiredProps & {
    hintTrigger?: never;
    hintText?: never;
    hintView?: never;
    hintSize?: never;
    hintTargetIcon?: never;
    hintTargetPlacement?: never;
    hintPlacement?: never;
    hintHasArrow?: never;
    hintOffset?: never;
    hintWidth?: never;
    hintContentLeft?: never;
} & {
    target?: "textfield-like";
    view?: "default" | "positive" | "warning" | "negative";
    contentLeft?: React.ReactNode;
    placeholder?: string;
    helperText?: string;
    chipType?: "default" | "text";
    chipClickArea?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").ChipClickArea;
} & {
    multiselect?: true;
    separator?: string;
    selectAllOptions?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectAllProps;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>) | (import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & {
    target: "button-like";
    view?: "default" | "accent" | "secondary" | "clear" | "positive" | "warning" | "negative" | "dark" | "black" | "white";
    contentLeft?: never;
    placeholder?: never;
    helperText?: never;
    chipType?: never;
    chipClickArea?: never;
} & {
    multiselect?: false;
    separator?: never;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>) | (import("@salutejs/plasma-new-hope/types/components/TextField/TextField.types").LabelProps & {
    target: "button-like";
    view?: "default" | "accent" | "secondary" | "clear" | "positive" | "warning" | "negative" | "dark" | "black" | "white";
    contentLeft?: never;
    placeholder?: never;
    helperText?: never;
    chipType?: never;
    chipClickArea?: never;
} & {
    multiselect?: true;
    separator?: string;
    selectAllOptions?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectAllProps;
} & {
    value?: any;
    onChange?: ((value: any, item: DropdownNodeSelect | null) => void) | undefined;
    placeholder?: string;
    helperText?: string;
    disabled?: boolean;
    readOnly?: boolean;
    items?: DropdownNodeSelect[] | undefined;
    treeView?: boolean;
    arrowPlacement?: "left" | "right";
    onItemSelect?: ((e: DropdownNodeSelect, event: React.SyntheticEvent) => void) | undefined;
    children?: never;
    isTargetAmount?: boolean;
    renderTarget?: ((item: DropdownNodeSelect | DropdownNodeSelect[], opened?: boolean) => React.ReactNode) | undefined;
    placement?: import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacement | Array<import("@salutejs/plasma-new-hope/types/components/Select/Select.types").SelectPlacementBasic>;
    variant?: "normal" | "tight";
    zIndex?: React.CSSProperties["zIndex"];
    listMaxHeight?: React.CSSProperties["height"];
    listWidth?: React.CSSProperties["width"];
    portal?: string | React.RefObject<HTMLElement>;
    renderValue?: ((item: DropdownNodeSelect) => string) | undefined;
    renderItem?: ((item: DropdownNodeSelect) => React.ReactNode) | undefined;
    closeAfterSelect?: boolean;
    beforeList?: React.ReactNode;
    afterList?: React.ReactNode;
    virtual?: boolean;
    onScroll?: (e: React.UIEvent<HTMLElement>) => void;
    onToggle?: (isOpen: boolean) => void;
    mode?: "default" | "radio";
    size?: string;
    view?: string;
    chipView?: string;
    status?: "success" | "warning" | "error";
    hasItems?: boolean;
    isOpen?: boolean;
    listHeight?: React.CSSProperties["height"];
    onScrollBottom?: (e: React.UIEvent<HTMLElement>) => void;
    listOverflow?: React.CSSProperties["overflow"];
} & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, "onChange" | "nonce" | "onResize" | "onResizeCapture" | "value"> & React.RefAttributes<HTMLButtonElement>))>;
export type SelectProps<T, K extends DropdownNodeSelect> = DistributiveOmit<MergedSelectPropsNewHope<T, K>, 'size' | 'view' | 'chipView' | 'disabled'> & DistributivePick<ComponentProps<typeof SelectNewHope>, 'size' | 'view' | 'chipView' | 'disabled'>;
declare const Select: <T, K extends DropdownNodeSelect>(props: SelectProps<T, K> & React.RefAttributes<HTMLButtonElement>) => React.ReactElement | null;
export { Select };
