import React from 'react';
import type { JSONSchema, LocaleProps, ThemeProps } from 'jamis-core';
import { DataSchema } from 'jamis-core';
import type { VariableItem } from '../../types';
export interface SchemaVariableListProps extends LocaleProps, ThemeProps {
    schemas?: Array<JSONSchema> | JSONSchema;
    value?: string;
    onSelect?: (value: string, schema: JSONSchema) => void;
    selectMode?: 'list' | 'tree' | 'tabs';
    placeholderRender?: (props: any) => JSX.Element | null;
    beforeBuildVariables?: (dataSchema: DataSchema) => void;
}
export interface SchemaVariableListState {
    variables: Array<VariableItem>;
}
export declare class SchemaVariableList extends React.Component<SchemaVariableListProps, SchemaVariableListState> {
    state: {
        variables: any[];
    };
    dataSchema?: DataSchema;
    componentDidUpdate(prevProps: SchemaVariableListProps): void;
    schemasToVaraibles(props: SchemaVariableListProps): any[];
    handleSelect(item: any): void;
    itemRender(option: any): JSX.Element;
    render(): JSX.Element;
}
export default SchemaVariableList;
