---
title: "Layout | 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 Layout<Props>

#### Type Parameters

-   Props

##### Index

### Constructors[](#constructors)

[constructor](#constructor)

### Methods[](#methods)

[getValue](#getvalue) [hasProperty](#hasproperty) [hasValue](#hasvalue) [possiblyEvaluate](#possiblyevaluate) [serialize](#serialize) [setValue](#setvalue)

## Constructors[](#constructors-1)

### constructor[](#constructor)

-   new Layout<[Props](#constructorlayoutprops)\>(  
        properties: [Properties](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.Properties/)<[Props](#props)\>,  
        globalState: [Record](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Record/)<string, any\>,  
    ): Layout<[Props](#props)\>[](#constructorlayout)
    
    #### Type Parameters
    
    -   Props
    
    #### Parameters
    
    -   properties: [Properties](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.Properties/)<[Props](#props)\>
    -   globalState: [Record](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Record/)<string, any\>
    
    #### Returns Layout<[Props](#props)\>
    

## Methods[](#methods-1)

### getValue[](#getvalue)

-   getValue<[S](#getvalues) extends string | number | symbol\>(name: [S](#getvalues)): any[](#getvalue-1)
    
    #### Type Parameters
    
    -   S extends string | number | symbol
    
    #### Parameters
    
    -   name: [S](#getvalues)
    
    #### Returns any
    

### hasProperty[](#hasproperty)

-   hasProperty(name: string): boolean[](#hasproperty-1)
    
    #### Parameters
    
    -   name: string
    
    #### Returns boolean
    

### hasValue[](#hasvalue)

-   hasValue<[S](#hasvalues) extends string | number | symbol\>(name: [S](#hasvalues)): boolean[](#hasvalue-1)
    
    #### Type Parameters
    
    -   S extends string | number | symbol
    
    #### Parameters
    
    -   name: [S](#hasvalues)
    
    #### Returns boolean
    

### possiblyEvaluate[](#possiblyevaluate)

-   possiblyEvaluate(  
        parameters: [EvaluationParameters](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.EvaluationParameters/),  
        canonical?: [CanonicalTileID](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.CanonicalTileID/),  
        availableImages?: string\[\],  
    ): [PossiblyEvaluated](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.PossiblyEvaluated/)<[Props](#props), any\>[](#possiblyevaluate-1)
    
    #### Parameters
    
    -   parameters: [EvaluationParameters](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.EvaluationParameters/)
    -   `Optional`canonical: [CanonicalTileID](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.CanonicalTileID/)
    -   `Optional`availableImages: string\[\]
    
    #### Returns [PossiblyEvaluated](https://docs.maptiler.com/sdk-js/api-reference/classes/Externals.PossiblyEvaluated/)<[Props](#props), any\>
    

### serialize[](#serialize)

-   serialize(): any[](#serialize-1)
    
    #### Returns any
    

### setValue[](#setvalue)

-   setValue<[S](#setvalues) extends string | number | symbol\>(name: [S](#setvalues), value: any): void[](#setvalue-1)
    
    #### Type Parameters
    
    -   S extends string | number | symbol
    
    #### Parameters
    
    -   name: [S](#setvalues)
    -   value: any
    
    #### Returns void
