/**
 * Freshdesk Node - Version 1
 * Discriminator: resource=ticket, operation=get
 */


interface Credentials {
  freshdeskApi: CredentialReference;
}

/** Get a ticket */
export type FreshdeskV1TicketGetParams = {
  resource: 'ticket';
  operation: 'get';
/**
 * Ticket ID
 */
    ticketId?: string | Expression<string> | PlaceholderValue;
};

export type FreshdeskV1TicketGetOutput = {
  association_type?: null;
  attachments?: Array<{
    attachment_url?: string;
    content_type?: string;
    created_at?: string;
    id?: number;
    name?: string;
    size?: number;
    updated_at?: string;
  }>;
  cc_emails?: Array<string>;
  created_at?: string;
  description?: string;
  description_text?: string;
  due_by?: string;
  fr_due_by?: string;
  fr_escalated?: boolean;
  fwd_emails?: Array<string>;
  id?: number;
  is_escalated?: boolean;
  priority?: number;
  reply_cc_emails?: Array<string>;
  requester_id?: number;
  source?: number;
  source_additional_info?: null;
  spam?: boolean;
  status?: number;
  subject?: string;
  tags?: Array<string>;
  ticket_cc_emails?: Array<string>;
  updated_at?: string;
};

export type FreshdeskV1TicketGetNode = {
  type: 'n8n-nodes-base.freshdesk';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<FreshdeskV1TicketGetParams>;
  output?: Items<FreshdeskV1TicketGetOutput>;
};