summaryrefslogtreecommitdiff
path: root/src/frontend/render
diff options
context:
space:
mode:
Diffstat (limited to 'src/frontend/render')
-rw-r--r--src/frontend/render/preact.ts4
-rw-r--r--src/frontend/render/react.ts4
-rw-r--r--src/frontend/render/renderer.ts4
-rw-r--r--src/frontend/render/svelte.ts3
-rw-r--r--src/frontend/render/vue.ts3
5 files changed, 10 insertions, 8 deletions
diff --git a/src/frontend/render/preact.ts b/src/frontend/render/preact.ts
index 3bc266735..5f5c03f56 100644
--- a/src/frontend/render/preact.ts
+++ b/src/frontend/render/preact.ts
@@ -1,4 +1,4 @@
-import { h, render } from 'preact';
+import { h, render, ComponentType } from 'preact';
import { renderToString } from 'preact-render-to-string';
import type { ComponentRenderer } from '../../@types/renderer';
import { createRenderer } from './renderer';
@@ -6,7 +6,7 @@ import { createRenderer } from './renderer';
// This prevents tree-shaking of render.
Function.prototype(render);
-const Preact: ComponentRenderer = {
+const Preact: ComponentRenderer<ComponentType> = {
renderStatic(Component) {
return async (props, ...children) => renderToString(h(Component, props, ...children));
},
diff --git a/src/frontend/render/react.ts b/src/frontend/render/react.ts
index b9e55f1c9..56c6decb0 100644
--- a/src/frontend/render/react.ts
+++ b/src/frontend/render/react.ts
@@ -1,9 +1,9 @@
import type { ComponentRenderer } from '../../@types/renderer';
-import React from 'react';
+import React, { ComponentType } from 'react';
import ReactDOMServer from 'react-dom/server';
import { createRenderer } from './renderer';
-const ReactRenderer: ComponentRenderer = {
+const ReactRenderer: ComponentRenderer<ComponentType> = {
renderStatic(Component) {
return async (props, ...children) => ReactDOMServer.renderToString(React.createElement(Component, props, children));
},
diff --git a/src/frontend/render/renderer.ts b/src/frontend/render/renderer.ts
index f00569827..02caf145f 100644
--- a/src/frontend/render/renderer.ts
+++ b/src/frontend/render/renderer.ts
@@ -1,7 +1,7 @@
-import type { ComponentRenderer, DynamicRenderContext, DynamicRendererGenerator, StaticRendererGenerator } from '../../@types/renderer';
+import type { DynamicRenderContext, DynamicRendererGenerator, SupportedComponentRenderer, StaticRendererGenerator } from '../../@types/renderer';
/** Initialize Astro Component renderer for Static and Dynamic components */
-export function createRenderer(renderer: ComponentRenderer) {
+export function createRenderer(renderer: SupportedComponentRenderer) {
const _static: StaticRendererGenerator = (Component) => renderer.renderStatic(Component);
const _imports = (context: DynamicRenderContext) => {
const values = Object.values(renderer.imports ?? {})
diff --git a/src/frontend/render/svelte.ts b/src/frontend/render/svelte.ts
index 6549d1dde..fcb4ff24b 100644
--- a/src/frontend/render/svelte.ts
+++ b/src/frontend/render/svelte.ts
@@ -1,7 +1,8 @@
import type { ComponentRenderer } from '../../@types/renderer';
+import type { SvelteComponent } from 'svelte';
import { createRenderer } from './renderer';
-const SvelteRenderer: ComponentRenderer = {
+const SvelteRenderer: ComponentRenderer<SvelteComponent> = {
renderStatic(Component) {
return async (props, ...children) => {
const { html } = Component.render(props);
diff --git a/src/frontend/render/vue.ts b/src/frontend/render/vue.ts
index e28729542..628544775 100644
--- a/src/frontend/render/vue.ts
+++ b/src/frontend/render/vue.ts
@@ -1,9 +1,10 @@
import type { ComponentRenderer } from '../../@types/renderer';
+import type { Component as VueComponent } from 'vue';
import { renderToString } from '@vue/server-renderer';
import { createSSRApp, h as createElement } from 'vue';
import { createRenderer } from './renderer';
-const Vue: ComponentRenderer = {
+const Vue: ComponentRenderer<VueComponent> = {
renderStatic(Component) {
return async (props, ...children) => {
const app = createSSRApp({