44 lines
1.5 KiB
Plaintext
44 lines
1.5 KiB
Plaintext
export type AssetCrossOrigin = 'anonymous' | 'use-credentials';
|
|
export type AssetCrossOriginConfig = AssetCrossOrigin | Partial<Record<'modulepreload' | 'stylesheet', AssetCrossOrigin>>;
|
|
export type ManifestAssetLink = string | {
|
|
href: string;
|
|
crossOrigin?: AssetCrossOrigin;
|
|
};
|
|
export declare function getAssetCrossOrigin(assetCrossOrigin: AssetCrossOriginConfig | undefined, kind: 'modulepreload' | 'stylesheet'): AssetCrossOrigin | undefined;
|
|
export declare function resolveManifestAssetLink(link: ManifestAssetLink): {
|
|
href: string;
|
|
crossOrigin?: AssetCrossOrigin;
|
|
};
|
|
export type Manifest = {
|
|
inlineCss?: {
|
|
styles: Record<string, string>;
|
|
};
|
|
routes: Record<string, {
|
|
filePath?: string;
|
|
preloads?: Array<ManifestAssetLink>;
|
|
assets?: Array<RouterManagedTag>;
|
|
}>;
|
|
};
|
|
export type RouterManagedTag = {
|
|
tag: 'title';
|
|
attrs?: Record<string, any>;
|
|
children: string;
|
|
} | {
|
|
tag: 'meta' | 'link';
|
|
attrs?: Record<string, any>;
|
|
children?: never;
|
|
} | {
|
|
tag: 'script';
|
|
attrs?: Record<string, any>;
|
|
children?: string;
|
|
} | {
|
|
tag: 'style';
|
|
attrs?: Record<string, any>;
|
|
children?: string;
|
|
inlineCss?: true;
|
|
};
|
|
export declare function getStylesheetHref(asset: RouterManagedTag): string | undefined;
|
|
export declare function isInlinableStylesheet(manifest: Manifest | undefined, asset: RouterManagedTag): boolean;
|
|
export declare function createInlineCssStyleAsset(css: string): RouterManagedTag;
|
|
export declare function createInlineCssPlaceholderAsset(): RouterManagedTag;
|