"use strict" ;

/**
 * The {@link graphics.Direction} enumeration defines most common relative directions : <code>horizontal</code>, <code>vertical</code>, <code>both</code>, <code>left</code>, <code>right</code>, <code>forward</code>, <code>backward</code>, <code>none</code>, <code>up</code>, and <code>down</code>.
 * @summary The {@link graphics.Direction} enumeration defines most common relative directions.
 * @name Direction
 * @namespace graphics.Direction
 * @memberof graphics
 */
const Direction = Object.defineProperties( {} ,
{
    /**
     * Specifies the "backward" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default backward
     */
    BACKWARD : { enumerable : true , value : 'backward' } ,

    /**
     * Specifies the "both" value to represent both horizontal and vertical scrolling.
     * @memberof graphics.Direction
     * @type {string}
     * @default both
     */
    BOTH : { enumerable : true , value : 'both' } ,

    /**
     * Specifies the "down" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default down
     */
    DOWN : { enumerable : true , value : 'down' } ,

    /**
     * Specifies the "forward" value to change the direction or scrolling of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default forward
     */
    FORWARD : { enumerable : true , value : 'forward' } ,

    /**
      * Specifies the "horizontal" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default horizontal
      */
    HORIZONTAL : { enumerable : true , value : 'horizontal' } ,

    /**
     * Specifies the "left" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default left
     */
    LEFT : { enumerable : true , value : 'left' } ,

    /**
     * Specifies the "none" value to represent no scrolling or an object without direction.
     * @memberof graphics.Direction
     * @type {string}
     * @default none
     */
    NONE : { enumerable : true , value : 'none' } ,

    /**
     * Specifies the "right" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default right
     */
    RIGHT : { enumerable : true , value : 'right' } ,

    /**
     * Specifies the "up" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default up
     */
    UP : { enumerable : true , value : 'up' } ,

    /**
     * Specifies the "vertical" value to change the orientation of a Display or a component.
     * @memberof graphics.Direction
     * @type {string}
     * @default vertical
     */
    VERTICAL : { enumerable : true , value : 'vertical' }
}) ;

export default Direction ;
