scriptable-testlab
Version:
A lightweight, efficient tool designed to manage and update scripts for Scriptable.
44 lines (41 loc) • 1.52 kB
TypeScript
import { AbsCalendar } from 'scriptable-abstract';
interface CalendarState {
identifier: string;
title: string;
allowsContentModifications: boolean;
isSubscribed: boolean;
color: Color;
}
/**
* Mock implementation of Scriptable's Calendar.
* Provides functionality for managing calendars.
* @implements Calendar
*/
declare class MockCalendar extends AbsCalendar<CalendarState> {
private static _instance;
private static _calendars;
static get instance(): MockCalendar;
constructor();
static forReminders(): Promise<Calendar[]>;
static forEvents(): Promise<Calendar[]>;
static forRemindersByTitle(title: string): Promise<Calendar>;
static forEventsByTitle(title: string): Promise<Calendar>;
static createForReminders(title: string): Promise<Calendar>;
static findOrCreateForReminders(title: string): Promise<Calendar>;
static defaultForReminders(): Promise<Calendar>;
static defaultForEvents(): Promise<Calendar>;
static presentPicker(allowMultiple?: boolean): Promise<Calendar[]>;
get identifier(): string;
get title(): string;
set title(value: string);
get allowsContentModifications(): boolean;
set allowsContentModifications(value: boolean);
get isSubscribed(): boolean;
get color(): Color;
set color(value: Color);
supportsAvailability(_availability: 'busy' | 'free' | 'tentative' | 'unavailable'): boolean;
save(): void;
remove(): void;
static clearAll(): void;
}
export { MockCalendar };