import { ReactElement } from 'react';
import { BoosterFactory, CompositionSetting, CompositionSettingPosition, Player, PlayerPosition } from '@goatim/client';
import { FormFields, FormProps } from '@cezembre/forms';
export interface CompositionPositionEditorFields extends FormFields {
    id: string;
    player?: Player;
    booster_factory?: BoosterFactory;
}
export type GetPositionPlayersFunction = (position?: PlayerPosition[] | PlayerPosition) => Promise<Player[] | undefined> | Player[] | undefined;
export interface PositionPlayerSelectorProps extends FormProps<CompositionPositionEditorFields> {
    getPositionPlayers?: GetPositionPlayersFunction;
    compositionSetting?: CompositionSetting;
    compositionSettingPosition?: CompositionSettingPosition;
    initialValues?: CompositionPositionEditorFields;
    boosterFactories?: BoosterFactory[];
    onCancel?: () => unknown;
}
export declare function CompositionPositionEditor({ getPositionPlayers, compositionSetting, compositionSettingPosition, onChange, onSubmit, initialValues, boosterFactories, onCancel, }: PositionPlayerSelectorProps): ReactElement;
