IOptions.ts 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import { TypeFromEnum } from '@gradecam/tsenum';
  2. import { TOptionsPreset } from '../../types/options/TOptionsPreset';
  3. import { TStringArrayEncoding } from '../../types/options/TStringArrayEncoding';
  4. import { IdentifierNamesGenerator } from '../../enums/generators/identifier-names-generators/IdentifierNamesGenerator';
  5. import { ObfuscationTarget } from '../../enums/ObfuscationTarget';
  6. import { SourceMapMode } from '../../enums/source-map/SourceMapMode';
  7. export interface IOptions {
  8. readonly compact: boolean;
  9. readonly controlFlowFlattening: boolean;
  10. readonly controlFlowFlatteningThreshold: number;
  11. readonly deadCodeInjection: boolean;
  12. readonly deadCodeInjectionThreshold: number;
  13. readonly debugProtection: boolean;
  14. readonly debugProtectionInterval: boolean;
  15. readonly disableConsoleOutput: boolean;
  16. readonly domainLock: string[];
  17. readonly identifierNamesGenerator: TypeFromEnum<typeof IdentifierNamesGenerator>;
  18. readonly identifiersDictionary: string[];
  19. readonly identifiersPrefix: string;
  20. readonly inputFileName: string;
  21. readonly log: boolean;
  22. readonly numbersToExpressions: boolean;
  23. readonly optionsPreset: TOptionsPreset;
  24. readonly renameGlobals: boolean;
  25. readonly renameProperties: boolean;
  26. readonly reservedNames: string[];
  27. readonly reservedStrings: string[];
  28. readonly rotateStringArray: boolean;
  29. readonly seed: string | number;
  30. readonly selfDefending: boolean;
  31. readonly shuffleStringArray: boolean;
  32. readonly simplify: boolean;
  33. readonly sourceMap: boolean;
  34. readonly sourceMapBaseUrl: string;
  35. readonly sourceMapFileName: string;
  36. readonly sourceMapMode: TypeFromEnum<typeof SourceMapMode>;
  37. readonly splitStrings: boolean;
  38. readonly splitStringsChunkLength: number;
  39. readonly stringArray: boolean;
  40. readonly stringArrayEncoding: TStringArrayEncoding[];
  41. readonly stringArrayWrappersChainedCalls: boolean;
  42. readonly stringArrayWrappersCount: number;
  43. readonly stringArrayThreshold: number;
  44. readonly target: TypeFromEnum<typeof ObfuscationTarget>;
  45. readonly transformObjectKeys: boolean;
  46. readonly unicodeEscapeSequence: boolean;
  47. }