///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
import { Model, FilterQuery } from "mongoose";
import { ObjectLiteral } from "@dhealth/contracts";
import { Documentable } from "../../common/concerns/Documentable";
import { Transferable } from "../../common/concerns/Transferable";
import { Queryable, QueryParameters } from "../../common/concerns/Queryable";
import { ActivityDTO } from "./ActivityDTO";
import { ActivityData } from "./ActivityDataSchema";
import { ProcessingState } from "./ProcessingStatusDTO";
import { PayoutState } from "../../payout/models/PayoutStatusDTO";
export declare class Activity extends Transferable {
collectionName: string;
readonly address: string;
readonly remoteIdentifier: string;
readonly slug: string;
readonly dateSlug: string;
readonly provider: string;
readonly activityAssets?: ObjectLiteral[];
readonly activityData?: ActivityData;
readonly processingState?: ProcessingState;
readonly payoutState?: PayoutState;
readonly createdAt?: Date;
readonly updatedAt?: Date;
sport: string;
elapsedTime: number;
distance: number;
elevationGain: number;
get toQuery(): Record;
static fillDTO(doc: ActivityDocument, dto: ActivityDTO): ActivityDTO;
}
export declare type ActivityDocument = Activity & Documentable;
export declare class ActivityModel extends Model {
}
export declare class ActivityQuery extends Queryable {
constructor(document?: ActivityDocument, queryParams?: QueryParameters, filterQuery?: FilterQuery);
}
export declare const ActivitySchema: import("mongoose").Schema, {}, {}, {}, {}, "type", Activity>;