1/* 2 * Copyright (c) 2023-2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import type * as ts from 'typescript'; 17import type { CommandLineOptions } from './CommandLineOptions'; 18import type { IncrementalLintInfo } from './IncrementalLintInfo'; 19import type { ReportAutofixCallback } from './autofixes/ReportAutofixCallback'; 20import type { IsFileFromModuleCallback } from './IsFileFromModuleCallback'; 21import type { IsEtsFileCallback } from './IsEtsFileCallback'; 22import type { TSCCompiledProgram } from './ts-diagnostics/TSCCompiledProgram'; 23 24// common options interface, additional fields may be used by plugins 25export interface LintOptions { 26 cmdOptions: CommandLineOptions; 27 tscCompiledProgram: TSCCompiledProgram; 28 cancellationToken?: ts.CancellationToken; 29 incrementalLintInfo?: IncrementalLintInfo; 30 reportAutofixCb?: ReportAutofixCallback; 31 isFileFromModuleCb?: IsFileFromModuleCallback; 32 isEtsFileCb?: IsEtsFileCallback; 33 isEtsFile?: boolean; 34 compatibleSdkVersion?: string; 35 compatibleSdkVersionStage?: string; 36} 37