/**
 * Oura Node - Version 1
 * Discriminator: resource=summary, operation=getActivity
 */


interface Credentials {
  ouraApi: CredentialReference;
}

/** Get the user's activity summary */
export type OuraV1SummaryGetActivityParams = {
  resource: 'summary';
  operation: 'getActivity';
/**
 * Whether to return all results or only up to a given limit
 * @default false
 */
    returnAll?: boolean | Expression<boolean>;
/**
 * Max number of results to return
 * @displayOptions.show { returnAll: [false] }
 * @default 5
 */
    limit?: number | Expression<number>;
/**
 * Filters
 * @default {}
 */
    filters?: {
    /** End date for the summary retrieval. If omitted, it defaults to the current day.
     */
    end?: string | Expression<string>;
    /** Start date for the summary retrieval. If omitted, it defaults to a week ago.
     */
    start?: string | Expression<string>;
  };
};

export type OuraV1SummaryGetActivityOutput = {
  active_calories?: number;
  average_met_minutes?: number;
  class_5_min?: string;
  contributors?: {
    meet_daily_targets?: number;
    move_every_hour?: number;
    recovery_time?: number;
    stay_active?: number;
    training_frequency?: number;
    training_volume?: number;
  };
  day?: string;
  equivalent_walking_distance?: number;
  high_activity_met_minutes?: number;
  high_activity_time?: number;
  id?: string;
  inactivity_alerts?: number;
  low_activity_met_minutes?: number;
  low_activity_time?: number;
  medium_activity_met_minutes?: number;
  medium_activity_time?: number;
  met?: {
    interval?: number;
    items?: Array<number>;
    timestamp?: string;
  };
  meters_to_target?: number;
  non_wear_time?: number;
  resting_time?: number;
  score?: number;
  sedentary_met_minutes?: number;
  sedentary_time?: number;
  steps?: number;
  target_calories?: number;
  target_meters?: number;
  timestamp?: string;
  total_calories?: number;
};

export type OuraV1SummaryGetActivityNode = {
  type: 'n8n-nodes-base.oura';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<OuraV1SummaryGetActivityParams>;
  output?: Items<OuraV1SummaryGetActivityOutput>;
};