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


interface Credentials {
  freshserviceApi: CredentialReference;
}

/** Create an agent */
export type FreshserviceV1AnnouncementCreateParams = {
  resource: 'announcement';
  operation: 'create';
/**
 * Title
 */
    title?: string | Expression<string> | PlaceholderValue;
/**
 * HTML supported
 */
    bodyHtml?: string | Expression<string> | PlaceholderValue;
/**
 * Visibility
 * @default everyone
 */
    visibility?: 'agents_only' | 'grouped_visibility' | 'everyone' | Expression<string>;
/**
 * Timestamp at which announcement becomes active
 */
    visibleFrom?: string | Expression<string>;
/**
 * Additional Fields
 * @default {}
 */
    additionalFields?: {
    /** Comma-separated additional email addresses to which the announcement needs to be sent
     */
    additional_emails?: 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[];
    /** Timestamp at which announcement is active
     */
    visible_from?: string | Expression<string>;
    /** Timestamp until which announcement is active
     */
    visible_till?: string | Expression<string>;
  };
};

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