// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

[
  Constructor(),
] interface DrawLooperLayerInfo {
  // Specifies which aspects of the layer's paint should replace the
  // corresponding aspects on the draw's paint. Use PaintBits, defined in
  // DrawLooperLayerInfo.dart.
  void setPaintBits(unsigned long bits);
  void setColorMode(TransferMode mode);
  void setOffset(Offset offset);
  void setPostTranslate(boolean postTranslate);
};
