| 'use strict'; | 
| var globalThis = require('../internals/global-this'); | 
| var fails = require('../internals/fails'); | 
| var V8 = require('../internals/environment-v8-version'); | 
| var ENVIRONMENT = require('../internals/environment'); | 
|   | 
| var structuredClone = globalThis.structuredClone; | 
|   | 
| module.exports = !!structuredClone && !fails(function () { | 
|   // prevent V8 ArrayBufferDetaching protector cell invalidation and performance degradation | 
|   // https://github.com/zloirock/core-js/issues/679 | 
|   if ((ENVIRONMENT === 'DENO' && V8 > 92) || (ENVIRONMENT === 'NODE' && V8 > 94) || (ENVIRONMENT === 'BROWSER' && V8 > 97)) return false; | 
|   var buffer = new ArrayBuffer(8); | 
|   var clone = structuredClone(buffer, { transfer: [buffer] }); | 
|   return buffer.byteLength !== 0 || clone.byteLength !== 8; | 
| }); |