AbstractReplacer.ts 801 B

1234567891011121314151617181920212223242526272829
  1. import { injectable, inject } from 'inversify';
  2. import { ServiceIdentifiers } from '../../../container/ServiceIdentifiers';
  3. import { IOptions } from '../../../interfaces/options/IOptions';
  4. import { IObfuscationReplacer } from '../../../interfaces/node-transformers/IObfuscationReplacer';
  5. @injectable()
  6. export abstract class AbstractReplacer implements IObfuscationReplacer {
  7. /**
  8. * @type {IOptions}
  9. */
  10. protected readonly options: IOptions;
  11. /**
  12. * @param options
  13. */
  14. constructor (
  15. @inject(ServiceIdentifiers.IOptions) options: IOptions
  16. ) {
  17. this.options = options;
  18. }
  19. /**
  20. * @param nodeValue
  21. * @param nodeIdentifier
  22. * @returns {string}
  23. */
  24. public abstract replace (nodeValue: any, nodeIdentifier?: number): string;
  25. }