---
title: IMedicareQueryProvider
summary: API reference for IMedicareQueryProvider.
status: draft
owner: SAIF.Core documentation team
last_reviewed: 2026-09-24
library: SAIF.Data
reference_type: package
---

# IMedicareQueryProvider

Contract implemented by `MedicareQueryProvider`.

## Purpose
- Defines the members that `MedicareQueryProvider` must provide to callers of this abstraction.

## Context
- Namespace: `SAIF.Data.Queries`
- Assembly/package: `SAIF.Data`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| GetNextMinumumSubmissionBatch | `MedicareBeneficiaryQueryBatch GetNextMinumumSubmissionBatch()` | Retrieves next minumum submission batch.* |
| GetBeneficiaries | `IEnumerable<MedicareBeneficiaryQuery> GetBeneficiaries(DateTime submissionDateTime)` | Retrieves beneficiaries.* |
| FindMedicareHistoryMatch | `MedicareQueryHistory FindMedicareHistoryMatch(MedicareBeneficiaryQuery medicareBeneficiary)` | Locates medicare history match.* |
| GetCountforBatchOfMedicareHistory | `int GetCountforBatchOfMedicareHistory(DateTime submissionDate)` | Retrieves countfor batch of medicare history.* |
| GetCountforBatchOfMedicareBeneficiary | `int GetCountforBatchOfMedicareBeneficiary(DateTime submissionDate)` | Retrieves countfor batch of medicare beneficiary.* |

## Behavioral notes
- As an interface, this type defines no executable behavior of its own; behavior is determined by its implementation(s).*

## Constraints and usage notes
- Callers should depend on this interface rather than the concrete implementation(s) (`MedicareQueryProvider`) to preserve testability.*

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `Data/SAIF.Data/Queries/IMedicareQueryProvider.cs`
