SheetXL - v0.3.20
    Preparing search index...

    Interface IProtection<T, P, J>

    Interface representing the base protection functionality for both workbook and sheet protection. This interface provides methods for locking, unlocking, and managing the protection state.

    interface IProtection<
        T,
        P extends IProtection.Properties,
        J extends IProtection.JSON,
    > {
        addListeners(listeners: IListeners, options?: IListener.Options): Remove;
        checkPassword(password?: string): Promise<boolean>;
        hasPassword(): boolean;
        isLocked(): boolean;
        isPaused(): boolean;
        lock(
            properties?: Partial<P>,
            password?: string,
            algorithm?: string,
            spinCount?: number,
        ): Promise<IProtection<T, P, J>>;
        pause(password?: string): Promise<IProtection<T, P, J>>;
        resume(): IProtection<T, P, J>;
        toJSON(): JSON;
        unlock(password?: string): Promise<IProtection<T, P, J>>;
    }

    Type Parameters

    • T
    • P extends IProtection.Properties
    • J extends IProtection.JSON

    Hierarchy (View Summary)

    Index

    Methods

    • Add Listeners.

      Parameters

      Returns Remove

      IListener.ISource.addListeners

    • Verifies if the provided password matches the current protection password.

      Parameters

      • Optionalpassword: string

        The password to check against the current protection.

      Returns Promise<boolean>

      true if the password is correct, false otherwise.

      Use this method to validate the password before unlocking or modifying the protection settings.

    • Returns true if the protection has a password.

      Returns boolean

    • Checks if the object is currently locked.

      Returns boolean

      true if the object is locked, false otherwise.

      This method returns true If the lock is active.

    • Checks if the object has a locked but is paused.

      Returns boolean

      true if the object is locked but paused, false otherwise.

    • Locks the object (workbook or sheet or range) with the specified options and password.

      Parameters

      • Optionalproperties: Partial<P>

        The properties to allow to remain unlocked.

      • Optionalpassword: string

        The password required to unlock the object.

      • Optionalalgorithm: string

        The algorithm for encrypting the password.

      • OptionalspinCount: number

        The spin count for encrypting the password.

      Returns Promise<IProtection<T, P, J>>

      The IProtection instance for method chaining.

      By default all properties are locked but you can specify which properties to remain unlocked.

    • Temporarily disables protection with the provided password.

      Parameters

      • Optionalpassword: string

        The password required to pause protection.

      Returns Promise<IProtection<T, P, J>>

      The IProtection instance for method chaining.

      This method allows temporarily pausing protection without permanently unlocking the object. Use resume to restore protection.

    • Resumes protection that was previously paused.

      Returns IProtection<T, P, J>

      The IProtection instance for method chaining.

      This method restores protection after it was paused using the pause method.

    • Returns JSON

    • Unlocks the object (workbook or sheet) using the provided password.

      Parameters

      • Optionalpassword: string

        The password required to unlock the object.

      Returns Promise<IProtection<T, P, J>>

      The IProtection instance for method chaining.

      If the correct password is provided, protection is removed from the object.