import { Observable } from 'rxjs';
export type ResourceStatus = 'idle' | 'loading' | 'success' | 'error';
interface ResourceOptions<TReq, TRes> {
    request: () => TReq;
    loader: (args: {
        request: TReq;
    }) => Promise<TRes>;
}
/**
 * @deprecated Will be replaced by the official `Resource` after upgrading to Angular 19
 */
export declare function myResource<TReq, TRes>(options: ResourceOptions<TReq, TRes>): {
    value: import("@angular/core").Signal<TRes>;
    error: import("@angular/core").Signal<unknown>;
    status: import("@angular/core").Signal<ResourceStatus>;
    reload: () => void;
};
interface RxResourceOptions<TReq, TRes> {
    request: () => TReq;
    loader: (args: {
        request: TReq;
    }) => Observable<TRes>;
}
/**
 *
 * @deprecated Will be replaced by the official `Resource` after upgrading to Angular 19
 */
export declare function myRxResource<TReq, TRes>(options: RxResourceOptions<TReq, TRes>): {
    value: import("@angular/core").Signal<TRes>;
    error: import("@angular/core").Signal<unknown>;
    status: import("@angular/core").Signal<ResourceStatus>;
    reload: () => void;
};
export {};
