---
title: "StylePropertyFunction | 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 StylePropertyFunction<T>

#### Type Parameters

-   T

##### Index

### Constructors[](#constructors)

[constructor](#constructor)

### Properties[](#properties)

[evaluate](#evaluate) [interpolationFactor](#interpolationfactor) [kind](#kind) [zoomStops](#zoomstops)

### Methods[](#methods)

[deserialize](#deserialize) [serialize](#serialize)

## Constructors[](#constructors-1)

### constructor[](#constructor)

-   new StylePropertyFunction<[T](#constructorstylepropertyfunctiont)\>(  
        parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#t)\>,  
        specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/),  
    ): StylePropertyFunction<[T](#t)\>[](#constructorstylepropertyfunction)
    
    #### Type Parameters
    
    -   T
    
    #### Parameters
    
    -   parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#t)\>
    -   specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/)
    
    #### Returns StylePropertyFunction<[T](#t)\>
    

## Properties[](#properties-1)

### 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/)) \=> any

### interpolationFactor[](#interpolationfactor)

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

### kind[](#kind)

kind: [EvaluationKind](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.EvaluationKind/)

### zoomStops[](#zoomstops)

zoomStops: number\[\]

## Methods[](#methods-1)

### `Static`deserialize[](#deserialize)

-   deserialize<[T](#deserializet)\>(  
        serialized: {  
            \_parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#deserializet)\>;  
            \_specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/);  
        },  
    ): StylePropertyFunction<[T](#deserializet)\>[](#deserialize-1)
    
    #### Type Parameters
    
    -   T
    
    #### Parameters
    
    -   serialized: {  
            \_parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#deserializet)\>;  
            \_specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/);  
        }
    
    #### Returns StylePropertyFunction<[T](#deserializet)\>
    

### `Static`serialize[](#serialize)

-   serialize<[T](#serializet)\>(  
        input: StylePropertyFunction<[T](#serializet)\>,  
    ): {  
        \_parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#serializet)\>;  
        \_specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/);  
    }[](#serialize-1)
    
    #### Type Parameters
    
    -   T
    
    #### Parameters
    
    -   input: StylePropertyFunction<[T](#serializet)\>
    
    #### Returns {  
        \_parameters: [PropertyValueSpecification](https://docs.maptiler.com/sdk-js/api-reference/types/PropertyValueSpecification/)<[T](#serializet)\>;  
        \_specification: [StylePropertySpecification](https://docs.maptiler.com/sdk-js/api-reference/types/StylePropertySpecification/);  
    }
