类型别名 StreamOutputMap<TStreamMode, TStreamSubgraphs, StreamUpdates, StreamValues, Nodes>

StreamOutputMap<TStreamMode, TStreamSubgraphs, StreamUpdates, StreamValues, Nodes>: (undefined extends TStreamMode
        ? []
        : (StreamMode | StreamMode[]) extends TStreamMode
            ? TStreamMode extends StreamMode[]
                ? TStreamMode[number]
                : TStreamMode
            : TStreamMode extends StreamMode[]
                ? TStreamMode[number]
                : []) extends infer Multiple extends StreamMode
    ? [TStreamSubgraphs] extends [true]
        ? {
            custom: [string[], "custom", StreamCustomOutput];
            debug: [string[], "debug", StreamDebugOutput];
            messages: [string[], "messages", StreamMessageOutput];
            updates: [string[], "updates", Record<Nodes extends string
                ? Nodes
                : string, StreamUpdates>];
            values: [string[], "values", StreamValues];
        }[Multiple]
        : {
            custom: ["custom", StreamCustomOutput];
            debug: ["debug", StreamDebugOutput];
            messages: ["messages", StreamMessageOutput];
            updates: ["updates", Record<Nodes extends string
                ? Nodes
                : string, StreamUpdates>];
            values: ["values", StreamValues];
        }[Multiple]
    : undefined extends TStreamMode
            ? DefaultStreamMode
            : TStreamMode) extends infer Single extends StreamMode
        ? [TStreamSubgraphs] extends [true]
            ? {
                custom: [string[], StreamCustomOutput];
                debug: [string[], StreamDebugOutput];
                messages: [string[], StreamMessageOutput];
                updates: [string[], Record<Nodes extends string
                    ? Nodes
                    : string, StreamUpdates>];
                values: [string[], StreamValues];
            }[Single]
            : {
                custom: StreamCustomOutput;
                debug: StreamDebugOutput;
                messages: StreamMessageOutput;
                updates: Record<Nodes extends string
                    ? Nodes
                    : string, StreamUpdates>;
                values: StreamValues;
            }[Single]
        : never

类型参数

  • TStreamMode 扩展自 StreamMode | StreamMode[] | undefined
  • TStreamSubgraphs 扩展自 boolean
  • StreamUpdates
  • StreamValues
  • Nodes = string