/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ import { NgZone, OnDestroy, InjectionToken } from '@angular/core'; /** * @docs-private */ import * as ɵngcc0 from '@angular/core'; export declare class _Schedule { tasks: (() => unknown)[]; endTasks: (() => unknown)[]; } /** Injection token used to provide a coalesced style scheduler. */ export declare const _COALESCED_STYLE_SCHEDULER: InjectionToken<_CoalescedStyleScheduler>; /** * Allows grouping up CSSDom mutations after the current execution context. * This can significantly improve performance when separate consecutive functions are * reading from the CSSDom and then mutating it. * * @docs-private */ export declare class _CoalescedStyleScheduler implements OnDestroy { private readonly _ngZone; private _currentSchedule; private readonly _destroyed; constructor(_ngZone: NgZone); /** * Schedules the specified task to run at the end of the current VM turn. */ schedule(task: () => unknown): void; /** * Schedules the specified task to run after other scheduled tasks at the end of the current * VM turn. */ scheduleEnd(task: () => unknown): void; /** Prevent any further tasks from running. */ ngOnDestroy(): void; private _createScheduleIfNeeded; private _getScheduleObservable; static ɵfac: ɵngcc0.ɵɵFactoryDef<_CoalescedStyleScheduler, never>; static ɵprov: ɵngcc0.ɵɵInjectableDef<_CoalescedStyleScheduler>; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29hbGVzY2VkLXN0eWxlLXNjaGVkdWxlci5kLnRzIiwic291cmNlcyI6WyJjb2FsZXNjZWQtc3R5bGUtc2NoZWR1bGVyLmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCB7IE5nWm9uZSwgT25EZXN0cm95LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLyoqXG4gKiBAZG9jcy1wcml2YXRlXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIF9TY2hlZHVsZSB7XG4gICAgdGFza3M6ICgoKSA9PiB1bmtub3duKVtdO1xuICAgIGVuZFRhc2tzOiAoKCkgPT4gdW5rbm93bilbXTtcbn1cbi8qKiBJbmplY3Rpb24gdG9rZW4gdXNlZCB0byBwcm92aWRlIGEgY29hbGVzY2VkIHN0eWxlIHNjaGVkdWxlci4gKi9cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IF9DT0FMRVNDRURfU1RZTEVfU0NIRURVTEVSOiBJbmplY3Rpb25Ub2tlbjxfQ29hbGVzY2VkU3R5bGVTY2hlZHVsZXI+O1xuLyoqXG4gKiBBbGxvd3MgZ3JvdXBpbmcgdXAgQ1NTRG9tIG11dGF0aW9ucyBhZnRlciB0aGUgY3VycmVudCBleGVjdXRpb24gY29udGV4dC5cbiAqIFRoaXMgY2FuIHNpZ25pZmljYW50bHkgaW1wcm92ZSBwZXJmb3JtYW5jZSB3aGVuIHNlcGFyYXRlIGNvbnNlY3V0aXZlIGZ1bmN0aW9ucyBhcmVcbiAqIHJlYWRpbmcgZnJvbSB0aGUgQ1NTRG9tIGFuZCB0aGVuIG11dGF0aW5nIGl0LlxuICpcbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuZXhwb3J0IGRlY2xhcmUgY2xhc3MgX0NvYWxlc2NlZFN0eWxlU2NoZWR1bGVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU7XG4gICAgcHJpdmF0ZSBfY3VycmVudFNjaGVkdWxlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3llZDtcbiAgICBjb25zdHJ1Y3Rvcihfbmdab25lOiBOZ1pvbmUpO1xuICAgIC8qKlxuICAgICAqIFNjaGVkdWxlcyB0aGUgc3BlY2lmaWVkIHRhc2sgdG8gcnVuIGF0IHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgVk0gdHVybi5cbiAgICAgKi9cbiAgICBzY2hlZHVsZSh0YXNrOiAoKSA9PiB1bmtub3duKTogdm9pZDtcbiAgICAvKipcbiAgICAgKiBTY2hlZHVsZXMgdGhlIHNwZWNpZmllZCB0YXNrIHRvIHJ1biBhZnRlciBvdGhlciBzY2hlZHVsZWQgdGFza3MgYXQgdGhlIGVuZCBvZiB0aGUgY3VycmVudFxuICAgICAqIFZNIHR1cm4uXG4gICAgICovXG4gICAgc2NoZWR1bGVFbmQodGFzazogKCkgPT4gdW5rbm93bik6IHZvaWQ7XG4gICAgLyoqIFByZXZlbnQgYW55IGZ1cnRoZXIgdGFza3MgZnJvbSBydW5uaW5nLiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQ7XG4gICAgcHJpdmF0ZSBfY3JlYXRlU2NoZWR1bGVJZk5lZWRlZDtcbiAgICBwcml2YXRlIF9nZXRTY2hlZHVsZU9ic2VydmFibGU7XG59XG4iXX0=