/**
 * Zulip Node - Version 1
 * Discriminator: resource=stream, operation=getAll
 */


interface Credentials {
  zulipApi: CredentialReference;
}

/** Get many streams */
export type ZulipV1StreamGetAllParams = {
  resource: 'stream';
  operation: 'getAll';
/**
 * Additional Fields
 * @default {}
 */
    additionalFields?: {
    /** Whether to include all active streams. The user must have administrative privileges to use this parameter.
     * @default true
     */
    includeAllActive?: boolean | Expression<boolean>;
    /** Whether to include all default streams for the users realm
     * @default true
     */
    includeDefault?: boolean | Expression<boolean>;
    /** Whether the user is a bot, include all streams that the bots owner is subscribed to
     * @default true
     */
    includeOwnersubscribed?: boolean | Expression<boolean>;
    /** Whether to include all public streams
     * @default true
     */
    includePublic?: boolean | Expression<boolean>;
    /** Whether to include all streams that the user is subscribed to
     * @default true
     */
    includeSubscribed?: boolean | Expression<boolean>;
  };
};

export type ZulipV1StreamGetAllNode = {
  type: 'n8n-nodes-base.zulip';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<ZulipV1StreamGetAllParams>;
};