@sports-alliance/sports-lib
Version:
A Library to for importing / exporting and processing GPX, TCX, FIT and JSON files from services such as Strava, Movescount, Garmin, Polar etc
29 lines (28 loc) • 1.41 kB
TypeScript
import { SerializableClassInterface } from '../serializable/serializable.class.interface';
import { StatsClassInterface } from '../stats/stats.class.interface';
import { ActivityInterface } from '../activities/activity.interface';
import { DurationClassInterface } from '../duration/duration.class.interface';
import { EventJSONInterface } from './event.json.interface';
import { IDClassInterface } from '../id/id.class.interface';
import { PrivacyClassInterface } from '../privacy/privacy.class.interface';
import { FileType } from './adapters/file-type.enum';
import { DataPowerCurve } from '../data/data.power-curve';
export interface EventInterface extends StatsClassInterface, DurationClassInterface, PrivacyClassInterface, SerializableClassInterface, IDClassInterface {
name: string;
srcFileType: FileType;
description?: string;
isMerge: boolean;
powerCurve?: DataPowerCurve;
addActivity(activity: ActivityInterface): void;
addActivities(activities: ActivityInterface[]): void;
removeActivity(activity: ActivityInterface): void;
getActivities(): ActivityInterface[];
getActivityTypesAsArray(): string[];
getActivityTypesAsString(): string;
getDeviceNamesAsString(): string;
clearActivities(): void;
getFirstActivity(): ActivityInterface;
getLastActivity(): ActivityInterface;
isMultiSport(): boolean;
toJSON(): EventJSONInterface;
}