@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
TypeScript
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>;
}