ng-circle-countdown
Version:
[](https://travis-ci.org/jlevot/ng-circle-countdown) [](https://badge.fury.io/js/ng-circle-countdown) [![npm
67 lines (59 loc) • 2.62 kB
TypeScript
import * as i0 from '@angular/core';
import { OutputEmitterRef, TemplateRef, InputSignal, Signal } from '@angular/core';
interface CountDown {
isActive: boolean;
isCompleted: boolean;
speed: number;
remainingTime: number;
}
declare class CountdownService {
private counter;
private isActive;
private interval;
constructor();
start: () => void;
stop: () => void;
setRemainingTime: (remainingTime: number) => void;
resetCounter: (remainingTime: number) => void;
getCounter: () => i0.Signal<CountDown>;
private tick;
static ɵfac: i0.ɵɵFactoryDeclaration<CountdownService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<CountdownService>;
}
declare class PathOptions {
path: string;
length: number;
constructor(path?: string, length?: number);
}
interface CountDownData {
currentColor: string;
offset: number;
}
type RotationType = 'clockwise' | 'counterclockwise';
declare class CircleCountdownComponent {
readonly countdownCompleted: OutputEmitterRef<void>;
counterTemplate: TemplateRef<any> | null;
duration: InputSignal<number>;
color: InputSignal<string>;
colors: InputSignal<string[]>;
colorsTime: InputSignal<number[]>;
strokeWidth: InputSignal<number>;
size: InputSignal<number>;
rotation: InputSignal<RotationType>;
protected countdownService: CountdownService;
pathOptions: Signal<PathOptions>;
countDown: Signal<CountDown>;
countDownData: Signal<CountDownData>;
isCompleted: Signal<boolean>;
constructor();
start(): void;
pause(): void;
reload(): void;
private getCountDownData;
private getStrokeColor;
static ɵfac: i0.ɵɵFactoryDeclaration<CircleCountdownComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<CircleCountdownComponent, "ng-circle-countdown", never, { "duration": { "alias": "duration"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "colors": { "alias": "colors"; "required": false; "isSignal": true; }; "colorsTime": { "alias": "colorsTime"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "rotation": { "alias": "rotation"; "required": false; "isSignal": true; }; }, { "countdownCompleted": "countdownCompleted"; }, ["counterTemplate"], never, true, never>;
}
export { CircleCountdownComponent, CountdownService };
export type { CountDown, RotationType };
//# sourceMappingURL=index.d.ts.map