import { EditableNumberRangeFacet } from '../facet/editable-number-range-facet.model' ; import { Facet } from '../facet/facet.model' ; import { HierarchicalFacet } from '../facet/hierarchical-facet.model' ; import { NumberRangeFacet } from '../facet/number-range-facet.model' ; import { SimpleFacet } from '../facet/simple-facet.model' ; import { EditableNumberRangeFilterSchema , FilterSchema , HierarchicalFilterSchema , NumberRangeFilterSchema , SimpleFilterSchema } from './filter.schema' ; import { IdentifiableSchema } from './identifiable.schema' ; public export const FacetSchema = { ... IdentifiableSchema , label : expect . any ( String ) , filters : expect . arrayOfItemsMatching ( FilterSchema ) , modelName : expect . any ( String ) } ; public export const SimpleFacetSchema = { ... FacetSchema , filters : expect . arrayOfItemsMatching ( SimpleFilterSchema ) , modelName : 'SimpleFacet' } ; public export const HierarchicalFacetSchema = { ... FacetSchema , filters : expect . arrayOfItemsMatching ( HierarchicalFilterSchema ) , modelName : 'HierarchicalFacet' } ; public export const NumberRangeFacetSchema = { ... FacetSchema , filters : expect . arrayOfItemsMatching ( NumberRangeFilterSchema ) , modelName : 'NumberRangeFacet' } ; public export const EditableNumberRangeFacetSchema = { ... FacetSchema , filters : expect . arrayOfItemsMatching ( EditableNumberRangeFilterSchema ) , modelName : 'EditableNumberRangeFacet' } ;