UNPKG

@arcgis/workflow-manager

Version:

ArcGIS Workflow Manager JavaScript API

189 lines (188 loc) 4.79 kB
import { FeatureServiceProperties } from './extendedPropertyDefinition'; import Geometry from '@arcgis/core/geometry/Geometry'; export declare enum AssignedType { Unassigned = "Unassigned", Group = "Group", User = "User" } export interface Job { jobId: string; jobName?: string; ownedBy?: string; createdBy?: string; notes?: string; description?: string; createdDate?: Date; startDate?: Date; startedDate?: Date; dueDate?: Date; endDate?: Date; parentJob?: string; percentComplete: number; priority: string; diagramId?: string; diagramVersion?: number; diagramName?: string; closed: boolean; currentSteps: CurrentStep[]; jobStatus: string; jobTemplateId: string; jobTemplateName: string; activeVersions: JobVersion[]; holds?: JobHold[]; extendedProperties?: JobExtendedPropertyTable[]; relatedProperties?: JobRelatedPropertyTable[]; archived?: boolean; } export interface CurrentStep { stepId?: string; assignedTo?: string; assignedType: AssignedType; stepName?: string; canSkip?: boolean; manualHold?: boolean; dependencies?: boolean; holdScheduledRelease?: Date; } export interface JobExtendedProperty { propertyName: string; value?: any; } export interface JobExtendedPropertyTable { tableName: string; properties: Array<JobExtendedProperty>; featureServiceProperties?: FeatureServiceProperties; } export interface JobRelatedPropertyEntry { createdDate: Date; id: string; properties: Array<JobExtendedProperty>; } export interface JobRelatedPropertyTable { entries: Array<JobRelatedPropertyEntry>; featureServiceProperties?: FeatureServiceProperties; tableName: string; } export interface JobRelatedPropertyUpdateEntry { id?: string; properties: Array<JobExtendedProperty>; } export interface JobRelatedPropertyUpdateTable { entries: Array<JobRelatedPropertyUpdateEntry>; featureServiceProperties?: FeatureServiceProperties; tableName: string; } export interface JobRelatedPropertyDeleteFromTable { tableName: string; ids: string[]; } export interface ExtendedProperty { identifier: string; value?: string; } export interface RelatedProperty { propertyName: string; value: string; } export interface RelatedPropertyEdits { adds?: Array<JobRelatedPropertyUpdateTable>; updates?: Array<JobRelatedPropertyUpdateTable>; deletes?: Array<JobRelatedPropertyDeleteFromTable>; } interface JobOverrides { jobName?: string; startDate?: Date; dueDate?: Date; priority?: string; description?: string; ownedBy?: string; percentComplete?: number; notes?: string; parentJob?: string; extendedProperties?: Array<ExtendedProperty>; } export interface JobRequestOptions { extProps?: boolean; holds?: boolean; } export interface CreateJobOverrides extends JobOverrides { numberOfJobs?: number; assignedType?: AssignedType; assignedTo?: string; location?: Geometry; relatedProperties?: Array<JobRelatedPropertyAdd>; } export interface JobRelatedPropertyAdd { tableName: string; entries: Array<JobRelatedPropertyAddEntry>; } export interface JobRelatedPropertyAddEntry { properties: Array<RelatedProperty>; } export interface CreateJobsResponse { jobIds: string[]; autoExecuted: boolean; } export interface UpdateJobOverrides extends JobOverrides { jobStatus?: string; relatedProperties?: RelatedPropertyEdits; } export interface JobVersion { name: string; url: string; layerItemId: string; versionId: string; } export interface JobAttachment { id: string; lastModifiedBy?: string; lastModified?: Date; alias?: string; folder?: string; url?: string; } export interface JobAttachmentDetails { jobId: string; attachmentId?: string; attachment?: any; alias?: string; folder?: string; url?: string; stepId?: string; } export interface AddJobAttachmentResponse { attachmentId: string; alias: string; url: string; } export interface JobComment { jobId: string; comment: string; commentId: string; lastModifiedBy: string; lastModified: Date; } export interface JobHold { jobId: string; stepId: string; holdId: string; setBy: string; setDate: Date; scheduledRelease?: Date; releasedBy?: string; releasedDate?: Date; dependentJobId?: string; dependentStepId?: string; } export interface JobHoldDetails { jobId: string; stepIds: Array<string>; scheduledRelease?: Date; } export interface JobDependencyDetails { jobId: string; stepIds: string[]; dependentJobId: string; dependentStepId?: string; } export {};