diff --git a/src/core.ts b/src/core.ts index c646d68..0bdaf16 100644 --- a/src/core.ts +++ b/src/core.ts @@ -786,7 +786,10 @@ export interface InstantiatedPendingRequestProps { /** The following IPendingEvent APIs are only available to overrides: */ - /** All associated resolved request URLs. null = invalid URL */ + /** + * All associated resolved request URLs. null = invalid URL or data: URL (parsing + * skipped to optimize performance) + */ URLs: (URL | null)[]; /** Prevent credentials from being included in request */ omitCredentials(): boolean; @@ -978,4 +981,24 @@ export interface IPendingCookieMutation toJSON(): PendingCookieMutationJSON; } +/** Interface for dynamic node references */ +export interface IDynamicNodeReference { + /** + * Current node getter. This should always be used in `handleLiveMutation()`. + * @returns current node + */ + getNode(): Element; + /** + * Live node getter. Use this to apply mutations in `quarantine()` + * and `quarantineMutation()` handlers. + * + * `release()` must always be called after completing + * mutations using `getLiveNode()`. + * @returns live node + */ + getLiveNode(): Element; + /** Release & garbage-collect internal node reference */ + release(): void; +} + /* eslint-enable max-lines */