server-renderer.d.ts 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. /// <reference types="node" />
  2. import { App } from 'vue';
  3. import { Component } from 'vue';
  4. import { ComponentInternalInstance } from 'vue';
  5. import { Readable } from 'stream';
  6. import { Slots } from 'vue';
  7. import { includeBooleanAttr as ssrIncludeBooleanAttr } from '@vue/shared';
  8. import { VNode } from 'vue';
  9. import { Writable } from 'stream';
  10. export declare function pipeToNodeWritable(input: App | VNode, context: SSRContext | undefined, writable: Writable): void;
  11. export declare function pipeToWebWritable(input: App | VNode, context: SSRContext | undefined, writable: WritableStream): void;
  12. declare type Props = Record<string, unknown>;
  13. declare type PushFn = (item: SSRBufferItem) => void;
  14. export declare function renderToNodeStream(input: App | VNode, context?: SSRContext): Readable;
  15. export declare function renderToSimpleStream<T extends SimpleReadable>(input: App | VNode, context: SSRContext, stream: T): T;
  16. /**
  17. * @deprecated
  18. */
  19. export declare function renderToStream(input: App | VNode, context?: SSRContext): Readable;
  20. export declare function renderToString(input: App | VNode, context?: SSRContext): Promise<string>;
  21. export declare function renderToWebStream(input: App | VNode, context?: SSRContext): ReadableStream;
  22. export declare interface SimpleReadable {
  23. push(chunk: string | null): void;
  24. destroy(err: any): void;
  25. }
  26. declare type SSRBuffer = SSRBufferItem[] & {
  27. hasAsync?: boolean;
  28. };
  29. declare type SSRBufferItem = string | SSRBuffer | Promise<SSRBuffer>;
  30. export declare type SSRContext = {
  31. [key: string]: any;
  32. teleports?: Record<string, string>;
  33. __teleportBuffers?: Record<string, SSRBuffer>;
  34. };
  35. export declare function ssrGetDynamicModelProps(existingProps: any, model: unknown): {
  36. checked: boolean;
  37. value?: undefined;
  38. } | {
  39. value: unknown;
  40. checked?: undefined;
  41. } | null;
  42. export { ssrIncludeBooleanAttr }
  43. export declare function ssrInterpolate(value: unknown): string;
  44. export declare function ssrLooseContain(arr: unknown[], value: unknown): boolean;
  45. export declare const ssrLooseEqual: (a: unknown, b: unknown) => boolean;
  46. export declare function ssrRenderAttr(key: string, value: unknown): string;
  47. export declare function ssrRenderAttrs(props: Record<string, unknown>, tag?: string): string;
  48. export declare function ssrRenderClass(raw: unknown): string;
  49. export declare function ssrRenderComponent(comp: Component, props?: Props | null, children?: Slots | SSRSlots | null, parentComponent?: ComponentInternalInstance | null, slotScopeId?: string): SSRBuffer | Promise<SSRBuffer>;
  50. export declare function ssrRenderDynamicAttr(key: string, value: unknown, tag?: string): string;
  51. export declare function ssrRenderDynamicModel(type: unknown, model: unknown, value: unknown): string;
  52. export declare function ssrRenderList(source: unknown, renderItem: (value: unknown, key: string | number, index?: number) => void): void;
  53. export declare function ssrRenderSlot(slots: Slots | SSRSlots, slotName: string, slotProps: Props, fallbackRenderFn: (() => void) | null, push: PushFn, parentComponent: ComponentInternalInstance, slotScopeId?: string): void;
  54. export declare function ssrRenderStyle(raw: unknown): string;
  55. export declare function ssrRenderSuspense(push: PushFn, { default: renderContent }: Record<string, (() => void) | undefined>): Promise<void>;
  56. export declare function ssrRenderTeleport(parentPush: PushFn, contentRenderFn: (push: PushFn) => void, target: string, disabled: boolean, parentComponent: ComponentInternalInstance): void;
  57. export declare function ssrRenderVNode(push: PushFn, vnode: VNode, parentComponent: ComponentInternalInstance, slotScopeId?: string): void;
  58. declare type SSRSlot = (props: Props, push: PushFn, parentComponent: ComponentInternalInstance | null, scopeId: string | null) => void;
  59. declare type SSRSlots = Record<string, SSRSlot>;
  60. export { }