# API *NOTES* * These API docs are still being written. However, we have attempted to stick to the Lodash signature as much as possible. So, in most cases, the [lodash documentation](https://lodash.com/docs) is a good point of reference. * All mudash methods are immutable. The [signatures of a few methods](./FAQ.md#what-functions-are-different-from-lodash) are different from Lodash. * mudash uses data type hinting to determine return type. In most cases if a method receives an Immutable data type it will return the result in an Immutable form and equivalent for mutable data. * A few additional methods exist beyond what is provided by Lodash. These have been documented here. *Legend* * **TODO* - Immutable.JS support still needs to be implemented * **Lo* - No changes from Lodash method required (passthrough to Lodash) ## TOC * [Array and Immutable.List](#array-and-immutablelist) + [`butLast()`](#butlast) + [`chunk()`](#chunk) + [`circularShift()`](#circularshift) + [`compact()`](#compact) + [`concat()`](#concat) + [`difference()`](#difference) + [`differenceBy()`](#differenceby) + [`differenceWith()`](#differencewith) + [`drop()`](#drop) + [`dropRight()`](#dropright) + [`dropRightWhile()`](#droprightwhile) + [`dropWhile()`](#dropwhile) + [`fill()`](#fill) **TODO* + [`findIndex()`](#findindex) + [`findLastIndex()`](#findlastindex) + [`flatten()`](#flatten) + [`flattenDeep()`](#flattendeep) + [`flattenDepth()`](#flattendepth) + [`fromPairs()`](#frompairs) **TODO* + [`head()`](#head) + [`indexOf()`](#indexof) + [`initial()`](#initial) **TODO* + [`intersection()`](#intersection) **TODO* + [`intersectionBy()`](#intersectionby) **TODO* + [`intersectionWith()`](#intersectionwith) **TODO* + [`join()`](#join) + [`last()`](#last) + [`lastIndexOf()`](#lastindexof) + [`nth()`](#nth) **TODO* + [`pop()`](#pop) + [`pull()`](#pull) + [`pullAll()`](#pullall) + [`pullAllBy()`](#pullallby) + [`pullAllRight()`](#pullallright) + [`pullAllWith()`](#pullallwith) + [`pullAt()`](#pullat) + [`pullRight()`](#pullright) + [`push()`](#push) + [`pushAt()`](#pushat) + [`remove()`](#remove) **TODO* + [`reverse()`](#reverse) + [`shift()`](#shift) + [`slice()`](#slice) + [`sortedIndex()`](#sortedindex) **TODO* + [`sortedIndexBy()`](#sortedindexby) **TODO* + [`sortedIndexOf()`](#sortedindexof) **TODO* + [`sortedLastIndex()`](#sortedlastindex) **TODO* + [`sortedLastIndexBy()`](#sortedlastindexby) **TODO* + [`sortedLastIndexOf()`](#sortedlastindexof) **TODO* + [`sortedUniq()`](#sorteduniq) **TODO* + [`sortedUniqueBy()`](#sorteduniqueby) **TODO* + [`tail()`](#tail) + [`take()`](#take) + [`takeRight()`](#takeright) + [`takeRightWhile()`](#takerightwhile) + [`takeWhile()`](#takewhile) + [`union()`](#union) **TODO* + [`unionBy()`](#unionby) **TODO* + [`unionWith()`](#unionwith) **TODO* + [`uniq()`](#uniq) + [`uniqBy()`](#uniqby) + [`uniqWith()`](#uniqwith) + [`unzip()`](#unzip) **TODO* + [`unzipWith()`](#unzipwith) **TODO* + [`without()`](#without) **TODO* + [`xor()`](#xor) **TODO* + [`xorBy()`](#xorby) **TODO* + [`xorPartition()`](#xorpartition) **TODO* + [`xorWith()`](#xorwith) **TODO* + [`zip()`](#zip) **TODO* + [`zipObject()`](#zipobject) **TODO* + [`zipObjectDeep()`](#zipobjectdeep) **TODO* + [`zipWith()`](#zipwith) **TODO* * [Collection and Immutable.Iterable](#collection-and-immutableiterable) + [`contains()`](#contains) + [`count()`](#count) + [`countBy()`](#countby) **TODO* + [`each()`](#each) + [`every()`](#every) + [`filter()`](#filter) + [`filterNot()`](#filternot) + [`find()`](#find) + [`findLast()`](#findlast) **TODO* + [`first()`](#first) + [`flatMap()`](#flatmap) **TODO* + [`flatMapDeep()`](#flatmapdeep) **TODO* + [`flatMapDepth()`](#flatmapdepth) **TODO* + [`forEach()`](#foreach) + [`forEachRight()`](#foreachright) + [`groupBy()`](#groupBy) + [`includes()`](#includes) + [`includesWith()`](#includeswith) + [`invokeMap()`](#invokemap) **TODO* + [`keyBy()`](#keyby) **TODO* + [`map()`](#map) + [`orderBy()`](#orderby) **TODO* + [`partition()`](#partition) **TODO* + [`reduce()`](#reduce) + [`reduceReducers()`](#reducereducers) + [`reduceReducersRight()`](#reducereducersright) + [`reduceRight()`](#reduceright) + [`reject()`](#reject) + [`sample()`](#sample) **TODO* + [`sampleSize()`](#samplesize) **TODO* + [`shuffle()`](#shuffle) **TODO* + [`size()`](#size) + [`slice()`](#slice) + [`some()`](#some) + [`sortBy()`](#sortby) **TODO* + [`walk()`](#walk) * [Date](#date) + [`now()`](#now) **Lo* * [Function](#function) + [`after()`](#after) **Lo* + [`apply()`](#apply) + [`ary()`](#ary) **Lo* + [`before()`](#before) + [`bind()`](#bind) **Lo* + [`bindKey()`](#bindkey) **Lo* + [`call()`](#call) + [`circ()`](#circ) + [`compose()`](#compose) + [`curry()`](#curry) **Lo* + [`curryRight()`](#curryright) **Lo* + [`debounce()`](#debounce) **Lo* + [`defer()`](#defer) **Lo* + [`delay()`](#delay) **Lo* + [`flip()`](#flip) **Lo* + [`memoize()`](#memoize) + [`negate()`](#negate) **Lo* + [`once()`](#once) **Lo* + [`overArg()`](#overarg) + [`overArgs()`](#overargs) **Lo* + [`partial()`](#partial) **Lo* + [`partialRight()`](#partialright) **Lo* + [`rearg()`](#rearg) **Lo* + [`rest()`](#rest) **Lo* + [`select()`]('#select') + [`spread()`](#spread) **Lo* + [`throttle()`](#throttle) **Lo* + [`unary()`](#unary) **Lo* + [`wrap()`](#wrap) **Lo* * [Lang](#lang) + [`castArray()`](#castarray) **TODO* + [`clone()`](#clone) + [`cloneDeep()`](#clonedeep) + [`cloneDeepWith()`](#clonedeepwith) + [`cloneWith()`](#clonewith) + [`conformsTo()`](#conformsto) **TODO* + [`eq()`](#eq) + [`gt()`](#gt) **Lo* + [`gte()`](#gte) **Lo* + [`isArguments()`](#isarguments) **Lo* + [`isArray()`](#isarray) + [`isArrayBuffer()`](#isarraybuffer) **Lo* + [`isArrayLike()`](#isarraylike) + [`isArrayLikeObject()`](#isarraylikeobject) **Lo* + [`isAssociative()`](#isassociative) + [`isBatchable()`](#isbatchable) + [`isBoolean()`](#isboolean) + [`isBuffer()`](#isbuffer) **Lo* + [`isDate()`](#isdate) **Lo* + [`isElement()`](#iselement) **Lo* + [`isEmpty()`](#isempty) + [`isEqual()`](#isequal) + [`isEqualWith()`](#isequalwith) + [`isError()`](#iserror) **Lo* + [`isFinite()`](#isfinite) **Lo* + [`isFunction()`](#isfunction) + [`isGenerator()`](#isgenerator) + [`isGeneratorFunction()`](#isgeneratorfunction) + [`isIm()`](#isim) + [`isImIndexedSeq()`](#isimindexedseq) + [`isimiterable()`](#isimiterable) + [`isImKeyedSeq()`](#isimkeyedseq) + [`isImList()`](#isimlist) + [`isImMap()`](#isimmap) + [`isImmutable()`](#isimmutable) + [`isImmutableIndexedSeq()`](#isimmutableindexedseq) + [`isImmutableIterable()`](#isimmutableiterable) + [`isImmutableKeyedSeq()`](#isimmutablekeyedseq) + [`isImmutableList()`](#isimmutablelist) + [`isImmutableMap()`](#isimmutablemap) + [`isImmutableOrderedMap()`](#isimmutableorderedmap) + [`isImmutableOrderedSet()`](#isimmutableorderedset) + [`isImmutableSeq()`](#isimmutableseq) + [`isImmutableSet()`](#isimmutableset) + [`isImmutableSetSeq()`](#isimmutablesetseq) + [`isImmutableStack()`](#isimmutablestack) + [`isImOrderedMap()`](#isimorderedmap) + [`isImOrderedSet()`](#isimorderedset) + [`isImSeq()`](#isimseq) + [`isImSet()`](#isimset) + [`isImSetSeq()`](#isimsetseq) + [`isImStack()`](#isimstack) + [`isIndex()`](#isindex) + [`isIndexed()`](#isindexed) + [`isInteger()`](#isinteger) **Lo* + [`isIterable()`](#isiterable) + [`isIterateeCall()`](#isiterateecall) + [`isKey()`](#iskey) + [`isKeyable()`](#iskeyable) + [`isKeyed()`](#iskeyed) + [`isLength()`](#islength) + [`isMap()`](#ismap) **Lo* + [`isMatch()`](#ismatch) + [`isMatchWith()`](#ismatchwith) **TODO* + [`isMutable()`](#ismutable) + [`isNaN()`](#isnan) **Lo* + [`isNative()`](#isnative) **Lo* + [`isNil()`](#isnil) + [`isNull()`](#isnull) **Lo* + [`isNumber()`](#isnumber) + [`isObject()`](#isobject) + [`isObjectLike()`](#isobjectlike) + [`isPlainObject()`](#isplainobject) **Lo* + [`isPrototype()`](#isprototype) + [`isRegExp()`](#isregexp) **Lo* + [`isSafeInteger()`](#issafeinteger) **Lo* + [`isSet()`](#isset) **Lo* + [`isShallowEqual()`](#isshallowequal) + [`isString()`](#isstring) + [`isSymbol()`](#issymbol) + [`isTypedArray()`](#istypedarray) **Lo* + [`isUndefined()`](#isundefined) **Lo* + [`isWeakMap()`](#isweakmap) **Lo* + [`isWeakSet()`](#isweakset) **Lo* + [`iterable()`](#iterable) + [`iterator()`](#iterator) + [`isImSet()`](#isimset) + [`lt()`](#lt) **Lo* + [`lte()`](#lte) **Lo* + [`toArray()`](#toarray) + [`toFinite()`](#tofinite) + [`toIm()`](#toim) + [`toImIndexedSeq()`](#toimindexedseq) + [`toImIterable()`](#toimiterable) + [`toImKeyedSeq()`](#toimkeyedseq) + [`toImList()`](#toimlist) + [`toImMap()`](#toimmap) + [`toImmutable()`](#toimmutable) + [`toImmutableIndexedSeq()`](#toimmutableindexedseq) + [`toImmutableIterable()`](#toimmutableiterable) + [`toImmutableKeyedSeq()`](#toimmutablekeyedseq) + [`toImmutableList()`](#toimmutablelist) + [`toImmutableMap()`](#toimmutablemap) + [`toImmutableOrderedMap()`](#toimmutableorderedmap) + [`toImmutableOrderedSet()`](#toimmutableorderedset) + [`toImmutableSeq()`](#toimmutableseq) + [`toImmutableSet()`](#toimmutableset) + [`toImmutableSetSeq()`](#toimmutablesetseq) + [`toImmutableStack()`](#toimmutablestack) + [`toImOrderedMap)`](#toimorderedmap) + [`toImOrderedSet()`](#toimorderedset) + [`toImSeq()`](#toimseq) + [`toImSet()`](#toimset) + [`toImSetSeq()`](#toimsetseq) + [`toImStack()`](#toimstack) + [`toIndexed()`](#toindexed) + [`toInteger()`](#tointeger) + [`toIterable()`](#toiterable) + [`toLength()`](#tolength) **Lo* + [`toMutable()`](#tomutable) + [`toNumber()`](#tonumber) + [`toObject()`](#toobject) + [`toPlainObject()`](#toplainobject) **Lo* + [`toSageInteger()`](#tosafeinteger) **Lo* + [`toSource()`](#tosource) + [`toString()`](#tostring) **Lo* * [Math](#math) + [`add()`](#add) **Lo* + [`ceil()`](#ceil) **Lo* + [`divide()`](#divide) **Lo* + [`floor()`](#floor) **Lo* + [`max()`](#max) **Lo* + [`maxBy()`](#maxby) **Lo* + [`mean()`](#mean) **Lo* + [`meanBy()`](#meanby) **Lo* + [`min()`](#min) **Lo* + [`minBy()`](#minby) **Lo* + [`multiply()`](#multiply) **Lo* + [`round()`](#round) **Lo* + [`subtract()`](#subtract) **Lo* + [`sum()`](#sum) **Lo* + [`sumBy()`](#sumby) **Lo* * [Number](#number) + [`clamp()`](#clamp) **Lo* + [`inRange()`](#inrange) **Lo* + [`random()`](#random) **Lo* * [Object and Immutable.Map](#object-and-immutablemap) + [`assign()`](#assign) + [`assignIn()`](#assignin) **TODO* + [`assignInWith()`](#assigninwith) **TODO* + [`assignWith()`](#assignwith) **TODO* + [`assoc()`](#assoc) + [`assocWith()`](#assocwith) + [`at()`](#at) + [`create()`](#create) **TODO* + [`delete()`](#delete) + [`defaults()`](#defaults) **TODO* + [`defaultsDeep()`](#defaultsdeep) **TODO* + [`dissoc()`](#dissoc) + [`findKey()`](#findkey) **TODO* + [`findLastKey()`](#findlastkey) **TODO* + [`forIn()`](#forin) **TODO* + [`forInRight()`](#forinright) **TODO* + [`forOwn()`](#forown) **TODO* + [`forOwnRight()`](#forownright) **TODO* + [`functions()`](#functions) **Lo* + [`functionsIn()`](#functionsin) **TODO* + [`get()`](#get) + [`getPrototype()`](#getprototype) + [`has()`](#has) + [`hasIn()`](#hasin) **TODO* + [`invert()`](#invert) **TODO* + [`invertBy()`](#invertby) **TODO* + [`invoke()`](#invoke) **TODO* + [`keys()`](#keys) + [`keysIn()`](#keysin) **TODO* + [`mapKeys()`](#mapkeys) **TODO* + [`mapValues()`](#mapvalues) **TODO* + [`merge()`](#merge) + [`mergeAt()`](#mergeat) + [`mergeWith()`](#mergewith) **TODO* + [`omit()`](#omit) + [`omitBy()`](#omitby) + [`pick()`](#pick) + [`pickBy()`](#pickby) **TODO* + [`result()`](#result) **TODO* + [`set()`](#set) + [`setWith()`](#setwith) + [`toPairs()`](#topairs) **TODO* + [`toPairsIn()`](#topairsin) **TODO* + [`transform()`](#transform) **TODO* + [`unset()`](#unset) + [`update()`](#update) + [`updateWith()`](#updatewith) + [`values()`](#values) + [`valuesIn()`](#valuesin) **TODO* * [Seq](#seq) + [`_()`](#_) **Lo* + [`chain()`](#chain) **TODO* + [`tap()`](#tap) **Lo* + [`thru()`](#thru) **Lo* * [String](#string) + [`camelCase()`](#camelcase) **Lo* + [`capitalize()`](#capitalize) **Lo* + [`deburr()`](#deburr) **Lo* + [`endsWith()`](#endswith) **Lo* + [`escape()`](#escape) **Lo* + [`escapeRegExp()`](#escaperegexp) **Lo* + [`kebabCase()`](#kebabcase) **Lo* + [`lowerCase()`](#lowercase) **Lo* + [`lowerFirst()`](#lowerfirst) **Lo* + [`pad()`](#pad) **Lo* + [`padEnd()`](#padend) **Lo* + [`padStart()`](#padstart) **Lo* + [`parseInt()`](#parseint) **Lo* + [`repeat()`](#repeat) **Lo* + [`replace()`](#replace) **Lo* + [`snakeCase()`](#snakecase) **Lo* + [`split()`](#split) **Lo* + [`startCase()`](#startcase) **Lo* + [`startsWith()`](#startswith) **Lo* + [`template()`](#template) **Lo* + [`toLower()`](#tolower) **Lo* + [`toUpper()`](#toupper) **Lo* + [`trim()`](#trim) **Lo* + [`trimEnd()`](#trimend) **Lo* + [`trimStart()`](#trimstart) **Lo* + [`truncate()`](#truncate) **Lo* + [`unescape()`](#unescape) **Lo* + [`upperCase()`](#uppercase) **Lo* + [`upperFirst()`](#upperfirst) **Lo* + [`words()`](#words) **Lo* * [Util](#util) + [`attempt()`](#attempt) **Lo* + [`bindAll()`](#bindall) **TODO* + [`cond()`](#cond) **TODO* + [`conforms()`](#conforms) **TODO* + [`constant()`](#constant) **Lo* + [`defaultTo()`](#defaultTo) **Lo* + [`flow()`](#flow) **TODO* + [`flowRight()`](#flowright) **TODO* + [`hint`](#hint) + [`identity()`](#identity) + [`iteratee()`](#iteratee) + [`matches()`](#matches) + [`matchesProperty()`](#matchesproperty) + [`method()`](#method) **TODO* + [`methodOf()`](#methodof) **TODO* + [`mixin()`](#mixin) **Lo* + [`noConflict()`](#noconflict) **Lo* + [`noop()`](#noop) **Lo* + [`nthArg()`](#ntharg) **Lo* + [`over()`](#over) **TODO* + [`overEvery()`](#overevery) **TODO* + [`overSome()`](#oversome) **TODO* + [`property()`](#property) + [`propertyOf()`](#propertyof) + [`range()`](#range) **Lo* + [`rangeRight()`](#rangeright) **Lo* + [`runInContext()`](#runincontext) **Lo* + [`stubArray()`](#stubarray) + [`stubFalse()`](#stubfalse) + [`stubImmutableIndexedSeq()`](#stubimmutableindexedseq) + [`stubImmutableIterable()`](#stubimmutableiterable) + [`stubImmutableKeyedSeq()`](#stubimmutablekeyedseq) + [`stubImmutableList()`](#stubimmutablelist) + [`stubImmutableMap()`](#stubimmutablemap) + [`stubImmutableOrderedMap()`](#stubimmutableorderedmap) + [`stubImmutableOrderedSet()`](#stubimmutableorderedset) + [`stubImmutableSeq()`](#stubimmutableseq) + [`stubImmutableSet()`](#stubimmutableset) + [`stubImmutableSetSeq()`](#stubimmutablesetseq) + [`stubImmutableStack()`](#stubimmutablestack) + [`stubObject()`](#stubobject) + [`stubString()`](#stubstring) + [`stubTrue()`](#stubtrue) + [`sym()`](#sym) + [`symbol()`](#symbol) + [`times()`](#times) + [`toPath()`](#topath) **TODO* + [`uniqueId()`](#uniqueid) **Lo* + [`times()`](#times) ## Array and Immutable.List ### `chunk()` ```js chunk( data: Array | List, size: number ): Array | List ``` Creates an array or list of elements split into groups the length of `size`. If `data` can't be split evenly, the final chunk will be the remaining elements. ### `difference()` ```js difference( data: Array | List, ...values: Array ): Array | List ``` Creates an Indexed instance of values not included in the other given Indexed instances using SameValueZeroOrImmutableEqual for equality comparisons. The order and references of result values are determined by the first Indexed instance. ### `differenceBy()` ```js differenceBy( data: Array | List, ...values: Array, iteratee=_.identity: ( value: any ) => any ): Array | List ``` This method is like [`difference`](#difference) except that it accepts `iteratee` which is invoked for each element of `data` and `values` to generate the criterion by which they're compared. The order and references of result values are determined by the first Indexed instance. ### `differenceWith()` ```js differenceWith( data: Array | List, ...values: Array, comparator=_.identity: ( dataValue: any, otherValue: any ) => boolean ): Array | List ``` This method is like [`difference`](#difference) except that it accepts `comparator` which is invoked to compare elements of `data` to `values`. The order and references of result values are determined by the first Indexed instance. ### `drop()` ```js drop( data: Array | Immutable.List, n: number ): Array | Immutable.List ``` Creates an slice of `data` with `n` elements dropped from the beginning. ### `dropRight()` ```js dropRight( data: Array | Immutable.List, n: number ): Array | Immutable.List ``` Creates an slice of `data` excluding `n` elements dropped from the end. ### `dropRightWhile()` ```js dropRightWhile( data: Array | List, predicate: ( value: any, index: number, data: Array | Immutable.List ) => any ): Array | Immutable.List ``` Creates a slice of `data` excluding elements dropped from the end. Elements are dropped until `predicate` returns falsey. ### `dropWhile()` ```js dropWhile( data: Array | List, predicate: ( value: any, index: number, data: Array | Immutable.List ) => any ): Array | Immutable.List ``` Creates a slice of `data` excluding elements dropped from the beginning. Elements are dropped until `predicate` returns falsey. ## Collection and Immutable.Iterable ### `find()` ```js find( data: Array | Immutable.Iterable | Object, ?predicate=_.identity: ( value: any, key: string | number, collection: Array | Immutable.Iterable | Object ) => boolean, ?fromIndex=0: number ): any ``` Iterates over elements of collection, returning the first element predicate returns truthy for. ### `forEach()` ```js forEach( data: Array | Immutable.Iterable | Object, ?iteratee=_.identity: ( value: any, key: string | number, data: Array | Immutable.Iterable | Object ) => boolean ): Array | Immutable.Iterable | Object ``` Iterates over elements of `data` and invokes `iteratee` for each element. Iteratee functions may exit iteration early by explicitly returning `false`. ### `forEachRight()` ```js forEachRight( data: Array | Immutable.Iterable | Object, ?iteratee=_.identity: ( value: any, key: string | number, data: Array | Immutable.Iterable | Object ) => boolean ): Array | Immutable.Iterable | Object ``` This method is like [`forEach`](#foreach) except that it iterates over elements of `data` from right to left. ### `includes()` ```js includes( data: Array | Immutable.Iterable | Object | String, value: any, ?fromIndex=0: number ): boolean ``` Checks if `value` is in `data`. If `data` is a string, it's checked for a substring of value, otherwise SameValueZeroOrImmutableEqual is used for equality comparisons. If fromIndex is negative, it's used as the offset from the end of collection. ### `includesWith()` ```js includes( data: Array | Immutable.Iterable | Object | String, value: any, comparator: ( dataValue: any, value: any ) => boolean, ?fromIndex=0: number ): boolean ``` This method is like [`includes`](#includes) except that it accepts comparator which is invoked to compare elements of the data to the value. ### `slice()` ```js slice( ): Array | Immutable.Iterable | Object ``` Creates a slice of an Indexed value from start up to, but not including, end. If the requested slice is equivalent to the current Indexed, then it will return itself. ## Function ### `compose()` ```js compose( ...functions: Array any> ): (...args:any) => any ``` Used to compose multiple functions together in to a single function ## Lang ### `isArray()` ```js isArray( data: any ): boolean ``` Returns `true` if value is an `Array`. Otherwise `false`. ### `isArrayLike()` ```js isArrayLike( data: any ): boolean ``` Returns `true` if value is array-like. Otherwise `false`. A value is considered array-like if it's not a function and has a `value.length` that's an integer greater than or equal to 0 and less than or equal to `Number.MAX_SAFE_INTEGER`. ### `isBoolean()` ```js isBoolean( data: any ): boolean ``` Returns `true` if value is classified as a boolean primitive or object. Otherwise `false`. ### `isFunction()` ```js isFunction( data: any ): boolean ``` Returns `true` if data is classified as a function. Otherwise `false`. ### `isImmutable()` *aliases:* `isIm` ```js isImmutable( data: any ): boolean ``` Returns `true` if data is an immutable data type from immutable js. Otherwise `false`. ### `isImmutableIndexedSeq()` *aliases:* `isImIndexedSeq` ```js isImmutableIndexedSeq( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Seq.Indexed`][Immutable.Seq.Indexed]. Otherwise `false`. ### `isImmutableIterable()` *aliases:* `isImIterable` ```js isImmutableIterable( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Iterable`][Immutable.Iterable]. Otherwise `false`. ### `isImmutableKeyedSeq()` *aliases:* `isImKeyedSeq` ```js isImmutableKeyedSeq( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Seq.Keyed`][Immutable.Seq.Keyed]. Otherwise `false`. ### `isImmutableList()` *aliases:* `isImList` ```js isImmutableList( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.List`][Immutable.List]. Otherwise `false`. ### `isImmutableMap()` *aliases:* `isImMap` ```js isImmutableMap( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Map`][Immutable.Map]. Otherwise `false`. ### `isImmutableOrderedMap()` *aliases:* `isImOrderedMap` ```js isImmutableOrderedMap( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.OrderedMap`][Immutable.OrderedMap]. Otherwise `false`. ### `isImmutableOrderedSet()` *aliases:* `isImOrderedSet` ```js isImmutableOrderedSet( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.OrderedSet`][Immutable.OrderedSet]. Otherwise `false`. ### `isImmutableSeq()` *aliases:* `isImSeq` ```js isImmutableSeq( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Seq`][Immutable.Seq]. Otherwise `false`. ### `isImmutableSet()` *aliases:* `isImSet` ```js isImmutableSet( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Set`][Immutable.Set]. Otherwise `false`. ### `isImmutableSetSeq()` *aliases:* `isImSetSeq` ```js isImmutableSetSeq( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Seq.Set`][Immutable.Seq.Set]. Otherwise `false`. ### `isImmutableStack()` *aliases:* `isImStack` ```js isImmutableStack( data: any ): boolean ``` Returns `true` if data is of type [`Immutable.Stack`][Immutable.Stack]. Otherwise `false`. ### `isLength()` ```js isLength( data: any ): boolean ``` Returns `true` if value is a valid array-like length. Otherwise `false`. ### `isNil()` ```js isNil( data: any ): boolean ``` Returns `true` if value is `null` or `undefined`. Otherwise `false`. ### `isNumber()` ```js isNumber( data: any ): boolean ``` Returns `true` if value is classified as a `Number` primitive or object. Otherwise `false`. ### `isObject()` ```js isObject( data: any ): boolean ``` Returns `true` if value is the language type of `Object`. Otherwise `false`. ### `isString()` ```js isString( data: any ): boolean ``` Returns `true` if value is classified as a `String` primitive or object. Otherwise `false`. ### `isSymbol()` ```js isSymbol( data: any ): boolean ``` Returns `true` if value is classified as a `Symbol` primitive or object. Otherwise `false`. ### `toFinite()` ```js toFinite( data: any ): number ``` Converts value to a finite number. ### `toInteger()` ```js toInteger( data: any ): number ``` Converts value to an integer. ### `toNumber()` ```js toNumber( data: any ): number ``` Converts value to a number. ## Object and Immutable.Map ### `set()` **Note:** Unlike Lodash, this method is immutable and does NOT mutate data. ```js set( data: Array | Immutable.List | Immutable.Map | Object, path: string, value: any ): Array | Immutable.List | Immutable.Map | Object ``` Sets the value at path of data. If a portion of path doesn't exist, it's created. When creating path, this method will preserve the parent data type. Therefore, Immutable instances will be created for Immutable parents and mutable Object/Array instances will be created for mutable parents. Arrays and Lists will be created for index properties while Objects and Maps are created for all other missing properties. Use [`setWith`](#setWith) to customize path creation. ### `setWith()` **Note:** Unlike Lodash, this method is immutable and does NOT mutate data. ```js setWith( data: Array | Immutable.List | Immutable.Map | Object, path: string, value: any, ?customizer: ( value: any, key: string, data: Array | Immutable.List | Immutable.Map | Object, ) => Array | Immutable.List | Immutable.Map | Object ): Array | Immutable.List | Immutable.Map | Object ``` This method is like [`set`](#set) except that it accepts customizer which is invoked to produce the objects of path. If customizer returns undefined path creation is handled by the method instead. ### `unset()` **Note:** Unlike Lodash, this method is immutable and does NOT mutate data. ```js unset( data: Array | Immutable.List | Immutable.Map | Object, path: string ): Array | Immutable.List | Immutable.Map | Object ``` Removes the property at path of data. This method returns a new instance. ### `update()` **Note:** Unlike Lodash, this method is immutable and does NOT mutate data. ```js update( data: Array | Immutable.List | Immutable.Map | Object, path: string, updater: (value: any) => any ): Array | Immutable.List | Immutable.Map | Object ``` This method is like [`set`](#set) except that accepts updater to produce the value to set. Use [`updateWith`](#updateWith) to customize path creation. This method returns a new instance. ### `updateWith()` **Note:** Unlike Lodash, this method is immutable and does NOT mutate data. ```js updateWith( data: Array | Immutable.List | Immutable.Map | Object, path: string, updater: (value: any) => any, ?customizer: ( value: any, key: string, data: Array | Immutable.List | Immutable.Map | Object, ) => Array | Immutable.List | Immutable.Map | Object ): Array | Immutable.List | Immutable.Map | Object ``` This method is like [`update`](#update) except that it accepts customizer which is invoked to produce the objects of path. If customizer returns undefined path creation is handled by the method instead. This method returns a new instance. [Immutable.Iterable]: https://facebook.github.io/immutable-js/docs/#/Iterable [Immutable.List]: https://facebook.github.io/immutable-js/docs/#/List [Immutable.Map]: https://facebook.github.io/immutable-js/docs/#/Map [Immutable.OrderedMap]: https://facebook.github.io/immutable-js/docs/#/OrderedMap [Immutable.OrderedSet]: https://facebook.github.io/immutable-js/docs/#/OrderedSet [Immutable.Seq]: https://facebook.github.io/immutable-js/docs/#/Seq [Immutable.Seq.Indexed]: https://facebook.github.io/immutable-js/docs/#/Seq.Indexed [Immutable.Seq.Keyed]: https://facebook.github.io/immutable-js/docs/#/Seq.Keyed [Immutable.Seq.Set]: https://facebook.github.io/immutable-js/docs/#/Seq.Set [Immutable.Set]: https://facebook.github.io/immutable-js/docs/#/Set [Immutable.Stack]: https://facebook.github.io/immutable-js/docs/#/Stack