/**
 * Mailchimp Node - Version 1
 * Discriminator: resource=member, operation=get
 */


interface Credentials {
  mailchimpApi: CredentialReference;
  mailchimpOAuth2Api: CredentialReference;
}

/** Get a member on list */
export type MailchimpV1MemberGetParams = {
  resource: 'member';
  operation: 'get';
  authentication?: 'apiKey' | 'oAuth2' | Expression<string>;
/**
 * List of lists. Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
 */
    list?: string | Expression<string>;
/**
 * Member's email
 */
    email?: string | Expression<string> | PlaceholderValue;
/**
 * Options
 * @default {}
 */
    options?: {
    /** A comma-separated list of fields to return
     */
    fields?: string | Expression<string> | PlaceholderValue;
    /** A comma-separated list of fields to exclude
     */
    excludeFields?: string | Expression<string> | PlaceholderValue;
  };
};

export type MailchimpV1MemberGetOutput = {
  _links?: Array<{
    href?: string;
    method?: string;
    rel?: string;
    schema?: string;
    targetSchema?: string;
  }>;
  consents_to_one_to_one_messaging?: boolean;
  contact_id?: string;
  email_address?: string;
  email_client?: string;
  email_type?: string;
  full_name?: string;
  id?: string;
  ip_opt?: string;
  ip_signup?: string;
  language?: string;
  last_changed?: string;
  list_id?: string;
  location?: {
    country_code?: string;
    dstoff?: number;
    gmtoff?: number;
    region?: string;
    timezone?: string;
  };
  member_rating?: number;
  merge_fields?: {
    BIRTHDAY?: string;
    COMPANY?: string;
    FNAME?: string;
    LNAME?: string;
    PHONE?: string;
  };
  sms_phone_number?: string;
  sms_subscription_last_updated?: string;
  sms_subscription_status?: string;
  source?: string;
  status?: string;
  tags?: Array<{
    id?: number;
    name?: string;
  }>;
  tags_count?: number;
  timestamp_opt?: string;
  timestamp_signup?: string;
  unique_email_id?: string;
  vip?: boolean;
  web_id?: number;
};

export type MailchimpV1MemberGetNode = {
  type: 'n8n-nodes-base.mailchimp';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<MailchimpV1MemberGetParams>;
  output?: Items<MailchimpV1MemberGetOutput>;
};