/**
 * Pipedrive Node - Version 1
 * Discriminator: resource=lead, operation=getAll
 */


interface Credentials {
  pipedriveApi: CredentialReference;
  pipedriveOAuth2Api: CredentialReference;
}

/** Get data of many activities */
export type PipedriveV1LeadGetAllParams = {
  resource: 'lead';
  operation: 'getAll';
  authentication?: 'apiToken' | 'oAuth2' | Expression<string>;
/**
 * 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 100
 */
    limit?: number | Expression<number>;
/**
 * Filters
 * @default {}
 */
    filters?: {
    /** Archived Status
     * @default all
     */
    archived_status?: 'archived' | 'all' | 'not_archived' | Expression<string>;
  };
};

export type PipedriveV1LeadGetAllOutput = {
  add_time?: string;
  cc_email?: string;
  channel_id?: null;
  creator_id?: number;
  id?: string;
  is_archived?: boolean;
  label_ids?: Array<string>;
  origin?: string;
  owner_id?: number;
  source_name?: string;
  title?: string;
  update_time?: string;
  visible_to?: string;
  was_seen?: boolean;
};

export type PipedriveV1LeadGetAllNode = {
  type: 'n8n-nodes-base.pipedrive';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<PipedriveV1LeadGetAllParams>;
  output?: Items<PipedriveV1LeadGetAllOutput>;
};