n8n-nodes-base
Version:
Base nodes of n8n
249 lines (244 loc) • 8.63 kB
text/typescript
/**
* Webex by Cisco Node - Version 1
* Discriminator: resource=message, operation=create
*/
interface Credentials {
ciscoWebexOAuth2Api: CredentialReference;
}
export type CiscoWebexV1MessageCreateParams = {
resource: 'message';
operation: 'create';
/**
* Destination
* @default room
*/
destination?: 'room' | 'person' | Expression<string>;
/**
* Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>
* @displayOptions.show { destination: ["room"] }
*/
roomId?: string | Expression<string>;
/**
* Specify Person By
* @displayOptions.show { destination: ["person"] }
* @default email
*/
specifyPersonBy?: 'email' | 'id' | Expression<string>;
/**
* Person ID
* @displayOptions.show { specifyPersonBy: ["id"] }
*/
toPersonId?: string | Expression<string> | PlaceholderValue;
/**
* Person Email
* @displayOptions.show { specifyPersonBy: ["email"] }
*/
toPersonEmail?: string | Expression<string> | PlaceholderValue;
/**
* The message, in plain text
*/
text?: string | Expression<string> | PlaceholderValue;
/**
* Additional Fields
* @default {}
*/
additionalFields?: {
/** Attachments
* @default {}
*/
attachmentsUi?: {
/** Attachment
*/
attachmentValues?: Array<{
/** Elements
* @default {}
*/
elementsUi?: {
/** Element
*/
elementValues?: Array<{
/** Type
* @default textBlock
*/
type?: 'textBlock' | 'inputText' | Expression<string>;
/** Text to display. A subset of markdown is supported (https://aka.ms/ACTextFeatures).
* @displayOptions.show { type: ["textBlock"] }
*/
text?: string | Expression<string> | PlaceholderValue;
/** Color of the TextBlock element
* @displayOptions.show { type: ["textBlock"] }
* @default default
*/
color?: 'accent' | 'attention' | 'dark' | 'default' | 'good' | 'light' | 'warning' | Expression<string>;
/** Type of font to use for rendering
* @displayOptions.show { type: ["textBlock"] }
* @default default
*/
fontType?: 'default' | 'monospace' | Expression<string>;
/** Controls the horizontal text alignment
* @displayOptions.show { type: ["textBlock"] }
* @default left
*/
horizontalAlignment?: 'left' | 'center' | 'right' | Expression<string>;
/** Whether to display text slightly toned down to appear less prominent
* @displayOptions.show { type: ["textBlock"] }
* @default false
*/
isSubtle?: boolean | Expression<boolean>;
/** Specifies the maximum number of lines to display
* @displayOptions.show { type: ["textBlock"] }
* @default 1
*/
maxLines?: number | Expression<number>;
/** Controls size of text
* @displayOptions.show { type: ["textBlock"] }
* @default default
*/
size?: 'default' | 'extraLarge' | 'large' | 'medium' | 'small' | Expression<string>;
/** Controls the weight of TextBlock elements
* @displayOptions.show { type: ["textBlock"] }
* @default default
*/
weight?: 'default' | 'lighter' | 'bolder' | Expression<string>;
/** Whether to allow text to wrap. Otherwise, text is clipped.
* @displayOptions.show { type: ["textBlock"] }
* @default true
*/
wrap?: boolean | Expression<boolean>;
/** Specifies the height of the element
* @displayOptions.show { type: ["textBlock"] }
* @default auto
*/
height?: 'auto' | 'stretch' | Expression<string>;
/** Whether to draw a separating line at the top of the element
* @displayOptions.show { type: ["textBlock"] }
* @default false
*/
separator?: boolean | Expression<boolean>;
/** Controls the amount of spacing between this element and the preceding element
* @displayOptions.show { type: ["textBlock"] }
* @default default
*/
spacing?: 'default' | 'extraLarge' | 'large' | 'medium' | 'none' | 'padding' | 'small' | Expression<string>;
/** A unique identifier associated with the item
* @displayOptions.show { type: ["textBlock"] }
*/
id?: string | Expression<string> | PlaceholderValue;
/** Whether this item will be removed from the visual trees
* @displayOptions.show { type: ["textBlock"] }
* @default true
*/
isVisible?: boolean | Expression<boolean>;
/** Unique identifier for the value. Used to identify collected input when the Submit action is performed.
* @displayOptions.show { type: ["inputText"] }
*/
id?: string | Expression<string> | PlaceholderValue;
/** Whether to allow multiple lines of input
* @displayOptions.show { type: ["inputText"] }
* @default false
*/
isMultiline?: boolean | Expression<boolean>;
/** Hint of maximum length characters to collect (may be ignored by some clients)
* @displayOptions.show { type: ["inputText"] }
* @default 1
*/
maxLength?: number | Expression<number>;
/** Description of the input desired. Displayed when no text has been input.
* @displayOptions.show { type: ["inputText"] }
*/
placeholder?: string | Expression<string> | PlaceholderValue;
/** Regular expression indicating the required format of this text input
* @displayOptions.show { type: ["inputText"] }
*/
regex?: string | Expression<string> | PlaceholderValue;
/** Style hint for text input
* @displayOptions.show { type: ["inputText"] }
* @default text
*/
style?: 'text' | 'tel' | 'url' | 'email' | Expression<string>;
/** The initial value for this field
* @displayOptions.show { type: ["inputText"] }
*/
value?: string | Expression<string> | PlaceholderValue;
}>;
};
/** Actions
* @default {}
*/
actionsUi?: {
/** Action
*/
actionValues?: Array<{
/** Type
* @default openUrl
*/
type?: 'execute' | 'openUrl' | 'submit' | Expression<string>;
/** The URL to open
* @displayOptions.show { type: ["openUrl"] }
*/
url?: string | Expression<string> | PlaceholderValue;
/** Any extra data to pass along. These are essentially ‘hidden’ properties.
* @displayOptions.show { type: ["submit", "execute"] }
*/
data?: string | Expression<string> | PlaceholderValue;
/** The card author-defined verb associated with this action
* @displayOptions.show { type: ["execute"] }
*/
verb?: string | Expression<string> | PlaceholderValue;
/** Label for button or link that represents this action
*/
title?: string | Expression<string> | PlaceholderValue;
/** Optional icon to be shown on the action in conjunction with the title. Supports data URI in version 1.2+.
*/
iconUrl?: string | Expression<string> | PlaceholderValue;
/** Controls the style of an Action, which influences how the action is displayed, spoken, etc
* @default default
*/
style?: 'default' | 'positive' | 'destructive' | Expression<string>;
}>;
};
}>;
};
/** File
* @default {}
*/
fileUi?: {
/** File
*/
fileValue?: {
/** File Location
* @default url
*/
fileLocation?: 'url' | 'binaryData' | Expression<string>;
/** The field in the node input containing the binary file data
* @displayOptions.show { fileLocation: ["binaryData"] }
* @default data
*/
binaryPropertyName?: string | Expression<string> | PlaceholderValue;
/** The public URL of the file
* @displayOptions.show { fileLocation: ["url"] }
*/
url?: string | Expression<string> | PlaceholderValue;
};
};
/** The message in markdown format. When used the text parameter is used to provide alternate text for UI clients that do not support rich text.
*/
markdown?: string | Expression<string> | PlaceholderValue;
};
};
export type CiscoWebexV1MessageCreateOutput = {
created?: string;
id?: string;
personEmail?: string;
personId?: string;
roomId?: string;
roomType?: string;
text?: string;
};
export type CiscoWebexV1MessageCreateNode = {
type: 'n8n-nodes-base.ciscoWebex';
version: 1;
credentials?: Credentials;
config: NodeConfig<CiscoWebexV1MessageCreateParams>;
output?: Items<CiscoWebexV1MessageCreateOutput>;
};