{
  "indexes": [
    {
      "collectionGroup": "invites",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "email", "order": "ASCENDING" },
        { "fieldPath": "status", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "invites",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "status", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "members",
      "queryScope": "COLLECTION_GROUP",
      "fields": [
        { "fieldPath": "email", "order": "ASCENDING" },
        { "fieldPath": "status", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "audits",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "scheduledDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "nonConformances",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "capa",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "actions",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "dueDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "activityLog",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "timestamp", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "risks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "riskScore", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "suppliers",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "documents",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "training",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "complaints",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdBy", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "incidents",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "equipment",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "equipment",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "sensorToken", "order": "ASCENDING" },
        { "fieldPath": "sensorEnabled", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "equipmentReadings",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "equipmentId", "order": "ASCENDING" },
        { "fieldPath": "recordedAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "equipmentReadings",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "recordedAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "maintenance",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "scheduledDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "maintenance",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "equipmentId", "order": "ASCENDING" },
        { "fieldPath": "scheduledDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "notifications",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "userId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "notifications",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "userId", "order": "ASCENDING" },
        { "fieldPath": "dedupeKey", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "dailyOperations",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "managementReviews",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "periodMonth", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "auditFindings",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "auditFindings",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "auditId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "capa",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "linkedNcrId", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "evidenceFiles",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "entityType", "order": "ASCENDING" },
        { "fieldPath": "entityId", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "products",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "batches",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "batches",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "lotCode", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "batchDispatches",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "batchId", "order": "ASCENDING" },
        { "fieldPath": "shippedAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "recalls",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "recalls",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "affectedBatchIds", "arrayConfig": "CONTAINS" }
      ]
    },
    {
      "collectionGroup": "complaints",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "batchId", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "auditTemplates",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTemplates",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "dueDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "status", "order": "ASCENDING" },
        { "fieldPath": "dueDate", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "templateId", "order": "ASCENDING" },
        { "fieldPath": "dueDate", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTemplates",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "active", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "materialLots",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "receivedAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "materialLots",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "lotCode", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "batchGenealogy",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "outputBatchId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "batchGenealogy",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "inputMaterialLotId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "recallDrills",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "startedAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "deviceTokens",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "userId", "order": "ASCENDING" },
        { "fieldPath": "organisationId", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "failureAutomationPending", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "status", "order": "ASCENDING" },
        { "fieldPath": "dueDate", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "monitoringTasks",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "status", "order": "ASCENDING" },
        { "fieldPath": "requiresVerification", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "pestZones",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "name", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "pestInspections",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "inspectionDate", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingCourses",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "title", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingCourseAttempts",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "courseId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingCurricula",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "title", "order": "ASCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingAssignments",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingAssignments",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "traineeId", "order": "ASCENDING" },
        { "fieldPath": "createdAt", "order": "DESCENDING" }
      ]
    },
    {
      "collectionGroup": "trainingAssignments",
      "queryScope": "COLLECTION",
      "fields": [
        { "fieldPath": "organisationId", "order": "ASCENDING" },
        { "fieldPath": "traineeId", "order": "ASCENDING" },
        { "fieldPath": "courseId", "order": "ASCENDING" }
      ]
    }
  ],
  "fieldOverrides": []
}
