import React from 'react';

export enum ETagFilterType {
   Text = 'text',
   InputPrice = 'price',
   Input = 'input',
   InputNumber = 'number',
   Select = 'select',
   Location = 'location',
   CheckBox = 'checkbox',
   CheckBoxKey = 'checkboxKey',
   Date = 'date',
}

export interface ITagsSchema {
   [key: string]: {
      key?: string;
      prefix?: string;
      suffix?: string;
      type?: string;
      values?: { [key: string]: string };
      default?: any;
      decimals?: number;
      ignore?: any[];
      format?: string;
   };
}

export interface ITagFilter {
   key: string;
   type: string;
   value?: any;
   default: any;
   values: any;
   locationValue: any;
   checkboxValue: any;
   onChange?: any;
}

export interface ITagFilterRef {
   tagsCount: number;
}

export interface IPropsTagFilter {
   filters: any;
   filtersSchema: ITagsSchema;
   removeTag: (key: string, value: any) => void;
   fullColor?: boolean;
}
