function flattenObject( obj ) {
		if ( !isObjectLike( obj ) ) {
			throw new TypeError( format( 'invalid argument. Must provide an object (except null). Value: `%s`.', obj ) );
		}
		return flatten( obj, opts );
	}
Flattens an object.

@private
@param {ObjectLike} obj - object to flatten
@throws {TypeError} first argument must be object-like
@returns {Object} flattened object