* Copyright (c) 2025 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type {
IFileNameObfuscationOption,
IPrinterOption,
INameObfuscationOption,
IKeepSourcePathsAndDependency,
IDeclarationCommentOption,
ICallNameOption,
IUnobfuscationOption
} from './INameObfuscationOption';
export interface IOptions {
readonly mCompact?: boolean;
readonly mRemoveComments?: boolean;
readonly mRemoveDeclarationComments?: IDeclarationCommentOption;
readonly mRemoveNoSideEffectsCalls?: ICallNameOption;
readonly mDisableConsole?: boolean;
readonly mSimplify?: boolean;
readonly mNameObfuscation?: INameObfuscationOption;
mOutputDir?: string;
readonly mOhSdkPath?: string;
readonly mEnableSourceMap?: boolean;
readonly mEnableNameCache?: boolean;
readonly apiSavedDir?: string;
readonly applyReservedNamePath?: string;
readonly mRenameFileName?: IFileNameObfuscationOption;
readonly mExportObfuscation?: boolean;
readonly mPerformancePrinter?: IPrinterOption;
mKeepFileSourceCode?: IKeepSourcePathsAndDependency
readonly mUnobfuscationOption?: IUnobfuscationOption;
readonly mStripLanguageDefaultWhitelist?: boolean;
readonly mAllowEtsAnnotations?: boolean;
}