@ledgerhq/live-common
Version:
Common ground for the Ledger Live apps
29 lines • 1.13 kB
TypeScript
import React, { ReactElement } from "react";
import type { Announcement, AnnouncementsUserSettings, State, AnnouncementsApi } from "./types";
type Props = {
children: React.ReactNode;
handleLoad: () => Promise<{
announcements: Announcement[];
seenIds: string[];
lastUpdateTime: number;
}>;
handleSave: (arg0: {
announcements: Announcement[];
seenIds: string[];
lastUpdateTime: number;
}) => Promise<void>;
context: AnnouncementsUserSettings;
autoUpdateDelay: number;
onNewAnnouncement?: (arg0: Announcement) => void;
onAnnouncementRead?: (arg0: Announcement) => void;
fetchApi?: AnnouncementsApi;
};
type API = {
updateCache: () => Promise<void>;
setAsSeen: (seenId: string) => void;
};
export type AnnouncementContextType = State & API;
export declare function useAnnouncements(): AnnouncementContextType;
export declare const AnnouncementProvider: ({ children, context, handleLoad, handleSave, autoUpdateDelay, onNewAnnouncement, onAnnouncementRead, fetchApi, }: Props) => ReactElement;
export {};
//# sourceMappingURL=index.d.ts.map