;; SatGuard Batch Operations Helper
(define-constant err-nf (err u1140))
(define-read-only (batch-check-pools (p1 uint) (p2 uint) (p3 uint))
(ok {pool1: (contract-call? .insurance-pool get-pool p1),
pool2: (contract-call? .insurance-pool get-pool p2),
pool3: (contract-call? .insurance-pool get-pool p3)}))
(define-read-only (batch-check-claims (c1 uint) (c2 uint) (c3 uint))
(ok {claim1: (contract-call? .insurance-pool get-claim c1),
claim2: (contract-call? .insurance-pool get-claim c2),
claim3: (contract-call? .insurance-pool get-claim c3)}))
(define-read-only (batch-check-contribs (pid uint) (a1 principal) (a2 principal) (a3 principal))
(ok {c1: (contract-call? .insurance-pool get-contrib pid a1),
c2: (contract-call? .insurance-pool get-contrib pid a2),
c3: (contract-call? .insurance-pool get-contrib pid a3)}))
(define-read-only (get-pool-summary (pid uint))
(let ((pool (contract-call? .insurance-pool get-pool pid))
(risk (contract-call? .sg-risk-calculator calc-risk-score pid)))
(ok {pool: pool,risk: risk})))
(define-read-only (get-protocol-overview)
(ok {pool-count: (contract-call? .insurance-pool get-pool-count),
claim-count: (contract-call? .insurance-pool get-claim-count),
tvl: (contract-call? .sg-tvl-tracker get-tvl),
paused: (contract-call? .sg-emergency is-paused)}))