type PreferencesListResult = { items: EffectiveNotificationPreference[]; }; export type EffectiveNotificationPreference = { channel: string; description?: string; digest: string | null; enabled: boolean; group?: string; groupOrder?: number; label?: string; order?: number; source?: string; topic: string; }; export type NotificationEventItem = { body: string; createdAt: string; id: string; readAt: string | null; title: string; topic: string; }; export type AthenaNotificationsApi = { catalog?: { list: () => Promise<{ items: unknown[]; }>; }; list: (input?: { unread?: boolean; }) => Promise<{ items: NotificationEventItem[]; }>; markAllRead: () => Promise<{ ok: true; }>; markRead: (input: { id: string; }) => Promise<{ ok: true; }>; preferences: { applyMany?: (input: { mutations: Array<{ channel: string; digest?: string | null; enabled?: boolean; operation: "reset" | "set"; organizationId?: string | null; topic: string; }>; }) => Promise<{ items: EffectiveNotificationPreference[]; }>; list: (input?: { organizationId?: string | null; }) => Promise; reset?: (input: { channel: string; organizationId?: string | null; topic: string; }) => Promise<{ item: EffectiveNotificationPreference; }>; resetMany?: (input: { items: Array<{ channel: string; organizationId?: string | null; topic: string; }>; }) => Promise<{ items: EffectiveNotificationPreference[]; }>; update: (input: { channel: string; digest?: string | null; enabled: boolean; organizationId?: string | null; topic: string; }) => Promise<{ item: EffectiveNotificationPreference; }>; setChannel?: (input: { channel: string; enabled: boolean; organizationId?: string | null; }) => Promise<{ items: EffectiveNotificationPreference[]; }>; updateMany?: (input: { items: Array<{ channel: string; digest?: string | null; enabled: boolean; topic: string; }>; }) => Promise<{ items: EffectiveNotificationPreference[]; }>; }; }; export declare function getAthenaNotificationsApi(client: unknown): AthenaNotificationsApi | null; export {};