import type { IScopedContext, RendererComponent, RendererProps } from 'jamis-core';
import { ScopedContext } from 'jamis-core';
import React from 'react';
import type { SearchBoxSchema } from './types';
interface SearchBoxProps extends RendererProps, Omit<SearchBoxSchema, 'type' | 'className'> {
    name: string;
    wrapperComponent?: React.ComponentType<any>;
    onQuery?: (query: {
        [propName: string]: string;
    }) => void;
}
interface SearchBoxState {
    value: string;
    /** mini样式下的激活态 */
    active: boolean;
}
export declare class SearchBoxRenderer extends React.Component<SearchBoxProps, SearchBoxState> {
    static contextType: React.Context<IScopedContext<import("jamis-core").ScopedComponentType>>;
    context: React.ContextType<typeof ScopedContext>;
    static defaultProps: Partial<SearchBoxProps>;
    static propsList: Array<string>;
    static hookBeforeRenderSchema: RendererComponent['hookBeforeRenderSchema'];
    constructor(props: SearchBoxProps, context: IScopedContext);
    componentWillUnmount(): void;
    componentDidUpdate(prevProps: Readonly<SearchBoxProps>, prevState: Readonly<SearchBoxState>): void;
    handleChange: (value: string) => Promise<void>;
    handleCancel: () => void;
    handleSearch: (text: string) => Promise<void>;
    handleActiveChange: (active: boolean) => void;
    renderAddOn: () => JSX.Element | null;
    render(): JSX.Element;
}
export {};
