/** * Copyright (c) 2025 Ofri Peretz * Licensed under the MIT License. Use of this source code is governed by the * MIT license that can be found in the LICENSE file. */ /** * ESLint Rule: prefer-native-crypto * Suggests using native crypto over third-party libraries * CWE-1104: Use of Unmaintained Third Party Components * * Native crypto is maintained by Node.js/browser vendors and is always up-to-date */ import type { TSESLint } from '@interlace/eslint-devkit'; type MessageIds = 'preferNative' | 'useNodeCrypto' | 'useWebCrypto'; export interface Options { /** Severity level. Default: 'warn' */ severity?: 'error' | 'warn'; } type RuleOptions = [Options?]; export declare const preferNativeCrypto: TSESLint.RuleModule & { name: string; }; export type { Options as PreferNativeCryptoOptions };