import { AuthManager } from '../auth/AuthManager'; import { Announcement, AnnouncementListResponse, AnnouncementCreateRequest, AnnouncementUpdateRequest, AnnouncementDeleteRequest, AnnouncementGroupsResponse, AnnouncementGroupsRequest, AnnouncementDevicesResponse, AnnouncementDevicesRequest } from './types'; export declare class AnnouncementsAPI { private readonly baseUrl; private readonly authManager; private readonly accountsServer; constructor(baseUrl: string, authManager: AuthManager, accountsServer: string); private getHeaders; /** * Get a list of all announcements */ listAnnouncements(): Promise; /** * Create a new announcement */ createAnnouncement(request: AnnouncementCreateRequest): Promise; /** * Delete multiple announcements */ deleteAnnouncements(request: AnnouncementDeleteRequest): Promise; /** * Get details of a specific announcement */ getAnnouncement(announcementId: number): Promise; /** * Update an existing announcement */ updateAnnouncement(announcementId: number, request: AnnouncementUpdateRequest): Promise; /** * Delete a specific announcement */ deleteAnnouncement(announcementId: number): Promise; /** * Get groups that an announcement is distributed to */ getAnnouncementGroups(announcementId: number): Promise; /** * Distribute announcement to groups */ distributeToGroups(announcementId: number, request: AnnouncementGroupsRequest): Promise; /** * Remove announcement from groups */ removeFromGroups(announcementId: number, request: AnnouncementGroupsRequest): Promise; /** * Distribute announcement to devices */ distributeToDevices(announcementId: number, request: AnnouncementDevicesRequest): Promise; /** * Remove announcement from devices */ removeFromDevices(announcementId: number, request: AnnouncementDevicesRequest): Promise; /** * Get devices that an announcement is distributed to */ getAnnouncementDevices(announcementId: number): Promise; }