UNPKG

@shopify/react-async

Version:

Tools for creating powerful, asynchronously-loaded React components.

20 lines (19 loc) 634 B
import * as React from 'react'; import { EffectKind } from '@shopify/react-effect'; import { AssetTiming } from '../types'; export interface AssetSelector { id: string; styles: boolean; scripts: boolean; } export declare const EFFECT_ID: unique symbol; export declare class AsyncAssetManager { readonly effect: EffectKind; private assets; used(timing?: AssetTiming | AssetTiming[]): AssetSelector[]; markAsUsed(id: string, timing?: AssetTiming | { scripts?: AssetTiming; styles?: AssetTiming; }): void; } export declare const AsyncAssetContext: React.Context<AsyncAssetManager | null>;