/**
 * Help Scout Node - Version 1
 * Discriminator: resource=conversation, operation=get
 */


interface Credentials {
  helpScoutOAuth2Api: CredentialReference;
}

/** Get a conversation */
export type HelpScoutV1ConversationGetParams = {
  resource: 'conversation';
  operation: 'get';
/**
 * Conversation ID
 */
    conversationId?: string | Expression<string> | PlaceholderValue;
};

export type HelpScoutV1ConversationGetOutput = {
  _links?: {
    assignee?: {
      href?: string;
    };
    closedBy?: {
      href?: string;
    };
    createdByUser?: {
      href?: string;
    };
    mailbox?: {
      href?: string;
    };
    primaryCustomer?: {
      href?: string;
    };
    self?: {
      href?: string;
    };
    threads?: {
      href?: string;
    };
    web?: {
      href?: string;
    };
  };
  assignee?: {
    email?: string;
    first?: string;
    id?: number;
    last?: string;
    type?: string;
  };
  cc?: Array<string>;
  closedBy?: number;
  closedByUser?: {
    email?: string;
    first?: string;
    id?: number;
    last?: string;
    type?: string;
  };
  createdAt?: string;
  createdBy?: {
    email?: string;
    first?: string;
    id?: number;
    last?: string;
    type?: string;
  };
  customerWaitingSince?: {
    friendly?: string;
    time?: string;
  };
  customFields?: Array<{
    id?: number;
    name?: string;
    text?: string;
    value?: string;
  }>;
  folderId?: number;
  id?: number;
  mailboxId?: number;
  number?: number;
  preview?: string;
  primaryCustomer?: {
    email?: string;
    first?: string;
    id?: number;
    last?: string;
    photoUrl?: string;
    type?: string;
  };
  source?: {
    type?: string;
    via?: string;
  };
  state?: string;
  status?: string;
  subject?: string;
  tags?: Array<{
    color?: string;
    id?: number;
    tag?: string;
  }>;
  threads?: number;
  type?: string;
  userUpdatedAt?: string;
};

export type HelpScoutV1ConversationGetNode = {
  type: 'n8n-nodes-base.helpScout';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<HelpScoutV1ConversationGetParams>;
  output?: Items<HelpScoutV1ConversationGetOutput>;
};