import { InputWithOptionsDriver } from '../InputWithOptions/InputWithOptions.driver';
import { TagDriver } from '../Tag/Tag.driver';

export interface MultiSelectDriver extends Omit<
  InputWithOptionsDriver,
  'driver'
> {
  driver: InputWithOptionsDriver['driver'] & {
    getMaxHeight: () => string;
    clickOnInputWrapper: () => void;
    inputWrapperHasFocus: () => boolean;
    inputWrapperIsDisabled: () => boolean;
    numberOfTags: () => number;
    customSuffixExists: () => boolean;
    customPrefixExists: () => boolean;
    statusIndicatorExists: () => boolean;
    getTagLabelAt: (index: number) => string;
    pressCommaKey: () => void;
    getTagDriverByTagId: (tagId: string) => TagDriver;
  };
}
