import React from "react";
interface Props<K extends undefined | string> {
    value: number;
    maxValue: number;
    usersDefault: number;
    disabled?: boolean;
    label?: string;
    onChange(value: number, powerLevelKey: K extends undefined ? void : K): void | Promise<void>;
    powerLevelKey: K extends undefined ? void : K;
}
interface IState {
    levelRoleMap: Partial<Record<number | "undefined", string>>;
    options: number[];
    customValue: number;
    selectValue: number | string;
    custom?: boolean;
}
export default class PowerSelector<K extends undefined | string> extends React.Component<Props<K>, IState> {
    static defaultProps: Partial<Props<any>>;
    private unmounted;
    constructor(props: Props<K>);
    componentDidMount(): void;
    componentDidUpdate(prevProps: Readonly<Props<K>>): void;
    componentWillUnmount(): void;
    private initStateFromProps;
    private onSelectChange;
    private onCustomChange;
    private onCustomBlur;
    private onCustomKeyDown;
    render(): React.ReactNode;
}
export {};
