UNPKG

@versatiledatakit/shared

Version:

Versatile Data Kit Shared library enables reusability of shared features like: NgRx Redux, Error Handlers, Utils, Generic Components, etc.

68 lines (67 loc) 1.89 kB
import { OnDestroy } from '@angular/core'; import { Subscription } from 'rxjs'; import * as i0 from "@angular/core"; /** * ** Base Class for all Angular related Objects. * * - Cleans all rxjs subscriptions on object destroy. */ export declare class TaurusObject implements OnDestroy { /** * ** Class name, identifier for Object class. * * - Format should be PascalCase. */ static readonly CLASS_NAME: string; /** * ** Class PUBLIC_NAME, human-readable. * * - Format should be Kebab-Case. */ static readonly PUBLIC_NAME: string; /** * ** Object UUID that meats RFC4122 compliance and also has Class name identifier inside. * * <br/> * <i>pattern</i>: * <p> * <Class Name><strong>_</strong><UUID RFC4122> * </p> */ readonly objectUUID: string; /** * ** Store for Subscriptions references. */ protected subscriptions: Subscription[]; /** * ** Constructor. */ constructor(className?: string); /** * ** Methods that will dispose Object. * - Clean all Subscriptions. */ dispose(): void; /** * @inheritDoc */ ngOnDestroy(): void; /** * ** Clean all Subscriptions. */ protected cleanSubscriptions(): void; /** * ** Remove subscription reference from subscriptions queue providing reference itself. * * - Before remove it would be auto-unsubscribed from stream. * @protected */ protected removeSubscriptionRef(subscriptionRef: Subscription): boolean; /** * ** Unsubscribe subscription from stream. * @private */ private static _unsubscribeFromStream; static ɵfac: i0.ɵɵFactoryDeclaration<TaurusObject, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<TaurusObject, never, never, {}, {}, never>; }