/** * The Lit devframe for hosts whose pages are not on this process's Vite dev * server: `lit-devtools dev`, where a page dials the host over devframe's own * RPC connection and carries the runtime's channel messages as two RPC * events, `lit:page-send` (page to server) and `lit:page-receive` (server to * page), and the browser extension, whose pages arrive over a port. * * Either way the definition's source is a {@link TimelineChannelCodec}, the * same one the Vite host uses over `server.hot`; only the * {@link PageTransport} under it differs. The page half of the RPC pipe is * `runtime/rpc-transport.ts`. * * Like `definition.ts`, nothing here imports Vite or a `node:` module. */ import type { DevframeDefinition, DevframeNodeContext } from 'devframe'; import type { PageTransport } from '../runtime/page-transport.js'; import type { CreateLitDevframeOptions } from './definition.js'; import type { DefineSourceResolver, TemplateLocator } from './define-sources.js'; /** * The Lit devframe with a {@link TimelineChannelCodec} already connected to * its pages, for hosts with no Vite: `lit-devtools dev`, and the browser * extension's local host. Wraps `setup()` so the transport is built on the * same context the definition runs against, leaving `definition.ts` unaware * of how its source is fed. `transport` defaults to {@link rpcPageTransport}; * the extension passes one over a `chrome.runtime.Port` (see `port-link.ts`). * * There is no dock to bring forward on a `pick`, unlike the Vite hub: the * standalone panel is the whole page, so the codec gets no pick hook. */ export declare function createStandaloneLitDevframe(options: Omit & { host: 'standalone' | 'extension'; /** * Where a component without a stamped source is defined, from the stack * of its define call. The extension passes one that reads the page's * sourcemaps (see `define-sources.ts`); without it details pass as they * came. */ resolveDefineSource?: DefineSourceResolver; /** * Where an element the plugin never stamped is rendered, from the text * of its template; passed with `resolveDefineSource`. */ locateTemplate?: TemplateLocator; /** * Resolve defines through the page's own sourcemaps, which the page * fetches for the host (see `page-fetch.ts`): `lit-devtools dev`, whose * pages the plugin never built. Ignored when `resolveDefineSource` is * given. */ pageSourceMaps?: boolean; }, transport?: (ctx: DevframeNodeContext) => PageTransport): DevframeDefinition; //# sourceMappingURL=rpc-source.d.ts.map