import { Injector } from '@angular/core'; import type { Signal } from '@angular/core'; import type { AnyRouter, ResolveUseSearch, StrictOrFrom, ThrowConstraint, ThrowOrOptional, UseSearchResult } from '@tanstack/router-core'; import type { RegisteredRouter } from './register'; import type { Observable } from 'rxjs'; export interface SearchBaseOptions { select?: (state: ResolveUseSearch) => TSelected; shouldThrow?: TThrow; injector?: Injector; } export type SearchOptions = StrictOrFrom & SearchBaseOptions; export type SearchRoute = (opts?: SearchBaseOptions) => TObservable extends true ? Observable> : Signal>; export declare function search$({ injector, ...opts }: SearchOptions, TSelected>): Observable, TThrow>>; export declare function search({ injector, ...opts }: SearchOptions, TSelected>): Signal, TThrow>>;