/**
 * Strava Trigger Node - Version 1
 * Starts the workflow when Strava events occur
 */


export interface StravaTriggerV1Params {
  object?: '*' | 'activity' | 'athlete' | Expression<string>;
  event?: '*' | 'create' | 'delete' | 'update' | Expression<string>;
/**
 * By default the webhook-data only contain the Object ID. If this option gets activated, it will resolve the data automatically.
 * @default true
 */
    resolveData?: boolean | Expression<boolean>;
  options?: {
    /** Strava allows just one subscription at all times. If you want to delete the current subscription to make room for a new subscription with the current parameters, set this parameter to true. Keep in mind this is a destructive operation.
     * @default false
     */
    deleteIfExist?: boolean | Expression<boolean>;
  };
}

export interface StravaTriggerV1Credentials {
  stravaOAuth2Api: CredentialReference;
}

interface StravaTriggerV1NodeBase {
  type: 'n8n-nodes-base.stravaTrigger';
  version: 1;
  credentials?: StravaTriggerV1Credentials;
  isTrigger: true;
}

export type StravaTriggerV1ParamsNode = StravaTriggerV1NodeBase & {
  config: NodeConfig<StravaTriggerV1Params>;
};

export type StravaTriggerV1Node = StravaTriggerV1ParamsNode;