@atomic-utils/clients
Version:
67 lines (66 loc) • 2.25 kB
TypeScript
import { BaseClient } from './baseClient';
export interface Nonce {
nonce: string;
}
export interface Announcement {
announcementId: string;
eventId: string;
offerId: string;
announcement: string;
attestation?: string;
cso: boolean;
startDate: number;
endDate: number;
nonces: Nonce[];
quantity?: number;
outcome?: string;
}
export interface AnnouncementResponse {
announcements: Announcement[];
}
/**
* Oracle client
*/
export declare class OracleClient extends BaseClient {
/**
* getAnnouncements
*
* Get all announcements
*
* @returns
*/
getAnnouncements(offerId?: string, startDate?: number, endDate?: number, page?: number, limit?: number): Promise<AnnouncementResponse>;
/**
* getAnnouncementByEventId
*
* Get Announcement By Event ID
*
* @param {string} eventId the eventId for the DLC OracleAnnouncement
* https://github.com/discreetlogcontracts/dlcspecs/blob/master/Messaging.md#oracle_event
* @returns {Announcement}
*/
getAnnouncementByEventId(eventId: string): Promise<Announcement>;
/**
* getAnnouncementByAnnouncementId
*
* Get Announcement By Annoucement ID
*
* @param {string} announcementId the announcementId for the DLC OracleAnnouncement
* https://github.com/discreetlogcontracts/dlcspecs/blob/master/Messaging.md#oracle_event
* @returns {Announcement}
*/
getAnnouncementByAnnouncementId(announcementId: string): Promise<Announcement>;
/**
* postAnnouncementQuantity
*
* Specify quantity of funds entered for a particular announcement
* Note: this function does not modify the DLC OracleAnnouncement
* itself but rather the Oracle internal DB
*
* @param {string} eventId the eventId for the DLC OracleAnnouncement
* https://github.com/discreetlogcontracts/dlcspecs/blob/master/Messaging.md#oracle_event
* @param {number} quantity the quantity entered in SATS
* @returns {Announcement} return modified announcement
*/
postAnnouncementQuantity(eventId: string, quantity: number): Promise<Announcement>;
}