@protocol GGLLayerDelegate, CAMetalDrawable; @interface MetalLayer : CAMetalLayer { struct shared_ptr { struct MetalDevice *__ptr_; struct __shared_weak_count *__cntrl_; } _device; struct shared_ptr { struct Texture2D *__ptr_; struct __shared_weak_count *__cntrl_; } _texture; struct shared_ptr { struct SamplerState *__ptr_; struct __shared_weak_count *__cntrl_; } _samplerState; id _prevDrawable; } @property (readonly, nonatomic) struct CGSize { double width; double height; } backingSize; @property (readonly, nonatomic) BOOL sRGB; @property (weak) id renderDelegate; @property (readonly) int backingFormat; - (void)onTimerFired:(double)a0 presentAtTime:(double)a1; - (void)_onTimerFired:(double)a0 withPresent:(id /* block */)a1; - (void)didEnterBackground; - (void)_createTexture; - (void)onTimerFired:(double)a0; - (id)initWithDevice:(struct shared_ptr { struct MetalDevice *x0; struct __shared_weak_count *x1; })a0 sRGB:(BOOL)a1; - (id).cxx_construct; - (void)layoutSublayers; - (void)onTimerFired:(double)a0 presentAfterMinimumDuration:(double)a1; - (id)_updateDrawable; - (void).cxx_destruct; - (void)display; @end