zoneless-utils
Version:
Zoneless Utility Toolkit for Angular using Signals
40 lines (29 loc) • 1.68 kB
TypeScript
import * as i0 from '@angular/core';
import { PipeTransform, Signal, ChangeDetectorRef, TemplateRef, ViewContainerRef } from '@angular/core';
declare class ZonelessAsyncPipe<T> implements PipeTransform {
transform(signal: Signal<T>): T;
static ɵfac: i0.ɵɵFactoryDeclaration<ZonelessAsyncPipe<any>, never>;
static ɵpipe: i0.ɵɵPipeDeclaration<ZonelessAsyncPipe<any>, "zonelessAsync", true>;
}
declare function runWithChangeDetection(cdr: ChangeDetectorRef, callback: () => void): void;
declare function markForCheck(cdr: ChangeDetectorRef): void;
declare function useIntervalSignal(ms: number): i0.WritableSignal<number>;
declare function useTimeoutSignal(ms: number): i0.WritableSignal<boolean>;
declare function useAnimationFrameSignal(): () => number;
declare function useIdleSignal(timeoutMs?: number): () => boolean;
interface WindowSize {
width: number;
height: number;
}
declare function useResizeSignal(): () => WindowSize;
declare class ZonelessIfDirective {
private templateRef;
private viewContainer;
private hasView;
constructor(templateRef: TemplateRef<any>, viewContainer: ViewContainerRef);
set zonelessIf(condition: boolean | Signal<boolean>);
private updateView;
static ɵfac: i0.ɵɵFactoryDeclaration<ZonelessIfDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<ZonelessIfDirective, "[zonelessIf]", never, { "zonelessIf": { "alias": "zonelessIf"; "required": false; }; }, {}, never, never, true, never>;
}
export { ZonelessAsyncPipe, ZonelessIfDirective, markForCheck, runWithChangeDetection, useAnimationFrameSignal, useIdleSignal, useIntervalSignal, useResizeSignal, useTimeoutSignal };