export interface SheetProtection { /** Master toggle — when true the sheet is protected. */ sheet?: boolean; /** Allow operations on drawing objects when sheet is protected. */ objects?: boolean; /** Allow operations on scenarios when sheet is protected. */ scenarios?: boolean; formatCells?: boolean; formatColumns?: boolean; formatRows?: boolean; insertColumns?: boolean; insertRows?: boolean; insertHyperlinks?: boolean; deleteColumns?: boolean; deleteRows?: boolean; selectLockedCells?: boolean; selectUnlockedCells?: boolean; sort?: boolean; autoFilter?: boolean; pivotTables?: boolean; /** Base-64 salt for the password hash. */ saltValue?: string; /** Number of hash iterations. */ spinCount?: number; /** Hash algorithm name, e.g. "SHA-512". */ algorithmName?: string; /** Base-64 hashed password. */ hashValue?: string; } export declare const makeSheetProtection: (opts?: SheetProtection) => SheetProtection; import type { Worksheet } from './worksheet'; /** * Lock a worksheet with Excel's "Protect Sheet" defaults. Pass `overrides` to * allow specific actions while otherwise locked (e.g. `{ sort: true, * autoFilter: true }` for "allow sort + filter on locked sheet"). Password-hash * fields can be supplied as a quad (algorithmName / hashValue / saltValue / * spinCount); plaintext passwords are out of scope until the D-tier hashing * helper lands. */ export declare const protectSheet: (ws: Worksheet, overrides?: Partial) => SheetProtection; /** Drop the typed sheet-protection record. */ export declare const unprotectSheet: (ws: Worksheet) => void; /** Quick-lock helper that mirrors Excel's "Allow users to edit ranges → Protect Sheet" defaults. */ export declare const isSheetProtected: (ws: Worksheet) => boolean;