strava-api-handler
Version:
Unofficial handler for Strava API
40 lines (39 loc) • 1.44 kB
TypeScript
import { Workout, WorkoutConstructor } from 'fitness-models';
import { ApiActivity } from './types/api/Activity';
interface Constructor<Id, ApiSource> extends WorkoutConstructor {
description?: string;
gearId?: string;
id: Id;
source: ApiSource;
typeId: string;
}
export default class Activity<Id extends number | undefined = any, ApiSource extends ApiActivity | undefined = any> extends Workout {
protected typeId: string;
protected id: Id;
protected source: ApiSource;
protected description?: string;
protected gearId?: string;
constructor(options: Constructor<Id, ApiSource>);
static getFromApi(activity: ApiActivity): Activity<number, ApiActivity>;
protected clone(extension: Partial<Constructor<number | undefined, ApiSource>>): this;
toObject(): Constructor<Id, ApiSource>;
getId(): Id;
getTypeName(): string;
setId(id: number): Activity<number, ApiSource>;
setId(id: undefined): Activity<undefined, ApiSource>;
getSource(): ApiSource;
getDescription(): string | undefined;
getGearId(): string | undefined;
setGearId(gearId?: string): this;
toApiObject(): {
description?: string | undefined;
distance?: number | undefined;
name?: string | undefined;
type: string | number;
start_date_local: string;
elapsed_time: number;
commute: number;
gear_id: string;
};
}
export {};