import React from 'react';
import { Injectable } from '../Readium/Injectable';
import { WebpubManifest } from '../types';
import { HtmlState, HtmlAction } from './types';
/**
 * Fetches a resource whenever the url changes and dispatches
 * actions to keep the reducer up to date. Works similar to
 * useSWR, but storing the resource in the reducer state, not
 * separately.
 *
 * Also performs some modifications on the resource to add initial
 * css variables and injectables.
 */
export default function useResource(manifest: WebpubManifest | undefined, state: HtmlState, getContent: (url: string) => Promise<string>, injectables: Injectable[], dispatch: React.Dispatch<HtmlAction>): void;
