import * as _angular_core from '@angular/core'; import { InjectionToken, WritableSignal, PipeTransform, EnvironmentProviders, BaseResourceOptions, ResourceLoaderParams, ResourceRef, Signal } from '@angular/core'; import { Observable } from 'rxjs'; import { Page } from '@solar-kit/planets/sun'; import { RxResourceOptions } from '@angular/core/rxjs-interop'; interface SolarConfig { clientId: string; earthUrl: string; mercuryUrl: string; } declare const SOLAR_CONFIG: InjectionToken; /** * Attaches a loading indicator to an observable. * * @param loading - A writable signal indicating the loading state. * @param options - Optional configuration for the loading behavior. * @param options.immediate - If true, the loading state is set to true immediately upon calling this function. * @returns A function that takes an observable and returns a new observable with loading state managed. */ declare function attachLoading(loading: WritableSignal, options?: { immediate?: boolean; }): (observable: Observable) => Observable; declare class CnumberPipe implements PipeTransform { transform(v: string): any; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵpipe: _angular_core.ɵɵPipeDeclaration; } declare class FindByIdPipe implements PipeTransform { transform(id: T['id'], array: T[]): unknown; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵpipe: _angular_core.ɵɵPipeDeclaration, "findById", true>; } declare function provideSolar(config: SolarConfig): EnvironmentProviders; declare function pageResource(opts: PageResourceOptions): _angular_core.ResourceRef | undefined> & { snapshotValue: _angular_core.Signal | undefined>; } & { items: _angular_core.WritableSignal; pageNo: _angular_core.WritableSignal; pageSize: _angular_core.WritableSignal; next(): void; reset: () => void; }; interface PageResourceOptions extends BaseResourceOptions, R> { stream: (params: ResourceLoaderParams) => Observable>; /** * @default 15 */ pageSize?: number; } declare function snapshotResource(opts: RxResourceOptions & { defaultValue: NoInfer; }): ResourceRef & { snapshotValue: Signal; }; declare function snapshotResource(opts: RxResourceOptions): ResourceRef & { snapshotValue: Signal; }; export { CnumberPipe, FindByIdPipe, SOLAR_CONFIG, attachLoading, pageResource, provideSolar, snapshotResource }; export type { PageResourceOptions, SolarConfig };