first commit

This commit is contained in:
2026-06-02 20:24:26 -03:00
commit 7b8a8d722d
3354 changed files with 627959 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
import { ContextConfig } from './ContextConfig.js';
/**
* Manages context-specific configurations. This class allows setting
* configurations at three levels: global, user context, and browsing context.
*
* When `getActiveConfig` is called, it merges the configurations in a specific
* order of precedence: `global -> user context -> browsing context`. For each
* configuration property, the value from the highest-precedence level that has a
* non-`undefined` value is used.
*
* The `update` methods (`updateGlobalConfig`, `updateUserContextConfig`,
* `updateBrowsingContextConfig`) merge the provided configuration with the
* existing one at the corresponding level. Properties with `undefined` values in
* the provided configuration are ignored, preserving the existing value.
*/
export declare class ContextConfigStorage {
#private;
/**
* Updates the global configuration. Properties with `undefined` values in the
* provided `config` are ignored.
*/
updateGlobalConfig(config: ContextConfig): void;
/**
* Updates the configuration for a specific browsing context. Properties with
* `undefined` values in the provided `config` are ignored.
*/
updateBrowsingContextConfig(browsingContextId: string, config: ContextConfig): void;
/**
* Updates the configuration for a specific user context. Properties with
* `undefined` values in the provided `config` are ignored.
*/
updateUserContextConfig(userContext: string, config: ContextConfig): void;
/**
* Returns the current global configuration.
*/
getGlobalConfig(): ContextConfig;
/**
* Calculates the active configuration by merging global, user context, and
* browsing context settings.
*/
getActiveConfig(topLevelBrowsingContextId: string | undefined, userContext: string): ContextConfig;
}