/* All material copyright ESRI, All Rights Reserved, unless otherwise specified. See https://js.arcgis.com/4.25/esri/copyright.txt for details. */ import{_ as e}from"../../chunks/tslib.es6.js";import r from"../../core/Collection.js";import{JSONSupport as o}from"../../core/JSONSupport.js";import{clone as s}from"../../core/lang.js";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/accessorSupport/ensureType.js";import{reader as a}from"../../core/accessorSupport/decorators/reader.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import{writer as d}from"../../core/accessorSupport/decorators/writer.js";import{writeNonEmptyCollectionPolicy as c}from"../../core/accessorSupport/extensions/serializableProperty/writePolicyUtils.js";import l from"./SearchLayer.js";import n from"./SearchTable.js";var p;const b=r.ofType(l),h=r.ofType(n);let u=p=class extends o{constructor(e){super(e),this.addressSearchEnabled=!0,this.enabled=!0,this.hintText=null,this.layers=new b,this.tables=new h}readAddressSearchEnabled(e){return!e}writeAddressSearchEnabled(e,r,o){r[o]=!e}clone(){return new p(s({addressSearchEnabled:this.addressSearchEnabled,enabled:this.enabled,hintText:this.hintText,layers:this.layers,tables:this.tables}))}};e([t({type:Boolean,nonNullable:!0,json:{read:{source:"disablePlaceFinder"},write:{target:"disablePlaceFinder",isRequired:!0},origins:{"web-scene":{read:!1,write:!1}}}})],u.prototype,"addressSearchEnabled",void 0),e([a("addressSearchEnabled")],u.prototype,"readAddressSearchEnabled",null),e([d("addressSearchEnabled")],u.prototype,"writeAddressSearchEnabled",null),e([t({type:Boolean,nonNullable:!0,json:{write:!0,origins:{"web-map":{write:{isRequired:!0}},"web-scene":{default:!0,write:!0}}}})],u.prototype,"enabled",void 0),e([t({type:String,json:{write:!0}})],u.prototype,"hintText",void 0),e([t({type:b,json:{write:{overridePolicy:c},origins:{"web-scene":{write:{isRequired:!0}}}}})],u.prototype,"layers",void 0),e([t({type:h,json:{read:!0,write:{overridePolicy:c}}})],u.prototype,"tables",void 0),u=p=e([i("esri.webdoc.applicationProperties.Search")],u);const y=u;export{y as default};