/** * @type CategorizationAttributeDefinition: The categorization attribute definition. * * @property id: The ID of the supported attribute. * - **Max Length:** 256 * * @property attributeName: The display name of the supported attribute. * - **Max Length:** 4000 * * @property attributeType: The type of the attribute (custom/system/categorization). \"system\" indicates the System Attribute of the Product in ECOM, \"custom\" indicates the Custom Attribute of the Product in ECOM defined by merchant and \"categorization\" indicates the attribute used for categorization purposes ONLY and is not a defined attribute on the Product Object. * * @property valueType: The value type of the attribute. * * @property allowedOperators: The list of allowed operators for this attribute based on its value type. * * @property allowedValues: The list of allowed values for this attribute IF its attributeType is an ENUM. * * @property allowedDisplayValues: The list of allowed Localized Display values for this attribute IF its attributeType is an ENUM based on the locale query param requested. If no locale query param value is provided \"default\" locale is assumed. * */ export type CategorizationAttributeDefinition = { id: string; attributeName?: string; attributeType: CategorizationAttributeDefinitionAttributeTypeEnum; valueType: CategorizationAttributeDefinitionValueTypeEnum; allowedOperators: Array; allowedValues?: Array; allowedDisplayValues?: Array; } & { [key: string]: any; }; export type CategorizationAttributeDefinitionAttributeTypeEnum = 'custom' | 'system' | 'categorization'; export type CategorizationAttributeDefinitionValueTypeEnum = 'string' | 'int' | 'double' | 'text' | 'html' | 'date' | 'datetime' | 'image' | 'boolean' | 'money' | 'quantity' | 'email' | 'password' | 'set-of-string' | 'set-of-int' | 'set-of-double' | 'enum-of-string' | 'enum-of-int'; export type CategorizationAttributeDefinitionAllowedOperatorsEnum = 'starts_with' | 'contains' | 'equals' | 'not_equals' | 'greater_than' | 'less_than' | 'is_one_of' | 'not_one_of' | 'is_defined' | 'is_not_defined';