scriptable-testlab
Version:
A lightweight, efficient tool designed to manage and update scripts for Scriptable.
72 lines (69 loc) • 3.17 kB
TypeScript
import { AbsReminder } from 'scriptable-abstract';
interface ReminderState {
identifier: string;
title: string;
notes: string;
dueDate: Date | null;
dueDateIncludesTime: boolean;
isCompleted: boolean;
isOverdue: boolean;
priority: number;
calendar: Calendar | null;
recurrenceRules: RecurrenceRule[];
completionDate: Date | null;
creationDate: Date;
}
/**
* Mock implementation of Scriptable's Reminder.
* Provides functionality for managing reminders.
* @implements Reminder
*/
declare class MockReminder extends AbsReminder<ReminderState> {
private static _instance;
private static _reminders;
static get instance(): MockReminder;
constructor();
get identifier(): string;
get title(): string;
set title(value: string);
get notes(): string;
set notes(value: string);
get dueDate(): Date | null;
set dueDate(value: Date | null);
get dueDateIncludesTime(): boolean;
set dueDateIncludesTime(value: boolean);
get isCompleted(): boolean;
set isCompleted(value: boolean);
get isOverdue(): boolean;
get priority(): number;
set priority(value: number);
get calendar(): Calendar | null;
set calendar(value: Calendar | null);
get completionDate(): Date | null;
get creationDate(): Date;
addRecurrenceRule(recurrenceRule: RecurrenceRule): void;
removeAllRecurrenceRules(): void;
save(): void;
remove(): void;
private static filterReminders;
static allDueToday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedDueToday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static incompleteDueToday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static allDueTomorrow(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedDueTomorrow(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static incompleteDueTomorrow(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static allDueYesterday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedDueYesterday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static incompleteDueYesterday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static allDueThisWeek(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedDueThisWeek(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static incompleteDueThisWeek(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static allDueBetween(startDate: Date, endDate: Date, calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedDueBetween(startDate: Date, endDate: Date, calendars?: readonly Calendar[]): Promise<Reminder[]>;
static incompleteDueBetween(startDate: Date, endDate: Date, calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedToday(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedThisWeek(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static completedLastWeek(calendars?: readonly Calendar[]): Promise<Reminder[]>;
static clearAll(): void;
}
export { MockReminder };