import '../../globals.js';
import axon from './axon.js';
/**
 * @typedef {Array} ObservableArrayDef
 * @property {Emitter} elementAddedEmitter
 * @property {Emitter} elementRemovedEmitter
 * @property {Property.<Number>} lengthProperty
 * See createObservableArray for details
 */
const ObservableArrayDef = {
    /**
     * Returns true if the argument has the properties that an ObservableArrayDef should have.
     */
    isObservableArray(observableArray) {
        return !!(Array.isArray(observableArray) && observableArray.elementAddedEmitter && observableArray.elementRemovedEmitter && observableArray.lengthProperty);
    }
};
axon.register('ObservableArrayDef', ObservableArrayDef);
export default ObservableArrayDef;
//# sourceMappingURL=ObservableArrayDef.js.map