/**
 * Freshservice Node - Version 1
 * Discriminator: resource=announcement, operation=update
 */


interface Credentials {
  freshserviceApi: CredentialReference;
}

/** Update an agent */
export type FreshserviceV1AnnouncementUpdateParams = {
  resource: 'announcement';
  operation: 'update';
/**
 * ID of the announcement to update
 */
    announcementId?: string | Expression<string> | PlaceholderValue;
/**
 * Update Fields
 * @default {}
 */
    updateFields?: {
    /** Comma-separated additional email addresses to which the announcement needs to be sent
     */
    additional_emails?: string | Expression<string> | PlaceholderValue;
    /** HTML supported
     */
    body_html?: string | Expression<string> | PlaceholderValue;
    /** Comma-separated IDs of departments that may view this announcement. Choose from the list or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;. Choose from the list, or specify IDs using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
     * @default []
     */
    departments?: string[];
    /** Title
     */
    title?: string | Expression<string> | PlaceholderValue;
    /** Visibility
     * @default everyone
     */
    visibility?: 'agents_only' | 'grouped_visibility' | 'everyone' | Expression<string>;
  };
};

export type FreshserviceV1AnnouncementUpdateNode = {
  type: 'n8n-nodes-base.freshservice';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<FreshserviceV1AnnouncementUpdateParams>;
};