'use strict';
import { resourceIds } from '../../../fd-toolbox/constants/resource-id-constants.js';
import { WorkspaceResource } from '../../meta/core/resources/workspace/workspace-resource.js';
import { ticketProps } from './props/ticket-props.js';
import { accessByUserId } from '../../meta/decorators/access-by-user-id.js';
import { descriptionProperty } from '../../meta/decorators/description-property.js';
import { expandDescription } from '../../meta/decorators/expand-description-properties.js';
import { icon } from '../../meta/decorators/icon.js';
import { resourceMetaId } from '../../meta/decorators/resource-id.js';
import { searchable } from '../../meta/decorators/searchable.js';
import { iconNames } from '../../fd-component-toolbox/icon/Icon.js';

var __defProp=Object['defineProperty'],__getOwnPropDesc=Object['getOwnPropertyDescriptor'],__name=(_0x15ce4a,_0x41bd6e)=>__defProp(_0x15ce4a,'name',{'value':_0x41bd6e,'configurable':!![]}),__decorateClass=(_0x5acfb7,_0x12489d,_0x3bea9f,_0x2b0d48)=>{var _0x488fb0=_0x2b0d48>0x18*0x13+0x1e24+-0x1feb*0x1?void(-0x7ee+-0x650+0xe3e):_0x2b0d48?__getOwnPropDesc(_0x12489d,_0x3bea9f):_0x12489d;for(var _0x1e49da=_0x5acfb7['length']-(0x1*0xbe3+-0x27f*0xa+-0x3e*-0x36),_0x5d11db;_0x1e49da>=-0x1b94+0x3*0x9ff+-0x269;_0x1e49da--)if(_0x5d11db=_0x5acfb7[_0x1e49da])_0x488fb0=(_0x2b0d48?_0x5d11db(_0x12489d,_0x3bea9f,_0x488fb0):_0x5d11db(_0x488fb0))||_0x488fb0;if(_0x2b0d48&&_0x488fb0)__defProp(_0x12489d,_0x3bea9f,_0x488fb0);return _0x488fb0;};let Ticket=class extends WorkspaceResource{['subject'];['status'];['priority'];['companyId'];['contactId'];['company'];['contact'];};__name(Ticket,'Ticket'),__decorateClass([searchable()],Ticket['prototype'],'subject',0x13a4+0x1618+-0xda*0x31),__decorateClass([expandDescription()],Ticket['prototype'],'companyId',-0x6cb*0x4+0x22e3+-0x7b5),__decorateClass([expandDescription()],Ticket['prototype'],'contactId',-0x1*0x1c31+-0x9e*-0x3+0x1a59),Ticket=__decorateClass([descriptionProperty(ticketProps['subject']),accessByUserId(),resourceMetaId(resourceIds['ticket']),icon(iconNames['envelopeClosed'])],Ticket);

export { Ticket };
