import { PhotonClient } from '@photonhealth/sdk'; /** * Creates a PhotonClient for testing. * * - apolloClinical: real fetch - intercepted by MSW * - apollo: real fetch - intercepted by MSW * watchQuery overridden (Observable pattern doesn't resolve with MSW in jsdom) * - auth: getAccessToken stubbed to skip Auth0 */ export declare function createTestClient(): PhotonClient; /** * Creates a plain object matching the PhotonClientStore shape for PhotonContext.Provider. * * We can't use the real PhotonClientStore because its constructor initializes auth state * as { isAuthenticated: false, isLoading: true } and only updates via checkSession(), * which calls Auth0. Components like PhotonAuthorized gate on these values, so we need * them pre-set to authenticated. The real store also doesn't expose setStore publicly, * so there's no way to override auth state after construction. * * Network calls triggered by store methods (getDispenseUnits, etc.) are handled by MSW, * but the initial auth/loading state must be set here. */ export declare function createTestClientStore(client: PhotonClient): { sdk: PhotonClient; getSDK: () => PhotonClient; autoLogin: boolean; authentication: { state: { isAuthenticated: boolean; isLoading: boolean; isInOrg: boolean; permissions: string[]; error: undefined; }; login: import("vitest").Mock<(...args: any[]) => any>; logout: import("vitest").Mock<(...args: any[]) => any>; handleRedirect: import("vitest").Mock<(...args: any[]) => any>; checkSession: import("vitest").Mock<(...args: any[]) => any>; }; clinical: { dispenseUnits: { state: { isLoading: boolean; dispenseUnits: any[]; }; getDispenseUnits: import("vitest").Mock<(...args: any[]) => any>; }; }; };