/** * Switch Node - Version 3.3 * Discriminator: mode=rules */ /** Build a matching rule for each output */ export type SwitchV33RulesParams = { mode: 'rules'; /** * Routing Rules * @default {"values":[{"conditions":{"options":{"caseSensitive":true,"leftValue":"","typeValidation":"strict"},"conditions":[{"leftValue":"","rightValue":"","operator":{"type":"string","operation":"equals"}}],"combinator":"and"}}]} */ rules?: { /** Routing Rule */ values?: Array<{ /** Conditions * @default {} */ conditions?: FilterValue; /** Rename Output * @default false */ renameOutput?: boolean | Expression; /** The label of output to which to send data to if rule matches * @displayOptions.show { renameOutput: [true] } */ outputKey?: string | Expression | PlaceholderValue; }>; }; /** * If the type of an expression doesn't match the type of the comparison, n8n will try to cast the expression to the required type. E.g. for booleans <code>"false"</code> or <code>0</code> will be cast to <code>false</code> * @default false */ looseTypeValidation?: boolean | Expression; /** * Options * @default {} */ options?: { /** If no rule matches the item will be sent to this output, by default they will be ignored * @default none */ fallbackOutput?: string | Expression; /** Whether to ignore letter case when evaluating conditions * @default true */ ignoreCase?: boolean | Expression; /** If the type of an expression doesn't match the type of the comparison, n8n will try to cast the expression to the required type. E.g. for booleans <code>"false"</code> or <code>0</code> will be cast to <code>false</code> * @default true */ looseTypeValidation?: boolean | Expression; /** Rename Fallback Output * @displayOptions.show { fallbackOutput: ["extra"] } */ renameFallbackOutput?: string | Expression | PlaceholderValue; /** Whether to send data to all outputs meeting conditions (and not just the first one) * @default false */ allMatchingOutputs?: boolean | Expression; }; }; export type SwitchV33RulesNode = { type: 'n8n-nodes-base.switch'; version: 3.3; config: NodeConfig; };