import {z} from 'zod' export type GetApiApiV1AuditIdArgs = {id: string}; export type GetApiApiV1AuditIdOptions = {baseUrl?: string | undefined, bearerAuth?: string | undefined, fetch?: typeof fetch | undefined}; export const mallDetailResponse = z.object({id: z.string().optional(), fullname: z.string().optional(), email: z.string().optional(), website: z.string().optional(), subdomain: z.string().optional()}); export const ruleAllowedValues = z.object({ruleType: z.string().optional(), ruleText: z.string().optional(), definedParams: z.string().optional()}); export const cloningConfig = z.object({pattern: z.string().optional(), fieldName: z.string().optional(), clonedLimit: z.number().int().optional(), fieldMappings: z.record(z.string(), z.record(z.string(), z.string())).optional(), cloneConfig: z.record(z.string(), z.unknown()).optional()}); export const jobProperty = z.object({displayOrder: z.number().int().optional(), name: z.string().optional(), displayName: z.string().optional(), templateName: z.string().optional(), ocrName: z.string().optional(), dependentFieldNames: z.array(z.string()).optional(), fieldGroup: z.string().optional(), groupColumnLayoutType: z.string().optional(), fieldType: z.enum(["Small_Text", "ReadOnly_Small_Text", "ReadOnly_Auto_Generate", "Large_Text", "Date_Time", "Date", "Selection", "Large_Selection", "Small_Heading", "Large_Heading", "Radio_OR_CheckBox", "Attachment", "Hidden_Text_Field", "Auto_Date_Time", "Auto_Date", "Time", "MultiMedia", "Geo_Location", "Numeric_Text", "Dates_after_today", "SubJob", "Email", "Report", "Service_Type", "Date_before", "Calc_Text", "Calc_Date", "Password", "Phone_Number", "Login_User_Email", "Login_User_Name", "Read_Only_Login_User_Name", "Read_Only_Login_Email", "Text_Area", "ReadOnly_Auto_Date", "API_Small_Text", "API_Selection", "Inherited_Sub_Job", "ReadOnly_Date", "Appointment_Booking", "Tat", "Numeric_Text_With_Commas_US", "Special_Filter", "Numeric_Text_With_Commas_UK", "JSON_KEY", "Loqate_Find", "BOOLEAN", "Data_Filter", "File", "Geo_Fence", "Multi_Currency", "Yml_Key", "SubJob_as_Selection", "SubJob_as_Section", "SubJob_as_Field"]).optional(), subJobLimit: z.number().int().optional(), allowedValues: z.string().optional(), patternForText: z.string().optional(), rule: z.string().optional(), hiddenDependentField: z.string().optional(), propagateOtherFieldValueToThis: z.string().optional(), englishChatBotQuestion: z.string().optional(), hindiChatBotQuestion: z.string().optional(), enableIncrementalSearch: z.boolean().optional(), isMandatory: z.boolean().optional(), isNotDuplicate: z.boolean().optional(), mask: z.string().optional(), addNewType: z.string().optional(), enableAddMore: z.boolean().optional(), enableMultiSelect: z.boolean().optional(), isSearchable: z.boolean().optional(), enableShowInListView: z.boolean().optional(), propagateValueToSubFormFields: z.string().optional(), propagateValueFromFormFields: z.string().optional(), reportDefaultValue: z.string().optional(), isTrackableField: z.boolean().optional(), isRiskCalculationField: z.boolean().optional(), isChatBotEnabledField: z.boolean().optional(), isLimitedFields: z.boolean().optional(), enableShowReview: z.boolean().optional(), enableShowAppointment: z.boolean().optional(), defaultValue: z.string().optional(), description: z.string().optional(), isReportParam: z.boolean().optional(), isPivotParam: z.boolean().optional(), isPivotRowParam: z.boolean().optional(), isPivotColumnParam: z.boolean().optional(), isAggregate: z.boolean().optional(), isHidden: z.boolean().optional(), tags: z.string().optional(), isHParam: z.boolean().optional(), enableSimilarTo: z.boolean().optional(), similarToConfig: z.string().optional(), ruleAllowedValues: ruleAllowedValues.optional(), isAllowPublicAccess: z.boolean().optional(), isAllowPublicPost: z.boolean().optional(), uniqueFieldId: z.string().optional(), label: z.boolean().optional(), dataFormat: z.string().optional(), fieldCharLimit: z.number().int().optional(), linkUrl: z.string().optional(), isPublicAttachment: z.boolean().optional(), isMetadataKeyword: z.boolean().optional(), isDownloadMisParam: z.boolean().optional(), enableAddNew: z.boolean().optional(), isHTMLViewOnly: z.boolean().optional(), fieldDescription: z.string().optional(), compareLabel: z.boolean().optional(), configData: z.record(z.string(), z.unknown()).optional(), isFieldAddMore: z.boolean().optional(), versionPattern: cloningConfig.optional(), allowNegativeValue: z.boolean().optional(), isReadOnly: z.boolean().optional(), isFieldForStatusReport: z.boolean().optional(), precision: z.number().int().optional(), fieldTransformation: z.string().optional(), alwaysResetToDefault: z.boolean().optional(), dynamicValue: z.string().optional(), horder: z.string().optional()}); export const role = z.object({id: z.string().optional(), name: z.string().optional(), description: z.string().optional(), properties: z.array(jobProperty).optional(), scope: z.array(z.string()).optional(), routerUrl: z.string().optional()}); export const jobTypeConfig = z.object({jobTypeKind: z.enum(["STANDARD", "SYSTEM", "CUSTOM"]).optional(), collectionName: z.string().optional()}); export const deepLevelChildrenJobTypes = z.object({name: z.string().optional(), relatedFieldNames: z.array(z.string()).optional()}); export const subJobProperty = z.object({name: z.string().optional(), displayInDashboard: z.boolean().optional()}); export const fieldCondition = z.object({fieldName: z.string().optional(), operator: z.string().optional(), thresholdValue: z.string().optional(), valueType: z.enum(["NUMBER", "STRING"]).optional(), thresholdType: z.enum(["STATIC", "DYNAMIC"]).optional(), caseInsensitive: z.boolean().optional(), thresholdPath: z.string().optional()}); export const subJobComparisonCondition = z.object({subJobTypeName: z.string().optional(), conditions: z.array(fieldCondition).optional(), minMatchCount: z.number().int().optional()}); export const complexHookFilterConditions = z.object({requiredFieldsToBePresent: z.array(z.string()).optional(), fieldChangeCondition: z.record(z.string(), z.enum(["IGNORE", "RUN"])).optional(), executionActorType: z.enum(["USER", "SYSTEM"]).optional(), maxExecutionCount: z.number().int().optional(), actionIfNoFieldChange: z.boolean().optional(), blockedFieldValueConditions: z.array(fieldCondition).optional(), subJobConditions: z.array(subJobComparisonCondition).optional()}); export const lifecycle = z.object({id: z.string().optional(), orderOfExecution: z.number().int().optional(), jobOperationTypes: z.array(z.enum(["CREATED", "MODIFIED", "DELETED", "VIEWED", "STATUS_CHANGED", "RESTORED"])).optional(), type: z.enum(["PRE_API_CALL", "PRE_SEND_EMAIL", "PRE_AUTO_FIELD_VALUE_GENERATION", "PRE_SUBJOB_ASSOCIATION", "PRE_GENERATE_TATS", "PRE_GENERATE_LINK_URL", "PRE_VALIDATIONS", "PRE_EBRULES", "PRE_ENDORSEMENT_VALIDATIONS", "PRE_STATUS_CHANGE_ACTION_VALIDATIONS", "POST_API_CALL", "POST_SEND_EMAIL", "POST_ACTIVITY_HISTORY", "POST_AUTO_USER_CREATION", "POST_AUTO_USER_DELETION", "POST_EVENT_TRIGGER", "POST_BAJAJ_CLAIM_REGISTER", "POST_CHATGPT_PARSING", "POST_STORE_USER_IN_EMAIL_HANDLER", "POST_API_ON_STATUS_CHANGE", "POST_SAVE_SCHEDULER_TASK", "POST_CREATE_TICKET_FROM_MAIL", "POST_PUBLIC_DATA_ACCESS", "POST_CAMPAIGN_SAVE_SCHEDULER_TASK", "POST_SAVE_JOBINSTANCE_CONDITIONS", "POST_GENERATE_PARENT_TATS", "POST_FETCH_RFP_DOCUMENTS", "POST_RETRIEVE_MAIL_TYPE", "POST_CREATE_INSTANCE_FROM_XLSX", "POST_JOB_INSTANCE_VALIDATION", "POST_EMIT_REMINDER_EMAIL", "AUTO_IMPACT_ASSESSMENT", "INIT_COMPLIANCE_CHECK", "POST_SCHEDULE_LOGIN_REPORTS", "POST_SCHEDULE_BREACHED_EMAILS", "POST_CALL_COMPLIANCE_REPORT", "POST_TASK_MANAGEMENT", "POST_TASK_REMINDER_NOTIFICATION", "JOB_INSTANCE_DATA_VALIDATE", "SEND_BULK_NOTIFICATION_REMINDER", "BULK_STATUS_CHANGE", "POST_DUE_DATE_NOTIFICATION", "PROCESS_PARENT_INSTANCE", "POST_PLATFORM_NOTIFICATION", "POST_TENANT_CLONING", "PERFORM_AI_RECOMMENDATION", "POST_BULK_STATUS_ESCALATION_MATRIX", "AUTO_AZURE_LOGIN", "POST_DYNAMIC_RULE_ENGINE", "POST_VALIDATION_PERSIST_HOOK", "PERFORM_AI_REPLY", "POST_EMAIL_AUTOMATION_PROCESS", "POST_REPLICATE_DATASETS", "PRE_AGENTIC_LAYER_EXECUTION", "POST_AGENTIC_LAYER_EXECUTION", "POST_CALCULATIONS_AND_RULES", "POST_SET_STATUS", "POST_EMIT_USER_EVENTS", "POST_BULK_UPDATE", "JOB_INSTANCE_VERSIONING", "POST_TRANSFORMER_DATASETS", "POST_DATA_TRANSFORMERS", "POST_EMIT_ORGANIZATION_EVENTS", "POST_AUTOMATE_IDENTITY_PROVIDER", "POST_EXECUTE_ROLLUP", "EXECUTE_CALLBACK", "OUTLOOK_CALENDER_INTEGRATION", "POST_INSERT_METADATA", "POST_LOCATION_CAPTURE", "POST_SEND_SMS", "POST_CERTIFICATE_UPDATE", "POST_CERTIFICATE_TEMPLATE_CREATION", "POST_GET_SUITABLE_INSTANCE", "POST_SCHEDULE_JOB", "CHECK_FOR_DUPLICATES", "DOWNLOAD_DOCUMENT", "POST_AUDIT_TRAILS", "POST_DATA_UPLOAD_TO_VECTORDB", "POST_SOA_PROCESSING", "POST_MONGO_INDEX_CREATION"]).optional(), executionType: z.enum(["SYNC", "ASYNC"]).optional(), persistType: z.enum(["PRE", "POST"]).optional(), retrievalFieldsFromResponse: z.array(z.string()).optional(), actionOnRetrievalFields: z.string().optional(), actionOnRetrievalFieldTypes: z.array(z.enum(["APPEND_ON_PARENT_JOB_INSTANCE", "APPEND_TO_JOB_INSTANCE", "EXCEL_PARING_DATA"])).optional(), configurationJobInstanceId: z.string().optional(), shouldChildrenInheritPersistHook: z.boolean().optional(), persistHookFilterConditions: z.string().optional(), complexPersistHookFilterConditions: complexHookFilterConditions.optional(), enableExecutionWithoutFilters: z.boolean().optional(), agenticLifecycle: z.boolean().optional()}); export const aclCondition = z.object({name: z.string().optional(), value: z.string().optional(), condition: z.string().optional(), values: z.array(z.string()).optional()}); export const aclComplexFilterCondition = z.object({and: z.array(aclCondition).optional(), or: z.array(aclCondition).optional()}); export const aclComplexFilters = z.object({and: z.array(aclComplexFilterCondition).optional(), or: z.array(aclComplexFilterCondition).optional()}); export const aclFieldFilters = z.object({and: z.array(aclCondition).optional(), or: z.array(aclCondition).optional(), type: z.enum(["COMPLEX", "BSON", "SIMPLE"]).optional(), bsonSearch: z.string().optional(), complexFilters: aclComplexFilters.optional()}); export const aclSharedRoles = z.object({roleName: z.string().optional(), allowedAccess: z.array(z.enum(["READ", "WRITE", "DELETE", "BULKUPLOAD", "CREATE", "DOC_DOWNLOAD"])).optional(), restrictedFields: z.array(z.string()).optional(), restrictedGroupFields: z.array(z.string()).optional(), allowedWidgetAccess: z.array(z.enum(["WORKFLOW", "UPLOAD_FILES", "ACTIVITY_HISTORY", "SEND_EMAILS", "SUB_JOBS", "SERVICES"])).optional(), fieldFilters: aclFieldFilters.optional(), hiddenFields: z.array(z.string()).optional()}); export const roleBindings = z.object({userIds: z.array(z.string()).optional(), roleDefinitionId: z.string().optional()}); export const accessControlTemplate = z.object({ownershipRoleName: z.string().optional(), sharedRoles: z.array(aclSharedRoles).optional(), roleBindings: z.array(roleBindings).optional()}); export const filtersConfig = z.object({sourceFieldName: z.string().optional(), sourceCondition: z.string().optional()}); export const wizardConfig = z.object({wizardName: z.string().optional(), targetJobTypeName: z.string().optional(), filtersConfig: z.array(filtersConfig).optional()}); export const jobDetailsDto = z.object({jobTypeName: z.string().optional(), type: z.string().optional(), additionalDetails: z.record(z.string(), z.unknown()).optional()}); export const dataSetsAiConfig = z.object({ruleType: z.string().optional(), ruleActionType: z.string().optional(), jobDetailsDtoList: z.array(jobDetailsDto).optional()}); export const dependentJobTypeDto = z.object({id: z.string().optional(), name: z.string().optional()}); export const duplicateValidationConfig = z.object({ttlMinutes: z.number().int().optional()}); export const jobType = z.object({id: z.string().optional(), name: z.string().optional(), description: z.string().optional(), jobTypeConfig: jobTypeConfig.optional(), isPublished: z.boolean().optional(), isSubJobType: z.boolean().optional(), containsStoreId: z.boolean().optional(), report: z.string().optional(), enableServices: z.boolean().optional(), sendMailRequired: z.boolean().optional(), icon: z.string().optional(), uploadXlstemp: z.string().optional(), isEmailTemplate: z.boolean().optional(), isAttachmentEmailTemplate: z.boolean().optional(), isReadOnly: z.boolean().optional(), isImmutable: z.boolean().optional(), parentJobType: z.string().optional(), parentJobIdentifier: z.string().optional(), identifier: z.string().optional(), enablePromoteTrackableChangesToParent: z.boolean().optional(), riskScoreProperty: z.string().optional(), maxRiskScoreProperty: z.string().optional(), onSubmitActions: z.string().optional(), downloadURL: z.string().optional(), limitedFieldRoles: z.string().optional(), displayAPI: z.string().optional(), associationRule: z.string().optional(), createRule: z.string().optional(), enableWizard: z.boolean().optional(), isGraphSubscription: z.boolean().optional(), isPrimaryEnabled: z.boolean().optional(), isGmailSubscription: z.boolean().optional(), isAllowPublicAccess: z.boolean().optional(), isAllowPublicPost: z.boolean().optional(), isDownloadFilteredTemplateData: z.boolean().optional(), publicUserEmail: z.string().optional(), acknowledgeText: z.string().optional(), endorsementJobType: z.string().optional(), hideBrowse: z.string().optional(), isSftpenabled: z.boolean().optional(), cronexpression: z.string().optional(), sftphost: z.string().optional(), sftpport: z.string().optional(), sftpusername: z.string().optional(), sftppassword: z.string().optional(), fileprefix: z.string().optional(), updatefileprefix: z.string().optional(), fileextension: z.string().optional(), targetfolder: z.string().optional(), isParse: z.boolean().optional(), isDraftButton: z.boolean().optional(), newTypeId: z.string().optional(), isTrackable: z.boolean().optional(), reportfolder: z.string().optional(), isNotSubJobAccess: z.boolean().optional(), grandParentRelation: z.boolean().optional(), fileUploadName: z.string().optional(), isPivotParam: z.boolean().optional(), isPivotRowParam: z.boolean().optional(), isReportColumnParam: z.boolean().optional(), isAggregate: z.boolean().optional(), template: z.string().optional(), displayViewPoint: z.string().optional(), isDownloadMandatoryFields: z.boolean().optional(), deepLevelChildrenJobTypes: z.array(deepLevelChildrenJobTypes).optional(), properties: z.array(jobProperty).optional(), subJobProperties: z.array(subJobProperty).optional(), prePersistHooks: z.array(lifecycle).optional(), postPersistHooks: z.array(lifecycle).optional(), sharedOrgIds: z.array(z.string()).optional(), sharedUserIds: z.array(z.string()).optional(), jobInstanceACL: z.array(accessControlTemplate).optional(), jobTypePropertiesMapFileUrl: z.string().optional(), wizardConfig: z.array(wizardConfig).optional(), isHideBulkActions: z.boolean().optional(), systemPrompt: z.string().optional(), userPrompt: z.string().optional(), dataSetsAiConfigs: z.array(dataSetsAiConfig).optional(), fieldsToBeValidated: z.array(z.string()).optional(), isDownloadMisSubJobType: z.boolean().optional(), registerOptions: z.string().optional(), dependentJobTypes: z.array(dependentJobTypeDto).optional(), isTraceableNotification: z.boolean().optional(), configData: z.record(z.string(), z.unknown()).optional(), rollupConfigJobInstanceId: z.string().optional(), uniqueKeyProperty: z.string().optional(), excelFileName: z.string().optional(), subJobsForConsolidatedStatusReport: z.string().optional(), isRecall: z.boolean().optional(), maxRevisionsAllowed: z.number().int().optional(), hideSubJobsInSummary: z.boolean().optional(), tatLabel: z.string().optional(), duplicateFieldConfig: z.record(z.string(), duplicateValidationConfig).optional()}); export const workFlowStepInstance = z.object({sequenceNo: z.number().int().optional(), primaryStatus: z.string().optional(), secondaryStatus: z.string().optional(), primaryDisplayName: z.string().optional(), secondaryDisplayName: z.string().optional(), roles: z.array(role).optional(), subJobType: z.array(jobType).optional(), entryTimeStamp: z.string().optional(), exitTimeStamp: z.string().optional()}); export const agenticAIResults = z.object({id: z.string().optional(), name: z.string().optional(), agentsCount: z.number().int().optional(), status: z.enum(["Success", "InProgress", "Failed"]).optional()}); export const persistenceStatus = z.object({id: z.string().optional(), completedAt: z.string().optional(), lifecycleType: z.enum(["PRE_API_CALL", "PRE_SEND_EMAIL", "PRE_AUTO_FIELD_VALUE_GENERATION", "PRE_SUBJOB_ASSOCIATION", "PRE_GENERATE_TATS", "PRE_GENERATE_LINK_URL", "PRE_VALIDATIONS", "PRE_EBRULES", "PRE_ENDORSEMENT_VALIDATIONS", "PRE_STATUS_CHANGE_ACTION_VALIDATIONS", "POST_API_CALL", "POST_SEND_EMAIL", "POST_ACTIVITY_HISTORY", "POST_AUTO_USER_CREATION", "POST_AUTO_USER_DELETION", "POST_EVENT_TRIGGER", "POST_BAJAJ_CLAIM_REGISTER", "POST_CHATGPT_PARSING", "POST_STORE_USER_IN_EMAIL_HANDLER", "POST_API_ON_STATUS_CHANGE", "POST_SAVE_SCHEDULER_TASK", "POST_CREATE_TICKET_FROM_MAIL", "POST_PUBLIC_DATA_ACCESS", "POST_CAMPAIGN_SAVE_SCHEDULER_TASK", "POST_SAVE_JOBINSTANCE_CONDITIONS", "POST_GENERATE_PARENT_TATS", "POST_FETCH_RFP_DOCUMENTS", "POST_RETRIEVE_MAIL_TYPE", "POST_CREATE_INSTANCE_FROM_XLSX", "POST_JOB_INSTANCE_VALIDATION", "POST_EMIT_REMINDER_EMAIL", "AUTO_IMPACT_ASSESSMENT", "INIT_COMPLIANCE_CHECK", "POST_SCHEDULE_LOGIN_REPORTS", "POST_SCHEDULE_BREACHED_EMAILS", "POST_CALL_COMPLIANCE_REPORT", "POST_TASK_MANAGEMENT", "POST_TASK_REMINDER_NOTIFICATION", "JOB_INSTANCE_DATA_VALIDATE", "SEND_BULK_NOTIFICATION_REMINDER", "BULK_STATUS_CHANGE", "POST_DUE_DATE_NOTIFICATION", "PROCESS_PARENT_INSTANCE", "POST_PLATFORM_NOTIFICATION", "POST_TENANT_CLONING", "PERFORM_AI_RECOMMENDATION", "POST_BULK_STATUS_ESCALATION_MATRIX", "AUTO_AZURE_LOGIN", "POST_DYNAMIC_RULE_ENGINE", "POST_VALIDATION_PERSIST_HOOK", "PERFORM_AI_REPLY", "POST_EMAIL_AUTOMATION_PROCESS", "POST_REPLICATE_DATASETS", "PRE_AGENTIC_LAYER_EXECUTION", "POST_AGENTIC_LAYER_EXECUTION", "POST_CALCULATIONS_AND_RULES", "POST_SET_STATUS", "POST_EMIT_USER_EVENTS", "POST_BULK_UPDATE", "JOB_INSTANCE_VERSIONING", "POST_TRANSFORMER_DATASETS", "POST_DATA_TRANSFORMERS", "POST_EMIT_ORGANIZATION_EVENTS", "POST_AUTOMATE_IDENTITY_PROVIDER", "POST_EXECUTE_ROLLUP", "EXECUTE_CALLBACK", "OUTLOOK_CALENDER_INTEGRATION", "POST_INSERT_METADATA", "POST_LOCATION_CAPTURE", "POST_SEND_SMS", "POST_CERTIFICATE_UPDATE", "POST_CERTIFICATE_TEMPLATE_CREATION", "POST_GET_SUITABLE_INSTANCE", "POST_SCHEDULE_JOB", "CHECK_FOR_DUPLICATES", "DOWNLOAD_DOCUMENT", "POST_AUDIT_TRAILS", "POST_DATA_UPLOAD_TO_VECTORDB", "POST_SOA_PROCESSING", "POST_MONGO_INDEX_CREATION"]).optional(), result: z.enum(["Success", "InProgress", "Failed"]).optional(), comments: z.string().optional(), executionCounter: z.number().int().optional(), agenticAIResults: z.array(agenticAIResults).optional(), persistType: z.enum(["PRE", "POST"]).optional()}); export const persistenceHookStatus = z.object({isDraft: z.boolean().optional(), updateWorkflowStatus: z.enum(["Success", "InProgress", "Failed"]).optional(), prePersistenceStatus: z.array(persistenceStatus).optional(), postPersistenceStatus: z.array(persistenceStatus).optional()}); export const workflowEmailTemplate = z.object({templateInstanceId: z.string().optional()}); export const conditionStatement = z.object({leftOperand: z.string().optional(), rightOperand: z.string().optional(), conditionalOperator: z.string().optional(), nextStep: z.number().int().optional()}); export const workflowStep = z.object({sequenceNo: z.number().int().optional(), primaryStatus: z.string().optional(), secondaryStatus: z.string().optional(), followupRole: z.string().optional(), roles: z.array(role).optional(), subJobTypeIds: z.array(z.string()).optional(), emailTemplates: z.array(workflowEmailTemplate).optional(), attachmentEmailTemplateIds: z.array(z.string()).optional(), nextWorkflowSteps: z.array(z.number().int()).optional(), isInitialStatus: z.boolean().optional(), isPendingStatus: z.boolean().optional(), isTerminationStatus: z.boolean().optional(), fieldsForGroupingTotal: z.string().optional(), apiOnStatusChange: z.string().optional(), jobStatusRule: z.string().optional(), condition: conditionStatement.optional(), primaryDisplayName: z.string().optional(), secondaryDisplayName: z.string().optional(), taskActionTemplateIds: z.array(z.string()).optional(), isHidden: z.boolean().optional(), statusGroupName: z.string().optional()}); export const trackableField = z.object({propertyName: z.string().optional(), oldValue: z.string().optional(), newValue: z.string().optional()}); export const activitySummary = z.object({userId: z.string().optional(), userName: z.string().optional(), time: z.string().optional(), activityType: z.string().optional(), activityDescription: z.string().optional(), changedValues: z.array(trackableField).optional()}); export const jobInstanceResponse: z.ZodType = z.object({id: z.string().optional(), ItemCode: z.string().optional(), dateCreated: z.string().optional(), lastUpdated: z.string().optional(), createdById: z.string().optional(), jobTypeId: z.string().optional(), jobTypeName: z.string().optional(), parentJobInstanceId: z.string().optional(), createdByFullName: z.string().optional(), publicURL: z.string().optional(), Category_Mall: z.string().optional(), PackageName: z.string().optional(), receipt: z.string().optional(), certificate: z.string().optional(), masterPolicy: z.string().optional(), renewalNotice: z.string().optional(), Additional_Details: z.string().optional(), Current_Job_Status: z.string().optional(), Current_Job_StatusId: z.string().optional(), Current_Job_Status_Display_Name: z.string().optional(), Current_Group_Status: z.string().optional(), Current_Group_StatusId: z.string().optional(), Current_Group_Status_Display_Name: z.string().optional(), Next_Seq_Nos: z.string().optional(), Insights: z.string().optional(), overallRating: z.string().optional(), totalReviews: z.string().optional(), malldetails: mallDetailResponse.optional(), favouritesCount: z.number().int().optional(), hrsOfOperation: z.array(z.string()).optional(), Attachments: z.array(z.string()).optional(), jobComments: z.array(z.string()).optional(), CreatedSubJobs: z.array(z.lazy(() => jobInstanceResponse)).optional(), Next_Job_Statuses: z.array(workFlowStepInstance).optional(), favourites: z.array(z.string()).optional(), data: z.record(z.string(), z.unknown()).optional(), metaData: z.record(z.string(), z.unknown()).optional(), persistenceHookStatus: persistenceHookStatus.optional(), v1OldJobInstanceId: z.string().optional(), conversationalId: z.string().optional(), currentWorkflowStep: workflowStep.optional(), conditions: z.record(z.string(), z.unknown()).optional(), lastModifiedBy: z.string().optional(), previousJobStatuses: z.array(workFlowStepInstance).optional(), currentJobStatusEntryTimeStamp: z.string().optional(), activitySummary: z.array(activitySummary).optional(), lockInfo: z.record(z.string(), z.unknown()).optional(), enableAddMoreFieldsData: z.record(z.string(), z.array(z.record(z.string(), z.unknown()))).optional(), createdByUsername: z.string().optional(), isDeleted: z.boolean().optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * GET /api/v1/audit/{id} */ export const getApiApiV1AuditId = async (args: GetApiApiV1AuditIdArgs, options?: GetApiApiV1AuditIdOptions) => { const {baseUrl = "https://api-docs.gosure.ai", fetch: fetchFn = fetch, bearerAuth} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('accept', "application/vnd.hal+json") if (bearerAuth !== undefined) headers.set('authorization', `Bearer ${bearerAuth}`) const url = `${baseUrl.replace(/\/+$/, '')}/api/v1/audit/${encodeURIComponent(String(args.id))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(jobInstanceResponse, await res.json()) };