import type { AppFinding } from './types.js'; /** * Turns an app name into a valid metadata API name stem: starts with a letter, only alphanumerics and * single underscores, no leading or trailing underscore. Length is capped by the caller. */ export declare function sanitizePermissionSetName(name: string): string; /** * One API name per finding, unique case-insensitively (Salesforce API names and macOS/Windows file * names both ignore case), each at most 80 characters. */ export declare function permissionSetNames(findings: AppFinding[]): string[]; export declare function generatePermissionSetXml(finding: AppFinding): string; /** * Writes one .permissionset-meta.xml per finding whose recommendation is asserted. Findings held back * (soak window, many interactive users, incomplete logs) are skipped: their observed usage is too thin * to be a least-privilege grant. Local files only; nothing is deployed. */ export declare function emitPermissionSets(findings: AppFinding[], targetDir: string): { written: string[]; skipped: string[]; }; //# sourceMappingURL=permissionSetGenerator.d.ts.map