eslint-plugin-sonarjs
Version:
33 lines (32 loc) • 1.1 kB
TypeScript
import type { Node } from 'estree';
import type { Rule } from 'eslint';
import { type Result } from '../result.js';
import { type StringLiteral } from '../ast.js';
import type { RulesMeta } from '@eslint/core';
export interface PolicyCheckerOptions {
effect: {
property: string;
type: 'FullyQualifiedName' | 'string';
allowValue: string;
};
actions: {
property: string;
anyValues?: string[];
};
resources: {
property: string;
};
conditions: {
property: string;
};
principals: {
property: string;
type: 'FullyQualifiedName' | 'json';
anyValues?: string[];
};
}
type StatementChecker = (expr: Node, ctx: Rule.RuleContext, options: PolicyCheckerOptions) => void;
export declare function AwsIamPolicyTemplate(statementChecker: StatementChecker, meta: RulesMeta): Rule.RuleModule;
export declare function getSensitiveEffect(properties: Result, ctx: Rule.RuleContext, options: PolicyCheckerOptions): Result;
export declare function isAnyLiteral(literal: StringLiteral): boolean;
export {};