import { type ReactNode } from "react"; import type { IdentifyInput, PublicInitOptions, SessionInfo, SessionUpdate, TrackEventAttributes, UpdatePayload, UserUpdate } from "../core/types"; export type MockMilanaCall = { method: "init"; args: { productId: string; clientKey: string; sessionInfo: SessionInfo; options?: PublicInitOptions; }; } | { method: "initialize"; args: Record; } | { method: "identify"; args: IdentifyInput; } | { method: "update"; args: UpdatePayload; } | { method: "updateUser"; args: UserUpdate; } | { method: "updateSession"; args: SessionUpdate; } | { method: "stopRecording"; args: Record; } | { method: "trackEvent"; args: { eventName: string; attributes?: TrackEventAttributes; }; }; export type MockMilanaInstance = { calls: MockMilanaCall[]; getEventCalls: (eventName?: string) => MockMilanaCall[]; getUpdateCalls: () => MockMilanaCall[]; reset: () => void; }; export declare function createMockMilana(): MockMilanaInstance; export type MockMilanaProviderProps = { children: ReactNode; mock?: MockMilanaInstance; }; export declare function MockMilanaProvider({ children, mock, }: MockMilanaProviderProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=index.d.ts.map