Highly possible that it won't do what it intended to do. See: https://github.com/whatwg/webidl/issues/1243, https://github.com/w3c/mediasession/pull/343 Using `FrozenArray<dictionary>` would: 1. Convert each dictionary to JS object 2. Make an array with them and freeze the array 3. Now the attribute returns cached array with JS objects which is not frozen