import { CustomFieldType, CustomFieldBoundType, CustomFieldCategoryId, AdvancedCustomField, UserSnippet, CustomFieldSubtype } from 'teambition-types'; import { CustomFieldId, OrganizationId, ProjectId, RoleId, UserId, AdvancedCustomFieldId, CustomFieldRelevantSetting, ApplicationId } from 'teambition-types'; import { CustomFieldChoiceSchema } from './CustomFieldChoice'; export interface CustomFieldSchema { _advancedCustomfieldId: AdvancedCustomFieldId; _boundToObjectId: ApplicationId; _creatorId: UserId; _id: CustomFieldId; _lockerId: UserId | null; _organizationId: OrganizationId | null; _projectId?: ProjectId; _roleIds: RoleId[]; _originalId?: CustomFieldId | null; advancedCustomfield: AdvancedCustomField; boundToObjectType: 'app' | 'project' | 'organization'; boundType: CustomFieldBoundType; categoryIds: CustomFieldCategoryId[]; choices: CustomFieldChoiceSchema[]; created: string; creator?: UserSnippet; description: string; displayed: boolean; externalUrl?: string; fieldName?: string; isLocked: boolean; isSingleSelection?: boolean; locker: UserSnippet | null; name: string; payload?: any; pos: number; projects?: string[]; setting?: CustomFieldRelevantSetting; source?: string; subtype?: CustomFieldSubtype; type: CustomFieldType; updated: string; }