import { CreateStreakEventDto } from "./models/CreateStreakEvent.dto"; import { StreakConfig } from "./models/StreakConfig"; import { StreakEvent } from "./models/StreakEvent"; /** * Streaks class for managing streak events. */ export declare class Streaks { private apiKey; private projectId; private baseUrl; /** * Creates a new instance of Streaks. * * @param {string} apiKey - The API key for authentication. * @param {string} projectId - The project ID for which the streaks are managed. * @param {string} [baseUrl="https://api.streaksapi.com"] - The base URL of the Streaks API. */ constructor(apiKey: string, projectId: string, baseUrl?: string); /** * Adds a new event to a streak. * * @param {CreateStreakEventDto} event - The event to be added. * @returns {Promise} A promise that resolves to the added StreakEvent. */ addEvent(event: CreateStreakEventDto): Promise; /** * Retrieves a specific streak. * * @param {StreakConfig} config - The configuration object for the streak. * @param {string} [streakId] - The optional ID of the streak. Default is 'default'. * @returns {Promise} A promise that resolves to the streak. */ getStreak(config: StreakConfig, streakId?: string): Promise; /** * Retrieves the history of events for a given streak. * * @param {string} [streakId] - The optional ID of the streak. Default is 'default'. * @returns {Promise} A promise that resolves to an array of StreakEvents. */ getHistory(streakId?: string): Promise; /** * Gets the time in milliseconds until the next event is due for a streak. * * @param {StreakConfig} config - The configuration object for the streak. * @param {string} [streakId] - The optional ID of the streak. Default is 'default'. * @returns {Promise} A promise that resolves to the number of milliseconds until the next event is due. */ getTimeUntilDueMs(config: StreakConfig, streakId?: string): Promise; /** * Calculates the due date of the next event for a streak. * * @param {StreakConfig} config - The configuration object for the streak. * @param {string} [streakId] - The optional ID of the streak. Default is 'default'. * @returns {Promise} A promise that resolves to the Date when the next event is due. */ getDueDate(config: StreakConfig, streakId?: string): Promise; }