/**
 * Discord Node - Version 1
 * Sends data to Discord
 */


export interface DiscordV1Params {
  webhookUri?: string | Expression<string> | PlaceholderValue;
  text?: string | Expression<string> | PlaceholderValue;
  options?: {
    /** Allowed Mentions
     */
    allowedMentions?: IDataObject | string | Expression<string>;
    /** Attachments
     */
    attachments?: IDataObject | string | Expression<string>;
    /** Avatar URL
     */
    avatarUrl?: string | Expression<string> | PlaceholderValue;
    /** Components
     */
    components?: IDataObject | string | Expression<string>;
    /** Embeds
     */
    embeds?: IDataObject | string | Expression<string>;
    /** Flags
     */
    flags?: number | Expression<number>;
    /** JSON Payload
     */
    payloadJson?: IDataObject | string | Expression<string>;
    /** Username
     */
    username?: string | Expression<string> | PlaceholderValue;
    /** Whether this message be sent as a Text To Speech message
     * @default false
     */
    tts?: boolean | Expression<boolean>;
  };
}

interface DiscordV1NodeBase {
  type: 'n8n-nodes-base.discord';
  version: 1;
}

export type DiscordV1ParamsNode = DiscordV1NodeBase & {
  config: NodeConfig<DiscordV1Params>;
};

export type DiscordV1Node = DiscordV1ParamsNode;