---
title: "Step | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs.maptiler.com/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# Class Step

Expression

#### Implements

-   [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)

##### Index

### Constructors[](#constructors)

[constructor](#constructor)

### Properties[](#properties)

[input](#input) [labels](#labels) [outputs](#outputs) [type](#type)

### Methods[](#methods)

[eachChild](#eachchild) [evaluate](#evaluate) [outputDefined](#outputdefined) [parse](#parse)

## Constructors[](#constructors-1)

### constructor[](#constructor)

-   new Step(type: [Type](https://docs.maptiler.com/sdk-js/api-reference/types/Type/), input: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/), stops: [Stops](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Stops/)): Step[](#constructorstep)
    
    #### Parameters
    
    -   type: [Type](https://docs.maptiler.com/sdk-js/api-reference/types/Type/)
    -   input: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)
    -   stops: [Stops](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Stops/)
    
    #### Returns Step
    

## Properties[](#properties-1)

### input[](#input)

input: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)

### labels[](#labels)

labels: number\[\]

### outputs[](#outputs)

outputs: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)\[\]

### type[](#type)

type: [Type](https://docs.maptiler.com/sdk-js/api-reference/types/Type/)

Implementation of [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/).[type](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/#type)

## Methods[](#methods-1)

### eachChild[](#eachchild)

-   eachChild(fn: (\_: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)) \=> void): void[](#eachchild-1)
    
    #### Parameters
    
    -   fn: (\_: [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)) \=> void
    
    #### Returns void
    
    Implementation of [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/).[eachChild](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/#eachchild)
    

### evaluate[](#evaluate)

-   evaluate(ctx: [EvaluationContext](https://docs.maptiler.com/sdk-js/api-reference/classes/EvaluationContext/)): any[](#evaluate-1)
    
    #### Parameters
    
    -   ctx: [EvaluationContext](https://docs.maptiler.com/sdk-js/api-reference/classes/EvaluationContext/)
    
    #### Returns any
    
    Implementation of [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/).[evaluate](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/#evaluate)
    

### outputDefined[](#outputdefined)

-   outputDefined(): boolean[](#outputdefined-1)
    
    Statically analyze the expression, attempting to enumerate possible outputs. Returns false if the complete set of outputs is statically undecidable, otherwise true.
    
    #### Returns boolean
    
    Implementation of [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/).[outputDefined](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/#outputdefined)
    

### `Static`parse[](#parse)

-   parse(args: readonly unknown\[\], context: [ParsingContext](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.ParsingContext/)): [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)[](#parse-1)
    
    #### Parameters
    
    -   args: readonly unknown\[\]
    -   context: [ParsingContext](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.ParsingContext/)
    
    #### Returns [Expression](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Expression/)
