import { Accessor, Signal } from 'solid-js'; import { MaybeAccessor } from '@solidjs-use/shared'; import { ConfigurableDocument } from '../_configurable.js'; type UseTitleOptionsBase = { /** * Observe `document.title` changes using MutationObserve * Cannot be used together with `titleTemplate` option. * * @default false */ observe?: boolean; } | { /** * The template string to parse the title (e.g., '%s | My Website') * Cannot be used together with `observe` option. * * @default '%s' */ titleTemplate?: MaybeAccessor | ((title: string) => string); }; type UseTitleOptions = ConfigurableDocument & UseTitleOptionsBase; declare function useTitle(newTitle: Accessor, options?: UseTitleOptions): Accessor; declare function useTitle(newTitle?: string | null | undefined, options?: UseTitleOptions): Signal; type UseTitleReturn = ReturnType; export { UseTitleOptions, UseTitleOptionsBase, UseTitleReturn, useTitle };