---
title: "CompositeExpression | 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.

# Type Alias CompositeExpression

type CompositeExpression \= {  
    [\_globalState](#_globalstate): [Record](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Record/)<string, any\>;  
    [evaluate](#evaluate): (  
        globals: [GlobalProperties](https://docs.maptiler.com/sdk-js/api-reference/types/GlobalProperties/),  
        feature?: [Feature](https://docs.maptiler.com/sdk-js/api-reference/types/Feature/),  
        featureState?: [FeatureState](https://docs.maptiler.com/sdk-js/api-reference/types/FeatureState/),  
        canonical?: [ICanonicalTileID](https://docs.maptiler.com/sdk-js/api-reference/interfaces/ICanonicalTileID/),  
        availableImages?: string\[\],  
        formattedSection?: [FormattedSection](https://docs.maptiler.com/sdk-js/api-reference/classes/FormattedSection/),  
    ) \=> any;  
    [globalStateRefs](#globalstaterefs): Set<string\>;  
    [interpolationFactor](#interpolationfactor): (  
        input: number,  
        lower: number,  
        upper: number,  
    ) \=> number;  
    [interpolationType](#interpolationtype): [InterpolationType](https://docs.maptiler.com/sdk-js/api-reference/types/InterpolationType/);  
    [isStateDependent](#isstatedependent): boolean;  
    [kind](#kind): "composite";  
    [zoomStops](#zoomstops): number\[\];  
}

##### Index

### Properties[](#properties)

[\_globalState](#_globalstate) [evaluate](#evaluate) [globalStateRefs](#globalstaterefs) [interpolationFactor](#interpolationfactor) [interpolationType](#interpolationtype) [isStateDependent](#isstatedependent) [kind](#kind) [zoomStops](#zoomstops)

## Properties[](#properties-1)

### `Readonly`\_globalState[](#_globalstate)

\_globalState: [Record](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Record/)<string, any\>

### `Readonly`evaluate[](#evaluate)

evaluate: (  
    globals: [GlobalProperties](https://docs.maptiler.com/sdk-js/api-reference/types/GlobalProperties/),  
    feature?: [Feature](https://docs.maptiler.com/sdk-js/api-reference/types/Feature/),  
    featureState?: [FeatureState](https://docs.maptiler.com/sdk-js/api-reference/types/FeatureState/),  
    canonical?: [ICanonicalTileID](https://docs.maptiler.com/sdk-js/api-reference/interfaces/ICanonicalTileID/),  
    availableImages?: string\[\],  
    formattedSection?: [FormattedSection](https://docs.maptiler.com/sdk-js/api-reference/classes/FormattedSection/),  
) \=> any

### globalStateRefs[](#globalstaterefs)

globalStateRefs: Set<string\>

### `Readonly`interpolationFactor[](#interpolationfactor)

interpolationFactor: (input: number, lower: number, upper: number) \=> number

### interpolationType[](#interpolationtype)

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

### isStateDependent[](#isstatedependent)

isStateDependent: boolean

### kind[](#kind)

kind: "composite"

### zoomStops[](#zoomstops)

zoomStops: number\[\]
