/* * Copyright (c) 2017-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. */ package com.facebook.litho.animation; /** * A property on a mount item (View or Drawable), e.g. x, y, scale, text color, etc. */ public interface AnimatedProperty { /** * @return the name of this property. It should be unique across properties that a mount item can * have. It's used for identification purposes only. E.g., "x", "y", etc. */ String getName(); /** * @return the current value of this property on the given mount item (View or Drawable). */ float get(Object mountItem); /** * Updates the value of this property on the given mount item to the given value. */ void set(Object mountItem, float value); /** * Resets this property to its default value on this mount item. */ void reset(Object mountItem); }