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