diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index a769c20dfc..3938bc24d1 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,3 +1,7 @@ +# This file is generated. +# Add yourself to the "Definitions by:" list instead. +# See https://github.com/DefinitelyTyped/DefinitelyTyped#edit-an-existing-package + /types/abbrev/ @BendingBender /types/abs/ @AyaMorisawa /types/absolute/ @AyaMorisawa @@ -37,7 +41,7 @@ /types/adm-zip/ @jvilk @abner /types/adone/ @s0m3on3 @maxveres /types/aframe/ @devpaul @bertoritger -/types/agenda/ @meirgottlieb +/types/agenda/ @meirgottlieb @princjef /types/aggregate-error/ @BendingBender /types/alertify/ @jjeffery /types/alexa-sdk/ @petebeegle @hoo29 @pascalwhoop @blforce @rk-7 @alexmalcoci @@ -47,13 +51,17 @@ /types/alt/ @Shearerbeard /types/amazon-product-api/ @MattiLehtinen @alien35 /types/amcharts/ @ldrick +/types/amp/ @jewbre +/types/amp-message/ @jewbre +/types/amphtml-validator/ @kevincharm /types/amplify/ @joeriks /types/amplify-deferred/ @joeriks @laurentiustamate94 /types/amplitude-js/ @Asido /types/amqp/ @seikho @jonnysparkplugs /types/amqp-rpc/ @wokim -/types/amqplib/ @mnahkies @abreits @nfantone +/types/amqplib/ @mnahkies @abreits @nfantone @zelein /types/analytics-node/ @fongandrew @thomasthiebaud +/types/anchor-js/ @xt0rted /types/angular/ @diegovilar @thorn0 @calebstdenis @leonard-thieu /types/angular-agility/ @rolandzwaga /types/angular-animate/ @michelsalib @adidahiya @rasch @codyschaaf @@ -65,6 +73,7 @@ /types/angular-cookie/ @borislavjivkov /types/angular-cookies/ @diegovilar @aciccarello /types/angular-deferred-bootstrap/ @Ritzlgrmft +/types/angular-desktop-notification/ @Dona278 /types/angular-dialog-service/ @wcomartin /types/angular-dynamic-locale/ @stephenlautier /types/angular-environment/ @terrawheat @@ -110,7 +119,6 @@ /types/angular-toastr/ @nkovacic @trodi /types/angular-toasty/ @muenchdo /types/angular-tooltips/ @leonard-thieu -/types/angular-touchspin/ @nkovacic /types/angular-translate/ @michelsalib /types/angular-ui-bootstrap/ @xt0rted @ry8806 /types/angular-ui-router/ @michelsalib @matiishyn @mikehaas763 @@ -164,6 +172,7 @@ /types/array-find-index/ @samverschueren /types/array-foreach/ @skysteve /types/array-uniq/ @DanielRosenwasser +/types/array-unique/ @CSLTech /types/arrify/ @wanganjun /types/artillery/ @kmccoan-allocadia /types/asana/ @tkqubo @@ -179,11 +188,11 @@ /types/async-cache/ @BendingBender /types/async-lock/ @elisee @afharo @rhymmor /types/async-polling/ @Goldsmith42 -/types/async-retry/ @albertywu +/types/async-retry/ @albertywu @MeLlamoPablo /types/async.nexttick/ @pyrho /types/asynciterator/ @rubensworks /types/atlaskit__button/ @dijimsta -/types/atmosphere.js/ @toedter @Mory1879 +/types/atmosphere.js/ @toedter @Mory1879 @Scipion /types/atom/ @GlenCFL @smhxx @lierdakil /types/atom-keymap/ @GlenCFL /types/atom-mocha-test-runner/ @GlenCFL @@ -204,7 +213,7 @@ /types/autosuggest-highlight/ @senukartur /types/awesomplete/ @webbiesdk @bmdixon @tbekolay /types/aws-iot-device-sdk/ @niik @mlamp -/types/aws-lambda/ @skarum @tobyhede @buggy @y13i @wwwy3y3 @OrthoDex @MichaelMarner @daniel-cottone @kostya-misura @coderbyheart @palmithor @daniloraisi @simonbuchan @Haydabase +/types/aws-lambda/ @skarum @tobyhede @buggy @y13i @wwwy3y3 @OrthoDex @MichaelMarner @daniel-cottone @kostya-misura @coderbyheart @palmithor @daniloraisi @simonbuchan @Haydabase @repl-chris /types/aws-serverless-express/ @threesquared @jcaffey @mattmeye @albertovasquez /types/aws4/ @ajcrites /types/axel/ @ruslan-molodyko @@ -221,6 +230,7 @@ /types/babel-traverse/ @yortus @marvinhagemeister /types/babel-types/ @yortus @baxtersa @marvinhagemeister @bcherny /types/babel-webpack-plugin/ @j-f1 +/types/babel__code-frame/ @mohsen1 @ForbesLindesay /types/babelify/ @TeamworkGuy2 @marvinhagemeister /types/babylon/ @yortus @marvinhagemeister /types/babylon-walk/ @czbuchi @@ -231,7 +241,7 @@ /types/backbone-relational/ @eirikhm /types/backbone.layoutmanager/ @hejiang2000 /types/backbone.localstorage/ @lgrignon -/types/backbone.marionette/ @zhamid @nvivo @sventschui +/types/backbone.marionette/ @zhamid @nvivo @sventschui @razorness /types/backbone.paginator/ @Nyamazing /types/backbone.radio/ @alphaleonis /types/backgrid/ @jlujan @@ -245,6 +255,7 @@ /types/base-x/ @chrootsu /types/base16/ @alechill /types/base64-js/ @pe8ter +/types/base64-url/ @urish /types/base64topdf/ @lucasriondel /types/bases/ @harikv /types/bash-glob/ @mrmlnc @@ -255,6 +266,7 @@ /types/bcryptjs/ @RafaelKr /types/beats/ @urish /types/bech32/ @micksatana +/types/bell/ @SimonSchick /types/bem-cn/ @selkinvitaly /types/better-curry/ @pocesar /types/better-sqlite3/ @Morfent @matrumz @@ -269,7 +281,6 @@ /types/binary-parser/ @riggs @dolanmiu /types/bind-ponyfill/ @skysteve /types/bindings/ @unindented -/types/bingmaps/ @rbrundritt /types/bintrees/ @CjS77 /types/bip21/ @stefanhuber /types/bip38/ @micksatana @@ -300,11 +311,12 @@ /types/bonjour/ @quentin-ol @octo-sniffle /types/bookshelf/ @arcticwaters @vesse /types/boom/v3/ @rogatty -/types/boom/v4/ @rogatty @AJamesPhillips @jineshshah36 -/types/boom/ @rogatty @AJamesPhillips @jineshshah36 @TimonVS +/types/boom/v4/ @rogatty @AJamesPhillips @jineshshah36 @danielmachado +/types/boom/ @rogatty @AJamesPhillips @jineshshah36 @TimonVS @danielmachado /types/bootbox/ @vbortone @konpikwastaken @kanup @icereed @trodi @stannynuytkens @renjfk /types/bootpag/ @rdeneau -/types/bootstrap/ @borisyankov +/types/bootstrap/v3/ @borisyankov +/types/bootstrap/ @denisname /types/bootstrap-3-typeahead/ @AndersonFriaca /types/bootstrap-datepicker/ @borisyankov /types/bootstrap-fileinput/ @CheCoxshall @@ -322,6 +334,7 @@ /types/bootstrap.timepicker/ @derikwhittaker @heatherbooker /types/bootstrap.v3.datetimepicker/v3/ @bayitajesi /types/bootstrap.v3.datetimepicker/ @katonap +/types/bootstrap3-dialog/ @nakupanda @cnboland /types/bounce.js/ @cherrry /types/box2d/ @jbaldwin /types/brace-expansion/ @BendingBender @@ -348,7 +361,7 @@ /types/bufferstream/ @Bartvds /types/builtin-modules/ @ajafff /types/bull/v2/ @bgrieder @JProgrammer -/types/bull/ @bgrieder @JProgrammer @marshall007 @weeco @blaugold +/types/bull/ @bgrieder @JProgrammer @marshall007 @weeco @blaugold @iamolegga /types/bump-regex/ @silkentrance /types/bunnymq/ @cyrilschumacher /types/bunyan/ @amikhalev @@ -363,8 +376,8 @@ /types/bwip-js/ @MugeSo /types/byline/ @reppners /types/bytebuffer/ @cappellin -/types/bytes/ @danny8002 -/types/c3/ @mcliment @gerinjacob @denyo @dmitryshindin +/types/bytes/ @danny8002 @believer +/types/c3/ @mcliment @gerinjacob @denyo @dmitryshindin @timn /types/cache-manager/ @GausSim /types/cal-heatmap/ @RetroChrisB /types/callsite/ @newclear @@ -385,8 +398,7 @@ /types/caseless/ @downace @mastermatt /types/cash/ @akvlko /types/casperjs/ @jedmao @urielch -/types/cassandra-driver/ @Svjard -/types/catalog/ @grossbart @wereHamster +/types/cassandra-driver/ @Svjard @pc-jedi /types/catbox/v7/ @jasonswearingen @AJamesPhillips /types/catbox/ @jasonswearingen @AJamesPhillips @saboya /types/cbor/ @pushplay @@ -409,7 +421,7 @@ /types/chai-subset/ @delta62 @AGBrown /types/chai-webdriverio/ @sherlock1982 /types/chai-xml/ @jedigo -/types/chance/ @cbowdon @brikou +/types/chance/ @cbowdon @brikou @cafesanu /types/change-emitter/ @iskandersierra /types/charm/ @Xananax /types/charset/ @cspotcode @@ -429,6 +441,7 @@ /types/chroma-js/v0/ @invliD /types/chroma-js/ @invliD @mpacholec /types/chrome/ @matthewkimber @otiai10 @couven92 @rreverser @sreimer15 +/types/circuit-breaker-js/ @DeTeam /types/circular-json/ @jpevarnek /types/ckeditor/ @wittwert /types/clamp-js/ @Hikariii @@ -439,6 +452,9 @@ /types/clean-stack/ @BendingBender /types/clean-webpack-plugin/ @j-f1 /types/clear-require/ @dan-j +/types/clearbladejs-client/ @ClearBlade +/types/clearbladejs-node/ @ClearBlade +/types/clearbladejs-server/ @ClearBlade /types/cleave.js/ @clentfort @jasongi-at-sportsbet @sashashakun /types/cli/ @kayahr /types/cli-color/ @ChaosinaCan @@ -475,7 +491,6 @@ /types/color-namer/ @in19farkt /types/color-string/ @BendingBender @danmarshall /types/colorbrewer/ @mtraynham -/types/colors/ @Bartvds @staeke /types/com.darktalker.cordova.screenshot/ @akarienta /types/combine-source-map/ @TeamworkGuy2 /types/combined-stream/ @felixge @tlaziuk @@ -483,6 +498,7 @@ /types/cometd/ @derekcicerone /types/command-line-args/ @CzBuCHi /types/command-line-commands/ @CzBuCHi +/types/command-line-usage/ @Dvorsky /types/commangular/ @hiraash /types/comment-json/ @Jason3S /types/common-tags/ @zuzusik @tzupengwang @@ -492,7 +508,7 @@ /types/component-emitter/ @psnider /types/compose-function/ @denis-sokolov /types/compressible/ @BendingBender -/types/compression/ @santialbo +/types/compression/ @santialbo @rburgt /types/compression-webpack-plugin/ @dublicator /types/compute-stdev/ @mrmlnc /types/concat-stream/ @jmarianer @@ -502,6 +518,7 @@ /types/confidence/ @jppellerin /types/config/ @RWander @forrestbice @jndonald3 @albertovasquez /types/configstore/ @ArcticLight +/types/configurable/ @jewbre /types/confit/ @ethanresnick /types/connect/ @SomaticIT /types/connect-busboy/ @pinguet62 @@ -559,6 +576,7 @@ /types/cordova_app_version_plugin/ @larrybahr /types/cordovarduino/ @hendrikmaus /types/core-js/ @rbuckton @mfdeveloper +/types/cosmiconfig/ @ozum /types/cote/ @makepost /types/couchbase/ @maouida /types/countdown/ @gjuchault @@ -579,7 +597,7 @@ /types/createjs-lib/ @evilangelist @gyohk /types/credential/ @phuvo /types/credit-card-type/ @LKay -/types/cron/ @horiuchi +/types/cron/ @horiuchi @winup /types/cropperjs/ @stepancar /types/croppie/ @connor4312 @dklmuc @sarunint /types/cross-spawn/ @Alorel @@ -598,6 +616,7 @@ /types/csurf/ @horiuchi /types/csv-parse/ @davidm77 @obi-jan-kenobi /types/csv-stringify/ @rogierschouten @arjenvanderende +/types/csv2json/ @dex4er /types/csvrow/ @codeanimal /types/csvtojson/ @EricByers @wcarson /types/cucumber/v1/ @abraaoalves @jan-molak @isoung @BendingBender @@ -665,8 +684,11 @@ /types/dat.gui/ @gyohk @sonic3d @rroylance /types/data-driven/ @mrhen /types/datadog-metrics/ @pushplay +/types/datadog-tracer/ @dineshsaravanan /types/datatables.net/ @Silver-Connection @omidkrad @pragmatrix @CNBoland +/types/datatables.net-autofill/ @andy-maca /types/datatables.net-buttons/ @Silver-Connection @SammyG4Free @jimhartford +/types/datatables.net-colreorder/ @andy-maca /types/datatables.net-fixedheader/ @szechyjs @Silver-Connection /types/datatables.net-rowgroup/ @maixiu /types/datatables.net-rowreorder/ @baywet @@ -697,14 +719,14 @@ /types/deep-freeze/ @Bartvds @aluanhaddad /types/deep-freeze-es6/ @mattbishop /types/deep-freeze-strict/ @mhegazy -/types/deepmerge/ @marvinscharle @syy1125 +/types/deepmerge/ @marvinscharle @syy1125 @AppLover69 /types/defaults/ @IbtihelCHNAB /types/defer-promise/ @niklasf /types/define-lazy-prop/ @BendingBender /types/defined/ @BendingBender /types/deku/ @pocka /types/del/v2/ @AyaMorisawa -/types/del/ @AyaMorisawa @BendingBender +/types/del/ @AyaMorisawa @BendingBender @bitjson /types/delaunator/ @DenisCarriere /types/delay/ @BendingBender /types/denodeify/ @joaomoreno @@ -729,11 +751,13 @@ /types/dhtmlxscheduler/ @mkozhukh /types/di-lite/ @dcrusader /types/diacritics/ @otociulis -/types/diff/ @vvakame +/types/diff/ @vvakame @szdc /types/diff2html/ @rtfpessoa /types/dir-resolve/ @andy-ms /types/discontinuous-range/ @OiCMudkips +/types/dispatchr/ @Ragg- /types/disposable-email-domains/ @geoffreak +/types/dnssd/ @angelmerino /types/doccookies/ @jonegerton /types/dockerode/ @seikho @nlaplante @isac322 @lazarusx @meisenzahl @thegecko /types/docopt/ @giggio @@ -758,14 +782,15 @@ /types/dotenv/v2/ @jussikinnula @borekb @enaeseth /types/dotenv/ @jussikinnula @borekb @enaeseth /types/dotenv-safe/ @krenor +/types/dotenv-webpack/ @karol-majewski /types/dotfile-regex/ @mrmlnc /types/dottie/ @domarmstrong /types/double-ended-queue/ @dsagal /types/doublearray/ @mzsm -/types/doubleclick-gpt/ @johngeorgewright +/types/doubleclick-gpt/ @johngeorgewright @steven-joyce /types/download/ @nicojs /types/downloadjs/ @cwmoo740 -/types/draft-js/ @dmitryrogozhny @eelco @ghotiphud @schwers @michael-yx-wu @willisplummer @smvilar +/types/draft-js/ @dmitryrogozhny @eelco @ghotiphud @schwers @michael-yx-wu @willisplummer @smvilar @sulf /types/drag-timetable/ @chinkan /types/draggabilly/ @jaydubu /types/dragster/ @zskovacs @@ -784,11 +809,11 @@ /types/dvtng-jss/ @Ptival /types/dw-bxslider-4/ @namerci /types/dwt/v12/ @yushulx -/types/dwt/ @yushulx @jbh +/types/dwt/ @yushulx @jbh @lincoln2018 @Tom-Dynamsoft /types/dygraphs/ @danvk /types/dymo-label-framework/ @thijskuipers /types/dynatable/ @francoismassart -/types/dynogels/ @SpartanLabs +/types/dynogels/ @SpartanLabs @ramondeklein @stephentuso /types/each/ @misak113 /types/earcut/ @NaridaL /types/easeljs/ @evilangelist @@ -811,7 +836,7 @@ /types/ejs/ @benliddicott /types/ejs-locals/ @jt000 /types/ejson/ @shantanubhadoria -/types/elasticsearch/ @CasperSkydt @bfsmith @ddunkin @pushplay @mlamp @ahmadferdous @SimonSchick +/types/elasticsearch/ @CasperSkydt @bfsmith @ddunkin @pushplay @mlamp @ahmadferdous @SimonSchick @brabster @deerawan /types/electron-config/ @mrfunkycold @unindented /types/electron-debug/ @unindented /types/electron-devtools-installer/ @gamesmaxed @@ -833,7 +858,7 @@ /types/elm/ @thSoft /types/email-templates/ @cyrilschumacher @gurisko @blankstar85 /types/ember/v1/ @jedmao -/types/ember/ @jedmao @bttf @dwickern @chriskrycho @theroncross @mfeckie +/types/ember/ @jedmao @bttf @dwickern @chriskrycho @theroncross @mfeckie @alexlafroscia /types/ember-data/ @dwickern @mike-north @chriskrycho /types/ember-feature-flags/ @tansongyang /types/ember-mocha/ @dwickern @@ -852,6 +877,7 @@ /types/engine.io-client/ @KentarouTakeda /types/enhanced-resolve/ @e-cloud @onigoetz /types/enigma.js/ @konne +/types/enquire.js/ @screendriver /types/ent/ @rogierschouten /types/entities/ @aliceklipper /types/env-to-object/ @MugeSo @@ -873,6 +899,7 @@ /types/es6-weak-map/ @pine /types/escape-html/ @elisee /types/escape-latex/ @olsio +/types/escape-regexp/ @jewbre /types/escape-string-regexp/ @kruncher @faergeek /types/escodegen/ @simondel /types/eslint/ @pmdartus @j-f1 @@ -888,33 +915,40 @@ /types/estraverse/ @sanex3339 /types/estree/ @RReverser /types/etag/ @BendingBender +/types/ethereumjs-util/ @cortopy /types/ethjs-signer/ @doppio /types/eureka-js-client/ @Schnillz /types/evaporate/ @kookster @chrisrhoden /types/event-emitter/ @LKay +/types/event-emitter-es6/ @ahstro /types/event-kit/ @GlenCFL /types/event-loop-lag/ @rogierschouten /types/event-stream/ @flcdrg /types/event-to-promise/ @flying-sheep /types/events/ @yasupeke +/types/eventsource/ @scottleedavis /types/evernote/ @corps +/types/excel-style-dataformatter/ @SanderDeWaal1992 /types/exceljs/ @rogierschouten @alitaheri /types/execa/ @douglasduteil @BendingBender @borekb @mickdekkers +/types/exenv/ @christianchown /types/exit/ @Bartvds /types/exit-hook/ @BendingBender /types/exorcist/ @TeamworkGuy2 /types/expect/ @jmreidy @merrywhether +/types/expect-puppeteer/ @JoshuaKGoldberg /types/expect.js/ @teppeis /types/expectations/ @vvakame /types/expo/v23/ @KonstantinKai /types/expo/v24/ @KonstantinKai @martynaskadisa @janaagaard75 @ssanchezmarc @fhelwanger -/types/expo/ @KonstantinKai @martynaskadisa @janaagaard75 @ssanchezmarc @fhelwanger +/types/expo/ @KonstantinKai @martynaskadisa @janaagaard75 @ssanchezmarc @fhelwanger @umidbekkarimov /types/expo__vector-icons/ @incleaf /types/express/ @borisyankov /types/express-brute/ @cyrilschumacher /types/express-brute-memcached/ @cyrilschumacher /types/express-brute-mongo/ @cyrilschumacher /types/express-brute-redis/ @scottharwell +/types/express-bunyan-logger/ @shreyjain1994 /types/express-busboy/ @pinguet62 /types/express-cluster/ @nenadalm /types/express-debug/ @federicobond @@ -922,12 +956,13 @@ /types/express-ejs-layouts/ @erikma /types/express-enforces-ssl/ @kevinstubbs /types/express-fileupload/ @Naktibalda +/types/express-flash/ @iMobs /types/express-flash-2/ @mathsalmi /types/express-flash-notification/ @Mister4Eyes /types/express-formidable/ @tdolsen @evanshortiss -/types/express-graphql/ @isman-usoh @nitintutlani @hubel @zya +/types/express-graphql/ @isman-usoh @nitintutlani @hubel @zya @mlamp @firede /types/express-handlebars/ @stpettersens @yhaskell -/types/express-jwt/ @wokim @kacepe @Sl1MBoy +/types/express-jwt/ @wokim @kacepe @Sl1MBoy @milan-mimra /types/express-less/ @xieyubo /types/express-minify/ @borislavjivkov /types/express-mongo-sanitize/ @ericbyers @@ -952,8 +987,10 @@ /types/extract-text-webpack-plugin/ @flying-sheep @katyo /types/extract-zip/ @mizunashi-mana /types/eyes/ @brynbellomy +/types/ez-plus/ @AndersonFriaca /types/f1/ @neolwc -/types/fabric/ @oklemencic @joewashear007 @mrand01 @NotWoods +/types/fabric/ @oklemencic @joewashear007 @mrand01 @NotWoods @bmartinson +/types/facebook-instant-games/ @menushka /types/facebook-js-sdk/ @amritk /types/facebook-pixel/ @noctishsu /types/faker/v3/ @Kuniwak @@ -974,6 +1011,7 @@ /types/fastclick/ @shinnn /types/favico.js/ @drowse314-dev-ymat /types/fb/ @JoshStrobl +/types/fb-watchman/ @whtsky /types/fbemitter/ @kmxz /types/featherlight/ @xStrom /types/feathersjs__authentication/ @AbraaoAlves @j2L4e @@ -984,7 +1022,7 @@ /types/feathersjs__authentication-oauth2/ @j2L4e /types/feathersjs__configuration/ @j2L4e /types/feathersjs__errors/ @j2L4e -/types/feathersjs__express/ @j2L4e +/types/feathersjs__express/ @j2L4e @DadUndead /types/feathersjs__feathers/ @j2L4e @AbraaoAlves /types/feathersjs__primus/ @j2L4e /types/feathersjs__primus-client/ @j2L4e @@ -995,7 +1033,7 @@ /types/feedme/ @codeanimal /types/feedparser/ @cortopy /types/fetch-jsonp/ @tkrotoff -/types/fetch-mock/ @asvetliakov @tamird @merrywhether @chrissinclair +/types/fetch-mock/ @asvetliakov @tamird @merrywhether @chrissinclair @matttennison @quentinbouygues /types/fetch.io/ @newraina /types/ffi/ @loyd /types/ffmpeg-static/ @iamstevetran @@ -1038,10 +1076,11 @@ /types/flux/ @stkb @GiedriusGrabauskas /types/fluxxor/ @mrk21 /types/fm-websync/ @markusmauch +/types/fnv-lite/ @marcind /types/fontfaceobserver/ @RandScullard /types/fontoxml/ @rolandzwaga /types/forever-agent/ @yavanosta -/types/forever-monitor/ @shuntksh +/types/forever-monitor/ @shuntksh @wrboyce /types/forge-di/ @adamcarr /types/form-data/ @soywiz @leonyu @BendingBender /types/form-serializer/ @flqw @@ -1060,7 +1099,8 @@ /types/freeport/ @atd-schubert /types/fresh/ @BendingBender /types/friendly-errors-webpack-plugin/ @bahlo -/types/frisby/ @johnny4753 +/types/frisby/v0/ @johnny4753 +/types/frisby/ @cwoodland @johnny4753 /types/from/ @Bartvds /types/from2/ @BendingBender /types/fromjs/ @glenndierckx @@ -1233,8 +1273,9 @@ /types/gaussian/ @scttcper /types/geetest/ @plantain-00 /types/gen-readlines/ @CodeAnimal +/types/generate-changelog/ @ffflorian /types/generic-functions/ @stpettersens -/types/generic-pool/ @jerray +/types/generic-pool/ @jerray @wrboyce /types/gently/ @bonnici /types/geodesy/ @DenisCarriere @HandyG52 @excelulous /types/geojson/ @cobster @atd-schubert @JeffJacobson @@ -1257,6 +1298,7 @@ /types/git-config/ @stpettersens /types/git-remote-origin-url/ @janslow /types/github-username-regex/ @BehindTheMath +/types/gitlab/ @yanqing6628780 @Arylo /types/gl-matrix/ @mattijskneppers @tatchx @nbabanov @auzmartist @surtr-isaz /types/gldatepicker/ @qcz /types/glidejs/ @milanjaros @@ -1270,6 +1312,7 @@ /types/globalize-compiler/ @iclanton /types/globby/ @douglasduteil @ikatyang /types/globule/ @durad +/types/glue/ @garfty /types/gm/ @ChaosinaCan @maartenvanvliet /types/go/ @NorthwoodsSoftware /types/google-adwords-scripts/ @jafaircl @@ -1297,9 +1340,10 @@ /types/graceful-fs/ @Bartvds @BendingBender /types/graham_scan/ @hberntsen /types/graphite-udp/ @EricByers -/types/graphql/ @TonyPythoneer @calebmer @intellix @firede @kepennar @freiksenet @IvanGoncharov @DxCx @rportugal @tgriesser @dyst5422 @adnsio +/types/graphql/ @TonyPythoneer @calebmer @intellix @firede @kepennar @freiksenet @IvanGoncharov @DxCx @rportugal @tgriesser @dyst5422 @adnsio @divyenduz /types/graphql-date/ @enaeseth /types/graphql-iso-date/ @jwaldrip +/types/graphql-list-fields/ @filipows /types/graphql-relay/ @arvitaly @nitintutlani @Grelinfo /types/graphql-resolve-batch/ @nayni /types/graphql-type-json/ @schfkt @@ -1396,7 +1440,8 @@ /types/hapi/v16/ @jasonswearingen @AJamesPhillips /types/hapi/ @BorntraegerMarc @rafaelsouzaf @jhsimms /types/hapi-auth-basic/ @AJamesPhillips @saboya -/types/hapi-auth-jwt2/ @warrenseymour +/types/hapi-auth-jwt2/v7/ @warrenseymour +/types/hapi-auth-jwt2/ @warrenseymour @SimonSchick /types/hapi-decorators/ @kenhowardpdx /types/har-format/ @micmro /types/hard-rejection/ @BendingBender @@ -1448,6 +1493,7 @@ /types/html-minifier/ @tkrotoff @rikuayanokozy /types/html-pdf/ @westy92 /types/html-to-text/ @erykwarren +/types/html-void-elements/ @rhysd /types/html-webpack-plugin/ @deevus @bumbleblym @tlaziuk /types/html-webpack-template/ @bumbleblym /types/html2canvas/ @rwhepburn @tan9 @@ -1521,7 +1567,7 @@ /types/iniparser/ @chrootsu /types/inline-css/ @philipisapain /types/inline-style-prefixer/ @ahz @dpetrezselyova -/types/inquirer/ @tkQubo @ppathan @jouderianjr +/types/inquirer/ @tkQubo @ppathan @jouderianjr @bang88 @bitjson @synarque @jrockwood /types/insert-module-globals/ @leonard-thieu /types/insight/ @vvakame /types/integer/ @Morfent @@ -1551,7 +1597,9 @@ /types/is-archive/ @mhegazy /types/is-array/ @pine /types/is-binary-path/ @DanielRosenwasser +/types/is-color/ @VitorLuizC /types/is-compressed/ @mhegazy +/types/is-empty/ @termosa /types/is-finite/ @mhegazy /types/is-glob/ @mrmlnc /types/is-hotkey/ @petester42 @@ -1579,7 +1627,7 @@ /types/iso-3166-2/ @sicilica /types/iso8601-localizer/ @avielfedida /types/isomorphic-fetch/ @toddlucas -/types/isotope-layout/ @avidenic +/types/isotope-layout/ @avidenic @malinushj /types/istanbul/ @tkrotoff /types/istanbul-lib-coverage/ @jason0x43 /types/istanbul-lib-hook/ @jason0x43 @@ -1590,6 +1638,7 @@ /types/istanbul-reports/ @jason0x43 /types/ityped/ @DanielRosenwasser /types/ix.js/ @Igorbek +/types/jackrabbit/ @elvisvoer /types/jade/ @panuhorsmalahti /types/jalaali-js/ @alitaheri /types/japanese-holidays/ @syamatoo @@ -1617,14 +1666,17 @@ /types/jdataview/ @RReverser /types/jdenticon/ @mtr /types/jest/v16/ @NoHomey @jwbay -/types/jest/ @NoHomey @jwbay @asvetliakov @alexjoverm @epicallan @ikatyang @wsmd @JamieMason @douglasduteil @AhnpGit +/types/jest/ @NoHomey @jwbay @asvetliakov @alexjoverm @epicallan @ikatyang @wsmd @JamieMason @douglasduteil @AhnpGit @joshuakgoldberg @bradleyayers /types/jest-diff/ @myabc /types/jest-docblock/ @ikatyang +/types/jest-environment-puppeteer/ @joshuakgoldberg /types/jest-get-type/ @myabc +/types/jest-image-snapshot/ @dawnmist /types/jest-in-case/ @geovanisouza92 /types/jest-json-schema/ @deadNightTiger /types/jest-matcher-utils/ @myabc /types/jest-matchers/ @joscha +/types/jest-specific-snapshot/ @dawnmist /types/jest-validate/ @ikatyang /types/jfs/ @tlaziuk /types/jjv/ @Nemo157 @@ -1633,7 +1685,7 @@ /types/johnny-five/ @nakakura @ujvzolee @workshop2 /types/joi/v6/ @Bartvds @laurence-myers @cglantschnig @DavidBR-SW /types/joi/v10/ @Bartvds @laurence-myers @cglantschnig @DavidBR-SW @GaelMagnan @ralekna @schfkt @rokoroku -/types/joi/ @Bartvds @laurence-myers @cglantschnig @DavidBR-SW @GaelMagnan @ralekna @schfkt @rokoroku @dankraus @wanganjun +/types/joi/ @Bartvds @laurence-myers @cglantschnig @DavidBR-SW @GaelMagnan @ralekna @schfkt @rokoroku @dankraus @wanganjun @rafaelkallis /types/joigoose/ @boothwhack /types/josa/ @vichyssoise /types/jpeg-js/ @DanielRosenwasser @@ -1648,8 +1700,10 @@ /types/jquery-awesome-cursor/ @zskovacs /types/jquery-backstretch/ @dkulyk /types/jquery-countdown/ @AndersonFriaca +/types/jquery-countto/ @AndersonFriaca /types/jquery-cropbox/ @PerKastman /types/jquery-deparam/ @patsissons +/types/jquery-drawer/ @pine /types/jquery-easy-loading/ @delphinus35 /types/jquery-editable-select/ @baywet /types/jquery-fullscreen/ @bgrieder @@ -1676,10 +1730,12 @@ /types/jquery-urlparam/ @stpettersens /types/jquery-validation-unobtrusive/ @EnableSoftware /types/jquery.address/ @martinduparc @mardaneus86 +/types/jquery.appear/ @AndersonFriaca /types/jquery.are-you-sure/ @jonegerton /types/jquery.autosize/ @kingdango /types/jquery.bbq/ @sunetos /types/jquery.bootstrap.wizard/ @niemyjski @dennisahlin +/types/jquery.browser/ @AndersonFriaca /types/jquery.cleditor/ @pushplay /types/jquery.clientsidelogging/ @diullei /types/jquery.color/ @derekcicerone @@ -1709,6 +1765,7 @@ /types/jquery.notifybar/ @zaneli /types/jquery.noty/ @kingdango @thelfensdrfer /types/jquery.payment/ @ejsmith @johnrutherford +/types/jquery.pin/ @AndersonFriaca /types/jquery.pjax/ @lijunle /types/jquery.placeholder/ @majorsilence @EnableSoftware /types/jquery.pnotify/ @DavidSichau @FUNExtreme @@ -1752,10 +1809,12 @@ /types/js-fixtures/ @kazimanzurrashid /types/js-git/ @Bartvds /types/js-md5/ @mwmccarthy +/types/js-money/ @kanatkubash /types/js-quantities/ @wrummler /types/js-schema/ @marcinporebski @roblabat /types/js-search/ @guoyunhe /types/js-sha512/ @nicojs +/types/js-string-escape/ @viralpickaxe /types/js-to-java/ @skyitachi /types/js-url/ @pine613 /types/js-yaml/ @Bartvds @sclausen @@ -1780,13 +1839,15 @@ /types/json-pointer/ @Bartvds /types/json-query/ @mtraynham /types/json-rpc-ws/ @npenin @mlamp -/types/json-schema/ @bcherny @cyrilletuzi +/types/json-schema/ @bcherny @cyrilletuzi @lucianbuzzo /types/json-socket/ @svi3c /types/json-stable-stringify/ @mhfrantz /types/json-stringify-safe/ @BendingBender +/types/json2csv/ @juanjoDiaz /types/json2md/ @MartynasZilinskas /types/jsonata/ @nick121212 /types/jsoneditor/ @alejo90 +/types/jsoneditor-for-react/ @joshuakgoldberg /types/jsoneditoronline/ @vbortone /types/jsonfile/ @dbowring /types/jsonminify/ @no23reason @@ -1797,17 +1858,22 @@ /types/jsonstream/ @Bartvds /types/jsontoxml/ @benstevens48 /types/jsonwebtoken/ @SomaticIT @danielheim @brikou +/types/jsonwebtoken-promisified @aneilbaboo /types/jspdf/ @amberjs /types/jsqrcode/ @lordazzi /types/jsrender/ @zakki /types/jsreport-core/ @taoqf +/types/jsreport-html-to-xlsx/ @me +/types/jsreport-jsrender/ @taoqf +/types/jsreport-phantom-pdf/ @taoqf +/types/jsreport-xlsx/ @taoqf /types/jsrp/ @harryshipton -/types/jss/ @appsforartists @kof +/types/jss/ @appsforartists @kof @pelotom /types/jssha/ @randombk @SrTobi /types/jstimezonedetect/ @olamothe /types/jstorage/ @dflor003 /types/jstree/ @adaskothebeast -/types/jsts/ @StephaneAlie +/types/jsts/ @StephaneAlie @jrocha /types/jsuite/ @darrenhillconsulting /types/jsuri/ @coldacid @flqw /types/jsurl/ @agorshkov23 @@ -1818,11 +1884,12 @@ /types/jui-core/ @easylogic /types/jui-grid/ @easylogic /types/jweixin/ @taoqf @gomydodo -/types/jwplayer/ @martinduparc @kutomer @philippguertler +/types/jwplayer/ @martinduparc @kutomer @philippguertler @danielmcgraw /types/jws/ @JustinBeckwith /types/jwt-client/ @timoteoponce /types/jwt-decode/v1/ @QuatroDevOfficial /types/jwt-decode/ @GiedriusGrabauskas @madsmadsen +/types/jwt-express/ @nickp10 /types/jwt-simple/ @kenfdev @GaelMagnan /types/kafka-node/ @dansitu @bkim54 @sfrooster @amiram /types/karma/ @tkrotoff @43081j @@ -1831,6 +1898,7 @@ /types/karma-coverage/ @tkrotoff /types/karma-fixture/ @evictor /types/karma-jasmine/ @michelsalib +/types/karma-viewport/ @karak /types/karma-webpack/ @mtraynham /types/katex/ @mrand01 /types/kcors/ @Xstoudi @izayoiko @@ -1844,12 +1912,13 @@ /types/keypress.js/ @rcchen /types/keysym/ @harryshipton /types/keytar/ @miniak @shiftkey @juturu +/types/keyv/ @Arylo /types/kik-browser/ @joelday /types/klaw/v1/ @mceachen /types/klaw/ @mceachen /types/klaw-sync/ @shiftkey /types/kms-json/ @sunnyone -/types/knex/ @tkQubo @baronfel @MeLlamoPablo @mastermatt @micksatana +/types/knex/ @tkQubo @baronfel @MeLlamoPablo @mastermatt @micksatana @shreyjain1994 /types/knex-postgis/ @vesse /types/knockback/ @borisyankov /types/knockout/ @borisyankov @Igorbek @moonpyk @EnableSoftware @BenjaminEckardt @ffMathy @@ -1914,7 +1983,7 @@ /types/kramed/ @tonicblue /types/kss/ @giladgray /types/kue/ @drudge @amiram @pc-jedi -/types/kurento-utils/ @nenadalm +/types/kurento-utils/ @nenadalm @riggs /types/kuromoji/ @mzsm @kgtkr /types/lab/ @prashaantt /types/ladda/ @dflor003 @leemicw @@ -1973,6 +2042,7 @@ /types/line-by-line/ @etomsen /types/line-reader/ @stpettersens /types/linkify-it/ @praxxis +/types/listr/ @durad /types/lls/ @borislavjivkov /types/load-json-file/ @SamVerschueren /types/loader-runner/ @e-cloud @@ -2311,6 +2381,7 @@ /types/mailcheck/ @pocesar /types/maildev/ @cyrilschumacher @zbarbuto /types/mailgen/ @vothanhkiet @jordanfarrer +/types/mailgun-js/ @sampsonjoliver /types/mailparser/ @psnider /types/main-bower-files/ @k-kagurazaka /types/make-dir/ @ikatyang @BendingBender @@ -2323,7 +2394,7 @@ /types/mapnik/ @ipv4sec /types/mapsjs/ @davismj /types/mariasql/ @bennett000 -/types/mark.js/ @renjfk +/types/mark.js/ @renjfk @RomanGotsiy /types/markdown-it/ @rapropos /types/markdown-it-anchor/ @seryl /types/markdown-it-container/ @hronex @@ -2375,12 +2446,13 @@ /types/media-typer/ @BendingBender /types/medium-editor/ @keika299 /types/mem/ @SamVerschueren +/types/mem-fs/ @MyFoodBag /types/memcached/ @KentarouTakeda /types/memoizee/ @juanpicado /types/memory-cache/ @jedigo @thieman /types/memory-fs/ @e-cloud /types/memwatch-next/ @cyrilschumacher -/types/meow/ @KnisterPeter @praxxis +/types/meow/ @KnisterPeter @praxxis @bitjson /types/merge-descriptors/ @danny8002 /types/merge-stream/ @k-kagurazaka @daniel-zazula /types/merge2/ @tkrotoff @smac89 @@ -2396,7 +2468,7 @@ /types/meteor-persistent-session/ @vangorra /types/meteor-prime8consulting-oauth2/ @vangorra /types/meteor-publish-composite/ @vangorra -/types/meteor-roles/ @vangorra +/types/meteor-roles/ @vangorra @mattmm3d /types/method-override/ @santialbo /types/methods/ @cprecioso /types/metric-suffix/ @davidm77 @@ -2416,10 +2488,11 @@ /types/mime-types/ @Perlmint /types/mimos/ @AJamesPhillips /types/mina/ @lhk @mattanja @kant2002 +/types/mini-css-extract-plugin/ @JounQin /types/minimatch/ @vvakame @shantmarouti /types/minimist/ @Bartvds @Necroskillz @kamranayub /types/minimist-options/ @ikatyang -/types/minio/ @barinbritva +/types/minio/ @barinbritva @castorw /types/minipass/ @BendingBender /types/mirrorx/ @aaronphy /types/mithril/ @spacejack @andraaspar @isiahmeadows @@ -2430,7 +2503,7 @@ /types/mkdirp/ @Bartvds @mrmlnc /types/mkpath/ @optical /types/mobx-apollo/ @pselden -/types/mocha/ @kazimanzurrashid @otiai10 @jt000 @enlight +/types/mocha/ @kazimanzurrashid @otiai10 @jt000 @enlight @cspotcode /types/mocha-each/ @magnostherobot /types/mocha-phantomjs/ @ErikSchierboom /types/mocha-steps/ @Arylo @@ -2456,9 +2529,9 @@ /types/moment-timezone/ @michelsalib @alanblins /types/mongo-sanitize/ @CedricCazin /types/mongodb/v2/ @CaselIT @alanmarcell @kikar @bitjson @dante-101 @mcortesi -/types/mongodb/ @CaselIT @alanmarcell @kikar @bitjson @dante-101 @mcortesi +/types/mongodb/ @CaselIT @alanmarcell @kikar @bitjson @dante-101 @mcortesi @EnricoPicci @AJCStriker @julien-c /types/mongoose/v4/ @simonxca @horiuchi @sindrenm @lukasz-zak -/types/mongoose/ @simonxca @horiuchi @sindrenm @lukasz-zak @Alorel @jendrikw @ethanresnick +/types/mongoose/ @horiuchi @sindrenm @lukasz-zak @Alorel @jendrikw @ethanresnick @vologab /types/mongoose-auto-increment/ @AyaMorisawa /types/mongoose-deep-populate/ @AyaMorisawa /types/mongoose-geojson-schema/ @bondz @@ -2469,6 +2542,7 @@ /types/mongoose-sequence/ @linusbrolin /types/mongoose-simple-random/ @rsxdalv /types/mongoose-unique-validator/ @stevehipwell +/types/mongorito/ @pinguet62 /types/moo/ @deltaidea @MofX /types/moonjs/ @DanielRosenwasser /types/morgan/ @staticfunction @pscanf @@ -2487,6 +2561,7 @@ /types/msportalfx-test/ @julioct /types/mssql/ @jaminfarr @buzinas @mrrichar @elhaard @pkeuter /types/mu2/ @jedigo +/types/muicss/ @samuelneff /types/multer/ @jt000 @DavidBR-SW @mxl @hyunseob /types/multer-gridfs-storage/v1/ @devconcept /types/multer-gridfs-storage/ @devconcept @@ -2502,9 +2577,10 @@ /types/musicmetadata/ @Xstoudi /types/mustache/ @markashleybell /types/mv/ @nenadalm -/types/mysql/ @wjohnsto @kacepe @kpping +/types/mysql/ @wjohnsto @kacepe @kpping @jdmunro /types/mz/ @ThomasHickman /types/n3/ @phreed +/types/named-regexp-groups/ @jewbre /types/nano/ @timjacobi @vincekovacs /types/nanoajax/ @nathancahill /types/nanoid/ @bash @@ -2515,9 +2591,10 @@ /types/natsort/ @mgroenhoff /types/natural/ @dmoonfire /types/natural-sort/ @a-morales +/types/navermaps/ @ckboyjiy /types/navigation/ @grahammendick /types/navigation-react/ @grahammendick -/types/navigo/ @aersamkull @dancespiele +/types/navigo/ @aersamkull @dancespiele @deini /types/nblas/ @erikgerrits /types/nconf/ @jedigo @jmthibault /types/ncp/ @bartvds @@ -2559,16 +2636,17 @@ /types/ngstorage/ @kubiq /types/ngtoaster/ @btesser /types/ngwysiwyg/ @patrick-mackay -/types/nightmare/ @horiuchi @samyang-au +/types/nightmare/ @horiuchi @samyang-au @Bleser92 /types/nightwatch/ @rkavalap @schlesiger -/types/noble/ @swook @wind-rider @shantanubhadoria @lukel99 @bioball @keton +/types/nivo-slider/ @AndersonFriaca +/types/noble/ @swook @wind-rider @shantanubhadoria @lukel99 @bioball @keton @thegecko /types/nock/ @bonnici @horiuchi @afharo @mastermatt @damour /types/nodal/ @charrondev /types/node/v4/ @eps1lon /types/node/v6/ @WilcoBakker @inlined @eps1lon @Alorel /types/node/v7/ @parambirs @tellnes @WilcoBakker @eps1lon -/types/node/v8/ @parambirs @tellnes @WilcoBakker @octo-sniffle @smac89 @Flarna @mwiktorczyk @wwwy3y3 @DeividasBakanas @kjin @alvis @OliverJAsh @eps1lon @Hannes-Magnusson-CK @jkomyno @hoo29 -/types/node/ @parambirs @tellnes @WilcoBakker @octo-sniffle @smac89 @Flarna @mwiktorczyk @wwwy3y3 @DeividasBakanas @kjin @alvis @OliverJAsh @eps1lon @Hannes-Magnusson-CK @jkomyno @ajafff @hoo29 +/types/node/v8/ @parambirs @tellnes @WilcoBakker @octo-sniffle @smac89 @Flarna @mwiktorczyk @wwwy3y3 @DeividasBakanas @kjin @alvis @OliverJAsh @eps1lon @Hannes-Magnusson-CK @jkomyno @hoo29 @n-e +/types/node/ @parambirs @tellnes @WilcoBakker @octo-sniffle @smac89 @Flarna @mwiktorczyk @wwwy3y3 @DeividasBakanas @kjin @alvis @OliverJAsh @eps1lon @Hannes-Magnusson-CK @jkomyno @ajafff @hoo29 @n-e /types/node-7z/ @erkie /types/node-array-ext/ @Beng89 /types/node-cache/ @chrootsu @dthunell @useltmann @@ -2585,7 +2663,7 @@ /types/node-gcm/ @horiuchi /types/node-geocoder/ @rosek86 /types/node-getopt/ @kcauchy -/types/node-hid/ @mhegazy @ert78gb +/types/node-hid/ @mhegazy @ert78gb @thegecko /types/node-horseman/ @apratheek /types/node-hue-api/ @fjmorel /types/node-int64/ @x3cion @kevin-greene-ck @@ -2596,9 +2674,10 @@ /types/node-notifier/ @tkQubo /types/node-polyglot/ @timjk /types/node-powershell/ @rodrigoff +/types/node-pushnotifications/ @menushka /types/node-ral/ @ssddi456 /types/node-red/ @andersea -/types/node-rsa/ @alitaheri +/types/node-rsa/ @alitaheri @xm /types/node-schedule/ @cyrilschumacher @flowpl /types/node-slack/ @tkQubo /types/node-snap7/ @heilingbrunner @@ -2614,6 +2693,7 @@ /types/node-xmpp-core/ @PJakcson /types/node-zookeeper-client/ @plantain-00 @jessezhang91 /types/node_redis/ @borisyankov +/types/nodecredstash/ @migstopheles /types/nodegit/ @dolanmiu /types/nodemailer/v3/ @rogierschouten /types/nodemailer/ @rogierschouten @dex4er @@ -2687,7 +2767,8 @@ /types/onoff/ @marcel-ernst /types/open/ @Bartvds /types/opener/ @tikurahul -/types/openfin/ @chrisbarker +/types/openfin/v17/ @chrisbarker +/types/openfin/ @chrisbarker @rdepena /types/openjscad/ @danmarshall /types/openlayers/v2/ @bolhovsky /types/openlayers/v3/ @osechet @matthiasdailey-ccri @@ -2758,11 +2839,12 @@ /types/papaparse/ @torpedro @rainshen49 @jfloff @johnnyreilly /types/paper/ @clark-stevenson @Xakaloz /types/paralleljs/ @jbaldwin +/types/parcel-env/ @fathyb /types/parent-package-json/ @sgmccli /types/parity-pmd/ @leovujanic @jewbre /types/parity-pmr/ @leovujanic /types/parity-poe/ @leovujanic -/types/parse/ @dpoetzsch @jaeggerr @flavionegrao @wesleygrimes +/types/parse/ @dpoetzsch @jaeggerr @flavionegrao @wesleygrimes @owsas /types/parse-git-config/ @leonard-thieu /types/parse-glob/ @glen-84 /types/parse-json/ @mrmlnc @@ -2803,6 +2885,7 @@ /types/path-exists/v1/ @shiwano /types/path-exists/ @shiwano @BendingBender /types/path-is-absolute/ @mhegazy +/types/path-is-inside/ @aomarks /types/pathfinding/ @BNedry /types/pathjs/ @lokeshpeta /types/pathwatcher/ @GlenCFL @@ -2864,8 +2947,9 @@ /types/platform/ @JakeH /types/playcanvas/ @Neoflash1979 /types/playerframework/ @ricardosabino +/types/playmusic/ @nickp10 /types/pleasejs/ @nakakura -/types/plotly.js/ @chrisgervang @martinduparc @frederikaalund @taoqf @Dadstart +/types/plotly.js/ @chrisgervang @martinduparc @frederikaalund @taoqf @Dadstart @szechyjs /types/plugapi/ @BNedry /types/plugin-error/ @rogierschouten /types/plupload/ @patrickbussmann @@ -2882,6 +2966,7 @@ /types/popcorn/ @grapswiz /types/portscanner/ @douglasduteil /types/postal/ @lokeshpeta @myitcv +/types/postman-collection/ @kbuzby /types/postmark/ @benbayard /types/pouch-redux-middleware/ @charrondev /types/pouchdb/ @AGBrown @geppy @fredgalvao @@ -2913,6 +2998,7 @@ /types/pretty-ms/ @BendingBender /types/printf/ @AluisioASG /types/priorityqueuejs/ @geoffreak +/types/prismic-dom/ @nickw444 /types/prismjs/ @eriklieben @andrewiggins @mmiszy /types/private-ip/ @coderslagoon /types/procfs-stats/ @cyrilschumacher @@ -2923,6 +3009,7 @@ /types/proj4leaflet/ @BendingBender /types/project-oxford/ @scsouthw /types/promise-dag/ @OSjoerdWie +/types/promise-map-limit/ @kohlmannj /types/promise-pg/ @coldacid /types/promise-polyfill/ @skysteve /types/promise-pool/ @vilic @@ -2970,11 +3057,11 @@ /types/puppeteer/ @marvinhagemeister @cdeutsch @jwbay /types/pure-render-decorator/ @seansfkelley /types/purl/ @danfma -/types/pusher-js/ @tkqubo +/types/pusher-js/ @tkqubo @cainlevy /types/pvutils/ @microshine /types/python-shell/ @dolanmiu @WORMSS /types/q/v0/ @bnemetchek @johnnyreilly -/types/q/ @bnemetchek @AndrewGaspar @johnnyreilly @mboudreau +/types/q/ @bnemetchek @AndrewGaspar @johnnyreilly @mboudreau @TeamworkGuy2 /types/q-io/ @Bartvds /types/q-retry/ @vilic /types/qhistory/ @Kovensky @@ -2997,7 +3084,7 @@ /types/rabbit.js/ @wokim /types/radium/ @alexgorbatchev @nupplaphil @asvetliakov @mihe /types/radius/ @codeanimal -/types/ramda/ @donnut @mdekrey @mrdziuban @sbking @afharo @teves-castro @1M0reBug @hojberg @charlespwd @samsonkeung @angeloocana @raynerd @googol @moshensky @ethanresnick +/types/ramda/ @donnut @mdekrey @mrdziuban @sbking @afharo @teves-castro @1M0reBug @hojberg @charlespwd @samsonkeung @angeloocana @raynerd @googol @moshensky @ethanresnick @leighman /types/random-js/ @pistacchio /types/random-number/ @OpenByteDev /types/random-seed/ @endel @@ -3019,7 +3106,7 @@ /types/raspi-soft-pwm/ @nebrius /types/ratelimiter/ @AyaMorisawa /types/raty/ @terrawheat -/types/raven/ @scttcper @1999 +/types/raven/ @scttcper @1999 @shreyjain1994 /types/raven-for-redux/ @chiubaka /types/raygun4js/ @xt0rted @BenjaminHarding /types/rbac-a/ @tlaziuk @@ -3031,16 +3118,17 @@ /types/rdf-data-model/ @rubensworks /types/rdf-js/ @rubensworks /types/react/v15/ @bbenezech @pzavolinsky @digiguru @ericanderson @morcerf @tkrotoff @DovydasNavickas @onigoetz -/types/react/ @johnnyreilly @bbenezech @pzavolinsky @digiguru @ericanderson @morcerf @tkrotoff @DovydasNavickas @onigoetz @richseviora @theruther4d +/types/react/ @johnnyreilly @bbenezech @pzavolinsky @digiguru @ericanderson @morcerf @tkrotoff @DovydasNavickas @onigoetz @theruther4d @guilhermehubner @joshuakgoldberg @jrakotoharisoa /types/react-alert/ @ssyrell /types/react-alice-carousel/ @endigo /types/react-app/ @prakarshpandey /types/react-aria-menubutton/ @forabi @crohlfs /types/react-autosuggest/ @nicolas-schmitt @pjo256 @robessog @tbayne @cdeutsch @rosskevin -/types/react-beautiful-dnd/ @varHarrie @bradleyayers +/types/react-avatar-editor/ @diogocorrea @gabsprates +/types/react-beautiful-dnd/ @varHarrie @bradleyayers @paustint /types/react-big-calendar/ @piotrwitek @paustint @pikpok /types/react-body-classname/ @mhegazy -/types/react-bootstrap/ @walkerburgin @vsiao @danilojrr @Batbold-Gansukh @octatone @chengsieuly @mretolaza @katbusch @vitosamson @LKay @aaronbeall +/types/react-bootstrap/ @walkerburgin @vsiao @danilojrr @Batbold-Gansukh @octatone @chengsieuly @mretolaza @katbusch @vitosamson @LKay @aaronbeall @jrakotoharisoa /types/react-bootstrap-date-picker/ @LKay @ssi-hu-antal-bodnar /types/react-bootstrap-daterangepicker/ @ianks /types/react-bootstrap-table/v2/ @flaub @alelode @UJosue10 @@ -3098,7 +3186,7 @@ /types/react-flexr/ @pushplay /types/react-fontawesome/ @timurrustamov @dublicator @vincaslt @gavingregory /types/react-form/v1/ @cameron-mcateer -/types/react-form/ @cameron-mcateer +/types/react-form/ @cameron-mcateer @TiuSh /types/react-foundation/ @danielearwicker /types/react-geosuggest/ @brmenchl /types/react-google-recaptcha/ @KoalaHuman @@ -3121,6 +3209,7 @@ /types/react-image-gallery/ @adamwpc /types/react-imageloader/ @stephenjelfs /types/react-infinite/ @rhysd +/types/react-infinite-calendar/ @christianchown /types/react-infinite-scroller/ @Lapanti @psrebniak /types/react-input-calendar/ @stepancar /types/react-input-mask/ @apare @@ -3136,8 +3225,10 @@ /types/react-lazyload/ @m0a /types/react-leaflet/ @danzel @davschne @yuit /types/react-list/ @buptyyf @tomshen -/types/react-loadable/ @Kovensky @odensc @ianks @tlaziuk +/types/react-loadable/ @Kovensky @odensc @ianks @tlaziuk @iMobs /types/react-loader/ @artfuldev +/types/react-mailchimp-subscribe/ @osdiab +/types/react-map-gl/ @rimig /types/react-maskedinput/ @LKay @lavoaster @CarlosBonetti /types/react-mce/ @morphologue /types/react-mdl/ @bradzacher @@ -3147,19 +3238,23 @@ /types/react-monaco-editor/ @jnetterf /types/react-motion/ @stepancar @asvetliakov @dimitarnestorov /types/react-motion-slider/ @asvetliakov -/types/react-native/ @alloy @huhuanming @iRoachie @timwangdev @kamal @nelyousfi -/types/react-native-collapsible/ @iRoachie +/types/react-native/ @alloy @huhuanming @iRoachie @timwangdev @kamal @nelyousfi @alexdunne @swissmanu @bm-software +/types/react-native-android-taskdescription/ @christianchown +/types/react-native-auth0/ @ascariandrea +/types/react-native-collapsible/ @iRoachie @umidbekkarimov /types/react-native-communications/ @huhuanming @PaitoAnderson /types/react-native-datepicker/ @jacobbaskin /types/react-native-doc-viewer/ @iRoachie /types/react-native-document-picker/ @plantain-00 /types/react-native-drawer/ @jnbt /types/react-native-drawer-layout/ @jmfirth +/types/react-native-elevated-view/ @fhelwanger /types/react-native-fabric/ @josephroque /types/react-native-fbsdk/ @ifiokjr /types/react-native-fetch-blob/ @MNBuyskih /types/react-native-fs/ @pocesar @josephroque /types/react-native-google-signin/ @j-fro +/types/react-native-i18n/ @VincentLanglet /types/react-native-keep-awake/ @huhuanming /types/react-native-linear-gradient/ @j-fro /types/react-native-loading-spinner-overlay/ @fhelwanger @@ -3170,23 +3265,29 @@ /types/react-native-modalbox/ @iRoachie /types/react-native-navigation/ @egorshulga /types/react-native-orientation/ @MoLow +/types/react-native-permissions/ @vincentlanglet +/types/react-native-photo-view/ @christianchown /types/react-native-popup-dialog/ @PaitoAnderson @connectdotz /types/react-native-push-notification/ @PaitoAnderson @tomSawkins /types/react-native-qrcode/ @plantain-00 /types/react-native-safari-view/ @mrand01 /types/react-native-scrollable-tab-view/ @CaiHuan @egorshulga /types/react-native-sensor-manager/ @SahinVardar -/types/react-native-snap-carousel/ @jnbt @j-fro +/types/react-native-snap-carousel/ @jnbt @j-fro @gazaret /types/react-native-sortable-grid/ @j-fro /types/react-native-sortable-list/ @sivolobov +/types/react-native-sqlite-storage/ @dryganets +/types/react-native-star-rating/ @iRoachie /types/react-native-svg-uri/ @iRoachie /types/react-native-swiper/ @CaiHuan @huhuanming @mhcgrq /types/react-native-tab-navigator/ @iRoachie /types/react-native-tab-view/ @kaoDev -/types/react-native-touch-id/ @huhuanming +/types/react-native-text-input-mask/ @RodrigoAWeber +/types/react-native-touch-id/ @huhuanming @gazaret /types/react-native-vector-icons/ @iRoachie @timwangdev -/types/react-native-video/ @huhuanming @abrahambotros -/types/react-navigation/ @huhuanming @mhcgrq @fangpenlin @abrahambotros @petejkim @iRoachie @phanalpha @charlesfamu @timwangdev @bang88 @svbutko @levito @robertohuertasm @YourGamesBeOver +/types/react-native-version-number/ @VincentLanglet +/types/react-native-video/ @huhuanming +/types/react-navigation/ @huhuanming @mhcgrq @fangpenlin @petejkim @iRoachie @phanalpha @charlesfamu @timwangdev @bang88 @svbutko @levito @robertohuertasm @YourGamesBeOver @ArmandoAssuncao @cliedeman /types/react-notification-system/ @GiedriusGrabauskas @DeividasBakanas @LKay @sztobar /types/react-notification-system-redux/ @LKay /types/react-numeric-input/ @heatherbooker @@ -3195,6 +3296,7 @@ /types/react-onsenui/ @salim7 @jemmyw /types/react-overlays/ @aaronbeall @vitosamson /types/react-paginate/ @deevus @wouterhardeman @pegel03 @archy-bold +/types/react-places-autocomplete/ @guilhermehubner /types/react-pointable/ @istefo @mdibyo /types/react-portal/ @shuntksh /types/react-props-decorators/ @tkqubo @@ -3204,25 +3306,27 @@ /types/react-redux-i18n/ @clementdevos /types/react-redux-toastr/ @Smiche @artyomsv @kulmajaba /types/react-relay/ @graphcool @voxmatt @alloy @npirotte +/types/react-resize-detector/ @matthew-matvei /types/react-resolver/ @forabi /types/react-responsive/v1/ @asvetliakov /types/react-responsive/ @asvetliakov @alechill @xaviergonz +/types/react-rnd/ @Ragg- /types/react-router/v2/ @sergey-buturlakin @mrk21 @vasek17 @ngbrown @awendland @KostyaEsmukov /types/react-router/v3/ @sergey-buturlakin @mrk21 @vasek17 @ngbrown @awendland @KostyaEsmukov @johnnyreilly @LKay @DovydasNavickas @ssorallen -/types/react-router/ @sergey-buturlakin @mrk21 @vasek17 @ngbrown @awendland @KostyaEsmukov @johnnyreilly @LKay @DovydasNavickas @tkrotoff @huy-nguyen @grmiade @DaIgeb @egorshulga @neuoy +/types/react-router/ @sergey-buturlakin @mrk21 @vasek17 @ngbrown @awendland @KostyaEsmukov @johnnyreilly @LKay @DovydasNavickas @tkrotoff @huy-nguyen @grmiade @DaIgeb @egorshulga @neuoy @rraina /types/react-router-bootstrap/ @vlesierse @LKay @olmobrutall /types/react-router-config/ @lith-light-g -/types/react-router-dom/ @tkrotoff @huy-nguyen -/types/react-router-native/ @ezintz +/types/react-router-dom/ @tkrotoff @huy-nguyen @p-jackson +/types/react-router-native/ @ezintz @fhelwanger /types/react-router-navigation/ @kaoDev /types/react-router-navigation-core/ @kaoDev /types/react-router-redux/v3/ @isman-usoh @noah79 @rosendi /types/react-router-redux/v4/ @isman-usoh @noah79 @rosendi @LKay @DovydasNavickas -/types/react-router-redux/ @huy-nguyen @8398a7 +/types/react-router-redux/ @huy-nguyen @8398a7 @mykolas /types/react-s-alert/ @mitsuruog /types/react-scroll/ @sudoplz @GiedriusGrabauskas /types/react-scrollbar/ @stephenjelfs -/types/react-select/ @Hesquibet @giladgray @iebaker @skirsdeda @vujevits @devrelm @MartynasZilinskas @onatm @ninjaferret @tehbi4 @misantronic +/types/react-select/ @Hesquibet @giladgray @iebaker @skirsdeda @vujevits @devrelm @MartynasZilinskas @onatm @ninjaferret @tehbi4 @misantronic @darkartur /types/react-side-effect/ @remojansen /types/react-sidebar/ @jeroenvervaeke /types/react-sketchapp/ @ricokahler @DomiR @@ -3234,7 +3338,8 @@ /types/react-spinkit/v1/ @tkqubo @mleko @pelotom /types/react-spinkit/ @tkqubo @mleko @pelotom @zzanol /types/react-sticky/ @curtisw0 -/types/react-stripe-elements/ @dan-j @santiagodoldan @sonnysangha +/types/react-stripe-elements/ @dan-j @santiagodoldan @sonnysangha @9y5 @thchia +/types/react-svg/ @viccrubs /types/react-svg-pan-zoom/ @huy-nguyen /types/react-swf/ @stepancar /types/react-swipe/ @DeividasBakanas @@ -3265,8 +3370,9 @@ /types/react-twitter-auth/ @paulfasola /types/react-user-tour/ @ccancellieri /types/react-virtual-keyboard/ @bsurai -/types/react-virtualized/ @kaoDev @guntherjh @wasd171 @szabolcsx @kraenhansen +/types/react-virtualized/ @kaoDev @guntherjh @wasd171 @szabolcsx @kraenhansen @Stevearzh @mgoszcz2 /types/react-virtualized-select/ @seansfkelley +/types/react-webcam/ @squat /types/react-weui/ @tairan /types/react-widgets/ @rogierschouten @sanyatuning @frodehansen2 @r3nya /types/react-widgets-moment/ @dawnmist @@ -3274,7 +3380,7 @@ /types/reactable/ @spielc /types/reactcss/ @chrisgervang @LKay /types/reactstrap/v4/ @alihammad @mfal @danilobjr @fabiopaiva -/types/reactstrap/ @alihammad @mfal @danilobjr @fabiopaiva @FaithForHumans @KurtPreston @kraenhansen @timc13 +/types/reactstrap/ @alihammad @mfal @danilobjr @fabiopaiva @FaithForHumans @KurtPreston @timc13 /types/read/ @timjk /types/read-chunk/ @crispybee /types/read-package-tree/ @mgroenhoff @@ -3286,12 +3392,13 @@ /types/readline-transform/ @dex4er /types/reapop/ @Barrokgl /types/recase/ @18steps -/types/recharts/ @mthmulders @rapmue @royxue @ZheyangSong @richbai90 -/types/recompose/ @iskandersierra @mrapogee @clayne11 +/types/recharts/ @mthmulders @rapmue @royxue @ZheyangSong @richbai90 @caspeco-dan +/types/recluster/ @dex4er +/types/recompose/ @iskandersierra @mrapogee @clayne11 @Pajn /types/reconnectingwebsocket/ @nguarracino /types/recursive-readdir/v1/ @elisee /types/recursive-readdir/ @elisee @MicahZoltu -/types/redis/ @soywiz @CodeAnimal @MugeSo @UppaJung @Rokt33r @43081j +/types/redis/ @soywiz @CodeAnimal @MugeSo @UppaJung @Rokt33r @43081j @barnski /types/redis-errors/ @43081j /types/redis-mock/ @BendingBender /types/redis-rate-limiter/ @westy92 @@ -3315,7 +3422,7 @@ /types/redux-first-router-link/ @janb87 /types/redux-form/v4/ @aikoven /types/redux-form/v6/ @carsonf @aikoven @LKay @bancek -/types/redux-form/ @carsonf @aikoven @LKay @bancek @alsiola @tehbi4 +/types/redux-form/ @carsonf @aikoven @LKay @bancek @alsiola @tehbi4 @huwmartin /types/redux-immutable/ @oizie @sebald @gavingregory /types/redux-immutable-state-invariant/ @remojansen @highflying /types/redux-infinite-scroll/ @silkyfray @@ -3338,6 +3445,7 @@ /types/redux-storage/ @asvetliakov /types/redux-storage-engine-jsurl/ @screendriver /types/redux-storage-engine-localstorage/ @screendriver +/types/redux-test-utils/ @huwmartin /types/redux-ui/ @andyshuxin /types/ref/ @loyd /types/ref-array/ @loyd @@ -3380,7 +3488,7 @@ /types/restler/ @cyrilschumacher /types/restling/ @loghorn /types/resumablejs/ @DanielMcAssey -/types/rethinkdb/ @alexgorbatchev +/types/rethinkdb/ @alexgorbatchev @AdrianFarmadin /types/retry/ @krenor /types/retry-as-promised/ @Raigen /types/rev-hash/ @ikatyang @@ -3396,14 +3504,16 @@ /types/riot/ @Stubb0rn /types/riot-api-nodejs/ @zafixlrp /types/riot-games-api/ @xstoudi +/types/riot-route/ @karak /types/riotcontrol/ @chrootsu /types/riotjs/ @vvakame /types/rison/ @impworks /types/rivets/ @TrevorDev @matjanos /types/roads/ @dancespiele +/types/roads-server/ @dancespiele /types/rollup-plugin-json/ @asmockler /types/ronomon__crypto-async/ @BendingBender -/types/rosie/ @abner @subvertallchris +/types/rosie/ @abner @subvertallchris @abukurov /types/roslib/ @Pro @skycoop @dgorobopec /types/rot-js/ @atiaxi /types/route-parser/ @ianks @bobbuehler @@ -3411,7 +3521,6 @@ /types/royalslider/ @csrakowski /types/rpio/ @DominikPalo @Pencl /types/rrc/ @DeividasBakanas -/types/rrule/ @waratuman /types/rsmq/ @MugeSo /types/rsmq-worker/ @MugeSo /types/rss/ @secondwtq @@ -3448,7 +3557,7 @@ /types/saml20/ @HackerUndKoch /types/samlp/ @horiuchi /types/sammy/ @borisyankov @oising -/types/sanctuary/ @davidchambers @cortopy +/types/sanctuary/ @davidchambers @cortopy @piq9117 /types/sandboxed-module/ @svi3c /types/sane/ @BendingBender /types/sanitize-filename/ @Nemo157 @@ -3472,8 +3581,10 @@ /types/scryptsy/ @micksatana /types/seamless/ @danmana /types/seamless-immutable/ @alex3165 @xsburg @geirsagberg +/types/seededshuffle/ @urish /types/seedrandom/ @kernhanda /types/segment-analytics/ @fongandrew +/types/select2/v3/ @borisyankov /types/select2/ @borisyankov /types/selectables/ @renjfk /types/selectize/ @adidahiya @naBausch @@ -3506,9 +3617,9 @@ /types/semver-diff/ @chrismbarr /types/sencha_touch/ @brian428 /types/send/ @MikeJerred -/types/seneca/ @psnider +/types/seneca/ @psnider @kevynb /types/sequelize/v3/ @samuelneff @codeanimal @drinchev @morpheusxaut @torhal -/types/sequelize/ @samuelneff @codeanimal @drinchev @babolivier @kukoo1 @oktapodia @morpheusxaut @TitaneBoy @zjy01 @nidzov @Raigen @todd +/types/sequelize/ @samuelneff @codeanimal @drinchev @babolivier @kukoo1 @oktapodia @morpheusxaut @TitaneBoy @zjy01 @nidzov @Raigen @todd @nrschultz /types/sequelize-fixtures/ @cschwarz /types/sequencify/ @npenin /types/sequester/ @Strate @@ -3522,12 +3633,13 @@ /types/session-file-store/ @blendsdk @rokt33r /types/set-cookie-parser/ @nickp10 /types/set-value/ @DanielRosenwasser +/types/settings/ @shreyjain1994 /types/sha1/ @arcdev1 /types/shallowequal/ @seansfkelley /types/shapefile/ @DenisCarriere /types/sharedworker/ @nakakura /types/sharepoint/ @gandjustas @andrei-markeev @baywet @teroarvola @dennispg -/types/sharp/ @lith-light-g +/types/sharp/ @lith-light-g @wooseopkim /types/sheetify/ @toddself /types/shell-escape/ @nenadalm /types/shell-quote/ @jason0x43 @@ -3539,7 +3651,7 @@ /types/shortid/ @stpettersens @despairblue /types/shot/ @AJamesPhillips /types/should-sinon/ @Arylo -/types/showdown/ @cbowdon @tan9 +/types/showdown/ @cbowdon @tan9 @arielsaldana /types/shrink-ray/ @forabi /types/siema/ @Irmiz @0x6368656174 @samnau /types/siesta/ @bquarmby @@ -3556,6 +3668,7 @@ /types/simple-oauth2/ @mad-mike /types/simple-peer/ @tlaziuk /types/simple-url-cache/ @a-lucas +/types/simple-websocket/ @dex4er /types/simple-xml/ @notVitaliy /types/simplebar/v1/ @gregonnet @leonard-thieu /types/simplebar/ @gregonnet @leonard-thieu @@ -3566,7 +3679,7 @@ /types/sinon/ @mrbigdog2u @rationull @lumaxis @nicojs @43081j /types/sinon-as-promised/ @igrayson /types/sinon-chai/ @kazimanzurrashid @jedmao -/types/sinon-chrome/ @pimterry @crimx +/types/sinon-chrome/ @pimterry @crimx @kobanyan /types/sinon-express-mock/ @jpchip @tlaziuk /types/sinon-mongoose/ @stevehipwell /types/sinon-stub-promise/ @vintem @tstackhouse @@ -3614,6 +3727,7 @@ /types/sort-array/ @mrmlnc /types/sortablejs/ @Maw-Fox /types/soundmanager2/ @elton2048 +/types/soupbintcp/ @jewbre /types/source-list-map/ @e-cloud /types/source-map-support/ @Bartvds @jason0x43 /types/space-pen/ @vvakame @@ -3637,8 +3751,9 @@ /types/spotify-web-playback-sdk/ @Festify @mraerino @NeoLegends /types/sprintf/ @soywiz @BendingBender /types/sprintf-js/ @jasonswearingen @BendingBender +/types/sql-bricks/ @adn05 @paleo /types/sql.js/ @Hozuki -/types/sqlite3/ @nmalaguti @dpyro +/types/sqlite3/ @nmalaguti @dpyro @BehindTheMath /types/sqlstring/ @marvinhagemeister /types/squirejs/ @bradleyayers /types/srp/ @Patman64 @@ -3660,7 +3775,11 @@ /types/statuses/ @tkrotoff @BendingBender /types/std-mocks/ @jdxcode /types/steam/ @kant2002 +/types/steam-client/ @Slessi +/types/steam-totp/ @phenomax +/types/steamid/ @Slessi /types/steed/ @Paul-Isache +/types/stellar-sdk/ @carl-foster @tristonj /types/stemmer/ @will-ockmore /types/sticky-cluster/ @paustint /types/stompjs/ @jimic @Dr4k4n @@ -3681,9 +3800,11 @@ /types/stream-series/ @k-kagurazaka /types/stream-to-array/v0/ @Bartvds /types/stream-to-array/ @Bartvds @BendingBender +/types/stream-to-promise/ @Alorel /types/streaming-json-stringify/ @BendingBender /types/streamjs/ @erosb /types/strftime/ @cyrilschumacher +/types/strict-uri-encode/ @hoishin /types/string/ @basp /types/string-hash/ @ethanrubio /types/string-similarity/ @ragtime @@ -3693,11 +3814,12 @@ /types/strip-ansi/ @mhegazy /types/strip-bom/ @mhegazy /types/strip-json-comments/ @dmoonfire -/types/stripe/ @wjohnsto @codeanimal @sampsonjoliver @LinusU @brannon @kkamperschroer @starhoshi +/types/stripe/ @wjohnsto @codeanimal @sampsonjoliver @LinusU @brannon @kkamperschroer @starhoshi @bruun /types/stripe-checkout/ @cgwrench /types/stripe-v2/ @ejsmith @amritk @adamcmiel @jleider @galuszkak /types/stripe-v3/ @ejsmith @amritk @adamcmiel @jleider @galuszkak /types/strong-cluster-control/ @shuntksh +/types/strong-error-handler/ @blankstar85 /types/strong-log-transformer/ @azasypkin /types/strophe/ @DavidKDeutsch /types/structured-source/ @azu @@ -3709,7 +3831,7 @@ /types/succinct/ @EnableSoftware /types/sudo-block/ @BendingBender /types/suitescript/ @darrenhillconsulting -/types/sumo-logger/ @forabi +/types/sumo-logger/ @forabi @clementallen /types/superagent/v2/ @varju @NicoZelaya @mxl /types/superagent/ @NicoZelaya @mxl @paplorinc @shreyjain1994 /types/superagent-no-cache/ @mxl @@ -3729,6 +3851,7 @@ /types/swag/ @shiwano /types/swagger-express-middleware/ @alexandreroba /types/swagger-express-mw/ @micmro +/types/swagger-express-validator/ @pinguet62 /types/swagger-hapi/ @micmro /types/swagger-jsdoc/ @drGrove /types/swagger-node-runner/ @micmro @@ -3755,6 +3878,7 @@ /types/tabris-plugin-firebase/ @eclipsesource /types/tabtab/ @vojtechhabarta /types/tabulator/ @euginio +/types/tapable/v0/ @e-cloud /types/tapable/ @e-cloud /types/tape/ @Bartvds @sodatea @DennisSchwartz @mikehenrty /types/tar/ @SomaticIT @connor4312 @@ -3775,6 +3899,7 @@ /types/text-buffer/ @GlenCFL /types/text-encoding/ @pine613 /types/text-encoding-utf-8/ @trxcllnt +/types/textarea-caret/ @shiftkey /types/three/ @gyohk @florentpoujol @SereznoKot @omni360 @ivoisbelongtous @piranha771 @qszhusightp @nakakura @s093294 @Pro @efokschaner @PsychoSTS @dhritzkiv @apurvaojas /types/thrift/ @kamek-pf @kevin-greene-ck @jessezhang91 /types/throng/ @cyrilschumacher @tatethurston @@ -3792,10 +3917,11 @@ /types/timer-machine/ @dolanmiu /types/timezone-js/ @bonnici /types/tinder/ @pingec +/types/tiny-slider-react/ @screendriver /types/tinycolor2/ @M-Zuber @geertjansen @nvh /types/tinycopy/ @vvatanabe /types/tinymce/ @martinduparc @ipoul @nicohartto -/types/titanium/ @cyounkins +/types/titanium/ @appcelerator @janvennemann /types/title/ @fa7ad /types/tldjs/ @geoffreak /types/tmp/ @optical @Perlmint @@ -3806,7 +3932,7 @@ /types/toastr/ @borisyankov /types/tocktimer/ @evanshortiss /types/tooltipster/ @stephenlautier @pjmagee @VorobeY1326 @leonard-thieu @janhi @joeskeen -/types/topojson/ @ricardo-mello @chenzhutian +/types/topojson/ @ricardo-mello @chenzhutian @denisname /types/torrent-stream/ @xstoudi /types/touch/ @mizunashi-mana @BendingBender /types/touch-events/ @kevinb7 @@ -3815,13 +3941,14 @@ /types/tracking/ @pimterry /types/transducers-js/ @colinkahn @dphilipson @NaridaL /types/transducers.js/ @dphilipson -/types/trash/ @matthew-matvei +/types/trash/ @matthew-matvei @hoishin /types/traverse/ @newclear /types/traverson/ @marcinporebski /types/trayballoon/ @korve /types/tress/ @sindilevich /types/trim/ @skysteve /types/trunk8/ @niemyjski +/types/tryer/ @bengry /types/tspromise/ @soywiz /types/tunnel/ @BendingBender /types/tus-js-client/ @kevhiggins @@ -3847,9 +3974,11 @@ /types/typescript-deferred/ @DirtyHairy /types/tz-format/ @samverschueren /types/ua-parser-js/ @superduper @legendecas @MeLlamoPablo -/types/uglify-js/ @tkrotoff +/types/uglify-js/v2/ @tkrotoff +/types/uglify-js/ @alan-agius4 @tkrotoff /types/uglifycss/ @blendsdk -/types/ui-grid/ @btesser @joeskeen +/types/uglifyjs-webpack-plugin/ @vajkayrene +/types/ui-grid/ @btesser @joeskeen @pbojanczyk /types/ui-router-extras/ @mputters @marcel-k @LaserUnicorns /types/ui-select/ @nkovacic /types/uid-safe/ @geoffreak @@ -3858,7 +3987,7 @@ /types/ultra-strftime/ @dex4er /types/umbraco/ @DeCareSystemsIreland /types/umd/ @TeamworkGuy2 -/types/umzug/ @drinchev @mlamp +/types/umzug/ @drinchev @mlamp @trodi /types/underscore/ @borisyankov @jbaldwin @ccurrens @clottman /types/underscore-ko/ @MagicMau /types/underscore.string/ @rygine @@ -3878,7 +4007,7 @@ /types/unzip/ @coding2012 /types/unzipper/ @s73obrien /types/update-notifier/v1/ @vvakame @nchen63 -/types/update-notifier/ @vvakame @nchen63 +/types/update-notifier/ @vvakame @nchen63 @bitjson /types/upng-js/ @plantain-00 /types/uppercamelcase/ @plantain-00 /types/urbanairship-cordova/ @Justin-Credible @@ -3909,13 +4038,13 @@ /types/uuid-1345/ @mugeso /types/uuid-js/ @mhegazy /types/uuid-validate/ @HiromiShikata -/types/uws/ @plantain-00 +/types/uws/ @plantain-00 @orblazer /types/valdr/ @ilbertz /types/valdr-message/ @ilbertz /types/valerie/ @conficient /types/vali-date/ @SamVerschueren /types/valid-url/ @stevehipwell -/types/validator/ @tgfjt @chrootsu @IOAyman @louy @kacepe @deptno +/types/validator/ @tgfjt @chrootsu @IOAyman @louy @kacepe @deptno @builtinnya /types/validatorjs/ @LKay @danmana /types/vanilla-modal/ @samnau /types/vanilla-tilt/ @BrunnerLivio @@ -3963,6 +4092,7 @@ /types/w2ui/ @Ptival /types/w3c-generic-sensor/ @kenchris /types/w3c-image-capture/ @cosium +/types/w3c-permissions/ @jberube /types/w3c-screen-orientation/ @kenchris /types/w3c-web-usb/ @larsgk /types/waitme/ @totpero @@ -3987,12 +4117,14 @@ /types/webcl/ @NCARalph /types/webcomponents.js/ @adidahiya /types/webcrypto/ @iislucas -/types/webdriverio/ @nmalaguti @timbru31 @fsmedberg-tc @tanvirislam06 +/types/webdriverio/ @nmalaguti @timbru31 @fsmedberg-tc @tanvirislam06 @phil-lgr /types/webfontloader/ @doskallemaskin /types/webgl-ext/ @zenmumbler /types/webgl2/ @nkemnitz +/types/webidl2/ @saschanaz /types/webmidi/ @lostfictions -/types/webpack/ @tkqubo @bumbleblym @bcherny @tommytroylin @mohsen1 @jcreamer898 @ahmed-taj @alan-agius4 @elliottsj @jason0x43 +/types/webpack/v3/ @tkqubo @bumbleblym @bcherny @tommytroylin @mohsen1 @jcreamer898 @ahmed-taj @alan-agius4 @elliottsj @jason0x43 +/types/webpack/ @tkqubo @bumbleblym @bcherny @tommytroylin @mohsen1 @jcreamer898 @ahmed-taj @alan-agius4 @elliottsj @jason0x43 @dennispg /types/webpack-bundle-analyzer/ @kryops /types/webpack-chain/ @eirikurn @psachs21 /types/webpack-chunk-hash/ @mtraynham @@ -4017,12 +4149,14 @@ /types/webspeechapi/ @saschanaz /types/websql/ @TeamworkGuy2 /types/webtorrent/ @niieani @tlaziuk -/types/webvr-api/ @lostfictions +/types/webvr-api/ @efokschaner /types/week/ @sindrenm /types/weighted/ @ccitro -/types/weixin-app/ @taoqf +/types/weixin-app/ @taoqf @AlexStacker /types/wellknown/ @yairtawil +/types/whatwg-mimetype/ @petejohanson /types/whatwg-streams/ @saschanaz +/types/whatwg-url/ @aomarks /types/wheel/ @BTOdell /types/when/ @derekcicerone @Nemo157 /types/which/ @vvakame @cspotcode @@ -4039,19 +4173,22 @@ /types/winrt-uwp/ @saschanaz @taylor224 /types/winston/ @bonnici @codeanimal @DABH /types/winston-dynamodb/ @nickiannone +/types/winston-syslog/ @cjbarth /types/wiring-pi/ @NoHomey /types/wnumb/ @acoreyj /types/wonder.js/ @yyc-git /types/word-list-json/ @dovidm /types/wordcloud/ @joeskeen /types/words-to-numbers/ @James-Frowen +/types/wpapi/ @guoyunhe +/types/wrap-ansi/v2/ @kayahr /types/wrap-ansi/ @kayahr /types/wreck/ @marcinporebski /types/wrench/ @soywiz /types/write-file-atomic/ @BendingBender /types/write-json-file/ @DenisCarriere /types/write-pkg/ @azasypkin -/types/ws/ @loyd @elithrar @mlamp @TitaneBoy +/types/ws/ @loyd @elithrar @mlamp @TitaneBoy @orblazer /types/wtfnode/ @dex4er /types/wu/ @phiresky /types/wx-js-sdk-dt/ @agasbzj @@ -4086,6 +4223,7 @@ /types/yargs/ @poelstra @mizunashi-mana @pushplay @jeffkenney @JimiC /types/yauzl/ @ffflorian /types/yayson/ @Codesleuth +/types/yazl/ @taoqf /types/ydn-db/ @yathit @gabrielmaldi /types/yeoman-generator/ @armorik83 @janslow @ikatyang /types/yeoman-test/ @ikatyang diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 79793c16c1..b1a1039f82 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -10,7 +10,7 @@ Please fill in this template. Select one of these and delete the others: If adding a new definition: -- [ ] The package does not provide its own types, and you can not add them. +- [ ] The package does not already provide its own types, or cannot have its `.d.ts` files generated via `--declaration` - [ ] If this is for an NPM package, match the name. If not, do not conflict with the name of an NPM package. - [ ] Create it with `dts-gen --dt`, not by basing it on an existing project. - [ ] `tslint.json` should be present, and `tsconfig.json` should have `noImplicitAny`, `noImplicitThis`, `strictNullChecks`, and `strictFunctionTypes` set to `true`. diff --git a/README.es.md b/README.es.md index ce94bb0298..c3cff967db 100644 --- a/README.es.md +++ b/README.es.md @@ -87,6 +87,7 @@ Primero, haz un [fork](https://guides.github.com/activities/forking/) en este re * `cd types/my-package-to-edit` * Haz cambios. Recuerda editar las pruebas. + Si realiza cambios importantes, no olvide [actualizar una versión principal](#quiero-actualizar-un-paquete-a-una-nueva-versión-principal). * También puede que quieras añadirte la sección "Definitions by" en el encabezado del paquete. - Esto hará que seas notificado (a través de tu nombre de usuario en GitHub) cada vez que alguien haga un pull request o issue sobre el paquete. - Haz esto añadiendo tu nombre al final de la línea, así como en `// Definitions by: Alice , Bob `. diff --git a/README.md b/README.md index cc59284394..554316e52a 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,7 @@ First, [fork](https://guides.github.com/activities/forking/) this repository, in * `cd types/my-package-to-edit` * Make changes. Remember to edit tests. + If you make breaking changes, do not forget to [update a major version](#i-want-to-update-a-package-to-a-new-major-version). * You may also want to add yourself to "Definitions by" section of the package header. - This will cause you to be notified (via your GitHub username) whenever someone makes a pull request or issue about the package. - Do this by adding your name to the end of the line, as in `// Definitions by: Alice , Bob `. @@ -105,7 +106,7 @@ If it doesn't, you can do so yourself in the comment associated with the PR. #### Create a new package -If you are the library author, or can make a pull request to the library, [bundle types](http://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html) instead of publishing to DefinitelyTyped. +If you are the library author and your package is written in TypeScript, [bundle the autogenerated declaration files](http://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html) in your package instead of publishing to DefinitelyTyped. If you are adding typings for an NPM package, create a directory with the same name. If the package you are adding typings for is not on NPM, make sure the name you choose for it does not conflict with the name of a package on NPM. @@ -239,7 +240,8 @@ If types are part of a web standard, they should be contributed to [TSJS-lib-gen #### A package uses `export =`, but I prefer to use default imports. Can I change `export =` to `export default`? -If default imports work in your environment, consider turning on the [`--allowSyntheticDefaultImports`](http://www.typescriptlang.org/docs/handbook/compiler-options.html) compiler option. +If you are using TypeScript 2.7 or later, use `--esModuleInterop` in your project. +Otherwise, if default imports work in your environment (e.g. Webpack, SystemJS, esm), consider turning on the [`--allowSyntheticDefaultImports`](http://www.typescriptlang.org/docs/handbook/compiler-options.html) compiler option. Do not change the type definition if it is accurate. For an NPM package, `export =` is accurate if `node -p 'require("foo")'` is the export, and `export default` is accurate if `node -p 'require("foo").default'` is the export. diff --git a/notNeededPackages.json b/notNeededPackages.json index 5c649d2368..dd5523d102 100644 --- a/notNeededPackages.json +++ b/notNeededPackages.json @@ -210,6 +210,12 @@ "sourceRepoURL": "https://github.com/blakeembrey/camel-case", "asOfVersion": "1.2.1" }, + { + "libraryName": "catalog", + "typingsPackageName": "catalog", + "sourceRepoURL": "https://github.com/interactivethings/catalog", + "asOfVersion": "3.5.0" + }, { "libraryName": "chalk", "typingsPackageName": "chalk", @@ -654,6 +660,12 @@ "sourceRepoURL": "https://github.com/ashtuchkin/iconv-lite", "asOfVersion": "0.4.14" }, + { + "libraryName": "ids", + "typingsPackageName": "ids", + "sourceRepoURL": "https://github.com/bpmn-io/ids", + "asOfVersion": "0.2.2" + }, { "libraryName": "immutability-helper", "typingsPackageName": "immutability-helper", @@ -1146,6 +1158,12 @@ "sourceRepoURL": "https://github.com/react-ga/react-ga", "asOfVersion": "2.3.0" }, + { + "libraryName": "react-native-collapsible", + "typingsPackageName": "react-native-collapsible", + "sourceRepoURL": "https://github.com/oblador/react-native-collapsible", + "asOfVersion": "0.11.0" + }, { "libraryName": "react-native-elements", "typingsPackageName": "react-native-elements", @@ -1164,6 +1182,12 @@ "sourceRepoURL": "https://github.com/idehub/react-native-google-analytics-bridge", "asOfVersion": "5.3.3" }, + { + "libraryName": "react-native-linear-gradient", + "typingsPackageName": "react-native-linear-gradient", + "sourceRepoURL": "https://github.com/react-native-community/react-native-linear-gradient", + "asOfVersion": "2.4.0" + }, { "libraryName": "react-native-modal", "typingsPackageName": "react-native-modal", @@ -1272,6 +1296,12 @@ "sourceRepoURL": "https://github.com/router5/router5", "asOfVersion": "5.0.0" }, + { + "libraryName": "rrule", + "typingsPackageName": "rrule", + "sourceRepoURL": "https://github.com/jakubroztocil/rrule", + "asOfVersion": "2.2.9" + }, { "libraryName": "rvo2", "typingsPackageName": "rvo2", diff --git a/package.json b/package.json index db67595b77..37d1f4d48b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "definitely-typed", - "version": "0.0.1", + "version": "0.0.2", "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped", "repository": { "type": "git", diff --git a/types/a-big-triangle/a-big-triangle-tests.ts b/types/a-big-triangle/a-big-triangle-tests.ts new file mode 100644 index 0000000000..75198e8690 --- /dev/null +++ b/types/a-big-triangle/a-big-triangle-tests.ts @@ -0,0 +1,5 @@ +import drawTriangle = require("a-big-triangle"); + +const gl = new WebGLRenderingContext(); + +drawTriangle(gl); // $ExpectType void diff --git a/types/a-big-triangle/index.d.ts b/types/a-big-triangle/index.d.ts new file mode 100644 index 0000000000..6e397cfa7e --- /dev/null +++ b/types/a-big-triangle/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for a-big-triangle 1.0 +// Project: https://github.com/mikolalysenko/a-big-triangle +// Definitions by: Mathias Paumgarten +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare function createABigTriangle(gl: WebGLRenderingContext): void; + +export = createABigTriangle; diff --git a/types/a-big-triangle/tsconfig.json b/types/a-big-triangle/tsconfig.json new file mode 100644 index 0000000000..c85f12fe20 --- /dev/null +++ b/types/a-big-triangle/tsconfig.json @@ -0,0 +1,24 @@ +{ + "files": [ + "index.d.ts", + "a-big-triangle-tests.ts" + ], + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + } +} diff --git a/types/a-big-triangle/tslint.json b/types/a-big-triangle/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/a-big-triangle/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/accept-language-parser/accept-language-parser-tests.ts b/types/accept-language-parser/accept-language-parser-tests.ts index b137df02e4..586a31cb93 100644 --- a/types/accept-language-parser/accept-language-parser-tests.ts +++ b/types/accept-language-parser/accept-language-parser-tests.ts @@ -1,4 +1,4 @@ -// https://github.com/opentable/accept-language-parser/blob/v1.4.1/index.js +// https://github.com/opentable/accept-language-parser/blob/v1.5.0/index.js import * as AcceptLanguageParser from 'accept-language-parser'; @@ -23,3 +23,9 @@ const l3: AcceptLanguageParser.Language = { const parsed1: AcceptLanguageParser.Language[] = AcceptLanguageParser.parse(''); const pick1: string | null = AcceptLanguageParser.pick([''], ''); const pick2: string | null = AcceptLanguageParser.pick([''], [l1, l2, l3]); +const pick3: string | null = AcceptLanguageParser.pick([''], '', {}); +const pick4: string | null = AcceptLanguageParser.pick([''], '', { loose: true }); + +const pickOptions: AcceptLanguageParser.PickOptions = { + loose: true +}; diff --git a/types/accept-language-parser/index.d.ts b/types/accept-language-parser/index.d.ts index 16d003648c..c47969c940 100644 --- a/types/accept-language-parser/index.d.ts +++ b/types/accept-language-parser/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for accept-language-parser 1.4 +// Type definitions for accept-language-parser 1.5 // Project: https://github.com/opentable/accept-language-parser // Definitions by: Niklas Wulf // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -7,7 +7,11 @@ // https://github.com/opentable/accept-language-parser/blob/v1.4.1/index.js export function parse(acceptLanguage: string): Language[]; -export function pick(supportedLanguages: string[], acceptLanguage: string | Language[]): string | null; +export function pick( + supportedLanguages: string[], + acceptLanguage: string | Language[], + options?: PickOptions +): string | null; export interface Language { code: string; @@ -15,3 +19,7 @@ export interface Language { region?: string; quality: number; } + +export interface PickOptions { + loose?: boolean; +} diff --git a/types/ace/index.d.ts b/types/ace/index.d.ts index 1f7dd9752b..828aab87c2 100644 --- a/types/ace/index.d.ts +++ b/types/ace/index.d.ts @@ -101,6 +101,29 @@ declare namespace AceAjax { transformAction(state: any, action: any, editor: any, session: any, param: any): any; } + export interface OptionProvider { + + /** + * Sets a Configuration Option + **/ + setOption(optionName: string, optionValue: any): void; + + /** + * Sets Configuration Options + **/ + setOptions(keyValueTuples: any): void; + + /** + * Get a Configuration Option + **/ + getOption(name: string):any; + + /** + * Get Configuration Options + **/ + getOptions():any; + } + //////////////// /// Ace //////////////// @@ -495,7 +518,7 @@ declare namespace AceAjax { * Stores all the data about [[Editor `Editor`]] state providing easy way to change editors state. * `EditSession` can be attached to only one [[Document `Document`]]. Same `Document` can be attached to several `EditSession`s. **/ - export interface IEditSession { + export interface IEditSession extends OptionProvider { selection: Selection; @@ -1074,7 +1097,7 @@ declare namespace AceAjax { * The `Editor` manages the [[EditSession]] (which manages [[Document]]s), as well as the [[VirtualRenderer]], which draws everything to the screen. * Event sessions dealing with the mouse and keyboard are bubbled up from `Document` to the `Editor`, which decides what to do with them. **/ - export interface Editor { + export interface Editor extends OptionProvider { on(ev: string, callback: (e: any) => any): void; @@ -1113,26 +1136,6 @@ declare namespace AceAjax { execCommand(command:string, args?: any): void; - /** - * Sets a Configuration Option - **/ - setOption(optionName: any, optionValue: any): void; - - /** - * Sets Configuration Options - **/ - setOptions(keyValueTuples: any): void; - - /** - * Get a Configuration Option - **/ - getOption(name: any):any; - - /** - * Get Configuration Options - **/ - getOptions():any; - /** * Get rid of console warning by setting this to Infinity **/ @@ -2692,7 +2695,7 @@ declare namespace AceAjax { /** * The class that is responsible for drawing everything you see on the screen! **/ - export interface VirtualRenderer { + export interface VirtualRenderer extends OptionProvider { scroller: any; @@ -3036,6 +3039,37 @@ declare namespace AceAjax { **/ new(container: HTMLElement, theme?: string): VirtualRenderer; } + + export interface Completer { + /** + * Provides possible completion results asynchronously using the given callback. + * @param editor The editor to associate with + * @param session The `EditSession` to refer to + * @param pos An object containing the row and column + * @param prefix The prefixing string before the current position + * @param callback Function to provide the results or error + */ + getCompletions: (editor: Editor, session: IEditSession, pos: Position, prefix: string, callback: CompletionCallback) => void; + + /** + * Provides tooltip information about a completion result. + * @param item The completion result + */ + getDocTooltip?: (item: Completion) => void; + } + + export interface Completion { + value: string; + meta: string; + type?: string; + caption?: string; + snippet?: any; + score?: number; + exactMatch?: number; + docHTML?: string; + } + + export type CompletionCallback = (error: Error, results: Completion[]) => void; } declare var ace: AceAjax.Ace; diff --git a/types/actions-on-google/assistant-app.d.ts b/types/actions-on-google/assistant-app.d.ts index d835915259..76a206122c 100644 --- a/types/actions-on-google/assistant-app.d.ts +++ b/types/actions-on-google/assistant-app.d.ts @@ -1,6 +1,7 @@ import * as express from 'express'; -import { BasicCard, Carousel, ImageDisplays, List, OptionItem, RichResponse } from './response-builder'; +import { BasicCard, BrowseCarousel, BrowseItem, Carousel, ImageDisplays, List, MediaObject, + MediaResponse, MediaValues, OptionItem, RichResponse, SimpleResponse } from './response-builder'; import { ActionPaymentTransactionConfig, Cart, GooglePaymentTransactionConfig, LineItem, Location, Order, OrderUpdate, TransactionDecision, TransactionValues } from './transactions'; @@ -30,6 +31,8 @@ export enum StandardIntents { DELIVERY_ADDRESS, /** App fires TRANSACTION_DECISION intent when action asks for transaction decision. */ TRANSACTION_DECISION, + /** App fires PLACE intent when action asks for place. */ + PLACE, /** App fires CONFIRMATION intent when requesting affirmation from user. */ CONFIRMATION, /** App fires DATETIME intent when requesting date/time from user. */ @@ -45,7 +48,11 @@ export enum StandardIntents { /** App fires REGISTER_UPDATE intent when requesting user to register for proactive updates. */ REGISTER_UPDATE, /** App receives CONFIGURE_UPDATES intent to indicate a REGISTER_UPDATE intent should be sent. */ - CONFIGURE_UPDATES + CONFIGURE_UPDATES, + /** App fires LINK intent to request user to open to link. */ + LINK, + /** App receives MEDIA_STATUS intent when the MediaResponse status is updated from user. */ + MEDIA_STATUS } /** @@ -101,6 +108,10 @@ export enum BuiltInArgNames { * Transactions decision argument. */ TRANSACTION_DECISION_VALUE, + /** + * Place value argument. + */ + PLACE, /** * Confirmation argument. */ @@ -126,7 +137,11 @@ export enum BuiltInArgNames { */ NEW_SURFACE, /** Update registration value argument. */ - REGISTER_UPDATE + REGISTER_UPDATE, + /** Link request result argument. */ + LINK, + /** MediaStatus value argument. */ + MEDIA_STATUS } /** @@ -173,6 +188,14 @@ export enum SurfaceCapabilities { * The ability to output on a screen */ SCREEN_OUTPUT, + /** + * The ability to output a MediaResponse + */ + MEDIA_RESPONSE_AUDIO, + /** + * The ability to open a web URL + */ + WEB_BROWSER } /** @@ -223,6 +246,18 @@ export enum SignInStatus { ERROR } +/** + * SKU (Stock Keeping Units) types for Play Package Entitlements. + */ +export enum EntitlementSkuTypes { + /** In app purchase */ + IN_APP, + /** In app subscription */ + SUBSCRIPTION, + /** Paid app. */ + APP +} + /** * Possible update trigger time context frequencies. */ @@ -259,10 +294,15 @@ export interface UserName { familyName: string; } +export interface LocationCoordinates { + latitude: number; + longitude: number; +} + /** - * User's permissioned device location. + * Location information. */ -export interface DeviceLocation { +export interface Location { /** Coordinates: {latitude, longitude}. Requested with SupportedPermissions.DEVICE_PRECISE_LOCATION. */ coordinates: Coordinates; /** Full, formatted street address. Requested with SupportedPermissions.DEVICE_PRECISE_LOCATION. */ @@ -273,6 +313,22 @@ export interface DeviceLocation { city: string; } +/** + * User's permissioned device location. + */ +export type DeviceLocation = Location; + +/** + * Place information. + */ +export interface Place extends Location { + /** + * Used with Places API to fetch details of a place. + * See {@link https://developers.google.com/places/web-service/place-id} + */ + placeId: string; +} + /** * Coordinates containing latitude and longitude */ @@ -309,6 +365,33 @@ export interface User { userStorage: string; } +/** + * Google Play Android App Package Entitlements. + */ +export interface PackageEntitlement { + /** Name of the Android app package. */ + packageName: string; + /** List of entitlements for a given app. */ + entitlements: Entitlement[]; +} + +/** + * A user's digital entitlement. + */ +export interface Entitlement { + /** Product SKU. Matches getSku() in Google Play InApp Billing API. */ + sku: string; + /** The type of SKU. One of EntitlementSkuType. */ + skuType: string; + /** For in app purchases/subscriptions, relevant details. */ + inAppDetails: { + /** JSON data of the in app purchase. */ + inAppPurchaseData: object; + /** Matches IN_APP_DATA_SIGNATURE from getPurchases() method in Play InApp Billing API. */ + inAppDataSignature: object; + }; +} + /** * Actions on Google Surface. */ @@ -437,6 +520,16 @@ export class AssistantApp { */ readonly Transactions: typeof TransactionValues; + /** + * Values related to supporting {@link Media}. + */ + readonly Media: typeof MediaValues; + + /** + * SKU (Stock Keeping Units) types for Play Package Entitlements. + */ + readonly EntitlementSkuTypes: typeof EntitlementSkuTypes; + /** * Possible update trigger time context frequencies. */ @@ -923,6 +1016,80 @@ export class AssistantApp { */ askForDeliveryAddress(reason: string, dialogState?: object): express.Response | null; + /** + * Asks user to provide a geo-located place, possibly using contextual information, + * like a store near the user's location or a contact's address. + * + * Developer provides custom text prompts to tailor the request handled by Google. + * + * @example + * // For DialogflowApp: + * + * // Dialogflow Actions + * const Actions = { + * WELCOME: 'input.welcome', + * PLACE: 'get.place' // Create Dialogflow Action with actions_intent_PLACE event + * }; + * + * const app = new DialogflowApp({request, response}); + * + * function handleWelcome (app) { + * const requestPrompt = 'Where do you want to get picked up?'; + * const permissionContext = 'To find a place to pick you up'; + * app.askForPlace(requestPrompt, permissionContext); + * } + * + * function handlePlace (app) { + * const place = app.getPlace(); + * if (place) { + * app.tell(`Ah, I see. You want to get picked up at ${place.address}`); + * } else { + * app.tell(`Sorry, I couldn't find where you want to get picked up`); + * } + * } + * + * const actionMap = new Map(); + * actionMap.set(Actions.WELCOME, handleWelcome); + * actionMap.set(Actions.PLACE, handlePlace); + * app.handleRequest(actionMap); + * + * // For ActionsSdkApp: + * const app = new ActionsSdkApp({ request, response }); + * + * function handleWelcome (app) { + * const requestPrompt = 'Where do you want to get picked up?'; + * const permissionContext = 'To find a place to pick you up'; + * app.askForPlace(requestPrompt, permissionContext); + * } + * + * function handlePlace (app) { + * const place = app.getPlace(); + * if (place) { + * app.tell(`Ah, I see. You want to get picked up at ${place.address}`); + * } else { + * app.tell(`Sorry, I couldn't find where you want to get picked up`); + * } + * } + * + * const actionsMap = new Map(); + * actionsMap.set(app.StandardIntents.MAIN, handleWelcome); + * actionsMap.set(app.StandardIntents.PLACE, handlePlace); + * app.handleRequest(actionsMap); + * + * @param requestPrompt This is the initial response by location sub-dialog. + * For example: "Where do you want to get picked up?" + * @param permissionContext This is the context for seeking permissions. + * For example: "To find a place to pick you up" + * Prompt to user: "*To find a place to pick you up*, I just need to check your location. + * Can I get that from Google?". + * @param dialogState JSON object the app uses to hold dialog state that + * will be circulated back by Assistant. + * @return HTTP response. + * @actionssdk + * @dialogflow + */ + askForPlace(requestPrompt: string, permissionContext: string, dialogState?: object): express.Response | null; + /** * Asks user for a confirmation. * @@ -1131,6 +1298,72 @@ export class AssistantApp { */ askToRegisterDailyUpdate(intent: string, intentArguments: IntentArgument[], dialogState?: object): express.Response | null; + /** + * Requests the user to transfer to a linked out Android app intent. Using this feature + * requires verifying the linked app in the (Actions console)[console.actions.google.com]. + * + * @example + * // For DialogflowApp: + * + * // Dialogflow Actions + * const WELCOME_ACTION = 'input.welcome'; + * const HANDLE_LINK = 'handle.link'; // Create Dialogflow Action with actions_intent_LINK event + * + * const app = new DialogflowApp({ request, response }); + * + * console.log('Request headers: ' + JSON.stringify(request.headers)); + * console.log('Request body: ' + JSON.stringify(request.body)); + * + * function requestLink (app) { + * app.askToDeepLink('Great! Looks like we can do that in the app.', 'Google', + * 'example://gizmos', 'com.example.gizmos', 'handle this for you'); + * } + * + * function handleLink (app) { + * const linkStatus = app.getLinkStatus(); + * app.tell('Okay maybe we can take care of that another time.'); + * } + * + * const actionMap = new Map(); + * actionMap.set(WELCOME_ACTION, requestLink); + * actionMap.set(HANDLE_LINK, handleLink); + * app.handleRequest(actionMap); + * + * // For ActionsSdkApp + * const app = new ActionsSdkApp({ request, response }); + * + * console.log('Request headers: ' + JSON.stringify(request.headers)); + * console.log('Request body: ' + JSON.stringify(request.body)); + * + * function requestLink (app) { + * app.askToDeepLink('Great! Looks like we can do that in the app.', 'Google', + * 'example://gizmos', 'com.example.gizmos', 'handle this for you.'); + * } + * + * function handleLink (app) { + * const linkStatus = app.getLinkStatus(); + * app.tell('Okay maybe we can take care of that another time.'); + * } + * + * const actionMap = new Map(); + * actionMap.set(app.StandardIntents.MAIN, requestLink); + * actionMap.set(app.StandardIntents.LINK, handleLink); + * app.handleRequest(actionMap); + * + * @param prompt A simple response to prepend to the link request. + * @param destinationName The name of the link destination. + * @param url URL of Android deep link. + * @param packageName Android app package name to which to link. + * @param reason The reason to transfer the user. This may be appended to a + * Google-specified prompt. + * @param dialogState JSON object the app uses to hold dialog state that + * will be circulated back by Assistant. Used in {@link ActionsSdkApp}. + * @return HTTP response. + * @dialogflow + * @actionssdk + */ + askToDeepLink(prompt: string | SimpleResponse | null, destinationName: string, url: string, packageName: string, reason?: string | null, dialogState?: object): express.Response | null; + /** * Gets the {@link User} object. * The user object contains information about the user, including @@ -1209,6 +1442,20 @@ export class AssistantApp { */ getLastSeen(): Date | null; + /** + * Get the the list of all digital goods that your user purchased from + * your published Android apps. To enable this feature, see the instructions + * in the (documentation)[https://developers.google.com/actions/identity/digital-goods]. + * + * @example + * const app = new DialogflowApp({request, response}); + * const packageEntitlements = app.getPackageEntitlements(); + * + * @return The list of digital goods purchased by the user in + * any verified Android app package. Null if no Package Entitlements present in the request. + */ + getPackageEntitlements(): PackageEntitlement[] | null; + /** * If granted permission to device's location in previous intent, returns device's * location (see {@link AssistantApp#askForPermissions|askForPermissions}). @@ -1273,6 +1520,15 @@ export class AssistantApp { */ getTransactionDecision(): TransactionDecision; + /** + * Gets the user provided place. Use after askForPlace. + * + * @return Place information given by the user. Null if no place given. + * @dialogflow + * @actionssdk + */ + getPlace(): Place | null; + /** * Gets confirmation decision. Use after askForConfirmation. * @@ -1304,6 +1560,31 @@ export class AssistantApp { */ getSignInStatus(): string; + /** + * Get status of MEDIA_STATUS intent. + * + * @example + * const app = new DialogflowApp({request: request, response: response}); + * + * function mediaStatusIntent (app) { + * const status = app.getMediaStatus(); + * if (status === app.Media.Status.FINISHED) { + * app.tell('Oh, I see you are done playing the media!'); + * } else { + * app.tell(`I don't understand the current media status: ${status}`); + * } + * } + * + * const actionMap = new Map(); + * actionMap.set(app.StandardIntents.MEDIA_STATUS, mediaStatusIntent); + * app.handleRequest(actionMap); + * + * @return Result of media status intent. + * @dialogflow + * @actionssdk + */ + getMediaStatus(): MediaValues.Status | null; + /** * Returns true if user device has a given surface capability. * @@ -1464,6 +1745,16 @@ export class AssistantApp { */ isUpdateRegistered(): boolean; + /** + * Returns the status of a link request. Used with + * {@link AssistantApp#askToDeepLink} + * + * @return The status code of the request to link. + * @dialogflow + * @actionssdk + */ + getLinkStatus(): number; + // --------------------------------------------------------------------------- // Response Builders // --------------------------------------------------------------------------- @@ -1500,6 +1791,13 @@ export class AssistantApp { */ buildCarousel(): Carousel; + /** + * Constructs a Browse Carousel with chainable property setters. + * + * @return Constructed Browse Carousel. + */ + buildBrowseCarousel(): BrowseCarousel; + /** * Constructs OptionItem with chainable property setters. * @@ -1512,6 +1810,15 @@ export class AssistantApp { */ buildOptionItem(key?: string, synonyms?: string | string[]): OptionItem; + /** + * Constructs BrowseItem for the Browse Carousel with chainable property setters. + * + * @param title The displayed title of the Browse Carousel card. + * @param url The URL linked to by clicking the card. + * @return Constructed BrowseItem. + */ + buildBrowseItem(title?: string, url?: string): BrowseItem; + // --------------------------------------------------------------------------- // Transaction Builders // --------------------------------------------------------------------------- @@ -1552,4 +1859,24 @@ export class AssistantApp { * @return Constructed OrderUpdate. */ buildOrderUpdate(orderId: string, isGoogleOrderId: boolean): OrderUpdate; + + // --------------------------------------------------------------------------- + // Media Builders + // --------------------------------------------------------------------------- + + /** + * Constructs Media Response with chainable property setters. + * + * @return Constructed Media Response. + */ + buildMediaResponse(): MediaResponse; + + /** + * Constructs MediaObject with chainable property setters. + * + * @param name Name of media file. + * @param contentUrl Location of media file. + * @return Constructed MediaObject. + */ + buildMediaObject(name: string, contentUrl: string): MediaObject; } diff --git a/types/actions-on-google/index.d.ts b/types/actions-on-google/index.d.ts index 937943e1f0..943554586f 100644 --- a/types/actions-on-google/index.d.ts +++ b/types/actions-on-google/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for actions-on-google 1.8 +// Type definitions for actions-on-google 1.10 // Project: https://github.com/actions-on-google/actions-on-google-nodejs // Definitions by: Joel Hegg // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped diff --git a/types/actions-on-google/response-builder.d.ts b/types/actions-on-google/response-builder.d.ts index 227d102958..9844fe45c1 100644 --- a/types/actions-on-google/response-builder.d.ts +++ b/types/actions-on-google/response-builder.d.ts @@ -27,6 +27,53 @@ export enum ImageDisplays { CROPPED } +/** + * Values related to supporting media. + */ +export namespace MediaValues { + /** + * Type of the media within a MediaResponse. + */ + enum Type { + /** + * Unspecified. + */ + MEDIA_TYPE_UNSPECIFIED, + /** + * Audio stream. + */ + AUDIO + } + + /** + * List of media control status' returned. + */ + enum Status { + /** + * Unspecified. + */ + UNSPECIFIED, + /** + * Finished. + */ + FINISHED + } + + /** + * List of possible item types. + */ + enum ImageType { + /** + * Icon. + */ + ICON, + /** + * Large image. + */ + LARGE + } +} + /** * Simple Response type. */ @@ -155,6 +202,22 @@ export class RichResponse { */ addBasicCard(basicCard: BasicCard): RichResponse; + /** + * Adds media to this response. + * + * @param mediaResponse MediaResponse to include in response. + * @return Returns current constructed RichResponse. + */ + addMediaResponse(mediaResponse: MediaResponse): RichResponse; + + /** + * Adds a Browse Carousel to list of items. + * + * @param browseCarousel Browse Carousel to present to user + * @return Returns current constructed RichResponse. + */ + addBrowseCarousel(browseCarousel: string | BrowseCarousel): RichResponse; + /** * Adds a single suggestion or list of suggestions to list of items. * @@ -325,6 +388,43 @@ export class List { addItems(optionItems: OptionItem | OptionItem[]): List; } +/** + * Class for initializing and constructing BrowseCarousel with chainable interface. + */ +export class BrowseCarousel { + /** + * Constructor for BrowseCarousel. Accepts optional BrowseCarousel to + * clone or list of items to copy. + * + * @param carousel Either a carousel to clone + * or an array of BrowseItem to initialize a new carousel + */ + constructor(carousel?: BrowseCarousel | BrowseItem[]); + + /** + * List of 2-20 items to show in this carousel. Required. + */ + items: BrowseItem[]; + + /** + * Adds a single item or list of items to the carousel. + * + * @param browseItems BrowseItems to add. + * @return Returns current constructed BrowseCarousel. + */ + addItems(browseItems: BrowseItem | BrowseItem[]): BrowseCarousel; + + /** + * Sets the display options for the images in this carousel. + * Use one of the image display constants. If none is chosen, + * ImageDisplays.DEFAULT will be enforced. + * + * @param option The option for displaying the image. + * @return Returns current constructed BrowseCarousel. + */ + setImageDisplay(option: ImageDisplays): BrowseCarousel; +} + /** * Class for initializing and constructing Carousel with chainable interface. */ @@ -350,6 +450,120 @@ export class Carousel { * @return Returns current constructed Carousel. */ addItems(optionItems: OptionItem | OptionItem[]): Carousel; + + /** + * Sets the display options for the images in this carousel. + * Use one of the image display constants. If none is chosen, + * ImageDisplays.DEFAULT will be enforced. + * + * @param option The option for displaying the image. + * @return Returns current constructed Carousel. + */ + setImageDisplay(option: ImageDisplays): Carousel; +} + +/** + * Class for initializing and constructing Option Items with chainable interface. + */ +export class BrowseItem { + /** + * Constructor for BrowseItem. Accepts a title and URL for the Browse Item + * card. + * + * @param title The title of the Browse Item card. + * @param url The URL of the link opened by clicking the Browse Item card. + */ + constructor(title?: string, url?: string); + + /** + * Title of the browse item. Required. + */ + title: string; + + /** + * Description text of the item. Optional. + */ + description?: string; + + /** + * Footer text of the item. Optional. + */ + footer?: string; + + /** + * Image to show on item. Optional. + */ + image?: Image; + + /** + * Url to that clicking the card opens. Optional. + */ + openUrlAction?: object; + + /** + * @return Returns the possible valid values for URL type hints + */ + urlTypeHints(): object; + + /** + * Sets the title for this Browse Item. + * + * @param title Title to show on item. + * @return Returns current constructed BrowseItem. + */ + setTitle(title: string): BrowseItem; + + /** + * Sets the description for this Browse Item. + * + * @param description Description to show on item. + * @return Returns current constructed BrowseItem. + */ + setDescription(description: string): BrowseItem; + + /** + * Sets the footer for this Browse Item. + * + * @param footerText text to show on item. + * @return Returns current constructed BrowseItem. + */ + setFooter(footerText: string): BrowseItem; + + /** + * Sets the image for this Browse Item. + * + * @param url Image source URL. + * @param accessibilityText Text to replace for image for accessibility. + * @param width Width of the image. + * @param height Height of the image. + * @return Returns current constructed BrowseItem. + */ + setImage(url: string, accessibilityText: string, width?: number, height?: number): BrowseItem; + + /** + * Sets the Open URL action - which includes the url and possibly the typeHint + * + * @param url Image source URL. + * @param urlTypeHint One of the typeHints enumerated by this.urlTypeHints() + * @return Returns the current constructed BrowseItem + */ + setOpenUrlAction(url: string, urlTypeHint?: string): BrowseItem; + + /** + * Sets the URL target of the BrowseItem card + * + * @param url Image source URL. + * @return Returns the current constructed BrowseItem + */ + setUrl(url: string): BrowseItem; + + /** + * Sets the URL type hint for the BrowseItem card + * + * @param urlTypeHint One of the typeHints enumerated by this.urlTypeHints() + * @return Returns the current constructed BrowseItem + */ + setUrlTypeHint(urlTypeHint: string): BrowseItem; } /** @@ -430,6 +644,90 @@ export class OptionItem { addSynonyms(synonyms: string | string[]): OptionItem; } +/** + * Class for initializing and constructing MediaResponse with chainable interface. + */ +export class MediaResponse { + /** + * Constructor for MediaResponse. + * @param mediaType Type of the media which defaults to MediaValues.Type.AUDIO + */ + constructor(mediaType: MediaValues.Type); + + /** + * Array of MediaObject held in the MediaResponse. + */ + mediaObjects: MediaObject[]; + + /** + * Type of the media within this MediaResponse + */ + mediaType: MediaValues.Type; + + /** + * Adds a single media file or list of media files to the cart. + * + * @param items Single or Array of MediaObject to add. + * @return Returns current constructed MediaResponse. + */ + addMediaObjects(items: MediaObject | MediaObject[]): MediaResponse; +} + +/** + * Class for initializing and constructing MediaObject with chainable interface. + */ +export class MediaObject { + /** + * Constructor for MediaObject. + * + * @param name Name of the MediaObject. + * @param contentUrl URL of the MediaObject. + */ + constructor(name: string, contentUrl: string); + + /** + * Name of the MediaObject. + */ + name: string; + + /** + * MediaObject URL. + */ + contentUrl: string; + + /** + * Description of the MediaObject. + */ + description?: string; + + /** + * Large image. + */ + largeImage?: Image; + + /** + * Icon image. + */ + icon?: Image; + + /** + * Set the description of the item. + * + * @param description Description of the item. + * @return Returns current constructed MediaObject. + */ + setDescription(description: string): MediaObject; + + /** + * Sets the image for this item. + * + * @param url Image source URL. + * @param type Type of image (LARGE or ICON). + * @return Returns current constructed MediaObject. + */ + setImage(url: string, type: MediaValues.ImageType): MediaObject; +} + /** * Check if given text contains SSML. * @param text Text to check. diff --git a/types/activex-access/index.d.ts b/types/activex-access/index.d.ts index 0fd93502f8..2529538cad 100644 --- a/types/activex-access/index.d.ts +++ b/types/activex-access/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/dn142571.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.4 +// TypeScript Version: 2.6 /// /// diff --git a/types/activex-adodb/activex-adodb-tests.ts b/types/activex-adodb/activex-adodb-tests.ts index f409b888d3..347e1d9c9f 100644 --- a/types/activex-adodb/activex-adodb-tests.ts +++ b/types/activex-adodb/activex-adodb-tests.ts @@ -1,57 +1,426 @@ -let obj0 = new ActiveXObject('ADODB.Command'); +// Note -- running these tests under cscript requires some ES5 polyfills -let obj1 = new ActiveXObject('ADODB.Connection'); +const collectionToArray = (col: { Item(key: any): T }): T[] => { + const results: T[] = []; + const enumerator = new Enumerator(col); + enumerator.moveFirst(); + while (!enumerator.atEnd()) { + results.push(enumerator.item()); + enumerator.moveNext(); + } + return results; +}; -let obj2 = new ActiveXObject('ADODB.Parameter'); - -let obj3 = new ActiveXObject('ADODB.Record'); - -let obj4 = new ActiveXObject('ADODB.Recordset'); - -let obj5 = new ActiveXObject('ADODB.Stream'); - -// open connection to an Excel file -let pathToExcelFile = 'C:\\path\\to\\excel\\file.xlsx'; -let conn = new ActiveXObject('ADODB.Connection'); -conn.Provider = 'Microsoft.ACE.OLEDB.12.0'; -conn.ConnectionString = `Data Source="${pathToExcelFile}";Extended Properties="Excel 12.0;HDR=Yes"`; -conn.Open(); - -// create a Command to access the data -let cmd = new ActiveXObject('ADODB.Command'); -cmd.ActiveConnection = conn; -cmd.CommandText = 'SELECT DISTINCT LastName, CityName FROM [Sheet1$]'; -// get a Recordset -let rs = cmd.Execute(); -// build a string from the Recordset -let s = rs.GetString(ADODB.StringFormatEnum.adClipString, -1, '\t', '\n', '(NULL)'); -rs.Close(); -WScript.Echo(s); - -// create a disconnected recordset -- https://support.microsoft.com/en-us/help/184397/how-to-create-ado-disconnected-recordsets-in-vba-c-java -(() => { - conn = new ActiveXObject('ADODB.Connection'); - conn.Open(); // pass connection details here - - rs = new ActiveXObject('ADODB.Recordset'); - rs.CursorLocation = ADODB.CursorLocationEnum.adUseClient; - rs.Open('SELECT * FROM Table1', conn, ADODB.CursorTypeEnum.adOpenForwardOnly, ADODB.LockTypeEnum.adLockBatchOptimistic); - rs.ActiveConnection = null; - - const v = rs.Fields.Item(0).Value; - conn.Close(); -})(); - -// helper function const toSafeArray = (...items: T[]): SafeArray => { const dict = new ActiveXObject('Scripting.Dictionary'); items.forEach((x, index) => dict.Add(index, x)); return dict.Items() as SafeArray; }; +const toConnectionString = (o: { [index: string]: any }) => { + o.Provider = o.Provider || 'sqloledb'; + o['Data Source'] = o['Data Source'] || 'Server'; + o['Integrated Security'] = o['Integrated Security'] || 'SSPI'; + + const parts: string[] = []; + for (const key in o) { + let val = o[key]; + if (typeof val === 'string') { val = `'${val}'`; } + parts.push(`${key}=${val}`); + } + return parts.join(';'); +}; + +const printLine = () => WScript.Echo(new Array(26).join('-')); + +{ + // open connection to an Excel file + const pathToExcelFile = 'C:\\path\\to\\excel\\file.xlsx'; + const conn = new ActiveXObject('ADODB.Connection'); + conn.ConnectionString = toConnectionString({ + Provider: 'Microsoft.ACE.OLEDB.12.0', + 'Data Source': pathToExcelFile, + 'Extended Properties': "Excel 12.0;HDR=Yes" + }); + conn.Open(); + + // create a Command to access the data + const cmd = new ActiveXObject('ADODB.Command'); + cmd.ActiveConnection = conn; + cmd.CommandText = 'SELECT DISTINCT LastName, CityName FROM [Sheet1$]'; + // get a Recordset + const rs = cmd.Execute() as ADODB.Recordset; + // build a string from the Recordset + const s = rs.GetString(ADODB.StringFormatEnum.adClipString, -1, '\t', '\n', '(NULL)'); + rs.Close(); + WScript.Echo(s); +} + +// create a disconnected recordset -- https://support.microsoft.com/en-us/help/184397/how-to-create-ado-disconnected-recordsets-in-vba-c-java +{ + const conn = new ActiveXObject('ADODB.Connection'); + conn.Open(); // pass connection details here + + const rs = new ActiveXObject('ADODB.Recordset'); + rs.CursorLocation = ADODB.CursorLocationEnum.adUseClient; + rs.Open('SELECT * FROM Table1', conn, ADODB.CursorTypeEnum.adOpenForwardOnly, ADODB.LockTypeEnum.adLockBatchOptimistic); + rs.ActiveConnection = null; + + const v = rs(0).Value; + conn.Close(); +} + // update with SafeArray -(() => { +{ + const rs = new ActiveXObject('ADODB.Recordset'); + rs.Open(); // missing connection details here const fields = toSafeArray('FirstName', 'LastName', 'DOB'); const values = toSafeArray('Plony', 'Almony', new Date(1980, 1, 1).getVarDate()); rs.Update(fields, values); -})(); + rs.Close(); +} + +const withConnection = (initialCatalog: string, fn: (conn: ADODB.Connection) => void) => { + let conn: ADODB.Connection | null = new ActiveXObject('ADODB.Connection'); + const connectionString = toConnectionString({ + 'Initial Catalog': initialCatalog + }); + try { + conn.Open(connectionString); + fn(conn); + } catch (e) { + WScript.Echo(e.message); + } finally { + if (conn.State === ADODB.ObjectStateEnum.adStateOpen) { + conn.Close(); + } + conn = null; + } +}; + +const withRs = (catalogOrConnection: string | ADODB.Connection, tableOrCommand: string | ADODB.Command, fn: (rs: ADODB.Recordset) => void, + type: ADODB.CursorTypeEnum = ADODB.CursorTypeEnum.adOpenUnspecified, + location: ADODB.CursorLocationEnum = ADODB.CursorLocationEnum.adUseNone, + lockType: ADODB.LockTypeEnum = ADODB.LockTypeEnum.adLockOptimistic +) => { + let connection = catalogOrConnection; + if (typeof connection === 'string') { + // expand catalog to full connection string + connection = toConnectionString({ + 'Initial Catalog': connection + }); + } + + let rs: ADODB.Recordset | null = null; + try { + if (typeof tableOrCommand === 'string') { + rs = new ActiveXObject('ADODB.Recordset'); + rs.CursorLocation = location; + rs.LockType = lockType; + rs.Open(tableOrCommand, connection, type, lockType, ADODB.CommandTypeEnum.adCmdTable); + } else { + tableOrCommand.ActiveConnection = connection; + rs = tableOrCommand.Execute() as ADODB.Recordset; + } + fn(rs); + } catch (e) { + WScript.Echo(e.message); + } finally { + if (rs && rs.State === ADODB.ObjectStateEnum.adStateOpen) { + rs.Close(); + } + rs = null; + } +}; + +const withEmployees = (fn: (rs: ADODB.Recordset) => void, type: ADODB.CursorTypeEnum) => + withRs('Northwind', 'Employees', fn, type, ADODB.CursorLocationEnum.adUseClient); + +// https://msdn.microsoft.com/en-us/library/jj249882.aspx +{ + withConnection('Northwind', conn => { + withEmployees(rs => { + const FName = 'first name'; + const LName = 'last name'; + + rs.AddNew(); + rs('FirstName').Value = FName; + rs('LastName').Value = LName; + rs.Update(); + WScript.Echo('New record added.'); + }, ADODB.CursorTypeEnum.adOpenKeyset); + }); +} + +// https://msdn.microsoft.com/en-us/library/jj249434.aspx +{ + withConnection('Northwind', conn => { + withEmployees(rs => { + // Set PageSize to five to display names and hire dates of five employees at a time + rs.PageSize = 5; + const pageCount = rs.PageCount; + + WScript.Echo(`There are ${pageCount} pages, each containing ${rs.PageSize} or fewer records`.trim()); + + for (let i = 1; i <= pageCount; i++) { + rs.AbsolutePage = i; + + for (let iRecord = 1; iRecord <= rs.PageSize; iRecord++) { + // First column in row contains page number on + // first record of each page. Otherwise, the column + // contains a non-breaking space. + const page = iRecord === 1 ? `Page ${i} of ${rs.PageCount}` : ''; + + // First and last name are in first column. + const name = `${rs('FirstName')} ${rs('LastName')}`; + + // Hire date in second column. + const hireDate = new Date(rs('HireDate').Value as VarDate).toString(); + + // Write the row + WScript.Echo([page, name, hireDate].join('\t')); + + // Get next record. + rs.MoveNext(); + + if (rs.EOF) { break; } + } + } + }, ADODB.CursorTypeEnum.adOpenStatic); + }); +} + +// https://msdn.microsoft.com/en-us/library/jj250117.aspx +{ + withConnection('Northwind', conn => { + withEmployees(rs => { + WScript.Echo(['AbsolutePosition', 'Name', 'Hire Date'].join('\t')); + + while (!rs.EOF) { + // First column in row contains AbsolutePosition value. + const recordCount = `${rs.AbsolutePosition} of ${rs.RecordCount}`; + + // First and last name are in first column. + const name = `${rs('FirstName')} ${rs('LastName')}`; + + // Hire date in second column. + const hireDate = new Date(rs('HireDate').Value as VarDate).toString(); + + WScript.Echo([recordCount, name, hireDate].join('\t')); + } + }, ADODB.CursorTypeEnum.adOpenStatic); + }); +} + +// https://msdn.microsoft.com/en-us/library/jj249824.aspx +{ + withConnection('Northwind', conn => { + WScript.Echo('Enter city name, and press ENTER:'); + const cityName = WScript.StdIn.ReadLine(); + + const cmdContact = new ActiveXObject('ADODB.Command'); + cmdContact.CommandText = 'SELECT ContactName FROM Customers WHERE City = ?'; + cmdContact.ActiveConnection = conn; + + // create parameter and insert variable value + const param = cmdContact.CreateParameter('CityName', ADODB.DataTypeEnum.adChar, ADODB.ParameterDirectionEnum.adParamInput, 30, cityName); + cmdContact.Parameters.Append(param); + + let rsContact: ADODB.Recordset | null = null; + try { + // Open a recordset using the command object + rsContact = cmdContact.Execute() as ADODB.Recordset; + + while (!rsContact.EOF) { + WScript.Echo(rsContact('ContactName')); + rsContact.MoveNext(); + } + } catch (e) { + WScript.Echo(e.message); + } finally { + if (rsContact && rsContact.State === ADODB.ObjectStateEnum.adStateOpen) { + rsContact.Close(); + } + } + }); +} + +// https://msdn.microsoft.com/en-us/library/jj249056.aspx +// https://msdn.microsoft.com/en-us/library/jj249494.aspx +{ + WScript.Echo('Enter royalty value, and press ENTER:'); + const iRoyalty = parseInt(WScript.StdIn.ReadLine(), 10); + if (iRoyalty > -1) { + withConnection('pubs', conn => { + const cmdByRoyalty = new ActiveXObject('ADODB.Command'); + cmdByRoyalty.CommandText = 'byroyalty'; + cmdByRoyalty.CommandType = ADODB.CommandTypeEnum.adCmdStoredProc; + cmdByRoyalty.CommandTimeout = 15; + + // The stored procedure called above is as follows: + /* + CREATE PROCEDURE byroyalty + @percentage int + AS + SELECT au_id from titleauthor + WHERE titleauthor.royaltyper = @percentage + GO + */ + + const prmByRoyalty = new ActiveXObject('ADODB.Parameter'); + prmByRoyalty.Type = ADODB.DataTypeEnum.adInteger; + prmByRoyalty.Size = 3; + prmByRoyalty.Direction = ADODB.ParameterDirectionEnum.adParamInput; + prmByRoyalty.Value = iRoyalty; + cmdByRoyalty.Parameters.Append(prmByRoyalty); + + // open byRoyalty recordset via Command + withRs(conn, cmdByRoyalty, rsByRoyalty => { + // open authors recordset directly + withRs(conn, 'Authors', rsAuthor => { + while (!rsByRoyalty.EOF) { + // set filter + rsAuthor.Filter = `au_id='${rsByRoyalty('au_id')}'`; + + // write author name + WScript.Echo(`${rsAuthor('au_fname')} ${rsAuthor('au_lname')}`); + } + + // get next record + rsByRoyalty.MoveNext(); + }); + }); + }); + } +} + +// https://msdn.microsoft.com/en-us/library/jj250032.aspx +{ + withRs('Northwind', 'Suppliers', rsSuppliers => { + WScript.Echo(['Field Value', 'Defined Size', 'Actual Size'].join('\t')); + while (!rsSuppliers.EOF) { + const fld = rsSuppliers('CompanyName'); + WScript.Echo([fld.Value, fld.DefinedSize, fld.ActualSize].join('\t')); + } + rsSuppliers.MoveNext(); + }); +} + +// https://msdn.microsoft.com/en-us/library/jj249928.aspx +{ + withRs('Northwind', 'Customers', rs => { + const loop20 = () => { + const start = new Date().getTime(); + + // loop through the recordset 20 times + for (let i = 0; i < 20; i++) { + rs.MoveFirst(); + while (!rs.EOF) { + // do something with the record + const strTemp = rs('CompanyName').Value as string; + rs.MoveNext(); + } + } + + const end = new Date().getTime(); + return end - start; + }; + + const noCache = loop20(); + + // cache records in groups of 30 + rs.MoveFirst(); + rs.CacheSize = 30; + + const cache = loop20(); + + WScript.Echo(`No cache: ${noCache}; with cache: ${cache}`); + }, ADODB.CursorTypeEnum.adOpenUnspecified, ADODB.CursorLocationEnum.adUseClient); +} + +// https://msdn.microsoft.com/en-us/library/jj249157.aspx +{ + const printAuthorRecordset = (caption: string, rs: ADODB.Recordset) => { + printLine(); + WScript.Echo(`**${caption}**`); + while (!rs.EOF) { + // write current row's data + const name = `${rs('au_fname')} ${rs('au_lname')}`; + WScript.Echo(name); + + // get next record + rs.MoveNext; + } + }; + + WScript.Echo('Enter last name of author to find (e.g., Ringer) and then press ENTER:'); + const lastName = WScript.StdIn.ReadLine() || ''; + if (lastName.length > 0) { + withConnection('pubs', conn => { + // command object parameters + const cmdAuthor = new ActiveXObject('ADODB.Command'); + cmdAuthor.CommandText = 'SELECT * FROM Authors WHERE au_name = ?'; + const lastNameParameter = cmdAuthor.CreateParameter('Last Name', ADODB.DataTypeEnum.adChar, ADODB.ParameterDirectionEnum.adParamInput, 20, lastName); + cmdAuthor.Parameters.Append(lastNameParameter); + cmdAuthor.ActiveConnection = conn; + + // recordset from command.execute + const rsAuthor = cmdAuthor.Execute() as ADODB.Recordset; + + // recordset from connection.execute + const rsAuthor2 = conn.Execute('SELECT * FROM Authors') as ADODB.Recordset; + + const errs = collectionToArray(conn.Errors); + if (errs.length > 0) { + for (const err of errs) { + WScript.Echo(err); + } + } + conn.Errors.Clear(); + + printAuthorRecordset('Command.Execute results', rsAuthor); + printAuthorRecordset('Connection.Execute results', rsAuthor2); + }); + } +} + +// https://msdn.microsoft.com/en-us/library/jj249466.aspx +{ + withConnection('Northwind', conn => { + const sql = 'SELECT * FROM Customers'; + withRs(conn, sql, rs => { + rs.MoveFirst(); + if (rs.RecordCount === 0) { + WScript.Echo(`No records matched for '${sql}'`); + return; + } + + // print headings for each field name + WScript.Echo(collectionToArray(rs.Fields).map(fld => fld.Name).join('\t')); + + // JScript doesn't support multi-dimensional arrays + // so we'll convert the returned array to a single + // dimensional JScript array and then display the data. + const safeArray = rs.GetRows(); + const data = new VBArray(safeArray).toArray(); + + const fieldCount = rs.Fields.Count; + + data.forEach((cellValue, index) => { + const currentField = index % fieldCount; + + // don't print tab character for first and last columns + if (currentField > 0 && currentField < fieldCount - 1) { + WScript.StdOut.Write('\t'); + } + + const displayValue = cellValue === null ? '-null-' : cellValue; + if (currentField === fieldCount - 1) { + WScript.StdOut.WriteLine(displayValue); + } else { + WScript.StdOut.Write(displayValue); + } + }); + }, ADODB.CursorTypeEnum.adOpenKeyset, ADODB.CursorLocationEnum.adUseClient, ADODB.LockTypeEnum.adLockOptimistic); + }); +} diff --git a/types/activex-adodb/index.d.ts b/types/activex-adodb/index.d.ts index 43f43f5bd5..1879891b2d 100644 --- a/types/activex-adodb/index.d.ts +++ b/types/activex-adodb/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/jj249010.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 declare namespace ADODB { const enum ADCPROP_ASYNCTHREADPRIORITY_ENUM { @@ -594,10 +594,19 @@ declare namespace ADODB { adXactSyncPhaseOne = 1048576, } + class Bookmark { + private 'ADODB.Bookmark_typekey': Bookmark; + private constructor(); + } + class Command { private 'ADODB.Command_typekey': Command; private constructor(); - ActiveConnection: Connection; + + /** + * Sets or returns a String value that contains a definition for a connection if the connection is closed, or a Variant containing the current Connection object if the connection is open. Default is a null object reference. + */ + ActiveConnection: string | Connection | null; Cancel(): void; CommandStream: any; CommandText: string; @@ -605,28 +614,40 @@ declare namespace ADODB { CommandType: CommandTypeEnum; /** - * @param string [Name=''] - * @param ADODB.DataTypeEnum [Type=0] - * @param ADODB.ParameterDirectionEnum [Direction=1] - * @param number [Size=0] + * @param Name [Name=''] + * @param Type [Type=0] + * @param Direction [Direction=1] + * @param Size [Size=0] */ CreateParameter(Name?: string, Type?: DataTypeEnum, Direction?: ParameterDirectionEnum, Size?: number, Value?: any): Parameter; Dialect: string; - /** @param number [Options=-1] */ - Execute(RecordsAffected?: number, Parameters?: SafeArray, Options?: number): Recordset; + /** + * @param Options [Options=-1] + * + * The **RecordsAffected** parameter is meant to take a variable to be modified by reference, which is not supported by Javascript + * + * The return value is as follows: + * + * * If the **adExecuteNoRecords** option is passed in, the method will return `null`. Otherwise: + * * If the command specifies a row-returning query, then the method will return a new read-only, forward-only **Recordset** object with the results. + * * If the command isn't intended to return results (e.g. an `UPDATE` statement), a closed empty **Recordset** will be returned. + */ + Execute(RecordsAffected?: undefined, Parameters?: SafeArray, Options?: number): Recordset | null; Name: string; NamedParameters: boolean; readonly Parameters: Parameters; Prepared: boolean; readonly Properties: Properties; - readonly State: number; + readonly State: ObjectStateEnum; } class Connection { private 'ADODB.Connection_typekey': Connection; private constructor(); - Attributes: number; + + /** Sum of one or more of the values in the **XactAttributeEnum** enum */ + Attributes: XactAttributeEnum; BeginTrans(): number; Cancel(): void; Close(): void; @@ -638,23 +659,45 @@ declare namespace ADODB { DefaultDatabase: string; readonly Errors: Errors; - /** @param number [Options=-1] */ - Execute(CommandText: string, RecordsAffected: any, Options?: number): Recordset; + /** + * @param Options [Options=-1] + * + * The **RecordsAffected** parameter is meant to take a variable to be modified by reference, which is not supported by Javascript + * + * The return value is as follows: + * + * * If the **adExecuteNoRecords** option is passed in, the method will return `null`. Otherwise: + * * If **CommandText** specifies a row-returning query, then the method will return a new read-only, forward-only **Recordset** object with the results + * * If **CommandText** isn't intended to return results (e.g. an `UPDATE` statement), a closed empty **Recordset** will be returned. + */ + Execute(CommandText: string, RecordsAffected?: undefined, Options?: CommandTypeEnum | ExecuteOptionEnum): Recordset | null; IsolationLevel: IsolationLevelEnum; Mode: ConnectModeEnum; /** - * @param string [ConnectionString=''] - * @param string [UserID=''] - * @param string [Password=''] - * @param number [Options=-1] + * @param ConnectionString [ConnectionString=''] + * @param UserID [UserID=''] + * @param Password [Password=''] + * @param Options [Options=-1] */ Open(ConnectionString?: string, UserID?: string, Password?: string, Options?: number): void; - OpenSchema(Schema: SchemaEnum, Restrictions?: any, SchemaID?: any): Recordset; + + /** + * Returns a Recordset object that contains schema information + * @param Schema Type of schema query to run + * @param Restrictions A SafeArray of query constraints; depends on the [type of the schema query](https://msdn.microsoft.com/en-us/library/jj249359.aspx) + */ + OpenSchema(Schema: SchemaEnum, Restrictions?: SafeArray): Recordset; + + /** + * Returns a Recordset object that contains schema information, for a provider-specific schema query type + * @param SchemaID The GUID for a provider-schema query not defined by the OLE DB specification. + */ + OpenSchema(Schema: SchemaEnum.adSchemaProviderSpecific, Restrictions: SafeArray, SchemaID: string): Recordset; readonly Properties: Properties; Provider: string; RollbackTrans(): void; - readonly State: number; + readonly State: ObjectStateEnum; readonly Version: string; } @@ -670,13 +713,12 @@ declare namespace ADODB { readonly SQLState: string; } - class Errors { - private 'ADODB.Errors_typekey': Errors; - private constructor(); + interface Errors { Clear(): void; readonly Count: number; Item(Index: any): Error; Refresh(): void; + (Index: any): Error; } class Field { @@ -684,7 +726,9 @@ declare namespace ADODB { private constructor(); readonly ActualSize: number; AppendChunk(Data: any): void; - Attributes: number; + + /** Sum of one or more of the values in the **FieldAttributeEnum** enum */ + Attributes: FieldAttributeEnum; DataFormat: any; DefinedSize: number; GetChunk(Length: number): any; @@ -699,37 +743,37 @@ declare namespace ADODB { Value: any; } - class Fields { - private 'ADODB.Fields_typekey': Fields; - private constructor(); - + interface Fields { /** - * @param number [DefinedSize=0] - * @param ADODB.FieldAttributeEnum [Attrib=-1] + * @param DefinedSize [DefinedSize=0] + * @param Attrib [Attrib=-1] */ _Append(Name: string, Type: DataTypeEnum, DefinedSize?: number, Attrib?: FieldAttributeEnum): void; /** - * @param number [DefinedSize=0] - * @param ADODB.FieldAttributeEnum [Attrib=-1] + * @param DefinedSize [DefinedSize=0] + * @param Attrib [Attrib=-1] */ Append(Name: string, Type: DataTypeEnum, DefinedSize?: number, Attrib?: FieldAttributeEnum, FieldValue?: any): void; CancelUpdate(): void; readonly Count: number; - Delete(Index: any): void; - Item(Index: any): Field; + Delete(Index: string | number): void; + Item(Index: string | number): Field; Refresh(): void; - /** @param ADODB.ResyncEnum [ResyncValues=2] */ + /** @param ResyncValues [ResyncValues=2] */ Resync(ResyncValues?: ResyncEnum): void; Update(): void; + (Index: string | number): Field; } class Parameter { private 'ADODB.Parameter_typekey': Parameter; private constructor(); AppendChunk(Val: any): void; - Attributes: number; + + /** Sum of one or more of the values in the **ParameterAttributesEnum** enum */ + Attributes: ParameterAttributesEnum; Direction: ParameterDirectionEnum; Name: string; NumericScale: number; @@ -740,28 +784,28 @@ declare namespace ADODB { Value: any; } - class Parameters { - private 'ADODB.Parameters_typekey': Parameters; - private constructor(); + interface Parameters { Append(Object: any): void; readonly Count: number; - Delete(Index: any): void; - Item(Index: any): Parameter; + Delete(Index: string | number): void; + Item(Index: string | number): Parameter; Refresh(): void; + (Index: string | number): Parameter; } - class Properties { - private 'ADODB.Properties_typekey': Properties; - private constructor(); + interface Properties { readonly Count: number; - Item(Index: any): Property; + Item(Index: string | number): Property; Refresh(): void; + (Index: string | number): Property; } class Property { private 'ADODB.Property_typekey': Property; private constructor(); - Attributes: number; + + /** Sum of one or more of the values in the **PropertyAttributesEnum** enum */ + Attributes: PropertyAttributesEnum; readonly Name: string; readonly Type: DataTypeEnum; Value: any; @@ -770,23 +814,27 @@ declare namespace ADODB { class Record { private 'ADODB.Record_typekey': Record; private constructor(); - ActiveConnection: any; + + /** + * Sets or returns a String value that contains a definition for a connection if the connection is closed, or a Variant containing the current Connection object if the connection is open. Default is a null object reference. + */ + ActiveConnection: string | Connection | null; Cancel(): void; Close(): void; /** - * @param string [Source=''] - * @param string [Destination=''] - * @param string [UserName=''] - * @param string [Password=''] - * @param ADODB.CopyRecordOptionsEnum [Options=-1] - * @param boolean [Async=false] + * @param Source [Source=''] + * @param Destination [Destination=''] + * @param UserName [UserName=''] + * @param Password [Password=''] + * @param Options [Options=-1] + * @param Async [Async=false] */ CopyRecord(Source?: string, Destination?: string, UserName?: string, Password?: string, Options?: CopyRecordOptionsEnum, Async?: boolean): string; /** - * @param string [Source=''] - * @param boolean [Async=false] + * @param Source [Source=''] + * @param Async [Async=false] */ DeleteRecord(Source?: string, Async?: boolean): void; readonly Fields: Fields; @@ -794,137 +842,174 @@ declare namespace ADODB { Mode: ConnectModeEnum; /** - * @param string [Source=''] - * @param string [Destination=''] - * @param string [UserName=''] - * @param string [Password=''] - * @param ADODB.MoveRecordOptionsEnum [Options=-1] - * @param boolean [Async=false] + * @param Source [Source=''] + * @param Destination [Destination=''] + * @param UserName [UserName=''] + * @param Password [Password=''] + * @param Options [Options=-1] + * @param Async [Async=false] */ MoveRecord(Source?: string, Destination?: string, UserName?: string, Password?: string, Options?: MoveRecordOptionsEnum, Async?: boolean): string; /** - * @param ADODB.ConnectModeEnum [Mode=0] - * @param ADODB.RecordCreateOptionsEnum [CreateOptions=-1] - * @param ADODB.RecordOpenOptionsEnum [Options=-1] - * @param string [UserName=''] - * @param string [Password=''] + * Source may be: + * * A URL. If the protocol for the URL is http, then the Internet Provider will be invoked by default. If the URL points to a node that contains an executable script (such as an .ASP page), then a Record containing the source rather than the executed contents is opened by default. Use the Options argument to modify this behavior. + * * A Record object. A Record object opened from another Record will clone the original Record object. + * * A Command object. The opened Record object represents the single row returned by executing the Command. If the results contain more than a single row, the contents of the first row are placed in the record and an error may be added to the Errors collection. + * * A SQL SELECT statement. The opened Record object represents the single row returned by executing the contents of the string. If the results contain more than a single row, the contents of the first row are placed in the record and an error may be added to the Errors collection. + * * A table name. + * + * @param Mode [Mode=0] + * @param CreateOptions [CreateOptions=-1] + * @param Options [Options=-1] + * @param UserName [UserName=''] + * @param Password [Password=''] */ - Open(Source: any, ActiveConnection: any, Mode?: ConnectModeEnum, CreateOptions?: RecordCreateOptionsEnum, Options?: RecordOpenOptionsEnum, UserName?: string, Password?: string): void; + Open(Source?: string | Record | Recordset | Command, ActiveConnection?: string | Connection, Mode?: ConnectModeEnum, CreateOptions?: RecordCreateOptionsEnum, Options?: RecordOpenOptionsEnum, UserName?: string, Password?: string): void; readonly ParentURL: string; readonly Properties: Properties; readonly RecordType: RecordTypeEnum; - Source: any; + Source: string | Recordset | Command; readonly State: ObjectStateEnum; } - class Recordset { - private 'ADODB.Recordset_typekey': Recordset; - private constructor(); + interface Recordset { _xClone(): Recordset; - /** @param ADODB.AffectEnum [AffectRecords=3] */ + /** @param AffectRecords [AffectRecords=3] */ _xResync(AffectRecords?: AffectEnum): void; /** - * @param string [FileName=''] - * @param ADODB.PersistFormatEnum [PersistFormat=0] + * @param FileName [FileName=''] + * @param PersistFormat [PersistFormat=0] */ _xSave(FileName?: string, PersistFormat?: PersistFormatEnum): void; AbsolutePage: PositionEnum; AbsolutePosition: PositionEnum; - readonly ActiveCommand: any; - ActiveConnection: any; - AddNew(FieldList?: any, Values?: any): void; + readonly ActiveCommand?: Command; + + /** + * Sets or returns a String value that contains a definition for a connection if the connection is closed, or a Variant containing the current Connection object if the connection is open. Default is a null object reference. + */ + ActiveConnection: string | Connection | null; + AddNew(): void; + AddNew(Fields: SafeArray, Values: SafeArray): void; + AddNew(Field: string, Value: any): void; readonly BOF: boolean; - Bookmark: any; + Bookmark: Bookmark; CacheSize: number; Cancel(): void; - /** @param ADODB.AffectEnum [AffectRecords=3] */ + /** @param AffectRecords [AffectRecords=3] */ CancelBatch(AffectRecords?: AffectEnum): void; CancelUpdate(): void; - /** @param ADODB.LockTypeEnum [LockType=-1] */ + /** @param LockType [LockType=-1] */ Clone(LockType?: LockTypeEnum): Recordset; Close(): void; Collect(Index: any): any; - CompareBookmarks(Bookmark1: any, Bookmark2: any): CompareEnum; + CompareBookmarks(Bookmark1: Bookmark, Bookmark2: Bookmark): CompareEnum; CursorLocation: CursorLocationEnum; CursorType: CursorTypeEnum; DataMember: string; DataSource: any; - /** @param ADODB.AffectEnum [AffectRecords=1] */ + /** @param AffectRecords [AffectRecords=1] */ Delete(AffectRecords?: AffectEnum): void; readonly EditMode: EditModeEnum; readonly EOF: boolean; readonly Fields: Fields; - Filter: any; /** - * @param number [SkipRecords=0] - * @param ADODB.SearchDirectionEnum [SearchDirection=1] + * Sets or returns one of the following: + * * Criteria string — a string made up of one or more individual clauses concatenated with AND or OR operators. + * * Array of bookmarks — an array of unique bookmark values that point to records in the Recordset object. + * * A FilterGroupEnum value */ - Find(Criteria: string, SkipRecords?: number, SearchDirection?: SearchDirectionEnum, Start?: any): void; - - /** @param number [Rows=-1] */ - GetRows(Rows?: number, Start?: any, Fields?: any): any; + Filter: string | SafeArray | FilterGroupEnum; /** - * @param ADODB.StringFormatEnum [StringFormat=2] - * @param number [NumRows=-1] - * @param string [ColumnDelimeter=''] - * @param string [RowDelimeter=''] - * @param string [NullExpr=''] + * @param SkipRecords [SkipRecords=0] + * @param SearchDirection [SearchDirection=1] + */ + Find(Criteria: string, SkipRecords?: number, SearchDirection?: SearchDirectionEnum, Start?: Bookmark): void; + + /** @param Rows [Rows=-1] */ + GetRows(Rows?: number, Start?: string | Bookmark | BookmarkEnum, Fields?: string | SafeArray): SafeArray; + + /** + * @param StringFormat [StringFormat=2] + * @param NumRows [NumRows=-1] + * @param ColumnDelimeter [ColumnDelimeter=''] + * @param RowDelimeter [RowDelimeter=''] + * @param NullExpr [NullExpr=''] */ GetString(StringFormat?: StringFormatEnum, NumRows?: number, ColumnDelimeter?: string, RowDelimeter?: string, NullExpr?: string): string; Index: string; LockType: LockTypeEnum; MarshalOptions: MarshalOptionsEnum; MaxRecords: number; - Move(NumRecords: number, Start?: any): void; + Move(NumRecords: number, Start?: string | Bookmark | BookmarkEnum): void; MoveFirst(): void; MoveLast(): void; MoveNext(): void; MovePrevious(): void; - NextRecordset(RecordsAffected?: any): Recordset; + + /** Since Javascript doesn't support byref parameters, the RecordsAffected parameter cannot be used */ + NextRecordset(): Recordset; /** - * @param ADODB.CursorTypeEnum [CursorType=-1] - * @param ADODB.LockTypeEnum [LockType=-1] - * @param number [Options=-1] + * @param CursorType [CursorType=-1] + * @param LockType [LockType=-1] + * @param Options [Options=-1] */ - Open(Source: any, ActiveConnection: any, CursorType?: CursorTypeEnum, LockType?: LockTypeEnum, Options?: number): void; + Open(Source: Command, ActiveConnection: null, CursorType?: CursorTypeEnum, LockType?: LockTypeEnum, Options?: CommandTypeEnum | ExecuteOptionEnum): void; + Open(Source?: Stream): void; + + /** + * @param CursorType [CursorType=-1] + * @param LockType [LockType=-1] + * @param Options [Options=-1] + */ + Open(Source: string, ActiveConnection: string | Connection, CursorType?: CursorTypeEnum, LockType?: LockTypeEnum, Options?: CommandTypeEnum | ExecuteOptionEnum): void; readonly PageCount: number; PageSize: number; readonly Properties: Properties; readonly RecordCount: number; - /** @param number [Options=-1] */ + /** @param Options [Options=-1] */ Requery(Options?: number): void; /** - * @param ADODB.AffectEnum [AffectRecords=3] - * @param ADODB.ResyncEnum [ResyncValues=2] + * @param AffectRecords [AffectRecords=3] + * @param ResyncValues [ResyncValues=2] */ Resync(AffectRecords?: AffectEnum, ResyncValues?: ResyncEnum): void; - /** @param ADODB.PersistFormatEnum [PersistFormat=0] */ - Save(Destination: any, PersistFormat?: PersistFormatEnum): void; + /** @param PersistFormat [PersistFormat=0] */ + Save(Destination: string | Stream, PersistFormat?: PersistFormatEnum): void; - /** @param ADODB.SeekEnum [SeekOption=1] */ + /** + * @param SeekOption [SeekOption=1] + * + * For a single-column index, pass in a single value to seek in the column of the index + * + * For a multi-column index, pass in a SafeArray containing the multiple values to seek in the columns of the index. + */ Seek(KeyValues: any, SeekOption?: SeekEnum): void; Sort: string; - Source: any; - readonly State: number; + Source: string | Command; + readonly State: ObjectStateEnum; readonly Status: number; StayInSync: boolean; Supports(CursorOptions: CursorOptionEnum): boolean; - Update(Fields?: string | SafeArray, Values?: any): void; + Update(): void; + Update(Fields: SafeArray, Values: SafeArray): void; + Update(Field: string, Value: any): void; - /** @param ADODB.AffectEnum [AffectRecords=3] */ + /** @param AffectRecords [AffectRecords=3] */ UpdateBatch(AffectRecords?: AffectEnum): void; + (FieldIndex: string | number): Field; } class Stream { @@ -934,7 +1019,7 @@ declare namespace ADODB { Charset: string; Close(): void; - /** @param number [CharNumber=-1] */ + /** @param CharNumber [CharNumber=-1] */ CopyTo(DestStream: Stream, CharNumber?: number): void; readonly EOS: boolean; Flush(): void; @@ -943,21 +1028,21 @@ declare namespace ADODB { Mode: ConnectModeEnum; /** - * @param ADODB.ConnectModeEnum [Mode=0] - * @param ADODB.StreamOpenOptionsEnum [Options=-1] - * @param string [UserName=''] - * @param string [Password=''] + * @param Mode [Mode=0] + * @param Options [Options=-1] + * @param UserName [UserName=''] + * @param Password [Password=''] */ - Open(Source: any, Mode?: ConnectModeEnum, Options?: StreamOpenOptionsEnum, UserName?: string, Password?: string): void; + Open(Source?: string | Record, Mode?: ConnectModeEnum, Options?: StreamOpenOptionsEnum, UserName?: string, Password?: string): void; Position: number; - /** @param number [NumBytes=-1] */ + /** @param NumBytes [NumBytes=-1] */ Read(NumBytes?: number): any; - /** @param number [NumChars=-1] */ + /** @param NumChars [NumChars=-1] */ ReadText(NumChars?: number): string; - /** @param ADODB.SaveOptionsEnum [Options=1] */ + /** @param Options [Options=1] */ SaveToFile(FileName: string, Options?: SaveOptionsEnum): void; SetEOS(): void; readonly Size: number; @@ -966,7 +1051,7 @@ declare namespace ADODB { Type: StreamTypeEnum; Write(Buffer: any): void; - /** @param ADODB.StreamWriteEnum [Options=0] */ + /** @param Options [Options=0] */ WriteText(Data: string, Options?: StreamWriteEnum): void; } @@ -1009,60 +1094,23 @@ declare namespace ADODB { } interface ActiveXObject { - on( - obj: ADODB.Connection, event: 'BeginTransComplete', argNames: ['TransactionLevel', 'pError', 'adStatus', 'pConnection'], handler: ( - this: ADODB.Connection, parameter: { - readonly TransactionLevel: number, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; - on( - obj: ADODB.Connection, event: 'CommitTransComplete' | 'ConnectComplete' | 'InfoMessage' | 'RollbackTransComplete', argNames: ['pError', 'adStatus', 'pConnection'], - handler: (this: ADODB.Connection, parameter: {readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; - on( - obj: ADODB.Connection, event: 'Disconnect', argNames: ['adStatus', 'pConnection'], handler: ( - this: ADODB.Connection, parameter: {adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; - on( - obj: ADODB.Connection, event: 'ExecuteComplete', argNames: ADODB.EventHelperTypes.Connection_ExecuteComplete_ArgNames, handler: ( - this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_ExecuteComplete_Parameter) => void): void; - on( - obj: ADODB.Connection, event: 'WillConnect', argNames: ADODB.EventHelperTypes.Connection_WillConnect_ArgNames, handler: ( - this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_WillConnect_Parameter) => void): void; - on( - obj: ADODB.Connection, event: 'WillExecute', argNames: ADODB.EventHelperTypes.Connection_WillExecute_ArgNames, handler: ( - this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_WillExecute_Parameter) => void): void; - on( - obj: ADODB.Recordset, event: 'EndOfRecordset', argNames: ['fMoreData', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: {fMoreData: boolean, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'FetchComplete', argNames: ['pError', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: {readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'FetchProgress', argNames: ['Progress', 'MaxProgress', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: {readonly Progress: number, readonly MaxProgress: number, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'FieldChangeComplete', argNames: ['cFields', 'Fields', 'pError', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: { - readonly cFields: number, readonly Fields: any, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'MoveComplete' | 'RecordsetChangeComplete', argNames: ['adReason', 'pError', 'adStatus', 'pRecordset'], - handler: ( - this: ADODB.Recordset, parameter: { - readonly adReason: ADODB.EventReasonEnum, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'RecordChangeComplete', argNames: ['adReason', 'cRecords', 'pError', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: { - readonly adReason: ADODB.EventReasonEnum, readonly cRecords: number, readonly pError: ADODB.Error, - adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'WillChangeField', argNames: ['cFields', 'Fields', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: {readonly cFields: number, readonly Fields: any, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'WillChangeRecord', argNames: ['adReason', 'cRecords', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: { - readonly adReason: ADODB.EventReasonEnum, readonly cRecords: number, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - on( - obj: ADODB.Recordset, event: 'WillChangeRecordset' | 'WillMove', argNames: ['adReason', 'adStatus', 'pRecordset'], handler: ( - this: ADODB.Recordset, parameter: {readonly adReason: ADODB.EventReasonEnum, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; - set(obj: ADODB.Recordset, propertyName: 'Collect', parameterTypes: [any], newValue: any): void; new(progid: K): ActiveXObjectNameMap[K]; + on(obj: ADODB.Connection, event: 'BeginTransComplete', argNames: ['TransactionLevel', 'pError', 'adStatus', 'pConnection'], handler: (this: ADODB.Connection, parameter: {readonly TransactionLevel: number, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; + on(obj: ADODB.Connection, event: 'CommitTransComplete' | 'ConnectComplete' | 'InfoMessage' | 'RollbackTransComplete', argNames: ['pError', 'adStatus', 'pConnection'], handler: (this: ADODB.Connection, parameter: {readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; + on(obj: ADODB.Connection, event: 'Disconnect', argNames: ['adStatus', 'pConnection'], handler: (this: ADODB.Connection, parameter: {adStatus: ADODB.EventStatusEnum, readonly pConnection: ADODB.Connection}) => void): void; + on(obj: ADODB.Connection, event: 'ExecuteComplete', argNames: ADODB.EventHelperTypes.Connection_ExecuteComplete_ArgNames, handler: (this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_ExecuteComplete_Parameter) => void): void; + on(obj: ADODB.Connection, event: 'WillConnect', argNames: ADODB.EventHelperTypes.Connection_WillConnect_ArgNames, handler: (this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_WillConnect_Parameter) => void): void; + on(obj: ADODB.Connection, event: 'WillExecute', argNames: ADODB.EventHelperTypes.Connection_WillExecute_ArgNames, handler: (this: ADODB.Connection, parameter: ADODB.EventHelperTypes.Connection_WillExecute_Parameter) => void): void; + on(obj: ADODB.Recordset, event: 'EndOfRecordset', argNames: ['fMoreData', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {fMoreData: boolean, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'FetchComplete', argNames: ['pError', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'FetchProgress', argNames: ['Progress', 'MaxProgress', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly Progress: number, readonly MaxProgress: number, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'FieldChangeComplete', argNames: ['cFields', 'Fields', 'pError', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly cFields: number, readonly Fields: any, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'MoveComplete' | 'RecordsetChangeComplete', argNames: ['adReason', 'pError', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly adReason: ADODB.EventReasonEnum, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'RecordChangeComplete', argNames: ['adReason', 'cRecords', 'pError', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly adReason: ADODB.EventReasonEnum, readonly cRecords: number, readonly pError: ADODB.Error, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'WillChangeField', argNames: ['cFields', 'Fields', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly cFields: number, readonly Fields: any, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'WillChangeRecord', argNames: ['adReason', 'cRecords', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly adReason: ADODB.EventReasonEnum, readonly cRecords: number, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + on(obj: ADODB.Recordset, event: 'WillChangeRecordset' | 'WillMove', argNames: ['adReason', 'adStatus', 'pRecordset'], handler: (this: ADODB.Recordset, parameter: {readonly adReason: ADODB.EventReasonEnum, adStatus: ADODB.EventStatusEnum, readonly pRecordset: ADODB.Recordset}) => void): void; + set(obj: ADODB.Recordset, propertyName: 'Collect', parameterTypes: [any], newValue: any): void; } interface ActiveXObjectNameMap { @@ -1073,14 +1121,3 @@ interface ActiveXObjectNameMap { 'ADODB.Recordset': ADODB.Recordset; 'ADODB.Stream': ADODB.Stream; } - -interface EnumeratorConstructor { - new(col: ADODB.Errors): Enumerator; - new(col: ADODB.Fields): Enumerator; - new(col: ADODB.Parameters): Enumerator; - new(col: ADODB.Properties): Enumerator; -} - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-adodb/tslint.json b/types/activex-adodb/tslint.json index 3224b40b8b..7b89accc6d 100644 --- a/types/activex-adodb/tslint.json +++ b/types/activex-adodb/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-adox/activex-adox-tests.ts b/types/activex-adox/activex-adox-tests.ts new file mode 100644 index 0000000000..1b6ec21d1f --- /dev/null +++ b/types/activex-adox/activex-adox-tests.ts @@ -0,0 +1,1204 @@ +const collectionToArray = (col: { Item(key: any): T }): T[] => { + const results: T[] = []; + const enumerator = new Enumerator(col); + enumerator.moveFirst(); + while (!enumerator.atEnd()) { + results.push(enumerator.item()); + enumerator.moveNext(); + } + return results; +}; + +const toConnectionString = (o: { [index: string]: any }) => { + o.Provider = o.Provider || 'sqloledb'; + o['Data Source'] = o['Data Source'] || 'Server'; + o['Integrated Security'] = o['Integrated Security'] || 'SSPI'; + + const parts: string[] = []; + for (const key in o) { + let val = o[key]; + if (typeof val === 'string') { val = `'${val}'`; } + parts.push(`${key}=${val}`); + } + return parts.join(';'); +}; + +const connectionString = toConnectionString({ + Provider: 'Microsoft.Jet.OLEDB.4.0', + 'Data Source': 'c:\\Program Files\\Microsoft Office\\Office\\Samples\\Northwind.mdb' +}); +const connectionStringWithSys = toConnectionString({ + Provider: 'Microsoft.Jet.OLEDB.4.0', + 'Data Source': 'c:\\Program Files\\Microsoft Office\\Office\\Samples\\Northwind.mdb', + 'jet oledb:system database': 'c:\\Program Files\\Microsoft Office\\Office\\system.mdw' +}); + +const adPermObjTable = ADOX.ObjectTypeEnum.adPermObjTable; +const adRightFull = ADOX.RightsEnum.adRightFull; + +const adInteger = ADODB.DataTypeEnum.adInteger; +const adVarWChar = ADODB.DataTypeEnum.adVarWChar; +const adVarChar = ADODB.DataTypeEnum.adVarChar; + +const adOpenKeyset = ADODB.CursorTypeEnum.adOpenKeyset; +const adLockOptimistic = ADODB.LockTypeEnum.adLockOptimistic; + +const tryClose = (obj: { State: ADODB.ObjectStateEnum, Close(): void } | null) => { + // TODO State could also be a combination of multiple values in this enum + if (obj && obj.State === ADODB.ObjectStateEnum.adStateOpen) { + obj.Close(); + } + return null; +}; + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/columns-and-tables-append-methods-name-property-example-vb +{ + let cat: ADOX.Catalog | null = null; + let tbl: ADOX.Table | null = null; + try { + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + tbl = new ActiveXObject('ADOX.Table'); + tbl.Name = 'MyTable'; + tbl.Columns.Append('Column1', adInteger); + tbl.Columns.Append('Column2', adInteger); + tbl.Columns.Append('Column3', adVarChar, 50); + cat.Tables.Append(tbl); + WScript.Echo('Table "MyTables" is added.'); + + cat.Tables.Delete(tbl.Name); + WScript.Echo('Table "MyTable" is deleted'); + + cat.ActiveConnection = null; + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { + cat.ActiveConnection = null; + } + cat = null; + tbl = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/connection-close-method-table-type-property-example-vb +{ + let conn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + try { + conn = new ActiveXObject('ADODB.Connection'); + conn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = conn; + const tbl = cat.Tables(0); + WScript.Echo(tbl.Type); // Cache tbl.Type info + cat.ActiveConnection = null; // tbl is orphaned + + // The following two lines will succeed only if the information was cached + WScript.Echo(tbl.Type); + WScript.Echo(tbl.Columns(0).DefinedSize); + } catch (error) { + WScript.Echo(error); + } finally { + // Clean up + if (cat) { cat.ActiveConnection = null; } + cat = null; + conn = tryClose(conn); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/create-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + try { + cat = new ActiveXObject('ADOX.Catalog'); + cat.Create("Provider='Microsoft.Jet.OLEDB.4.0';Data Source='new.mdb'"); + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/getobjectowner-and-setobjectowner-methods-example-vb +{ + const cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionStringWithSys; + + // Print the original owner of Categories + const strOwner = cat.GetObjectOwner('Categories', adPermObjTable); + WScript.Echo(`Ower of Categories: ${strOwner}`); + + // Set the owner of Categories to Accounting + cat.SetObjectOwner('Categories', adPermObjTable, 'Accounting'); + + for (const tblLoop of collectionToArray(cat.Tables)) { + WScript.Echo(` +Table: ${tblLoop.Name} +Owner: ${cat.GetObjectOwner(tblLoop.Name, adPermObjTable)} + `.trim()); + } + + // Restore the original owner of Categories + cat.SetObjectOwner('Categories', adPermObjTable, strOwner); +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/getpermissions-and-setpermissions-methods-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + try { + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Provider = 'Microsoft.Jet.OLEDB.4.0'; + cnn.Open("Data Source='Northwind.mdb';jet oledb:system database='system.mdw'"); + + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + const displayPermissions = (title: string) => + WScript.Echo(`${title}: ${cat!.Users('admin').GetPermissions('Orders', adPermObjTable)}`); + + // Retrieve original permissions + const perm = cat.Users('admin').GetPermissions('Orders', adPermObjTable); + WScript.Echo(`Permissions: ${perm}`); + + // Revoke all permissions + cat.Users('admin').SetPermissions('Orders', adPermObjTable, ADOX.ActionEnum.adAccessRevoke, adRightFull); + displayPermissions('Revoked permissions'); + + // Give the Admin user full rights on the orders object + cat.Users('admin').SetPermissions('Orders', adPermObjTable, ADOX.ActionEnum.adAccessSet, adRightFull); + displayPermissions('Full permissions'); + + // Restore original permissions + cat.Users('admin').SetPermissions('Orders', adPermObjTable, ADOX.ActionEnum.adAccessSet, perm); + displayPermissions('Final permissions'); + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cnn = tryClose(cnn); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/groups-and-users-append-changepassword-methods-example-vb +{ + let cat: ADOX.Catalog | null = null; + let usrNew: ADOX.User | null = null; + let usrLoop: ADOX.User | null; + let grpLoop: ADOX.Group | null; + let user: ADOX.User | null; + let group: ADOX.Group | null; + try { + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionStringWithSys; + + // Create and append a new group with a string + cat.Groups.Append('Accounting'); + + // Create and append a new user with an object + usrNew = new ActiveXObject('ADOX.User'); + usrNew.Name = 'Pat Smith'; + usrNew.ChangePassword('', 'Password1'); + cat.Users.Append(usrNew); + + // Make the user Pat Smith a member of the + // Accounting group by creating and adding the + // appropriate Group object to the user's Groups + // collection. The same is accomplished if a User + // object representing Pat Smith is created and + // appended to the Accounting group Users collection + usrNew.Groups.Append('Accounting'); + + // Enumerate all User objects in the catalog's Users collection. + for (usrLoop of collectionToArray(cat.Users)) { + WScript.Echo(`${usrLoop.Name} belongs to the following groups:`); + + // Enumerate all Group objects in each User object's Groups collection + const groups = collectionToArray(usrLoop.Groups); + if (groups.length !== 0) { + for (group of groups) { + WScript.Echo(`\t\t${group.Name}`); + } + } else { + WScript.Echo('\t[None]'); + } + } + + // Enumerate all Group objects in the default workspace's Groups collection + for (grpLoop of collectionToArray(cat.Groups)) { + WScript.Echo(`${grpLoop.Name} has as its members:`); + + // Enumerate all User objects in each Group object's User collection + const users = collectionToArray(grpLoop.Users); + if (users.length !== 0) { + for (user of users) { + WScript.Echo(`\t\t${user.Name}`); + } + } else { + WScript.Echo('\t[None]'); + } + } + + // Delete new User and Group objects because this is only a demonstration + cat.Users.Delete('Pat Smith'); + cat.Groups.Delete('Accounting'); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + usrNew = null; + usrLoop = null; + grpLoop = null; + user = null; + group = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/indexes-append-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + let tbl: ADOX.Table | null = null; + let idx: ADOX.Index | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Define the table and append it to the catalog + tbl = new ActiveXObject('ADOX.Table'); + tbl.Name = 'MyTable'; + tbl.Columns.Append('Column1', adInteger); + tbl.Columns.Append('Column2', adInteger); + tbl.Columns.Append('Column3', adVarChar, 50); + cat.Tables.Append(tbl); + WScript.Echo('Table "MyTables" is added.'); + + // Define a multi-column index + idx = new ActiveXObject('ADOX.Index'); + idx.Name = 'multicolidx'; + idx.Columns.Append('Column1'); + idx.Columns.Append('Column2'); + + // Append the index to the table + tbl.Indexes.Append(idx); + WScript.Echo('The index is appended to table "MyTable".'); + + // Delete the table as this is a demonstration + cat.Tables.Delete(tbl.Name); + WScript.Echo('Table "MyTable" is deleeted.'); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + tbl = null; + idx = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/keys-append-method-key-type-relatedcolumn-relatedtable-example-vb +{ + let cat: ADOX.Catalog | null = null; + let kyForeign: ADOX.Key | null = null; + try { + // Connect to the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Define the foreign key + kyForeign = new ActiveXObject('ADOX.Key'); + kyForeign.Name = 'CustOrder'; + kyForeign.Type = ADOX.KeyTypeEnum.adKeyForeign; + kyForeign.RelatedTable = 'Customers'; + kyForeign.Columns.Append('CustomerId'); + kyForeign.Columns('CustomerId').RelatedColumn = 'CustomerID'; + kyForeign.UpdateRule = ADOX.RuleEnum.adRICascade; + + // Append the foreign key to the keys collection + cat.Tables('Orders').Keys.Append(kyForeign); + + // Delete the key to demonstrate the Detele method + cat.Tables('Orders').Keys.Delete(kyForeign.Name); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + kyForeign = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/procedures-append-method-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cmd: ADODB.Command | null = null; + let cat: ADOX.Catalog | null = null; + try { + // Open the Connection + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + // Create the parameterized command (Microsoft Jet specific) + cmd = new ActiveXObject('ADODB.Command'); + cmd.ActiveConnection = cnn; + cmd.CommandText = ` + PARAMETERS [CustId] TEXT; + SELECT * FROM Customers WHERE CustomerId = [CustId] + `; + + // Open the Catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Create the new Procedure + cat.Procedures.Append('CustomerById', cmd); + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cmd = null; + cnn = tryClose(cnn); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/procedures-delete-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Delete the procedure + cat.Procedures.Delete('CustomerById'); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/procedures-refresh-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Refresh the Procedures collection + cat.Procedures.Refresh(); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/views-append-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + let cmd: ADODB.Command | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Create the command representing the view. + cmd = new ActiveXObject('ADODB.Command'); + cmd.CommandText = 'SELECT * FROM Customers'; + + // Create the new View + cat.Views.Append('All Customers', cmd); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + cmd = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/views-delete-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Delete the View + cat.Views.Delete('All Customers'); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/views-refresh-method-example-vb +{ + let cat: ADOX.Catalog | null = null; + try { + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Refresh the Views collection + cat.Views.Refresh(); + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/attributes-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + let tblEmp: ADOX.Table | null = null; + let colTemp: ADOX.Column | null = null; + let rstEmployees: ADODB.Recordset | null = null; + try { + // Connect the catalog + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + tblEmp = cat.Tables('Employees'); + + // Create a new Field object and append it to the Field collection of the Employees table + colTemp = new ActiveXObject('ADOX.Column'); + colTemp.Name = 'FaxPhone'; + colTemp.Type = adVarWChar; + colTemp.DefinedSize = 24; + colTemp.Attributes = ADOX.ColumnAttributesEnum.adColNullable; + tblEmp.Columns.Append(colTemp.Name, ADODB.DataTypeEnum.adWChar, 24); + + // Open the Employees table for updating as a Recordset + rstEmployees = new ActiveXObject('ADODB.Recordset'); + rstEmployees.Open('Employees', cnn, adOpenKeyset, adLockOptimistic, ADODB.CommandTypeEnum.adCmdTable); + + // Get user input + WScript.Echo(` +Enter fax number for ${rstEmployees('FirstName')} ${rstEmployees('LastName')}. +[? - unknown, X - has no fax] + `.trim()); + const strInput = WScript.StdIn.ReadLine().toUpperCase().trim(); + if (strInput) { + let newValue: string | null; + if (strInput === '?') { + newValue = null; + } else if (strInput === 'X') { + newValue = ''; + } else { + newValue = strInput; + } + rstEmployees('FaxPhone').Value = newValue; + rstEmployees.Update(); + + // Print report + const faxValue = rstEmployees('FaxPhone').Value; + let faxDisplayString: string; + if (faxValue === null) { + faxDisplayString = '[Unkown]'; + } else if (faxValue === '') { + faxDisplayString = '[Has no fax]'; + } else { + faxDisplayString = faxValue; + } + WScript.Echo(` +Name\t\tFax number +${rstEmployees('FirstName')} ${rstEmployees('LastName')}\t\t${faxDisplayString} + `.trim()); + } + } catch (error) { + WScript.Echo(error); + } finally { + rstEmployees = tryClose(rstEmployees); + if (tblEmp) { + tblEmp.Columns.Delete(colTemp!.Name); + } + cnn = tryClose(cnn); + cat = null; + colTemp = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/catalog-activeconnection-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + try { + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + WScript.Echo(cat.Tables(0).Type); + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cnn = tryClose(cnn); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/clustered-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + let tblLoop: ADOX.Table | null; + let idxLoop: ADOX.Index | null; + try { + // Connect to the catalog + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Enumerate the tables + for (tblLoop of collectionToArray(cat.Tables)) { + // Enumerate the indexes + for (idxLoop of collectionToArray(tblLoop.Indexes)) { + WScript.Echo(`${tblLoop.Name} ${idxLoop.Name} ${idxLoop.Clustered}`); + } + } + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cnn = tryClose(cnn); + tblLoop = null; + idxLoop = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/command-and-commandtext-properties-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + let cmd: ADODB.Command | null = null; + try { + // Open the connection + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Get the command + cmd = new ActiveXObject('ADODB.Command'); + cmd = cat.Procedures('CustomerById').Command; + + // Update the CommandText + cmd.CommandText = ` + SELECT CustomerID, CompanyName ContactName + FROM Customers + WHERE CustomerId = [CustId] + `.trim(); + + // Update the procedure + cat.Procedures('CustomerById').Command = cmd; + } catch (error) { + WScript.Echo(error); + } finally { + cnn = tryClose(cnn); + cat = null; + cmd = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/parameters-collection-command-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + let cmd: ADODB.Command | null = null; + let prm: ADODB.Parameter | null; + try { + // Open the connection + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Get the command + cmd = cat.Procedures('CustomerById').Command; + + // Retreive Parameter information + cmd.Parameters.Refresh(); + for (prm of collectionToArray(cmd.Parameters)) { + WScript.Echo(`${prm.Name}: ${prm.Type}`); + } + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cmd = null; + cnn = tryClose(cnn); + prm = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/views-collection-commandtext-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null = null; + let cmd: ADODB.Command | null = null; + try { + // Open the connection + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Get the command + cmd = cat.Views('AllCustomers').Command; + + // Update the CommandText of the command + cmd.CommandText = 'SELECT CustomerId, CompanyName, ContactName FROM Customers'; + + // Update the view + cat.Views('AllCustomers').Command = cmd; + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cmd = null; + cnn = tryClose(cnn); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/datecreated-and-datemodified-properties-example-vb +{ + const dateOutput = (caption: string, tbl: ADOX.Table) => { + // Print DateCreated and DateModified information about specified Table object + WScript.Echo(caption); + WScript.Echo(`\tTable: ${tbl.Name}`); + WScript.Echo(`\t\t${new Date(tbl.DateCreated).toString()}`); + WScript.Echo(`\t\t${new Date(tbl.DateModified).toString()}`); + WScript.Echo(''); + }; + + let cat: ADOX.Catalog | null = null; + try { + // Connect to the catalog. + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + const tblEmployees = cat.Tables('Employees'); + + // Print current information about the Employees table + dateOutput('Current properties', tblEmployees); + + // Create and append column to the Employees table. + tblEmployees.Columns.Append('NewColumn', adInteger); + cat.Tables.Refresh(); + + // Print new information about the Employees table. + dateOutput('After creating a new column', tblEmployees); + + // Delete new column because this is a demonstration + tblEmployees.Columns.Delete('NewColumn'); + + // Create and append new Table object to the Northwind database + const tblNewTable = new ActiveXObject('ADOX.Table'); + tblNewTable.Name = 'NewTable'; + tblNewTable.Columns.Append('NewColumn', adInteger); + cat.Tables.Append(tblNewTable); + cat.Tables.Refresh(); + + // Print information about the new Table object + dateOutput('After creating a new table', cat.Tables('NewTable')); + + // Delete new Table object because this is a demonstration + cat.Tables.Delete(tblNewTable.Name); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/definedsize-property-example-vb +{ + let rstEmployees: ADODB.Recordset | null = null; + let catNorthwind: ADOX.Catalog | null; + let colFirstname: ADOX.Column | null; + let colNewFirstName: ADOX.Column | null; + try { + // Open a Recordset for the Employees table. + rstEmployees = new ActiveXObject('ADODB.Recordset'); + rstEmployees.Open('Employees', connectionString, adOpenKeyset, undefined, ADODB.CommandTypeEnum.adCmdTable); + + // Open a Catalog for the Northwind database, using same connection as rstEmployees + catNorthwind = new ActiveXObject('ADOX.Catalog'); + catNorthwind.ActiveConnection = rstEmployees.ActiveConnection; + + // Loop through the recordset displaying the contents of the FirstName field, the field's defined size, + // and its actual size. Also store FirstName values in aryFirstName array. + rstEmployees.MoveFirst(); + WScript.Echo(''); + WScript.Echo('Original Defined Size and Actual Size'); + const firstnames: string[] = []; + for (let i = 0; !rstEmployees.EOF; i++) { + const firstField = rstEmployees('FirstName'); + const [firstname, lastname] = [firstField.Value as string, rstEmployees('LastName').Value as string]; + WScript.Echo(`Employee name: ${firstname} ${lastname}`); + WScript.Echo(`\tFirstName Defined size: ${firstField.DefinedSize}`); + WScript.Echo(`\tFirstName Actual size: ${firstField.ActualSize}`); + firstnames[i] = firstname; // we don't check for null, because null is better than undefined when putting the first names back + rstEmployees.MoveNext(); + } + rstEmployees.Close(); + + // Redefine the DefinedSize of FirstName in the catalog + colFirstname = catNorthwind.Tables('Employees').Columns('FirstName'); + colNewFirstName = new ActiveXObject('ADOX.Column'); + colNewFirstName.Name = colFirstname.Name; + colNewFirstName.Type = colFirstname.Type; + colNewFirstName.DefinedSize = colFirstname.DefinedSize + 1; + + // Append new FirstName column to catalog + catNorthwind.Tables('Employees').Columns.Delete(colFirstname.Name); + catNorthwind.Tables('Employees').Columns.Append(colNewFirstName); + + // Open Employee table in Recordset for updating + rstEmployees.Open('Employees', catNorthwind.ActiveConnection!, adOpenKeyset, adLockOptimistic, ADODB.CommandTypeEnum.adCmdTable); + + // Loop through the recordset displaying the contents of the FirstName field, the field's defined size, + // and its actual size. Also restore FirstName values from aryFirstName. + rstEmployees.MoveFirst(); + WScript.Echo(''); + WScript.Echo('Original Defined Size and Actual Size'); + for (let i = 0; !rstEmployees.EOF; i++) { + const firstField = rstEmployees('FirstName'); + firstField.Value = firstnames[i]; + WScript.Echo(`Employee name: ${firstField.Value} ${rstEmployees('LastName').Value}`); + WScript.Echo(`\tFirstName Defined size: ${firstField.DefinedSize}`); + WScript.Echo(`\tFirstName Actual size: ${firstField.ActualSize}`); + rstEmployees.MoveNext(); + } + rstEmployees.Close(); + + // Restore original FirstName column to catalog + catNorthwind.Tables('Employees').Columns.Delete(colNewFirstName.Name); + catNorthwind.Tables('Employees').Columns.Append(colFirstname); + + // Restore original FirstName values to Employees table + rstEmployees.Open('Employees', catNorthwind.ActiveConnection!, adOpenKeyset, adLockOptimistic, ADODB.CommandTypeEnum.adCmdTable); + rstEmployees.MoveFirst(); + for (let i = 0; !rstEmployees.EOF; i++) { + rstEmployees('FirstName').Value = firstnames[i]; + rstEmployees.MoveNext(); + } + rstEmployees.Close(); + } catch (error) { + WScript.Echo(error); + } finally { + catNorthwind = null; + colNewFirstName = null; + colFirstname = null; + rstEmployees = tryClose(rstEmployees); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/deleterule-property-example-vb +{ + let cat: ADOX.Catalog | null = null; + let tblNew: ADOX.Table | null; + let kyPrimary: ADOX.Key | null; + try { + // Connect the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + // Name new table + tblNew = new ActiveXObject('ADOX.Table'); + tblNew.Name = 'NewTable'; + + // Append a numeric and a text field to new table. + tblNew.Columns.Append('NumField', adInteger, 20); + tblNew.Columns.Append('TextField', adVarChar, 20); + + // Append the new table + cat.Tables.Append(tblNew); + + // Define the Primary key + kyPrimary = new ActiveXObject('ADOX.Key'); + kyPrimary.Name = 'NumField'; + kyPrimary.Type = ADOX.KeyTypeEnum.adKeyPrimary; + kyPrimary.RelatedTable = 'Customers'; + kyPrimary.Columns.Append('NumField'); + kyPrimary.Columns('NumField').RelatedColumn = 'CustomerId'; + kyPrimary.DeleteRule = ADOX.RuleEnum.adRICascade; + + // Append the primary key + cat.Tables('NewTable').Keys.Append(kyPrimary); + WScript.Echo('The primary key is appended.'); + + // Delete the table as this is a demonstration. + cat.Tables.Delete(tblNew.Name); + WScript.Echo('The primary key is deleted.'); + } catch (error) { + WScript.Echo(error); + } finally { + if (cat) { cat.ActiveConnection = null; } + cat = null; + kyPrimary = null; + tblNew = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/indexnulls-property-example-vb +{ + // Connect the catalog. + const cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + let catNorthwind: ADOX.Catalog | null = new ActiveXObject('ADOX.Catalog'); + catNorthwind.ActiveConnection = cnn; + + // Append Country column to new index + const idxNew = new ActiveXObject('ADOX.Index'); + idxNew.Columns.Append('Country'); + idxNew.Name = 'NewIndex'; + + // Set IndexNulls based on user selection + WScript.Echo('Allow nulls Y/N (Y to allow, N to ignore)?'); + const input = WScript.StdIn.ReadLine().toUpperCase(); + switch (input) { + case 'Y': + idxNew.IndexNulls = ADOX.AllowNullsEnum.adIndexNullsAllow; + break; + case 'N': + idxNew.IndexNulls = ADOX.AllowNullsEnum.adIndexNullsIgnore; + break; + } + + // Append new index to Employees table + catNorthwind.Tables('Employees').Indexes.Append(idxNew); + + const rstEmployees = new ActiveXObject('ADODB.Recordset'); + rstEmployees.Index = idxNew.Name; + rstEmployees.Open('Employees', cnn, adOpenKeyset, adLockOptimistic, ADODB.CommandTypeEnum.adCmdTableDirect); + + // Add a new record to the Employees table. + rstEmployees.AddNew(); + rstEmployees('FirstName').Value = 'Gary'; + rstEmployees('LastName').Value = 'Haarsager'; + rstEmployees.Update(); + + // Bookmark the newly added record + const bookmark = rstEmployees.Bookmark; + + // Use the new index to set the order of the records. + rstEmployees.MoveFirst(); + + WScript.Echo(`Index = ${rstEmployees.Index}, IndexNulls = ${idxNew.IndexNulls}`); + WScript.Echo('\tCountry - Name'); + + // Enumerate the Recordset. The value of the IndexNulls property will determine if the newly added record appears in the output. + while (!rstEmployees.EOF) { + const country = rstEmployees('Country').Value as string | null || '[NULL]'; + WScript.Echo(`\t${country} - ${rstEmployees('FirstName').Value} ${rstEmployees('LastName').Value}`); + rstEmployees.MoveNext(); + } + + // Delete new record because this is a demonstration. + rstEmployees.Bookmark = bookmark; + rstEmployees.Delete(); + + rstEmployees.Close(); + + catNorthwind.Tables('Employees').Indexes.Delete(idxNew.Name); + catNorthwind = null; +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/adox-code-example-numericscale-and-precision-properties-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null; + let colLoop: ADOX.Column | null; + try { + // Connect the catalog. + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Retrieve the Order Details table + const tblOD = cat.Tables('Order Details'); + + // Display numeric scale and precision of small integer fields. + for (colLoop of collectionToArray(tblOD.Columns)) { + if (colLoop.Type === ADODB.DataTypeEnum.adSmallInt) { + WScript.Echo(` +Column: ${colLoop.Name} +Numeric scale: ${colLoop.NumericScale} +Precision: ${colLoop.Precision} + `.trim()); + } + } + } catch (error) { + WScript.Echo(error); + } finally { + cat = null; + cnn = tryClose(cnn); + colLoop = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/parentcatalog-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null; + let tbl: ADOX.Table | null; + try { + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + tbl = new ActiveXObject('ADOX.Table'); + tbl.Name = 'MyContacts'; + tbl.ParentCatalog = cat; + + // Create fields and append them to the new Table object. + tbl.Columns.Append('ContactId', adInteger); + tbl.Columns.Append('CustomerID', adVarWChar); + tbl.Columns.Append('FirstName', adVarWChar); + tbl.Columns.Append('LastName', adVarWChar); + tbl.Columns.Append('Phone', adVarWChar, 20); + tbl.Columns.Append('Notes', ADODB.DataTypeEnum.adLongVarWChar); + + // Make the ContactId column an auto incrementing column + tbl.Columns('ContactId').Properties('AutoIncrement').Value = true; + + cat.Tables.Append(tbl); + WScript.Echo(`Table 'MyContacts' is added.`); + + // Delete the table as this is a demonstration. + cat.Tables.Delete(tbl.Name); + WScript.Echo(`Table 'MyContacts' is deleted.`); + } catch (error) { + WScript.Echo(error); + } finally { + cnn = tryClose(cnn); + cat = null; + tbl = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/primarykey-and-unique-properties-example-vb +{ + let catNorthwind: ADOX.Catalog | null = null; + let tblNew: ADOX.Table | null; + let idxNew: ADOX.Index | null; + let idxLoop: ADOX.Index | null; + try { + // Connect the catalog + catNorthwind = new ActiveXObject('ADOX.Catalog'); + catNorthwind.ActiveConnection = connectionString; + + // Name new table + tblNew = new ActiveXObject('ADOX.Table'); + tblNew.Name = 'NewTable'; + + // Append a numeric and a text field to new table. + tblNew.Columns.Append('NumField', adInteger, 20); + tblNew.Columns.Append('TextField', adVarWChar, 20); + + // Append new Primary Key index on NumField column to new table + idxNew = new ActiveXObject('ADOX.Index'); + idxNew.Name = 'NumIndex'; + idxNew.Columns.Append('NumField'); + idxNew.PrimaryKey = true; + idxNew.Unique = true; + tblNew.Indexes.Append(idxNew); + + // Append an index on Textfield to new table.. + // Note the different technique: Specifying index and column name as parameters of the Append method + tblNew.Indexes.Append('TextIndex', 'TextField'); + + // Append the new table + catNorthwind.Tables.Append(tblNew); + + WScript.Echo(`${tblNew.Indexes.Count} indexes in '${tblNew.Name}' table`); + + // Enumerate Indexes collection. + for (idxLoop of collectionToArray(tblNew.Indexes)) { + WScript.Echo(` +Index ${idxLoop.Name} + Primary key = ${idxLoop.PrimaryKey} + Unique = ${idxLoop.Unique} + Columns = ${collectionToArray(idxLoop.Columns).map(colLoop => colLoop.Name).join(', ')} + `.trim()); + } + + // Delete new table as this is a demonstration. + catNorthwind.Tables.Delete(tblNew.Name); + } catch (error) { + WScript.Echo(error); + } finally { + if (catNorthwind) { catNorthwind.ActiveConnection = null; } + catNorthwind = null; + tblNew = null; + idxNew = null; + idxLoop = null; + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/sortorder-property-example-vb +{ + let cnn: ADODB.Connection | null = null; + let catNorthwind: ADOX.Catalog | null; + let idxAscending: ADOX.Index | null; + let rstEmployees: ADODB.Recordset | null = null; + let idxDescending: ADOX.Index | null; + + try { + // Connect to the catalog. + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + catNorthwind = new ActiveXObject('ADOX.Catalog'); + catNorthwind.ActiveConnection = cnn; + + const enumerateRecordset = (indexName: string) => { + rstEmployees = new ActiveXObject('ADODB.Recordset'); + rstEmployees.Index = indexName; + rstEmployees.Open('Employees', cnn!, adOpenKeyset, adLockOptimistic, ADODB.CommandTypeEnum.adCmdTableDirect); + + rstEmployees.MoveFirst(); + WScript.Echo(`Index = ${rstEmployees.Index}`); + WScript.Echo('\tCountry - Name'); + + // Enumerate the Recordset. The value of the IndexNulls property will determine if the newly added record appears in the output. + while (!rstEmployees.EOF) { + WScript.Echo(`\t${rstEmployees('Country').Value} - ${rstEmployees('FirstName').Value} ${rstEmployees('LastName').Value}`); + rstEmployees.MoveNext(); + } + + rstEmployees.Close(); + }; + + // Append Country column to new index. + idxAscending = new ActiveXObject('ADOX.Index'); + idxAscending.Columns.Append('Country'); + idxAscending.Columns('Country').SortOrder = ADOX.SortOrderEnum.adSortAscending; + idxAscending.Name = 'Ascending'; + idxAscending.IndexNulls = ADOX.AllowNullsEnum.adIndexNullsAllow; + + // Append new index to Employees table. + catNorthwind.Tables('Employees').Indexes.Append(idxAscending); + + enumerateRecordset(idxAscending.Name); + + // Append Country column to new index. + idxDescending = new ActiveXObject('ADOX.Index'); + idxDescending.Columns.Append('Country'); + idxDescending.Columns('Country').SortOrder = ADOX.SortOrderEnum.adSortDescending; + idxDescending.Name = 'Descending'; + idxDescending.IndexNulls = ADOX.AllowNullsEnum.adIndexNullsAllow; + + // Append descending index to Employees table. + catNorthwind.Tables('Employees').Indexes.Append(idxDescending); + + enumerateRecordset(idxDescending.Name); + + // Delete new indexes because this is a demonstration. + catNorthwind.Tables('Employees').Indexes.Delete(idxAscending.Name); + catNorthwind.Tables('Employees').Indexes.Delete(idxDescending.Name); + } catch (error) { + WScript.Echo(error); + } finally { + cnn = tryClose(cnn); + catNorthwind = null; + idxAscending = null; + idxDescending = null; + rstEmployees = tryClose(rstEmployees); + } +} + +// https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/views-and-fields-collections-example-vb +{ + let cnn: ADODB.Connection | null = null; + let cat: ADOX.Catalog | null; + let rst: ADODB.Recordset | null = null; + let fld: ADODB.Field | null; + try { + // Open the Connection + cnn = new ActiveXObject('ADODB.Connection'); + cnn.Open(connectionString); + + // Open the catalog + cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = cnn; + + // Set the Source for the Recordset + rst = new ActiveXObject('ADODB.Recordset'); + rst.Source = cat.Views('AllCustomers').Command; + + // Retrieve Field information + rst.Fields.Refresh(); + + for (fld of collectionToArray(rst.Fields)) { + WScript.Echo(`${fld.Name}.${fld.Type}`); + } + } catch (error) { + WScript.Echo(error); + } finally { + cnn = tryClose(cnn); + cat = null; + rst = tryClose(rst); + fld = null; + } +} + +const flatten = (arr: T[][], result: T[] = []) => { + for (let i = 0, length = arr.length; i < length; i++) { + const value: T | any[] = arr[i]; // any in this context is because the array might have an arbitrary depth + if (Array.isArray(value)) { + flatten(value, result); + } else { + result.push(value); + } + } + return result; +}; + +// List indexes with multiple columns +{ + interface TableIndex { + tbl: ADOX.Table; + idx: ADOX.Index; + } + + const cat = new ActiveXObject('ADOX.Catalog'); + cat.ActiveConnection = connectionString; + + let multicolumnIndexes = flatten( + collectionToArray(cat.Tables).map(tbl => + collectionToArray(tbl.Indexes).map(idx => + ({ tbl, idx }) + ) + ) + ).filter(x => x.idx.Columns.Count > 1); + for (const x of multicolumnIndexes) { + const columns = collectionToArray(x.idx.Columns).map(col => col.Name).join(', '); + WScript.Echo(`${x.tbl.Name}.${x.idx.Name} -- ${columns}`); + } + multicolumnIndexes = []; +} diff --git a/types/activex-adox/index.d.ts b/types/activex-adox/index.d.ts new file mode 100644 index 0000000000..8960dd0a31 --- /dev/null +++ b/types/activex-adox/index.d.ts @@ -0,0 +1,335 @@ +// Type definitions for Microsoft ADO Extensions 6.0 for DDL and Security - ADOX 6.0 +// Project: https://docs.microsoft.com/en-us/sql/ado/reference/adox-api/adox-object-model +// Definitions by: Zev Spitz +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +/// + +declare namespace ADOX { + const enum ActionEnum { + adAccessDeny = 3, + adAccessGrant = 1, + adAccessRevoke = 4, + adAccessSet = 2, + } + + const enum AllowNullsEnum { + adIndexNullsAllow = 0, + adIndexNullsDisallow = 1, + adIndexNullsIgnore = 2, + adIndexNullsIgnoreAny = 4, + } + + const enum ColumnAttributesEnum { + adColFixed = 1, + adColNullable = 2, + } + + const enum InheritTypeEnum { + adInheritBoth = 3, + adInheritContainers = 2, + adInheritNone = 0, + adInheritNoPropogate = 4, + adInheritObjects = 1, + } + + const enum KeyTypeEnum { + adKeyForeign = 2, + adKeyPrimary = 1, + adKeyUnique = 3, + } + + const enum ObjectTypeEnum { + adPermObjColumn = 2, + adPermObjDatabase = 3, + adPermObjProcedure = 4, + adPermObjProviderSpecific = -1, + adPermObjTable = 1, + adPermObjView = 5, + } + + const enum RightsEnum { + adRightCreate = 16384, + adRightDelete = 65536, + adRightDrop = 256, + adRightExclusive = 512, + adRightExecute = 536870912, + adRightFull = 268435456, + adRightInsert = 32768, + adRightMaximumAllowed = 33554432, + adRightNone = 0, + adRightRead = -2147483648, + adRightReadDesign = 1024, + adRightReadPermissions = 131072, + adRightReference = 8192, + adRightUpdate = 1073741824, + adRightWithGrant = 4096, + adRightWriteDesign = 2048, + adRightWriteOwner = 524288, + adRightWritePermissions = 262144, + } + + const enum RuleEnum { + adRICascade = 1, + adRINone = 0, + adRISetDefault = 3, + adRISetNull = 2, + } + + const enum SortOrderEnum { + adSortAscending = 1, + adSortDescending = 2, + } + + class Catalog { + private constructor(); + private 'ADOX.Catalog_typekey': Catalog; + + /** Can be set to a Connection object or a string. Returns the active Connection object, or `null` */ + ActiveConnection: string | ADODB.Connection | null; + + /** + * The **Create** method creates and opens a new ADO Connection to the data source specified in _ConnectString_. If successful, the new **Connection** object is assigned to the **ActiveConnection** property. + * + * An error will occur if the provider does not support creating new catalogs. + * + * @param ConnectString Connection string + */ + Create(ConnectString: string): void; + + /** + * @param ObjectTypeId Specifies the GUID for a provider object type not defined by the OLE DB specification + */ + GetObjectOwner(ObjectName: string, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, ObjectTypeId: any): string; + GetObjectOwner(ObjectName: string, ObjectType: ObjectTypeEnum): string; + readonly Groups: Groups; + readonly Procedures: Procedures; + + /** + * @param UserName Specifies the name of the **User** or **Group** to own the object + * @param ObjectTypeId Specifies the GUID for a provider object type that is not defined by the OLE DB specification + */ + SetObjectOwner(ObjectName: string, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, UserName: string, ObjectTypeId: any): void; + SetObjectOwner(ObjectName: string, ObjectType: ObjectTypeEnum, UserName: string): void; + readonly Tables: Tables; + readonly Users: Users; + readonly Views: Views; + } + + class Column { + private constructor(); + private 'ADOX.Column_typekey': Column; + Attributes: ColumnAttributesEnum; + DefinedSize: number; + Name: string; + NumericScale: number; + ParentCatalog: Catalog; + Precision: number; + readonly Properties: ADODB.Properties; + RelatedColumn: string; + SortOrder: SortOrderEnum; + Type: ADODB.DataTypeEnum; + } + + interface Columns { + /** + * @param Type [Type=202] + * @param DefinedSize [DefinedSize=0] + */ + Append(Item: Column | string, Type?: ADODB.DataTypeEnum, DefinedSize?: number): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Column; + Refresh(): void; + (Item: string | number): Column; + } + + class Group { + private constructor(); + private 'ADOX.Group_typekey': Group; + + /** + * @param Name Specifies the name of the object for which to set permissions. Pass `null` if you want to get the permissions for the object container. + * @param ObjectTypeId Specifies the GUID for a provider object type not defined by the OLE DB specification. + */ + GetPermissions(Name: string | null, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, ObjectTypeId: any): RightsEnum; + GetPermissions(Name: string | null, ObjectType: ObjectTypeEnum): RightsEnum; + Name: string; + ParentCatalog: Catalog; + readonly Properties: ADODB.Properties; + + /** + * @param Rights A bitmask of one or more of the **RightsEnum** constants, that indicates the rights to set. + * @param Inherit [Inherit=0] + * @param ObjectTypeId Specifies the GUID for a provider object type not defined by the OLE DB specification. + */ + SetPermissions(Name: string, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, Action: ActionEnum, Rights: RightsEnum, Inherit: InheritTypeEnum, ObjectTypeId: any): void; + SetPermissions(Name: string, ObjectType: ObjectTypeEnum, Action: ActionEnum, Rights: RightsEnum, Inherit?: InheritTypeEnum): void; + readonly Users: Users; + } + + interface Groups { + Append(Item: Group | string): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Group; + Refresh(): void; + (Item: string | number): Group; + } + + class Index { + private constructor(); + private 'ADOX.Index_typekey': Index; + Clustered: boolean; + readonly Columns: Columns; + IndexNulls: AllowNullsEnum; + Name: string; + PrimaryKey: boolean; + readonly Properties: ADODB.Properties; + Unique: boolean; + } + + // tslint:disable-next-line:interface-name + interface Indexes { + Append(Item: Index | string, Columns?: string | SafeArray): void; // is this actually two overloads, one with [Index] and one with [string,string | SafeArray]? + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Index; + Refresh(): void; + (Item: string | number): Index; + } + + class Key { + private constructor(); + private 'ADOX.Key_typekey': Key; + readonly Columns: Columns; + DeleteRule: RuleEnum; + Name: string; + RelatedTable: string; + Type: KeyTypeEnum; + UpdateRule: RuleEnum; + } + + interface Keys { + /** + * @param Type [Type=1] + * @param RelatedTable [RelatedTable=''] + * @param RelatedColumn [RelatedColumn=''] + */ + Append(Item: Key | string, Type?: KeyTypeEnum, Column?: string | SafeArray, RelatedTable?: string, RelatedColumn?: string): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Key; + Refresh(): void; + (Item: string | number): Key; + } + + class Procedure { + private constructor(); + private 'ADOX.Procedure_typekey': Procedure; + Command: ADODB.Command; + readonly DateCreated: VarDate | null; + readonly DateModified: VarDate | null; + readonly Name: string; + } + + interface Procedures { + Append(Name: string, Command: ADODB.Command): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Procedure; + Refresh(): void; + (Item: string | number): Procedure; + } + + class Table { + private constructor(); + private 'ADOX.Table_typekey': Table; + readonly Columns: Columns; + readonly DateCreated: VarDate; + readonly DateModified: VarDate; + readonly Indexes: Indexes; + readonly Keys: Keys; + Name: string; + ParentCatalog: Catalog; + readonly Properties: ADODB.Properties; + readonly Type: string; + } + + interface Tables { + Append(Item: Table | string): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): Table; + Refresh(): void; + (Item: string | number): Table; + } + + class User { + private constructor(); + private 'ADOX.User_typekey': User; + ChangePassword(OldPassword: string, NewPassword: string): void; + + /** + * @param Name Specifies the name of the object for which to set permissions. Pass `null` if you want to get the permissions for the object container. + * @param ObjectTypeId Specifies the GUID for a provider object type not defined by the OLE DB specification. + */ + GetPermissions(Name: string | null, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, ObjectTypeId: any): RightsEnum; + GetPermissions(Name: string | null, ObjectType: ObjectTypeEnum): RightsEnum; + readonly Groups: Groups; + Name: string; + ParentCatalog: Catalog; + readonly Properties: ADODB.Properties; + + /** + * @param Rights A bitmask of one or more of the **RightsEnum** constants, that indicates the rights to set. + * @param Inherit [Inherit=0] + * @param ObjectTypeId Specifies the GUID for a provider object type not defined by the OLE DB specification. + */ + SetPermissions(Name: string, ObjectType: ObjectTypeEnum.adPermObjProviderSpecific, Action: ActionEnum, Rights: RightsEnum, Inherit: InheritTypeEnum, ObjectTypeId: any): void; + SetPermissions(Name: string, ObjectType: ObjectTypeEnum, Action: ActionEnum, Rights: RightsEnum, Inherit?: InheritTypeEnum): void; + } + + interface Users { + /** @param Password [Password=''] */ + Append(Item: User | string, Password?: string): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): User; + Refresh(): void; + (Item: string | number): User; + } + + class View { + private constructor(); + private 'ADOX.View_typekey': View; + Command: ADODB.Command; + readonly DateCreated: VarDate; + readonly DateModified: VarDate; + readonly Name: string; + } + + interface Views { + Append(Name: string, Command: ADODB.Command): void; + readonly Count: number; + Delete(Item: string | number): void; + Item(Item: string | number): View; + Refresh(): void; + (Item: string | number): View; + } +} + +interface ActiveXObject { + new(progid: K): ActiveXObjectNameMap[K]; +} + +interface ActiveXObjectNameMap { + 'ADOX.Catalog': ADOX.Catalog; + 'ADOX.Column': ADOX.Column; + 'ADOX.Group': ADOX.Group; + 'ADOX.Index': ADOX.Index; + 'ADOX.Key': ADOX.Key; + 'ADOX.Table': ADOX.Table; + 'ADOX.User': ADOX.User; +} diff --git a/types/activex-iwshruntimelibrary/package.json b/types/activex-adox/package.json similarity index 100% rename from types/activex-iwshruntimelibrary/package.json rename to types/activex-adox/package.json diff --git a/types/activex-adox/tsconfig.json b/types/activex-adox/tsconfig.json new file mode 100644 index 0000000000..7aaa955db5 --- /dev/null +++ b/types/activex-adox/tsconfig.json @@ -0,0 +1,22 @@ + +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es5", "scripthost"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "activex-adox-tests.ts" + ] +} \ No newline at end of file diff --git a/types/activex-adox/tslint.json b/types/activex-adox/tslint.json new file mode 100644 index 0000000000..b06c06beef --- /dev/null +++ b/types/activex-adox/tslint.json @@ -0,0 +1,7 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "no-const-enum": false, + "max-line-length": false + } +} \ No newline at end of file diff --git a/types/activex-dao/activex-dao-tests.ts b/types/activex-dao/activex-dao-tests.ts index 412bea60b5..7e8c2bef22 100644 --- a/types/activex-dao/activex-dao-tests.ts +++ b/types/activex-dao/activex-dao-tests.ts @@ -1,27 +1,48 @@ -let engine = new ActiveXObject('DAO.DBEngine.120'); +const collectionToArray = (col: { Item(key: any): T }): T[] => { + const results: T[] = []; + const enumerator = new Enumerator(col); + enumerator.moveFirst(); + while (!enumerator.atEnd()) { + results.push(enumerator.item()); + enumerator.moveNext(); + } + return results; +}; + +const dbOpenSnapshot = DAO.RecordsetTypeEnum.dbOpenSnapshot; + +let engine = new ActiveXObject('DAO.DBEngine'); let dbsNorthwind = engine.OpenDatabase('c:\\path\\to\\northwind.mdb'); -// adding a record to a recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/add-a-record-to-a-dao-recordset -let rstShippers = dbsNorthwind.OpenRecordset('Shippers'); -rstShippers.AddNew(); -rstShippers.Fields.Item('CompanyName').Value = 'Global Parcel Service'; -// Set remaining fields -rstShippers.Update(); -rstShippers.Close(); +// https://msdn.microsoft.com/VBA/Access-VBA/articles/add-a-record-to-a-dao-recordset +{ + // adding a record to a recordset + const rstShippers = dbsNorthwind.OpenRecordset('Shippers'); + rstShippers.AddNew(); + rstShippers('CompanyName').Value = 'Global Parcel Service'; + // Set remaining fields + rstShippers.Update(); + rstShippers.Close(); +} -// create a QueryDef with the given SQL -- https://msdn.microsoft.com/VBA/Access-VBA/articles/build-sql-statements-that-include-variables-and-controls -let sql = 'SELECT * FROM Orders WHERE OrderDate > #3-31-2006#'; -let qdf = dbsNorthwind.CreateQueryDef('Second quarter', sql); -// using parameters -sql = ` - PARAMETERS QuarterStart DATETIME - SELECT * - FROM Orders - WHERE OrderDate > QuarterStart -`; -qdf = dbsNorthwind.CreateQueryDef('Second quarter (parameters)', sql); +// https://msdn.microsoft.com/VBA/Access-VBA/articles/build-sql-statements-that-include-variables-and-controls +{ + // create a QueryDef with the given SQL + let sql = 'SELECT * FROM Orders WHERE OrderDate > #3-31-2006#'; + let qdf = dbsNorthwind.CreateQueryDef('Second quarter', sql); + // using parameters + sql = ` + PARAMETERS QuarterStart DATETIME + SELECT * + FROM Orders + WHERE OrderDate > QuarterStart + `; + qdf = dbsNorthwind.CreateQueryDef('Second quarter (parameters)', sql); + WScript.Echo(`Field names: ${collectionToArray(qdf.Fields).map(fld => fld.Name).join(', ')}`); +} -// count the number of records in a Recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/count-the-number-of-records-in-a-dao-recordset +// https://msdn.microsoft.com/VBA/Access-VBA/articles/count-the-number-of-records-in-a-dao-recordset +/** Count the number of records in a Recordset */ const findRecordCount = (dbs: DAO.Database, sql: string) => { let count = 0; const rstRecords = dbs.OpenRecordset(sql); @@ -33,113 +54,119 @@ const findRecordCount = (dbs: DAO.Database, sql: string) => { return count; }; -// delete records from a Recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/delete-a-record-from-a-dao-recordset -rstShippers = dbsNorthwind.OpenRecordset('SELECT * FROM Shippers ORDER BY CompanyName, ShipperID', DAO.RecordsetTypeEnum.dbOpenDynaset); -if (!rstShippers.EOF) { - let name = rstShippers.Fields.Item('CompanyName').Value; - rstShippers.MoveNext(); - while (!rstShippers.EOF) { - const recordName: string = rstShippers.Fields.Item('CompanyName').Value; - if (recordName === name) { - rstShippers.Delete(); - } else { - name = recordName; - } +// https://msdn.microsoft.com/VBA/Access-VBA/articles/delete-a-record-from-a-dao-recordset +{ + // delete records from a Recordset + const rstShippers = dbsNorthwind.OpenRecordset('SELECT * FROM Shippers ORDER BY CompanyName, ShipperID', DAO.RecordsetTypeEnum.dbOpenDynaset); + if (!rstShippers.EOF) { + let name = rstShippers('CompanyName').Value; rstShippers.MoveNext(); + while (!rstShippers.EOF) { + const recordName: string = rstShippers('CompanyName').Value; + if (recordName === name) { + rstShippers.Delete(); + } else { + name = recordName; + } + rstShippers.MoveNext(); + } } + rstShippers.Close(); } -rstShippers.Close(); -// copy entire records to an array -- https://msdn.microsoft.com/VBA/Access-VBA/articles/extract-data-from-a-record-in-a-dao-recordset -let rstEmployees = dbsNorthwind.OpenRecordset('SELECT FirstName, LastName, Title FROM Employees', DAO.RecordsetTypeEnum.dbOpenSnapshot); -let records = new VBArray(rstEmployees.GetRows(3)); -let recordCount = records.ubound(2) + 1; -let columnCount = records.ubound(1) + 1; -for (let row = 0; row < recordCount; row += 1) { - for (let column = 0; column < columnCount; column += 1) { - WScript.Echo(records.getItem(column, row)); +// https://msdn.microsoft.com/VBA/Access-VBA/articles/extract-data-from-a-record-in-a-dao-recordset +{ + // copy entire records to an array + const rstEmployees = dbsNorthwind.OpenRecordset('SELECT FirstName, LastName, Title FROM Employees', dbOpenSnapshot); + const records = new VBArray(rstEmployees.GetRows(3)); + const recordCount = records.ubound(2) + 1; + const columnCount = records.ubound(1) + 1; + for (let row = 0; row < recordCount; row += 1) { + for (let column = 0; column < columnCount; column += 1) { + WScript.Echo(records.getItem(column, row)); + } } + if (rstEmployees.EOF) { WScript.Echo('At end of recordset'); } + rstEmployees.Close(); } -if (rstEmployees.EOF) { WScript.Echo('At end of recordset'); } -rstEmployees.Close(); // find a record in a dynaset-type or snapshot-type DAO Recordset -- https://msdn.microsoft.com/en-us/vba/access-vba/articles/find-a-record-in-a-dynaset-type-or-snapshot-type-dao-recordset -const findOrdersWithoutDetails = () => { +{ const orders: number[] = []; - const rstOrders = dbsNorthwind.OpenRecordset('SELECT * FROM Orders ORDER BY OrderID', DAO.RecordsetTypeEnum.dbOpenSnapshot); - const rstOrderDetails = dbsNorthwind.OpenRecordset('SELECT * FROM [Order Details] ORDER BY OrderID', DAO.RecordsetTypeEnum.dbOpenSnapshot); + const rstOrders = dbsNorthwind.OpenRecordset('SELECT * FROM Orders ORDER BY OrderID', dbOpenSnapshot); + const rstOrderDetails = dbsNorthwind.OpenRecordset('SELECT * FROM [Order Details] ORDER BY OrderID', dbOpenSnapshot); - const closeRecordsets = () => { - rstOrders.Close(); - rstOrderDetails.Close(); - }; - if (rstOrders.EOF || rstOrderDetails.EOF) { - closeRecordsets(); - return; - } - - while (!rstOrders.EOF) { - const orderID = rstOrders.Fields.Item('OrderID').Value; - rstOrderDetails.FindFirst(`OrderID=${orderID}`); - if (rstOrderDetails.NoMatch) { - orders.push(orderID); + if (!rstOrders.EOF && !rstOrderDetails.EOF) { + while (!rstOrders.EOF) { + const orderID = rstOrders('OrderID').Value; + rstOrderDetails.FindFirst(`OrderID=${orderID}`); + if (rstOrderDetails.NoMatch) { + orders.push(orderID); + } + rstOrders.MoveNext(); } - rstOrders.MoveNext(); } - closeRecordsets(); - return orders; -}; -// find a record in a table-type DAO Recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/find-a-record-in-a-table-type-dao-recordset + rstOrders.Close(); + rstOrderDetails.Close(); + + WScript.Echo(orders.join('\n')); +} + +// https://msdn.microsoft.com/VBA/Access-VBA/articles/find-a-record-in-a-table-type-dao-recordset +/** Find a record in a table-type DAO Recordset */ const getHireDate = (employeeID: number) => { let hireDate: Date | undefined; const rstEmployees = dbsNorthwind.OpenRecordset('Employees'); rstEmployees.Index = 'PrimaryKey'; rstEmployees.Seek('=', employeeID); if (!rstEmployees.NoMatch) { - hireDate = new Date(rstEmployees.Fields.Item('HireDate').Value as VarDate); + hireDate = new Date(rstEmployees('HireDate').Value as VarDate); } return hireDate; }; -// manipulate multiple fields with DAO -- https://msdn.microsoft.com/VBA/Access-VBA/articles/manipulate-multivalued-fields-with-dao -const browseMultiValueField = () => { +// https://msdn.microsoft.com/VBA/Access-VBA/articles/manipulate-multivalued-fields-with-dao +{ + // manipulate multiple fields with DAO const rs = dbsNorthwind.OpenRecordset('Tasks'); rs.MoveFirst(); while (!rs.EOF) { - WScript.Echo(rs.Fields.Item('TaskName').Value); - const childRs = rs.Fields.Item('AssignedTo').Value as DAO.Recordset; + WScript.Echo(rs('TaskName').Value); + const childRs = rs('AssignedTo').Value as DAO.Recordset; if (childRs.EOF) { continue; } childRs.MoveFirst(); while (!childRs.EOF) { - WScript.Echo('\t' + childRs.Fields.Item('Value').Value); + WScript.Echo('\t' + childRs('Value').Value); } } -}; +} -// modifying an existing record in a DAO Recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/modify-an-existing-record-in-a-dao-recordset -const changeTitleWithoutTransaction = () => { - rstEmployees = dbsNorthwind.OpenRecordset('Employees'); +// https://msdn.microsoft.com/VBA/Access-VBA/articles/modify-an-existing-record-in-a-dao-recordset +{ + // modifying an existing record in a DAO Recordset + const rstEmployees = dbsNorthwind.OpenRecordset('Employees'); while (!rstEmployees.EOF) { - if (rstEmployees.Fields.Item('Title').Value === 'Sales Representative') { + if (rstEmployees('Title').Value === 'Sales Representative') { rstEmployees.Edit(); - rstEmployees.Fields.Item('Title').Value = 'Account Executive'; + rstEmployees('Title').Value = 'Account Executive'; rstEmployees.Update(); } rstEmployees.MoveNext(); } rstEmployees.Close(); -}; +} -// using transactions in a DAO Recordset -- https://msdn.microsoft.com/VBA/Access-VBA/articles/use-transactions-in-a-dao-recordset +// https://msdn.microsoft.com/VBA/Access-VBA/articles/use-transactions-in-a-dao-recordset +/** using transactions in a DAO Recordset */ const changeTitleWithTransaction = (commitTransaction: boolean) => { - const currentWorkspace = engine.Workspaces.Item(0); - rstEmployees = dbsNorthwind.OpenRecordset('Employees'); + const currentWorkspace = engine.Workspaces(0); + const rstEmployees = dbsNorthwind.OpenRecordset('Employees'); currentWorkspace.BeginTrans(); while (!rstEmployees.EOF) { - if (rstEmployees.Fields.Item('Title').Value === 'Sales Representative') { + if (rstEmployees('Title').Value === 'Sales Representative') { rstEmployees.Edit(); - rstEmployees.Fields.Item('Title').Value = 'Account Executive'; + rstEmployees('Title').Value = 'Account Executive'; rstEmployees.Update(); } rstEmployees.MoveNext(); diff --git a/types/activex-dao/index.d.ts b/types/activex-dao/index.d.ts index 6db3e0bd0d..a2a159e324 100644 --- a/types/activex-dao/index.d.ts +++ b/types/activex-dao/index.d.ts @@ -1,8 +1,8 @@ -// Type definitions for Microsoft Office 14.0 Access Database Engine Object Library - DAO 14.0 +// Type definitions for Microsoft Office 16.0 Access Database Engine Object Library - DAO 16.0 // Project: https://msdn.microsoft.com/en-us/library/dn124645.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.4 +// TypeScript Version: 2.6 declare namespace DAO { const enum _DAOSuppHelp { @@ -56,12 +56,15 @@ declare namespace DAO { } const enum DatabaseTypeEnum { + /** @deprecated */ dbDecrypt = 4, + /** @deprecated */ dbEncrypt = 2, dbVersion10 = 1, dbVersion11 = 8, dbVersion120 = 128, dbVersion140 = 256, + dbVersion150 = 512, dbVersion20 = 16, dbVersion30 = 32, dbVersion40 = 64, @@ -128,6 +131,15 @@ declare namespace DAO { dbRefreshCache = 8, } + const enum ISAMStatsEnum { + DiskReads = 0, + DiskWrites = 1, + LocksPlaced = 4, + LocksReleased = 5, + ReadsFromCache = 2, + ReadsFromReadAheadCache = 3, + } + const enum LanguageConstants { dbLangArabic = ';LANGID=0x0401;CP=1256;COUNTRY=0', dbLangChineseSimplified = ';LANGID=0x0804;CP=936;COUNTRY=0', @@ -308,18 +320,26 @@ declare namespace DAO { dbUseODBC = 1, } + type Bookmark = SafeArray; + + class ComplexType { + private 'DAO.ComplexType_typekey': ComplexType; + private constructor(); + readonly Fields: Fields; + } + class Connection { private 'DAO.Connection_typekey': Connection; private constructor(); Cancel(): void; Close(): void; readonly Connect: string; - CreateQueryDef(Name?: any, SQLText?: any): QueryDef; + CreateQueryDef(Name?: string, SQLText?: string): QueryDef; readonly Database: Database; - Execute(Query: string, Options?: any): void; + Execute(Query: string, Options?: RecordsetOptionEnum): void; readonly hDbc: number; readonly Name: string; - OpenRecordset(Name: string, Type?: any, Options?: any, LockEdit?: any): Recordset; + OpenRecordset(Name: string, Type?: RecordsetTypeEnum, Options?: RecordsetOptionEnum, LockEdit?: LockTypeEnum): Recordset; readonly QueryDefs: QueryDefs; QueryTimeout: number; readonly RecordsAffected: number; @@ -329,12 +349,11 @@ declare namespace DAO { readonly Updatable: boolean; } - class Connections { - private 'DAO.Connections_typekey': Connections; - private constructor(); + interface Connections { readonly Count: number; - Item(Item: any): Connection; + Item(Item: number | string): Connection; Refresh(): void; + (Item: number | string): Connection; } class Container { @@ -350,12 +369,11 @@ declare namespace DAO { UserName: string; } - class Containers { - private 'DAO.Containers_typekey': Containers; - private constructor(); + interface Containers { readonly Count: number; - Item(Item: any): Container; + Item(Item: number | string): Container; Refresh(): void; + (Item: number | string): Container; } class Database { @@ -366,16 +384,16 @@ declare namespace DAO { Connect: string; readonly Connection: Connection; readonly Containers: Containers; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; - CreateQueryDef(Name?: any, SQLText?: any): QueryDef; - CreateRelation(Name?: any, Table?: any, ForeignTable?: any, Attributes?: any): Relation; - CreateTableDef(Name?: any, Attributes?: any, SourceTableName?: any, Connect?: any): TableDef; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; + CreateQueryDef(Name?: string, SQLText?: string): QueryDef; + CreateRelation(Name?: string, Table?: string, ForeignTable?: string, Attributes?: RelationAttributeEnum): Relation; + CreateTableDef(Name?: string, Attributes?: TableDefAttributeEnum, SourceTableName?: string, Connect?: string): TableDef; DesignMasterID: string; - Execute(Query: string, Options?: any): void; - MakeReplica(PathName: string, Description: string, Options?: any): void; + Execute(Query: string, Options?: RecordsetOptionEnum): void; + MakeReplica(PathName: string, Description: string, Options?: ReplicaTypeEnum): void; readonly Name: string; NewPassword(bstrOld: string, bstrNew: string): void; - OpenRecordset(Name: string, Type?: any, Options?: any, LockEdit?: any): Recordset; + OpenRecordset(Name: string, Type?: RecordsetTypeEnum, Options?: RecordsetOptionEnum, LockEdit?: LockTypeEnum): Recordset; PopulatePartial(DbPathName: string): void; readonly Properties: Properties; readonly QueryDefs: QueryDefs; @@ -384,19 +402,18 @@ declare namespace DAO { readonly Recordsets: Recordsets; readonly Relations: Relations; readonly ReplicaID: string; - Synchronize(DbPathName: string, ExchangeType?: any): void; + Synchronize(DbPathName: string, ExchangeType?: SynchronizeTypeEnum): void; readonly TableDefs: TableDefs; readonly Transactions: boolean; readonly Updatable: boolean; readonly Version: string; } - class Databases { - private 'DAO.Databases_typekey': Databases; - private constructor(); + interface Databases { readonly Count: number; - Item(Item: any): Database; + Item(Item: number | string): Database; Refresh(): void; + (Item: number | string): Database; } class DBEngine { @@ -404,26 +421,51 @@ declare namespace DAO { private constructor(); BeginTrans(): void; - /** @param number [Option=0] */ + /** @param Option [Option=0] */ CommitTrans(Option?: number): void; - CompactDatabase(SrcName: string, DstName: string, DstLocale?: any, Options?: any, SrcLocale?: any): void; - CreateDatabase(Name: string, Locale: string, Option?: any): Database; - CreateWorkspace(Name: string, UserName: string, Password: string, UseType?: any): Workspace; + + /** + * Compact a closed database + * + * @param DstLocale Specify one of the following: + * * the locale, using one of the language constants + * * the password, in the form `;pwd=MyNewPassword'` + * * both the constant and a password, e.g. `dbLangGreek + ';pwd=MyNewPassword'` + * + * @param Options `dbEncrypt` and `dbDecrypt` are deprecated, and unsupported for ACCDB + * @param password Deprecated, and unsupported for ACCDB + */ + CompactDatabase(SrcName: string, DstName: string, DstLocale?: LanguageConstants | string, Options?: DatabaseTypeEnum, password?: string): void; + + /** + * @param Locale Specify one of the following: + * * the locale, using one of the language constants + * * the password, in the form `;pwd=MyNewPassword'` + * * both the constant and a password, e.g. `dbLangGreek + ';pwd=MyNewPassword'` + */ + CreateDatabase(Name: string, Locale: LanguageConstants | string, Option?: DatabaseTypeEnum): Database; + CreateWorkspace(Name: string, UserName: string, Password: string, UseType?: WorkspaceTypeEnum): Workspace; readonly DefaultPassword: string; DefaultType: number; readonly DefaultUser: string; readonly Errors: Errors; - Idle(Action?: any): void; + Idle(Action?: IdleEnum): void; IniPath: string; - ISAMStats(StatNum: number, Reset?: any): number; + + /** Returns various statistics from the Jet engine */ + ISAMStats(StatNum: ISAMStatsEnum, Reset?: boolean): number; LoginTimeout: number; - OpenConnection(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Connection; - OpenDatabase(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Database; + + /** + * @param Connect ODBC connection string; prepend with `ODBC;` + */ + OpenConnection(Name: string, Options?: DriverPromptEnum | RecordsetOptionEnum.dbRunAsync, ReadOnly?: boolean, Connect?: string): Connection; + OpenDatabase(Name: string, Exclusive?: boolean, ReadOnly?: boolean, Connect?: string): Database; readonly Properties: Properties; RegisterDatabase(Dsn: string, Driver: string, Silent: boolean, Attributes: string): void; RepairDatabase(Name: string): void; Rollback(): void; - SetOption(Option: number, Value: any): void; + SetOption(Option: SetOptionEnum, Value: any): void; SystemDB: string; readonly Version: string; readonly Workspaces: Workspaces; @@ -434,9 +476,9 @@ declare namespace DAO { private constructor(); readonly AllPermissions: number; readonly Container: string; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; - readonly DateCreated: any; - readonly LastUpdated: any; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; + readonly DateCreated: VarDate; + readonly LastUpdated: VarDate; readonly Name: string; Owner: string; Permissions: number; @@ -444,12 +486,11 @@ declare namespace DAO { UserName: string; } - class Documents { - private 'DAO.Documents_typekey': Documents; - private constructor(); + interface Documents { readonly Count: number; - Item(Item: any): Document; + Item(Item: number | string): Document; Refresh(): void; + (Item: number | string): Document; } class Error { @@ -462,33 +503,38 @@ declare namespace DAO { readonly Source: string; } - class Errors { - private 'DAO.Errors_typekey': Errors; - private constructor(); + interface Errors { readonly Count: number; Item(Item: any): Error; Refresh(): void; + (Item: any): Error; } class Field { - private 'DAO.Field_typekey': Field; private constructor(); + private 'DAO.Field2_typekey': Field; AllowZeroLength: boolean; AppendChunk(Val: any): void; + AppendOnly: boolean; Attributes: number; readonly CollatingOrder: number; readonly CollectionIndex: number; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; + readonly ComplexType: ComplexType; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; readonly DataUpdatable: boolean; DefaultValue: any; + Expression: string; readonly FieldSize: number; ForeignName: string; GetChunk(Offset: number, Bytes: number): any; + readonly IsComplex: boolean; + LoadFromFile(FileName: string): void; Name: string; OrdinalPosition: number; readonly OriginalValue: any; readonly Properties: Properties; Required: boolean; + SaveToFile(FileName: string): void; Size: number; readonly SourceField: string; readonly SourceTable: string; @@ -500,44 +546,42 @@ declare namespace DAO { readonly VisibleValue: any; } - class Fields { - private 'DAO.Fields_typekey': Fields; - private constructor(); - Append(Object: any): void; + interface Fields { + Append(Field: Field): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Field; + Item(Item: number | string): Field; Refresh(): void; + (Item: number | string): Field; } class Group { private 'DAO.Group_typekey': Group; private constructor(); - CreateUser(Name?: any, PID?: any, Password?: any): User; + CreateUser(Name?: string, PID?: string, Password?: string): User; Name: string; readonly PID: string; readonly Properties: Properties; readonly Users: Users; } - class Groups { - private 'DAO.Groups_typekey': Groups; - private constructor(); - Append(Object: any): void; + interface Groups { + Append(Group: Group): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Group; + Item(Item: number | string): Group; Refresh(): void; + (Item: number | string): Group; } class Index { private 'DAO.Index_typekey': Index; private constructor(); Clustered: boolean; - CreateField(Name?: any, Type?: any, Size?: any): Field; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; + CreateField(Name?: string): Field; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; readonly DistinctCount: number; - Fields: any; + Fields: Fields; readonly Foreign: boolean; IgnoreNulls: boolean; Name: string; @@ -547,14 +591,14 @@ declare namespace DAO { Unique: boolean; } - class Indexes { - private 'DAO.Indexes_typekey': Indexes; - private constructor(); - Append(Object: any): void; + // tslint:disable-next-line:interface-name + interface Indexes { + Append(Index: Index): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Index; + Item(Item: number | string): Index; Refresh(): void; + (Item: number | string): Index; } class Parameter { @@ -567,53 +611,20 @@ declare namespace DAO { Value: any; } - class Parameters { - private 'DAO.Parameters_typekey': Parameters; - private constructor(); + interface Parameters { readonly Count: number; - Item(Item: any): Parameter; + Item(Item: number | string): Parameter; Refresh(): void; + (Item: number | string): Parameter; } - /** DAO 3.0 DBEngine (private) */ - class PrivDBEngine { - private 'DAO.PrivDBEngine_typekey': PrivDBEngine; - private constructor(); - BeginTrans(): void; - - /** @param number [Option=0] */ - CommitTrans(Option?: number): void; - CompactDatabase(SrcName: string, DstName: string, DstLocale?: any, Options?: any, SrcLocale?: any): void; - CreateDatabase(Name: string, Locale: string, Option?: any): Database; - CreateWorkspace(Name: string, UserName: string, Password: string, UseType?: any): Workspace; - readonly DefaultPassword: string; - DefaultType: number; - readonly DefaultUser: string; - readonly Errors: Errors; - Idle(Action?: any): void; - IniPath: string; - ISAMStats(StatNum: number, Reset?: any): number; - LoginTimeout: number; - OpenConnection(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Connection; - OpenDatabase(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Database; - readonly Properties: Properties; - RegisterDatabase(Dsn: string, Driver: string, Silent: boolean, Attributes: string): void; - RepairDatabase(Name: string): void; - Rollback(): void; - SetOption(Option: number, Value: any): void; - SystemDB: string; - readonly Version: string; - readonly Workspaces: Workspaces; - } - - class Properties { - private 'DAO.Properties_typekey': Properties; - private constructor(); - Append(Object: any): void; + interface Properties { + Append(Property: Property): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Property; + Item(Item: number | string): Property; Refresh(): void; + (Item: number | string): Property; } class Property { @@ -633,81 +644,78 @@ declare namespace DAO { Cancel(): void; Close(): void; Connect: string; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; - readonly DateCreated: any; - Execute(Options?: any): void; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; + readonly DateCreated: VarDate; + Execute(Options?: RecordsetOptionEnum): void; readonly Fields: Fields; readonly hStmt: number; - readonly LastUpdated: any; + readonly LastUpdated: VarDate; MaxRecords: number; Name: string; ODBCTimeout: number; - OpenRecordset(Type?: any, Options?: any, LockEdit?: any): Recordset; + OpenRecordset(Type?: RecordsetTypeEnum, Options?: RecordsetOptionEnum, LockEdit?: LockTypeEnum): Recordset; readonly Parameters: Parameters; - Prepare: any; + Prepare: QueryDefStateEnum; readonly Properties: Properties; readonly RecordsAffected: number; ReturnsRecords: boolean; SQL: string; readonly StillExecuting: boolean; - readonly Type: number; + readonly Type: QueryDefTypeEnum; readonly Updatable: boolean; } - class QueryDefs { - private 'DAO.QueryDefs_typekey': QueryDefs; - private constructor(); - Append(Object: any): void; + interface QueryDefs { + Append(QueryDef: QueryDef): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): QueryDef; + Item(Item: number | string): QueryDef; Refresh(): void; + (Item: number | string): QueryDef; } - class Recordset { - private 'DAO.Recordset_typekey': Recordset; - private constructor(); + interface Recordset { AbsolutePosition: number; AddNew(): void; readonly BatchCollisionCount: number; - readonly BatchCollisions: any; + readonly BatchCollisions: SafeArray; BatchSize: number; readonly BOF: boolean; - Bookmark: SafeArray; + Bookmark: Bookmark; readonly Bookmarkable: boolean; CacheSize: number; - CacheStart: SafeArray; + CacheStart: Bookmark; Cancel(): void; - /** @param number [UpdateType=1] */ + /** @param UpdateType [UpdateType=1] */ CancelUpdate(UpdateType?: number): void; Clone(): Recordset; Close(): void; Collect(Item: any): any; Connection: Connection; CopyQueryDef(): QueryDef; - readonly DateCreated: any; + readonly DateCreated: VarDate; Delete(): void; Edit(): void; - readonly EditMode: number; + readonly EditMode: EditModeEnum; readonly EOF: boolean; readonly Fields: Fields; - FillCache(Rows?: any, StartBookmark?: any): void; + FillCache(Rows?: number, StartBookmark?: string): void; Filter: string; FindFirst(Criteria: string): void; FindLast(Criteria: string): void; FindNext(Criteria: string): void; FindPrevious(Criteria: string): void; - GetRows(NumRows?: any): any; + GetRows(NumRows?: number): any; readonly hStmt: number; Index: string; - readonly LastModified: SafeArray; - readonly LastUpdated: any; + readonly LastModified: Bookmark; + readonly LastUpdated: VarDate; LockEdits: boolean; - Move(Rows: number, StartBookmark?: any): void; + Move(Rows: number, StartBookmark?: Bookmark): void; MoveFirst(): void; - /** @param number [Options=0] */ + /** @param Options [Options=0] */ MoveLast(Options?: number): void; MoveNext(): void; MovePrevious(): void; @@ -716,45 +724,44 @@ declare namespace DAO { readonly NoMatch: boolean; readonly ODBCFetchCount: number; readonly ODBCFetchDelay: number; - OpenRecordset(Type?: any, Options?: any): Recordset; + OpenRecordset(Type?: RecordsetTypeEnum, Options?: RecordsetOptionEnum): Recordset; readonly Parent: Database; PercentPosition: number; readonly Properties: Properties; readonly RecordCount: number; readonly RecordStatus: number; - Requery(NewQueryDef?: any): void; + Requery(NewQueryDef?: QueryDef): void; readonly Restartable: boolean; - Seek( - Comparison: string, Key1: any, Key2?: any, Key3?: any, Key4?: any, Key5?: any, Key6?: any, Key7?: any, Key8?: any, Key9?: any, Key10?: any, Key11?: any, Key12?: any, Key13?: any): void; + Seek(Comparison: string, Key1: any, Key2?: any, Key3?: any, Key4?: any, Key5?: any, Key6?: any, Key7?: any, Key8?: any, Key9?: any, Key10?: any, Key11?: any, Key12?: any, Key13?: any): void; Sort: string; readonly StillExecuting: boolean; readonly Transactions: boolean; - readonly Type: number; + readonly Type: RecordsetTypeEnum; readonly Updatable: boolean; /** - * @param number [UpdateType=1] - * @param boolean [Force=false] + * @param UpdateType [UpdateType=1] + * @param Force [Force=false] */ - Update(UpdateType?: number, Force?: boolean): void; - UpdateOptions: number; + Update(UpdateType?: UpdateTypeEnum, Force?: boolean): void; + UpdateOptions: UpdateCriteriaEnum; readonly ValidationRule: string; readonly ValidationText: string; + (FieldIndex: number | string): Field; } - class Recordsets { - private 'DAO.Recordsets_typekey': Recordsets; - private constructor(); + interface Recordsets { readonly Count: number; - Item(Item: any): Recordset; + Item(Item: number | string): Recordset; Refresh(): void; + (Item: number | string): Recordset; } class Relation { private 'DAO.Relation_typekey': Relation; private constructor(); - Attributes: number; - CreateField(Name?: any, Type?: any, Size?: any): Field; + Attributes: RelationAttributeEnum; + CreateField(Name?: string): Field; readonly Fields: Fields; ForeignTable: string; Name: string; @@ -763,55 +770,53 @@ declare namespace DAO { Table: string; } - class Relations { - private 'DAO.Relations_typekey': Relations; - private constructor(); - Append(Object: any): void; + interface Relations { + Append(Relation: Relation): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Relation; + Item(Item: number | string): Relation; Refresh(): void; + (Item: number | string): Relation; } class TableDef { private 'DAO.TableDef_typekey': TableDef; private constructor(); - Attributes: number; + Attributes: TableDefAttributeEnum; readonly ConflictTable: string; Connect: string; - CreateField(Name?: any, Type?: any, Size?: any): Field; - CreateIndex(Name?: any): Index; - CreateProperty(Name?: any, Type?: any, Value?: any, DDL?: any): Property; - readonly DateCreated: any; + CreateField(Name?: string, Type?: DataTypeEnum, Size?: number): Field; + CreateIndex(Name?: string): Index; + CreateProperty(Name?: string, Type?: DataTypeEnum, Value?: any, DDL?: boolean): Property; + readonly DateCreated: VarDate; readonly Fields: Fields; readonly Indexes: Indexes; - readonly LastUpdated: any; + readonly LastUpdated: VarDate; Name: string; - OpenRecordset(Type?: any, Options?: any): Recordset; + OpenRecordset(Type?: RecordsetTypeEnum, Options?: RecordsetOptionEnum): Recordset; readonly Properties: Properties; readonly RecordCount: number; RefreshLink(): void; - ReplicaFilter: any; + ReplicaFilter: string | boolean; SourceTableName: string; readonly Updatable: boolean; ValidationRule: string; ValidationText: string; } - class TableDefs { - private 'DAO.TableDefs_typekey': TableDefs; - private constructor(); - Append(Object: any): void; + interface TableDefs { + Append(TableDef: TableDef): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): TableDef; + Item(Item: number | string): TableDef; Refresh(): void; + (Item: number | string): TableDef; } class User { private 'DAO.User_typekey': User; private constructor(); - CreateGroup(Name?: any, PID?: any): Group; + CreateGroup(Name?: string, PID?: string): Group; readonly Groups: Groups; Name: string; NewPassword(bstrOld: string, bstrNew: string): void; @@ -820,14 +825,13 @@ declare namespace DAO { readonly Properties: Properties; } - class Users { - private 'DAO.Users_typekey': Users; - private constructor(); - Append(Object: any): void; + interface Users { + Append(User: User): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): User; + Item(Item: number | string): User; Refresh(): void; + (Item: number | string): User; } class Workspace { @@ -836,12 +840,19 @@ declare namespace DAO { BeginTrans(): void; Close(): void; - /** @param number [Options=0] */ + /** @param Options [Options=0] */ CommitTrans(Options?: number): void; readonly Connections: Connections; - CreateDatabase(Name: string, Connect: string, Option?: any): Database; - CreateGroup(Name?: any, PID?: any): Group; - CreateUser(Name?: any, PID?: any, Password?: any): User; + + /** + * @param Connect Specify one of the following: + * * the locale, using one of the language constants + * * the password, in the form `;pwd=MyNewPassword'` + * * both the constant and a password, e.g. `dbLangGreek + ';pwd=MyNewPassword'` + */ + CreateDatabase(Name: string, Connect: string, Option?: DatabaseTypeEnum): Database; + CreateGroup(Name?: string, PID?: string): Group; + CreateUser(Name?: string, PID?: string, Password?: string): User; readonly Databases: Databases; DefaultCursorDriver: number; readonly Groups: Groups; @@ -849,8 +860,12 @@ declare namespace DAO { IsolateODBCTrans: number; LoginTimeout: number; Name: string; - OpenConnection(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Connection; - OpenDatabase(Name: string, Options?: any, ReadOnly?: any, Connect?: any): Database; + + /** + * @param Connect ODBC connection string; prepend with `ODBC;` + */ + OpenConnection(Name: string, Options?: DriverPromptEnum | RecordsetOptionEnum.dbRunAsync, ReadOnly?: boolean, Connect?: string): Connection; + OpenDatabase(Name: string, Exclusive?: boolean, ReadOnly?: boolean, Connect?: string): Database; readonly Properties: Properties; Rollback(): void; readonly Type: number; @@ -858,14 +873,13 @@ declare namespace DAO { readonly Users: Users; } - class Workspaces { - private 'DAO.Workspaces_typekey': Workspaces; - private constructor(); - Append(Object: any): void; + interface Workspaces { + Append(Workspace: Workspace): void; readonly Count: number; Delete(Name: string): void; - Item(Item: any): Workspace; + Item(Item: number | string): Workspace; Refresh(): void; + (Item: number | string): Workspace; } } @@ -875,36 +889,12 @@ interface ActiveXObject { interface ActiveXObjectNameMap { 'DAO.DBEngine': DAO.DBEngine; - 'DAO.DBEngine.120': DAO.DBEngine; 'DAO.Field': DAO.Field; 'DAO.Group': DAO.Group; 'DAO.Index': DAO.Index; - 'DAO.PrivateDBEngine': DAO.PrivDBEngine; + 'DAO.PrivateDBEngine': DAO.DBEngine; 'DAO.QueryDef': DAO.QueryDef; 'DAO.Relation': DAO.Relation; 'DAO.TableDef': DAO.TableDef; 'DAO.User': DAO.User; } - -interface EnumeratorConstructor { - new(col: DAO.Connections): Enumerator; - new(col: DAO.Containers): Enumerator; - new(col: DAO.Databases): Enumerator; - new(col: DAO.Documents): Enumerator; - new(col: DAO.Errors): Enumerator; - new(col: DAO.Fields): Enumerator; - new(col: DAO.Groups): Enumerator; - new(col: DAO.Indexes): Enumerator; - new(col: DAO.Parameters): Enumerator; - new(col: DAO.Properties): Enumerator; - new(col: DAO.QueryDefs): Enumerator; - new(col: DAO.Recordsets): Enumerator; - new(col: DAO.Relations): Enumerator; - new(col: DAO.TableDefs): Enumerator; - new(col: DAO.Users): Enumerator; - new(col: DAO.Workspaces): Enumerator; -} - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-excel/activex-excel-tests.ts b/types/activex-excel/activex-excel-tests.ts index b93a924263..4e577300e5 100644 --- a/types/activex-excel/activex-excel-tests.ts +++ b/types/activex-excel/activex-excel-tests.ts @@ -279,7 +279,7 @@ const setColumnVisibility = (visible: boolean) => { const data = sheet.Range("L2", sheet.Range('L100').End(Excel.XlDirection.xlUp)).Value() as SafeArray; sheet.Range('L1', sheet.Range('L100').End(Excel.XlDirection.xlUp)).ClearContents(); - const combobox = sheet.OLEObjects('ComboBox1').Object as MSForms.ComboBox2; + const combobox = sheet.OLEObjects('ComboBox1').Object as MSForms.ComboBox; combobox.Clear(); ActiveXObject.set(combobox, 'List', [], data); combobox.ListIndex = -1; @@ -293,7 +293,7 @@ const setColumnVisibility = (visible: boolean) => { const dict = new ActiveXObject('Scripting.Dictionary'); arr.forEach(x => ActiveXObject.set(dict, 'Item', [x], true)); - const combobox = sheet.OLEObjects('ComboBox1').Object as MSForms.ComboBox2; + const combobox = sheet.OLEObjects('ComboBox1').Object as MSForms.ComboBox; combobox.Clear(); const enumerator = new Enumerator(dict.Items()); enumerator.moveFirst(); diff --git a/types/activex-infopath/index.d.ts b/types/activex-infopath/index.d.ts index 1aa8cba2f9..c00c67e197 100644 --- a/types/activex-infopath/index.d.ts +++ b/types/activex-infopath/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/jj602751.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// /// diff --git a/types/activex-interop/activex-interop-tests.ts b/types/activex-interop/activex-interop-tests.ts new file mode 100644 index 0000000000..e2ece7401e --- /dev/null +++ b/types/activex-interop/activex-interop-tests.ts @@ -0,0 +1,49 @@ +// copied from the definitions in activex-scripting +interface Dictionary { + /** Add a new key and item to the dictionary. */ + Add(Key: TKey, Item: TItem): void; + + /** Get the number of items in the dictionary. */ + readonly Count: number; + + /** Determine if a given key is in the dictionary. */ + Exists(Key: TKey): boolean; + HashVal(Key: TKey): any; + + /** Set or get the item for a given key */ + Item(Key: TKey): TItem; + + /** Get an array containing all items in the dictionary. */ + Items(): SafeArray; + + /** Change a key to a different key. */ + Key(Key: TKey): TKey; + + /** Get an array containing all keys in the dictionary. */ + Keys(): SafeArray; + + /** Remove a given key from the dictionary. */ + Remove(Key: TKey): void; + + /** Remove all information from the dictionary. */ + RemoveAll(): void; + + /** Set or get the item for a given key */ + (Key: TKey): TItem; +} + +interface ActiveXObjectNameMap { + 'Scripting.Dictionary': Dictionary; +} + +const dict: Dictionary = new ActiveXObject('Scripting.Dictionary'); +dict.Add('one', 1); +dict.Add('two', 2); +dict.Add('three', 3); + +const keyEnumerator = new Enumerator(dict.Keys()); +keyEnumerator.moveFirst(); +while (!keyEnumerator.atEnd()) { + const item = dict(keyEnumerator.item()); + const power = Math.pow(item, 2); +} diff --git a/types/activex-interop/index.d.ts b/types/activex-interop/index.d.ts new file mode 100644 index 0000000000..caa74fff38 --- /dev/null +++ b/types/activex-interop/index.d.ts @@ -0,0 +1,111 @@ +// Type definitions for Javascript Automation interop 0.0 +// Project: https://msdn.microsoft.com/en-us/library/ff521046(v=vs.85).aspx +// Definitions by: Zev Spitz +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +// tslint:disable-next-line no-empty-interface +interface ActiveXObjectNameMap { } + +interface ActiveXObject { + new (progid: K): ActiveXObjectNameMap[K]; + new(s: string): any; +} +declare var ActiveXObject: ActiveXObject; + +/** + * Represents an Automation SAFEARRAY + */ +declare class SafeArray { + private constructor(); + private SafeArray_typekey: SafeArray; +} + +/** + * Allows enumerating over a COM collection, which may not have indexed item access. + */ +interface Enumerator { + /** + * Returns true if the current item is the last one in the collection, or the collection is empty, + * or the current item is undefined. + */ + atEnd(): boolean; + + /** + * Returns the current item in the collection + */ + item(): T; + + /** + * Resets the current item in the collection to the first item. If there are no items in the collection, + * the current item is set to undefined. + */ + moveFirst(): void; + + /** + * Moves the current item to the next item in the collection. If the enumerator is at the end of + * the collection or the collection is empty, the current item is set to undefined. + */ + moveNext(): void; +} + +interface EnumeratorConstructor { + new (collection: SafeArray | { Item(index: any): T }): Enumerator; + new (collection: any): Enumerator; +} + +declare var Enumerator: EnumeratorConstructor; + +/** + * Enables reading from a COM safe array, which might have an alternate lower bound, or multiple dimensions. + */ +interface VBArray { + /** + * Returns the number of dimensions (1-based). + */ + dimensions(): number; + + /** + * Takes an index for each dimension in the array, and returns the item at the corresponding location. + */ + getItem(dimension1Index: number, ...dimensionNIndexes: number[]): T; + + /** + * Returns the smallest available index for a given dimension. + * @param dimension 1-based dimension (defaults to 1) + */ + lbound(dimension?: number): number; + + /** + * Returns the largest available index for a given dimension. + * @param dimension 1-based dimension (defaults to 1) + */ + ubound(dimension?: number): number; + + /** + * Returns a Javascript array with all the elements in the VBArray. If there are multiple dimensions, + * each successive dimension is appended to the end of the array. + * Example: [[1,2,3],[4,5,6]] becomes [1,2,3,4,5,6] + */ + toArray(): T[]; +} + +interface VBArrayConstructor { + new (safeArray: SafeArray): VBArray; +} + +declare var VBArray: VBArrayConstructor; + +/** Automation date (VT_DATE) */ +declare class VarDate { + private constructor(); + private VarDate_typekey: VarDate; +} + +interface DateConstructor { + new(vd: VarDate): Date; +} + +interface Date { + getVarDate: () => VarDate; +} diff --git a/types/activex-interop/tsconfig.json b/types/activex-interop/tsconfig.json new file mode 100644 index 0000000000..49c7698384 --- /dev/null +++ b/types/activex-interop/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es5" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ "../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "activex-interop-tests.ts" + ] +} \ No newline at end of file diff --git a/types/activex-iwshruntimelibrary/tslint.json b/types/activex-interop/tslint.json similarity index 100% rename from types/activex-iwshruntimelibrary/tslint.json rename to types/activex-interop/tslint.json diff --git a/types/activex-msforms/index.d.ts b/types/activex-msforms/index.d.ts index 45acebbdb3..c896cc4bf5 100644 --- a/types/activex-msforms/index.d.ts +++ b/types/activex-msforms/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/VBA/Language-Reference-VBA/articles/reference-microsoft-forms // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// @@ -361,48 +361,11 @@ declare namespace MSForms { WordWrap: boolean; } - class CheckBox2 { - private 'MSForms.CheckBox2_typekey': CheckBox2; - private constructor(); - readonly _Font_Reserved: NewFont; - Accelerator: string; - Alignment: fmAlignment; - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BordersSuppress: boolean; - Caption: string; - readonly DisplayStyle: fmDisplayStyle; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - GroupName: string; - Locked: boolean; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiSelect: fmMultiSelect; - Picture: stdole.StdPicture; - PicturePosition: fmPicturePosition; - SpecialEffect: fmButtonEffect; - TextAlign: fmTextAlign; - TripleState: boolean; - readonly Valid: boolean; - Value: any; - WordWrap: boolean; - } - class ComboBox { private 'MSForms.ComboBox_typekey': ComboBox; private constructor(); readonly _Font_Reserved: NewFont; - AddItem(pvargItem?: any, pvargIndex?: any): void; + AddItem(pvargItem?: number, pvargIndex?: number): void; AutoSize: boolean; AutoTab: boolean; AutoWordSelect: boolean; @@ -411,10 +374,11 @@ declare namespace MSForms { BorderColor: number; BordersSuppress: boolean; BorderStyle: fmBorderStyle; - BoundColumn: any; + BoundColumn: number; readonly CanPaste: boolean; Clear(): void; - Column(pvargColumn?: any, pvargIndex?: any): any; + Column(pvargColumn: number, pvargIndex?: number): any; + Column(): SafeArray; ColumnCount: number; ColumnHeads: boolean; ColumnWidths: string; @@ -441,13 +405,14 @@ declare namespace MSForms { HideSelection: boolean; IMEMode: fmIMEMode; readonly LineCount: number; - List(pvargIndex?: any, pvargColumn?: any): any; + List(pvargIndex: number, pvargColumn?: number): any; + List(): SafeArray; readonly ListCount: number; ListCursor: any; - ListIndex: any; + ListIndex: number; ListRows: number; ListStyle: fmListStyle; - ListWidth: any; + ListWidth: number; Locked: boolean; MatchEntry: fmMatchEntry; readonly MatchFound: boolean; @@ -456,7 +421,7 @@ declare namespace MSForms { MouseIcon: stdole.StdPicture; MousePointer: fmMousePointer; Paste(): void; - RemoveItem(pvargIndex: any): void; + RemoveItem(pvargIndex: number): boolean; SelectionMargin: boolean; SelLength: number; SelStart: number; @@ -466,84 +431,9 @@ declare namespace MSForms { Style: fmStyle; Text: string; TextAlign: fmTextAlign; - TextColumn: any; + TextColumn: number; readonly TextLength: number; - TopIndex: any; - readonly Valid: boolean; - Value: any; - } - - class ComboBox2 { - private 'MSForms.ComboBox2_typekey': ComboBox2; - private constructor(); - readonly _Font_Reserved: NewFont; - AddItem(pvargItem?: any, pvargIndex?: any): void; - AutoSize: boolean; - AutoTab: boolean; - AutoWordSelect: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BorderColor: number; - BordersSuppress: boolean; - BorderStyle: fmBorderStyle; - BoundColumn: any; - readonly CanPaste: boolean; - Clear(): void; - Column(pvargColumn?: any, pvargIndex?: any): any; - ColumnCount: number; - ColumnHeads: boolean; - ColumnWidths: string; - Copy(): void; - readonly CurTargetX: number; - readonly CurTargetY: number; - CurX: number; - Cut(): void; - readonly DisplayStyle: fmDisplayStyle; - DragBehavior: fmDragBehavior; - DropButtonStyle: fmDropButtonStyle; - DropDown(): void; - Enabled: boolean; - EnterFieldBehavior: fmEnterFieldBehavior; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - HideSelection: boolean; - IMEMode: fmIMEMode; - readonly LineCount: number; - List(pvargIndex?: any, pvargColumn?: any): any; - readonly ListCount: number; - ListCursor: any; - ListIndex: any; - ListRows: number; - ListStyle: fmListStyle; - ListWidth: any; - Locked: boolean; - MatchEntry: fmMatchEntry; - readonly MatchFound: boolean; - MatchRequired: boolean; - MaxLength: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Paste(): void; - RemoveItem(pvargIndex: any): void; - SelectionMargin: boolean; - SelLength: number; - SelStart: number; - SelText: string; - ShowDropButtonWhen: fmShowDropButtonWhen; - SpecialEffect: fmSpecialEffect; - Style: fmStyle; - Text: string; - TextAlign: fmTextAlign; - TextColumn: any; - readonly TextLength: number; - TopIndex: any; + TopIndex: number; readonly Valid: boolean; Value: any; } @@ -577,35 +467,6 @@ declare namespace MSForms { WordWrap: boolean; } - class CommandButton2 { - private 'MSForms.CommandButton2_typekey': CommandButton2; - private constructor(); - readonly _Font_Reserved: NewFont; - Accelerator: string; - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - Caption: string; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - Locked: boolean; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Picture: stdole.StdPicture; - PicturePosition: fmPicturePosition; - TakeFocusOnClick: boolean; - Value: boolean; - WordWrap: boolean; - } - class Control { private 'MSForms.Control_typekey': Control; private constructor(); @@ -656,9 +517,7 @@ declare namespace MSForms { ZOrder(zPosition?: any): void; } - class Controls { - private 'MSForms.Controls_typekey': Controls; - private constructor(); + interface Controls { _AddByClass(clsid: number): Control; _GetItemByID(ID: number): Control; _GetItemByIndex(lIndex: number): Control; @@ -679,6 +538,7 @@ declare namespace MSForms { SelectAll(): void; SendBackward(): void; SendToBack(): void; + (varg: any): any; } class DataObject { @@ -693,18 +553,6 @@ declare namespace MSForms { StartDrag(OKEffect?: any): fmDropEffect; } - class DataObject2 { - private 'MSForms.DataObject2_typekey': DataObject2; - private constructor(); - Clear(): void; - GetFormat(Format: any): boolean; - GetFromClipboard(): void; - GetText(Format?: any): string; - PutInClipboard(): void; - SetText(Text: string, Format?: any): void; - StartDrag(OKEffect?: any): fmDropEffect; - } - class Frame { private 'MSForms.Frame_typekey': Frame; private constructor(); @@ -770,71 +618,6 @@ declare namespace MSForms { Zoom: number; } - class Frame2 { - private 'MSForms.Frame2_typekey': Frame2; - private constructor(); - readonly _Font_Reserved: NewFont; - _GetGridX(GridX: number): void; - _GetGridY(GridY: number): void; - _GetInsideHeight(InsideHeight: number): void; - _GetInsideWidth(InsideWidth: number): void; - _GetScrollHeight(ScrollHeight: number): void; - _GetScrollLeft(ScrollLeft: number): void; - _GetScrollTop(ScrollTop: number): void; - _GetScrollWidth(ScrollWidth: number): void; - _SetGridX(GridX: number): void; - _SetGridY(GridY: number): void; - _SetScrollHeight(ScrollHeight: number): void; - _SetScrollLeft(ScrollLeft: number): void; - _SetScrollTop(ScrollTop: number): void; - _SetScrollWidth(ScrollWidth: number): void; - readonly ActiveControl: Control; - BackColor: number; - BorderColor: number; - BorderStyle: fmBorderStyle; - readonly CanPaste: boolean; - readonly CanRedo: boolean; - readonly CanUndo: boolean; - Caption: string; - readonly Controls: Controls; - Copy(): void; - Cut(): void; - Cycle: fmCycle; - DesignMode: fmMode; - Enabled: boolean; - Font: NewFont; - ForeColor: number; - GridX: number; - GridY: number; - readonly InsideHeight: number; - readonly InsideWidth: number; - KeepScrollBarsVisible: fmScrollBars; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Paste(): void; - Picture: stdole.StdPicture; - PictureAlignment: fmPictureAlignment; - PictureSizeMode: fmPictureSizeMode; - PictureTiling: boolean; - RedoAction(): void; - Repaint(): void; - Scroll(xAction?: any, yAction?: any): void; - ScrollBars: fmScrollBars; - ScrollHeight: number; - ScrollLeft: number; - ScrollTop: number; - ScrollWidth: number; - readonly Selected: Controls; - SetDefaultTabOrder(): void; - ShowGridDots: fmMode; - ShowToolbox: fmMode; - SnapToGrid: fmMode; - SpecialEffect: fmSpecialEffect; - UndoAction(): void; - VerticalScrollBarSide: fmVerticalScrollBarSide; - Zoom: number; - } - class HTMLCheckbox { private 'MSForms.HTMLCheckbox_typekey': HTMLCheckbox; private constructor(); @@ -844,15 +627,6 @@ declare namespace MSForms { Value: string; } - class HTMLCheckbox2 { - private 'MSForms.HTMLCheckbox2_typekey': HTMLCheckbox2; - private constructor(); - Checked: boolean; - HTMLName: string; - HTMLType: string; - Value: string; - } - class HTMLHidden { private 'MSForms.HTMLHidden_typekey': HTMLHidden; private constructor(); @@ -861,14 +635,6 @@ declare namespace MSForms { Value: string; } - class HTMLHidden2 { - private 'MSForms.HTMLHidden2_typekey': HTMLHidden2; - private constructor(); - HTMLName: string; - HTMLType: string; - Value: string; - } - class HTMLImage { private 'MSForms.HTMLImage_typekey': HTMLImage; private constructor(); @@ -880,17 +646,6 @@ declare namespace MSForms { Source: string; } - class HTMLImage2 { - private 'MSForms.HTMLImage2_typekey': HTMLImage2; - private constructor(); - Action: string; - Encoding: string; - HTMLName: string; - HTMLType: string; - Method: string; - Source: string; - } - class HTMLOption { private 'MSForms.HTMLOption_typekey': HTMLOption; private constructor(); @@ -901,16 +656,6 @@ declare namespace MSForms { Value: string; } - class HTMLOption2 { - private 'MSForms.HTMLOption2_typekey': HTMLOption2; - private constructor(); - Checked: boolean; - readonly DisplayStyle: fmDisplayStyle; - HTMLName: string; - HTMLType: string; - Value: string; - } - class HTMLPassword { private 'MSForms.HTMLPassword_typekey': HTMLPassword; private constructor(); @@ -921,16 +666,6 @@ declare namespace MSForms { Width: number; } - class HTMLPassword2 { - private 'MSForms.HTMLPassword2_typekey': HTMLPassword2; - private constructor(); - HTMLName: string; - HTMLType: string; - MaxLength: number; - Value: string; - Width: number; - } - class HTMLReset { private 'MSForms.HTMLReset_typekey': HTMLReset; private constructor(); @@ -939,14 +674,6 @@ declare namespace MSForms { HTMLType: string; } - class HTMLReset2 { - private 'MSForms.HTMLReset2_typekey': HTMLReset2; - private constructor(); - Caption: string; - HTMLName: string; - HTMLType: string; - } - class HTMLSelect { private 'MSForms.HTMLSelect_typekey': HTMLSelect; private constructor(); @@ -958,17 +685,6 @@ declare namespace MSForms { Values: any; } - class HTMLSelect2 { - private 'MSForms.HTMLSelect2_typekey': HTMLSelect2; - private constructor(); - DisplayValues: any; - HTMLName: string; - MultiSelect: boolean; - Selected: string; - Size: number; - Values: any; - } - class HTMLSubmit { private 'MSForms.HTMLSubmit_typekey': HTMLSubmit; private constructor(); @@ -980,17 +696,6 @@ declare namespace MSForms { Method: string; } - class HTMLSubmit2 { - private 'MSForms.HTMLSubmit2_typekey': HTMLSubmit2; - private constructor(); - Action: string; - Caption: string; - Encoding: string; - HTMLName: string; - HTMLType: string; - Method: string; - } - class HTMLText { private 'MSForms.HTMLText_typekey': HTMLText; private constructor(); @@ -1001,16 +706,6 @@ declare namespace MSForms { Width: number; } - class HTMLText2 { - private 'MSForms.HTMLText2_typekey': HTMLText2; - private constructor(); - HTMLName: string; - HTMLType: string; - MaxLength: number; - Value: string; - Width: number; - } - class HTMLTextArea { private 'MSForms.HTMLTextArea_typekey': HTMLTextArea; private constructor(); @@ -1021,16 +716,6 @@ declare namespace MSForms { WordWrap: string; } - class HTMLTextArea2 { - private 'MSForms.HTMLTextArea2_typekey': HTMLTextArea2; - private constructor(); - Columns: number; - HTMLName: string; - Rows: number; - Value: string; - WordWrap: string; - } - class Image { private 'MSForms.Image_typekey': Image; private constructor(); @@ -1049,24 +734,6 @@ declare namespace MSForms { SpecialEffect: fmSpecialEffect; } - class Image2 { - private 'MSForms.Image2_typekey': Image2; - private constructor(); - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BorderColor: number; - BorderStyle: fmBorderStyle; - Enabled: boolean; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Picture: stdole.StdPicture; - PictureAlignment: fmPictureAlignment; - PictureSizeMode: fmPictureSizeMode; - PictureTiling: boolean; - SpecialEffect: fmSpecialEffect; - } - class Label { private 'MSForms.Label_typekey': Label; private constructor(); @@ -1098,37 +765,6 @@ declare namespace MSForms { WordWrap: boolean; } - class Label2 { - private 'MSForms.Label2_typekey': Label2; - private constructor(); - readonly _Font_Reserved: NewFont; - _Value: string; - Accelerator: string; - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BorderColor: number; - BorderStyle: fmBorderStyle; - Caption: string; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Picture: stdole.StdPicture; - PicturePosition: fmPicturePosition; - SpecialEffect: fmSpecialEffect; - TextAlign: fmTextAlign; - WordWrap: boolean; - } - class ListBox { private 'MSForms.ListBox_typekey': ListBox; private constructor(); @@ -1140,7 +776,8 @@ declare namespace MSForms { BorderStyle: fmBorderStyle; BoundColumn: any; Clear(): void; - Column(pvargColumn?: any, pvargIndex?: any): any; + Column(pvargColumn: number, pvargIndex?: number): any; + Column(): SafeArray; ColumnCount: number; ColumnHeads: boolean; ColumnWidths: string; @@ -1157,57 +794,8 @@ declare namespace MSForms { ForeColor: number; IMEMode: fmIMEMode; IntegralHeight: boolean; - List(pvargIndex?: any, pvargColumn?: any): any; - readonly ListCount: number; - ListCursor: any; - ListIndex: any; - ListStyle: fmListStyle; - ListWidth: any; - Locked: boolean; - MatchEntry: fmMatchEntry; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiSelect: fmMultiSelect; - RemoveItem(pvargIndex: any): void; - Selected(pvargIndex: any): boolean; - SpecialEffect: fmSpecialEffect; - Text: string; - TextAlign: fmTextAlign; - TextColumn: any; - TopIndex: any; - readonly Valid: boolean; - Value: any; - } - - class ListBox2 { - private 'MSForms.ListBox2_typekey': ListBox2; - private constructor(); - readonly _Font_Reserved: NewFont; - AddItem(pvargItem?: any, pvargIndex?: any): void; - BackColor: number; - BorderColor: number; - BordersSuppress: boolean; - BorderStyle: fmBorderStyle; - BoundColumn: any; - Clear(): void; - Column(pvargColumn?: any, pvargIndex?: any): any; - ColumnCount: number; - ColumnHeads: boolean; - ColumnWidths: string; - readonly DisplayStyle: fmDisplayStyle; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - IMEMode: fmIMEMode; - IntegralHeight: boolean; - List(pvargIndex?: any, pvargColumn?: any): any; + List(pvargIndex: number, pvargColumn?: number): any; + List(): SafeArray; readonly ListCount: number; ListCursor: any; ListIndex: any; @@ -1258,35 +846,6 @@ declare namespace MSForms { Value: number; } - class MultiPage2 { - private 'MSForms.MultiPage2_typekey': MultiPage2; - private constructor(); - readonly _Font_Reserved: NewFont; - _GetTabFixedHeight(Height: number): void; - _GetTabFixedWidth(Width: number): void; - _SetTabFixedHeight(Height: number): void; - _SetTabFixedWidth(Width: number): void; - BackColor: number; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - MultiRow: boolean; - readonly Pages: Pages; - readonly SelectedItem: Page; - Style: fmTabStyle; - TabFixedHeight: number; - TabFixedWidth: number; - TabOrientation: fmTabOrientation; - Value: number; - } - class NewFont { private 'MSForms.NewFont_typekey': NewFont; private constructor(); @@ -1337,43 +896,6 @@ declare namespace MSForms { WordWrap: boolean; } - class OptionButton2 { - private 'MSForms.OptionButton2_typekey': OptionButton2; - private constructor(); - readonly _Font_Reserved: NewFont; - Accelerator: string; - Alignment: fmAlignment; - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BordersSuppress: boolean; - Caption: string; - readonly DisplayStyle: fmDisplayStyle; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - GroupName: string; - Locked: boolean; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiSelect: fmMultiSelect; - Picture: stdole.StdPicture; - PicturePosition: fmPicturePosition; - SpecialEffect: fmButtonEffect; - TextAlign: fmTextAlign; - TripleState: boolean; - readonly Valid: boolean; - Value: any; - WordWrap: boolean; - } - class Page { private 'MSForms.Page_typekey': Page; private constructor(); @@ -1439,9 +961,7 @@ declare namespace MSForms { Zoom: number; } - class Pages { - private 'MSForms.Pages_typekey': Pages; - private constructor(); + interface Pages { _AddCtrl(clsid: number, bstrName: string, bstrCaption: string): Page; _GetItemByIndex(lIndex: number): Control; _GetItemByName(pstrName: string): Control; @@ -1452,6 +972,7 @@ declare namespace MSForms { Enum(): any; Item(varg: any): any; Remove(varg: any): void; + (varg: any): any; } class ReturnBoolean { @@ -1502,24 +1023,6 @@ declare namespace MSForms { Value: number; } - class ScrollBar2 { - private 'MSForms.ScrollBar2_typekey': ScrollBar2; - private constructor(); - BackColor: number; - Delay: number; - Enabled: boolean; - ForeColor: number; - LargeChange: number; - Max: number; - Min: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Orientation: fmOrientation; - ProportionalThumb: boolean; - SmallChange: number; - Value: number; - } - class SpinButton { private 'MSForms.SpinButton_typekey': SpinButton; private constructor(); @@ -1536,22 +1039,6 @@ declare namespace MSForms { Value: number; } - class SpinButton2 { - private 'MSForms.SpinButton2_typekey': SpinButton2; - private constructor(); - BackColor: number; - Delay: number; - Enabled: boolean; - ForeColor: number; - Max: number; - Min: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Orientation: fmOrientation; - SmallChange: number; - Value: number; - } - class Tab { private 'MSForms.Tab_typekey': Tab; private constructor(); @@ -1565,9 +1052,7 @@ declare namespace MSForms { Visible: boolean; } - class Tabs { - private 'MSForms.Tabs_typekey': Tabs; - private constructor(); + interface Tabs { _Add(bstrName: string, bstrCaption: string): Tab; _GetItemByIndex(lIndex: number): Tab; _GetItemByName(bstr: string): Tab; @@ -1578,6 +1063,7 @@ declare namespace MSForms { Enum(): any; Item(varg: any): any; Remove(varg: any): void; + (varg: any): any; } class TabStrip { @@ -1619,45 +1105,6 @@ declare namespace MSForms { Value: number; } - class TabStrip2 { - private 'MSForms.TabStrip2_typekey': TabStrip2; - private constructor(); - readonly _Font_Reserved: NewFont; - _GetClientHeight(ClientHeight: number): void; - _GetClientLeft(ClientLeft: number): void; - _GetClientTop(ClientTop: number): void; - _GetClientWidth(ClientWidth: number): void; - _GetTabFixedHeight(TabFixedHeight: number): void; - _GetTabFixedWidth(TabFixedWidth: number): void; - _SetTabFixedHeight(TabFixedHeight: number): void; - _SetTabFixedWidth(TabFixedWidth: number): void; - BackColor: number; - readonly ClientHeight: number; - readonly ClientLeft: number; - readonly ClientTop: number; - readonly ClientWidth: number; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiRow: boolean; - readonly SelectedItem: Tab; - Style: fmTabStyle; - TabFixedHeight: number; - TabFixedWidth: number; - TabOrientation: fmTabOrientation; - readonly Tabs: Tabs; - Value: number; - } - class TextBox { private 'MSForms.TextBox_typekey': TextBox; private constructor(); @@ -1720,68 +1167,6 @@ declare namespace MSForms { WordWrap: boolean; } - class TextBox2 { - private 'MSForms.TextBox2_typekey': TextBox2; - private constructor(); - readonly _Font_Reserved: NewFont; - AutoSize: boolean; - AutoTab: boolean; - AutoWordSelect: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BorderColor: number; - BordersSuppress: boolean; - BorderStyle: fmBorderStyle; - readonly CanPaste: boolean; - Copy(): void; - CurLine: number; - readonly CurTargetX: number; - readonly CurTargetY: number; - CurX: number; - CurY: number; - Cut(): void; - readonly DisplayStyle: fmDisplayStyle; - DragBehavior: fmDragBehavior; - DropButtonStyle: fmDropButtonStyle; - Enabled: boolean; - EnterFieldBehavior: fmEnterFieldBehavior; - EnterKeyBehavior: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - HideSelection: boolean; - IMEMode: fmIMEMode; - IntegralHeight: boolean; - readonly LineCount: number; - Locked: boolean; - MaxLength: number; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiLine: boolean; - PasswordChar: string; - Paste(): void; - ScrollBars: fmScrollBars; - SelectionMargin: boolean; - SelLength: number; - SelStart: number; - SelText: string; - ShowDropButtonWhen: fmShowDropButtonWhen; - SpecialEffect: fmSpecialEffect; - TabKeyBehavior: boolean; - Text: string; - TextAlign: fmTextAlign; - readonly TextLength: number; - readonly Valid: boolean; - Value: any; - WordWrap: boolean; - } - class ToggleButton { private 'MSForms.ToggleButton_typekey': ToggleButton; private constructor(); @@ -1819,43 +1204,6 @@ declare namespace MSForms { WordWrap: boolean; } - class ToggleButton2 { - private 'MSForms.ToggleButton2_typekey': ToggleButton2; - private constructor(); - readonly _Font_Reserved: NewFont; - Accelerator: string; - Alignment: fmAlignment; - AutoSize: boolean; - BackColor: number; - BackStyle: fmBackStyle; - BordersSuppress: boolean; - Caption: string; - readonly DisplayStyle: fmDisplayStyle; - Enabled: boolean; - Font: NewFont; - FontBold: boolean; - FontItalic: boolean; - FontName: string; - FontSize: number; - FontStrikethru: boolean; - FontUnderline: boolean; - FontWeight: number; - ForeColor: number; - GroupName: string; - Locked: boolean; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - MultiSelect: fmMultiSelect; - Picture: stdole.StdPicture; - PicturePosition: fmPicturePosition; - SpecialEffect: fmButtonEffect; - TextAlign: fmTextAlign; - TripleState: boolean; - readonly Valid: boolean; - Value: any; - WordWrap: boolean; - } - class UserForm { private 'MSForms.UserForm_typekey': UserForm; private constructor(); @@ -1922,160 +1270,18 @@ declare namespace MSForms { Zoom: number; } - class UserForm2 { - private 'MSForms.UserForm2_typekey': UserForm2; - private constructor(); - readonly _Font_Reserved: NewFont; - _GetGridX(GridX: number): void; - _GetGridY(GridY: number): void; - _GetInsideHeight(InsideHeight: number): void; - _GetInsideWidth(InsideWidth: number): void; - _GetScrollHeight(ScrollHeight: number): void; - _GetScrollLeft(ScrollLeft: number): void; - _GetScrollTop(ScrollTop: number): void; - _GetScrollWidth(ScrollWidth: number): void; - _SetGridX(GridX: number): void; - _SetGridY(GridY: number): void; - _SetScrollHeight(ScrollHeight: number): void; - _SetScrollLeft(ScrollLeft: number): void; - _SetScrollTop(ScrollTop: number): void; - _SetScrollWidth(ScrollWidth: number): void; - readonly ActiveControl: Control; - BackColor: number; - BorderColor: number; - BorderStyle: fmBorderStyle; - readonly CanPaste: boolean; - readonly CanRedo: boolean; - readonly CanUndo: boolean; - Caption: string; - readonly Controls: Controls; - Copy(): void; - Cut(): void; - Cycle: fmCycle; - DesignMode: fmMode; - DrawBuffer: number; - Enabled: boolean; - Font: NewFont; - ForeColor: number; - GridX: number; - GridY: number; - readonly InsideHeight: number; - readonly InsideWidth: number; - KeepScrollBarsVisible: fmScrollBars; - MouseIcon: stdole.StdPicture; - MousePointer: fmMousePointer; - Paste(): void; - Picture: stdole.StdPicture; - PictureAlignment: fmPictureAlignment; - PictureSizeMode: fmPictureSizeMode; - PictureTiling: boolean; - RedoAction(): void; - Repaint(): void; - Scroll(xAction?: any, yAction?: any): void; - ScrollBars: fmScrollBars; - ScrollHeight: number; - ScrollLeft: number; - ScrollTop: number; - ScrollWidth: number; - readonly Selected: Controls; - SetDefaultTabOrder(): void; - ShowGridDots: fmMode; - ShowToolbox: fmMode; - SnapToGrid: fmMode; - SpecialEffect: fmSpecialEffect; - UndoAction(): void; - VerticalScrollBarSide: fmVerticalScrollBarSide; - Zoom: number; - } - namespace EventHelperTypes { - type CheckBox_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; + type Container_BeforeDragOver_ArgNames = ['Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - type CheckBox_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; + type Container_BeforeDropOrPaste_ArgNames = ['Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - type CheckBox_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; + type Container_Scroll_ArgNames = ['ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - type CheckBox2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; + type Control_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - type CheckBox2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; + type Control_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - type CheckBox2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ComboBox_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ComboBox_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ComboBox_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ComboBox2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ComboBox2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ComboBox2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type CommandButton_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type CommandButton_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type CommandButton_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type CommandButton2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type CommandButton2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type CommandButton2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Frame_BeforeDragOver_ArgNames = ['Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - - type Frame_BeforeDropOrPaste_ArgNames = ['Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Frame_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Frame_Scroll_ArgNames = ['ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - - type Frame2_BeforeDragOver_ArgNames = ['Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - - type Frame2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Frame2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Frame2_Scroll_ArgNames = ['ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - - type Image_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type Image_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Image_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Image2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type Image2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Image2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Label_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type Label_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Label_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type Label2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type Label2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type Label2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ListBox_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ListBox_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ListBox_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ListBox2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ListBox2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ListBox2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; + type Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; type MultiPage_BeforeDragOver_ArgNames = ['Index', 'Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; @@ -2085,283 +1291,11 @@ declare namespace MSForms { type MultiPage_Scroll_ArgNames = ['Index', 'ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - type MultiPage2_BeforeDragOver_ArgNames = ['Index', 'Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - - type MultiPage2_BeforeDropOrPaste_ArgNames = ['Index', 'Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type MultiPage2_Error_ArgNames = ['Index', 'Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type MultiPage2_Scroll_ArgNames = ['Index', 'ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - - type OptionButton_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type OptionButton_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type OptionButton_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type OptionButton2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type OptionButton2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type OptionButton2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ScrollBar_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ScrollBar_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ScrollBar_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ScrollBar2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ScrollBar2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ScrollBar2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type SpinButton_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type SpinButton_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type SpinButton_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type SpinButton2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type SpinButton2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type SpinButton2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - type TabStrip_BeforeDragOver_ArgNames = ['Index', 'Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; type TabStrip_BeforeDropOrPaste_ArgNames = ['Index', 'Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - type TabStrip_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type TabStrip2_BeforeDragOver_ArgNames = ['Index', 'Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type TabStrip2_BeforeDropOrPaste_ArgNames = ['Index', 'Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type TabStrip2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type TextBox_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type TextBox_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type TextBox_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type TextBox2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type TextBox2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type TextBox2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ToggleButton_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ToggleButton_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ToggleButton_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type ToggleButton2_BeforeDragOver_ArgNames = ['Cancel', 'Data', 'X', 'Y', 'DragState', 'Effect', 'Shift']; - - type ToggleButton2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type ToggleButton2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type UserForm_BeforeDragOver_ArgNames = ['Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - - type UserForm_BeforeDropOrPaste_ArgNames = ['Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type UserForm_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type UserForm_Scroll_ArgNames = ['ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - - type UserForm2_BeforeDragOver_ArgNames = ['Cancel', 'Control', 'Data', 'X', 'Y', 'State', 'Effect', 'Shift']; - - type UserForm2_BeforeDropOrPaste_ArgNames = ['Cancel', 'Control', 'Action', 'Data', 'X', 'Y', 'Effect', 'Shift']; - - type UserForm2_Error_ArgNames = ['Number', 'Description', 'SCode', 'Source', 'HelpFile', 'HelpContext', 'CancelDisplay']; - - type UserForm2_Scroll_ArgNames = ['ActionX', 'ActionY', 'RequestDx', 'RequestDy', 'ActualDx', 'ActualDy']; - - interface CheckBox_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CheckBox_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CheckBox_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface CheckBox2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CheckBox2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CheckBox2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ComboBox_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ComboBox_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ComboBox_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ComboBox2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ComboBox2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ComboBox2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface CommandButton_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CommandButton_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CommandButton_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface CommandButton2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CommandButton2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface CommandButton2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Frame_BeforeDragOver_Parameter { + interface Container_BeforeDragOver_Parameter { readonly Cancel: ReturnBoolean; readonly Control: Control; readonly Data: DataObject; @@ -2372,7 +1306,7 @@ declare namespace MSForms { readonly Y: number; } - interface Frame_BeforeDropOrPaste_Parameter { + interface Container_BeforeDropOrPaste_Parameter { readonly Action: fmAction; readonly Cancel: ReturnBoolean; readonly Control: Control; @@ -2383,17 +1317,7 @@ declare namespace MSForms { readonly Y: number; } - interface Frame_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Frame_Scroll_Parameter { + interface Container_Scroll_Parameter { readonly ActionX: fmScrollAction; readonly ActionY: fmScrollAction; readonly ActualDx: ReturnSingle; @@ -2402,48 +1326,7 @@ declare namespace MSForms { readonly RequestDy: number; } - interface Frame2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly State: fmDragState; - readonly X: number; - readonly Y: number; - } - - interface Frame2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Frame2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Frame2_Scroll_Parameter { - readonly ActionX: fmScrollAction; - readonly ActionY: fmScrollAction; - readonly ActualDx: ReturnSingle; - readonly ActualDy: ReturnSingle; - readonly RequestDx: number; - readonly RequestDy: number; - } - - interface Image_BeforeDragOver_Parameter { + interface Control_BeforeDragOver_Parameter { readonly Cancel: ReturnBoolean; readonly Data: DataObject; readonly DragState: fmDragState; @@ -2453,7 +1336,7 @@ declare namespace MSForms { readonly Y: number; } - interface Image_BeforeDropOrPaste_Parameter { + interface Control_BeforeDropOrPaste_Parameter { readonly Action: fmAction; readonly Cancel: ReturnBoolean; readonly Data: DataObject; @@ -2463,157 +1346,7 @@ declare namespace MSForms { readonly Y: number; } - interface Image_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Image2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Image2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Image2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Label_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Label_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Label_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface Label2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Label2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface Label2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ListBox_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ListBox_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ListBox_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ListBox2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ListBox2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ListBox2_Error_Parameter { + interface Error_Parameter { readonly CancelDisplay: ReturnBoolean; readonly Description: ReturnString; readonly HelpContext: number; @@ -2668,231 +1401,6 @@ declare namespace MSForms { readonly RequestDy: number; } - interface MultiPage2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Index: number; - readonly Shift: number; - readonly State: fmDragState; - readonly X: number; - readonly Y: number; - } - - interface MultiPage2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Index: number; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface MultiPage2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Index: number; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface MultiPage2_Scroll_Parameter { - readonly ActionX: fmScrollAction; - readonly ActionY: fmScrollAction; - readonly ActualDx: ReturnSingle; - readonly ActualDy: ReturnSingle; - readonly Index: number; - readonly RequestDx: number; - readonly RequestDy: number; - } - - interface OptionButton_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface OptionButton_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface OptionButton_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface OptionButton2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface OptionButton2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface OptionButton2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ScrollBar_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ScrollBar_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ScrollBar_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ScrollBar2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ScrollBar2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ScrollBar2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface SpinButton_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface SpinButton_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface SpinButton_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface SpinButton2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface SpinButton2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface SpinButton2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - interface TabStrip_BeforeDragOver_Parameter { readonly Cancel: ReturnBoolean; readonly Data: DataObject; @@ -2914,844 +1422,151 @@ declare namespace MSForms { readonly X: number; readonly Y: number; } - - interface TabStrip_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface TabStrip2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Index: number; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TabStrip2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Index: number; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TabStrip2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface TextBox_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TextBox_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TextBox_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface TextBox2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TextBox2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface TextBox2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ToggleButton_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ToggleButton_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ToggleButton_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface ToggleButton2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly DragState: fmDragState; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ToggleButton2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface ToggleButton2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface UserForm_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly State: fmDragState; - readonly X: number; - readonly Y: number; - } - - interface UserForm_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface UserForm_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface UserForm_Scroll_Parameter { - readonly ActionX: fmScrollAction; - readonly ActionY: fmScrollAction; - readonly ActualDx: ReturnSingle; - readonly ActualDy: ReturnSingle; - readonly RequestDx: number; - readonly RequestDy: number; - } - - interface UserForm2_BeforeDragOver_Parameter { - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly State: fmDragState; - readonly X: number; - readonly Y: number; - } - - interface UserForm2_BeforeDropOrPaste_Parameter { - readonly Action: fmAction; - readonly Cancel: ReturnBoolean; - readonly Control: Control; - readonly Data: DataObject; - readonly Effect: ReturnEffect; - readonly Shift: number; - readonly X: number; - readonly Y: number; - } - - interface UserForm2_Error_Parameter { - readonly CancelDisplay: ReturnBoolean; - readonly Description: ReturnString; - readonly HelpContext: number; - readonly HelpFile: string; - readonly Number: number; - readonly SCode: number; - readonly Source: string; - } - - interface UserForm2_Scroll_Parameter { - readonly ActionX: fmScrollAction; - readonly ActionY: fmScrollAction; - readonly ActualDx: ReturnSingle; - readonly ActualDy: ReturnSingle; - readonly RequestDx: number; - readonly RequestDy: number; - } } } interface ActiveXObject { - on( - obj: MSForms.CheckBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.CheckBox_BeforeDragOver_ArgNames, handler: ( - this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.CheckBox_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.CheckBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.CheckBox_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.CheckBox_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.CheckBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.CheckBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.CheckBox, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.CheckBox, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.CheckBox, event: 'Error', argNames: MSForms.EventHelperTypes.CheckBox_Error_ArgNames, handler: ( - this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.CheckBox_Error_Parameter) => void): void; - on( - obj: MSForms.CheckBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.CheckBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.CheckBox, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.CheckBox, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.CheckBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.CheckBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.CheckBox, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.CheckBox, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.CheckBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.CheckBox, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.CheckBox2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.CheckBox2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.CheckBox2, parameter: MSForms.EventHelperTypes.CheckBox2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.CheckBox2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.CheckBox2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.CheckBox2, parameter: MSForms.EventHelperTypes.CheckBox2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.CheckBox2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.CheckBox2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.CheckBox2, event: 'Error', argNames: MSForms.EventHelperTypes.CheckBox2_Error_ArgNames, handler: ( - this: MSForms.CheckBox2, parameter: MSForms.EventHelperTypes.CheckBox2_Error_Parameter) => void): void; - on( - obj: MSForms.CheckBox2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.CheckBox2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.CheckBox2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.CheckBox2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.CheckBox2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.CheckBox2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ComboBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ComboBox_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.ComboBox_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ComboBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ComboBox_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.ComboBox_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.CheckBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.CheckBox, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; + on(obj: MSForms.ComboBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.ComboBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.ComboBox, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ComboBox, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ComboBox, event: 'Error', argNames: MSForms.EventHelperTypes.ComboBox_Error_ArgNames, handler: ( - this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.ComboBox_Error_Parameter) => void): void; - on( - obj: MSForms.ComboBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ComboBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.ComboBox, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.ComboBox, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.ComboBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.ComboBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.ComboBox, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ComboBox, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ComboBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ComboBox, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ComboBox2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ComboBox2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ComboBox2, parameter: MSForms.EventHelperTypes.ComboBox2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ComboBox2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ComboBox2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ComboBox2, parameter: MSForms.EventHelperTypes.ComboBox2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.ComboBox2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ComboBox2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ComboBox2, event: 'Error', argNames: MSForms.EventHelperTypes.ComboBox2_Error_ArgNames, handler: ( - this: MSForms.ComboBox2, parameter: MSForms.EventHelperTypes.ComboBox2_Error_Parameter) => void): void; - on( - obj: MSForms.ComboBox2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ComboBox2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.ComboBox2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ComboBox2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ComboBox2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ComboBox2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.CommandButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.CommandButton_BeforeDragOver_ArgNames, - handler: (this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.CommandButton_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.CommandButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.CommandButton_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.CommandButton_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.ComboBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.ComboBox, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.CommandButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.CommandButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.CommandButton, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.CommandButton, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.CommandButton, event: 'Error', argNames: MSForms.EventHelperTypes.CommandButton_Error_ArgNames, handler: ( - this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.CommandButton_Error_Parameter) => void): void; - on( - obj: MSForms.CommandButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.CommandButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.CommandButton, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.CommandButton, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.CommandButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.CommandButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.CommandButton, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.CommandButton, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.CommandButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.CommandButton, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.CommandButton2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.CommandButton2_BeforeDragOver_ArgNames, - handler: (this: MSForms.CommandButton2, parameter: MSForms.EventHelperTypes.CommandButton2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.CommandButton2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.CommandButton2_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.CommandButton2, parameter: MSForms.EventHelperTypes.CommandButton2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.CommandButton2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.CommandButton2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.CommandButton2, event: 'Error', argNames: MSForms.EventHelperTypes.CommandButton2_Error_ArgNames, handler: ( - this: MSForms.CommandButton2, parameter: MSForms.EventHelperTypes.CommandButton2_Error_Parameter) => void): void; - on( - obj: MSForms.CommandButton2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.CommandButton2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.CommandButton2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.CommandButton2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.CommandButton2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.CommandButton2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on(obj: MSForms.Control, event: 'BeforeUpdate' | 'Exit', argNames: ['Cancel'], handler: (this: MSForms.Control, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; + on(obj: MSForms.CommandButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.CommandButton, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.Control, event: 'BeforeUpdate' | 'Exit', argNames: ['Cancel'], handler: (this: MSForms.Control, parameter: { readonly Cancel: MSForms.ReturnBoolean }) => void): void; on(obj: MSForms.Frame, event: 'AddControl' | 'RemoveControl', argNames: ['Control'], handler: (this: MSForms.Frame, parameter: {readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.Frame, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Frame_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Frame_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Frame, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Frame_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Frame_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.Frame, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Container_BeforeDragOver_ArgNames, handler: (this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Container_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.Frame, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Container_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Container_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.Frame, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Frame, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Frame, event: 'Error', argNames: MSForms.EventHelperTypes.Frame_Error_ArgNames, handler: ( - this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Frame_Error_Parameter) => void): void; - on( - obj: MSForms.Frame, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.Frame, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.Frame, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.Frame, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.Frame, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.Frame, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.Frame, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.Frame, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Frame, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.Frame, event: 'Scroll', argNames: MSForms.EventHelperTypes.Frame_Scroll_ArgNames, handler: ( - this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Frame_Scroll_Parameter) => void): void; - on(obj: MSForms.Frame, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.Frame, parameter: {Percent: number}) => void): void; - on(obj: MSForms.Frame2, event: 'AddControl' | 'RemoveControl', argNames: ['Control'], handler: (this: MSForms.Frame2, parameter: {readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.Frame2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Frame2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Frame2, parameter: MSForms.EventHelperTypes.Frame2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Frame2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Frame2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Frame2, parameter: MSForms.EventHelperTypes.Frame2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.Frame2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Frame2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Frame2, event: 'Error', argNames: MSForms.EventHelperTypes.Frame2_Error_ArgNames, handler: ( - this: MSForms.Frame2, parameter: MSForms.EventHelperTypes.Frame2_Error_Parameter) => void): void; - on( - obj: MSForms.Frame2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.Frame2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.Frame2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.Frame2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.Frame2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Frame2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.Frame2, event: 'Scroll', argNames: MSForms.EventHelperTypes.Frame2_Scroll_ArgNames, handler: ( - this: MSForms.Frame2, parameter: MSForms.EventHelperTypes.Frame2_Scroll_Parameter) => void): void; - on(obj: MSForms.Frame2, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.Frame2, parameter: {Percent: number}) => void): void; - on( - obj: MSForms.Image, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Image_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Image, parameter: MSForms.EventHelperTypes.Image_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Image, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Image_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Image, parameter: MSForms.EventHelperTypes.Image_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.Frame, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.Frame, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; + on(obj: MSForms.Frame, event: 'Scroll', argNames: MSForms.EventHelperTypes.Container_Scroll_ArgNames, handler: (this: MSForms.Frame, parameter: MSForms.EventHelperTypes.Container_Scroll_Parameter) => void): void; + on(obj: MSForms.Frame, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.Frame, parameter: { Percent: number }) => void): void; + on(obj: MSForms.Image, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.Image, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.Image, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.Image, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.Image, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Image, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Image, event: 'Error', argNames: MSForms.EventHelperTypes.Image_Error_ArgNames, handler: ( - this: MSForms.Image, parameter: MSForms.EventHelperTypes.Image_Error_Parameter) => void): void; - on( - obj: MSForms.Image, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Image, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.Image2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Image2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Image2, parameter: MSForms.EventHelperTypes.Image2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Image2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Image2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Image2, parameter: MSForms.EventHelperTypes.Image2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.Image2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Image2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Image2, event: 'Error', argNames: MSForms.EventHelperTypes.Image2_Error_ArgNames, handler: ( - this: MSForms.Image2, parameter: MSForms.EventHelperTypes.Image2_Error_Parameter) => void): void; - on( - obj: MSForms.Image2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Image2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.Label, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Label_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Label, parameter: MSForms.EventHelperTypes.Label_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Label, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Label_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Label, parameter: MSForms.EventHelperTypes.Label_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.Image, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.Image, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.Image, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.Image, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.Label, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.Label, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.Label, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.Label, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.Label, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Label, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Label, event: 'Error', argNames: MSForms.EventHelperTypes.Label_Error_ArgNames, handler: ( - this: MSForms.Label, parameter: MSForms.EventHelperTypes.Label_Error_Parameter) => void): void; - on( - obj: MSForms.Label, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Label, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.Label2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Label2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.Label2, parameter: MSForms.EventHelperTypes.Label2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.Label2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Label2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.Label2, parameter: MSForms.EventHelperTypes.Label2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.Label2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.Label2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.Label2, event: 'Error', argNames: MSForms.EventHelperTypes.Label2_Error_ArgNames, handler: ( - this: MSForms.Label2, parameter: MSForms.EventHelperTypes.Label2_Error_Parameter) => void): void; - on( - obj: MSForms.Label2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.Label2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ListBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ListBox_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.ListBox_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ListBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ListBox_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.ListBox_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.Label, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.Label, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.Label, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.Label, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.ListBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.ListBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.ListBox, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ListBox, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ListBox, event: 'Error', argNames: MSForms.EventHelperTypes.ListBox_Error_ArgNames, handler: ( - this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.ListBox_Error_Parameter) => void): void; - on( - obj: MSForms.ListBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ListBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.ListBox, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.ListBox, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.ListBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.ListBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.ListBox, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ListBox, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ListBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ListBox, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ListBox2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ListBox2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ListBox2, parameter: MSForms.EventHelperTypes.ListBox2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ListBox2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ListBox2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ListBox2, parameter: MSForms.EventHelperTypes.ListBox2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.ListBox2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ListBox2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ListBox2, event: 'Error', argNames: MSForms.EventHelperTypes.ListBox2_Error_ArgNames, handler: ( - this: MSForms.ListBox2, parameter: MSForms.EventHelperTypes.ListBox2_Error_Parameter) => void): void; - on( - obj: MSForms.ListBox2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ListBox2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.ListBox2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ListBox2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ListBox2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ListBox2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.MultiPage, event: 'AddControl' | 'RemoveControl', argNames: ['Index', 'Control'], handler: ( - this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.MultiPage, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.MultiPage_BeforeDragOver_ArgNames, handler: ( - this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.MultiPage, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.MultiPage_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.ListBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.ListBox, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.MultiPage, event: 'AddControl' | 'RemoveControl', argNames: ['Index', 'Control'], handler: (this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Control: MSForms.Control}) => void): void; + on(obj: MSForms.MultiPage, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.MultiPage_BeforeDragOver_ArgNames, handler: (this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.MultiPage, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.MultiPage_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.MultiPage, event: 'Click' | 'Layout', argNames: ['Index'], handler: (this: MSForms.MultiPage, parameter: {readonly Index: number}) => void): void; - on( - obj: MSForms.MultiPage, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: ( - this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.MultiPage, event: 'Error', argNames: MSForms.EventHelperTypes.MultiPage_Error_ArgNames, handler: ( - this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_Error_Parameter) => void): void; - on( - obj: MSForms.MultiPage, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.MultiPage, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.MultiPage, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: (this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; + on(obj: MSForms.MultiPage, event: 'Error', argNames: MSForms.EventHelperTypes.MultiPage_Error_ArgNames, handler: (this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_Error_Parameter) => void): void; + on(obj: MSForms.MultiPage, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.MultiPage, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.MultiPage, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.MultiPage, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.MultiPage, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.MultiPage, event: 'Scroll', argNames: MSForms.EventHelperTypes.MultiPage_Scroll_ArgNames, handler: ( - this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_Scroll_Parameter) => void): void; - on(obj: MSForms.MultiPage, event: 'Zoom', argNames: ['Index', 'Percent'], handler: (this: MSForms.MultiPage, parameter: {readonly Index: number, Percent: number}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'AddControl' | 'RemoveControl', argNames: ['Index', 'Control'], handler: ( - this: MSForms.MultiPage2, parameter: {readonly Index: number, readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.MultiPage2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.MultiPage2, parameter: MSForms.EventHelperTypes.MultiPage2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.MultiPage2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.MultiPage2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.MultiPage2, parameter: MSForms.EventHelperTypes.MultiPage2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.MultiPage2, event: 'Click' | 'Layout', argNames: ['Index'], handler: (this: MSForms.MultiPage2, parameter: {readonly Index: number}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: ( - this: MSForms.MultiPage2, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'Error', argNames: MSForms.EventHelperTypes.MultiPage2_Error_ArgNames, handler: ( - this: MSForms.MultiPage2, parameter: MSForms.EventHelperTypes.MultiPage2_Error_Parameter) => void): void; - on( - obj: MSForms.MultiPage2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.MultiPage2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.MultiPage2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.MultiPage2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.MultiPage2, parameter: {readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.MultiPage2, event: 'Scroll', argNames: MSForms.EventHelperTypes.MultiPage2_Scroll_ArgNames, handler: ( - this: MSForms.MultiPage2, parameter: MSForms.EventHelperTypes.MultiPage2_Scroll_Parameter) => void): void; - on(obj: MSForms.MultiPage2, event: 'Zoom', argNames: ['Index', 'Percent'], handler: (this: MSForms.MultiPage2, parameter: {readonly Index: number, Percent: number}) => void): void; - on( - obj: MSForms.OptionButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.OptionButton_BeforeDragOver_ArgNames, handler: ( - this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.OptionButton_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.OptionButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.OptionButton_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.OptionButton_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.MultiPage, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.MultiPage, parameter: {readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; + on(obj: MSForms.MultiPage, event: 'Scroll', argNames: MSForms.EventHelperTypes.MultiPage_Scroll_ArgNames, handler: (this: MSForms.MultiPage, parameter: MSForms.EventHelperTypes.MultiPage_Scroll_Parameter) => void): void; + on(obj: MSForms.MultiPage, event: 'Zoom', argNames: ['Index', 'Percent'], handler: (this: MSForms.MultiPage, parameter: { readonly Index: number, Percent: number }) => void): void; + on(obj: MSForms.OptionButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.OptionButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.OptionButton, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.OptionButton, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.OptionButton, event: 'Error', argNames: MSForms.EventHelperTypes.OptionButton_Error_ArgNames, handler: ( - this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.OptionButton_Error_Parameter) => void): void; - on( - obj: MSForms.OptionButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.OptionButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.OptionButton, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.OptionButton, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.OptionButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.OptionButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.OptionButton, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.OptionButton, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.OptionButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.OptionButton, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.OptionButton2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.OptionButton2_BeforeDragOver_ArgNames, - handler: (this: MSForms.OptionButton2, parameter: MSForms.EventHelperTypes.OptionButton2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.OptionButton2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.OptionButton2_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.OptionButton2, parameter: MSForms.EventHelperTypes.OptionButton2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.OptionButton2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.OptionButton2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.OptionButton2, event: 'Error', argNames: MSForms.EventHelperTypes.OptionButton2_Error_ArgNames, handler: ( - this: MSForms.OptionButton2, parameter: MSForms.EventHelperTypes.OptionButton2_Error_Parameter) => void): void; - on( - obj: MSForms.OptionButton2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.OptionButton2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.OptionButton2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.OptionButton2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.OptionButton2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.OptionButton2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ScrollBar, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ScrollBar_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.ScrollBar_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ScrollBar, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ScrollBar_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.ScrollBar_BeforeDropOrPaste_Parameter) => void): void; - on( - obj: MSForms.ScrollBar, event: 'Error', argNames: MSForms.EventHelperTypes.ScrollBar_Error_ArgNames, handler: ( - this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.ScrollBar_Error_Parameter) => void): void; - on( - obj: MSForms.ScrollBar, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ScrollBar, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.ScrollBar, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ScrollBar, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ScrollBar2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ScrollBar2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ScrollBar2, parameter: MSForms.EventHelperTypes.ScrollBar2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ScrollBar2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ScrollBar2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.ScrollBar2, parameter: MSForms.EventHelperTypes.ScrollBar2_BeforeDropOrPaste_Parameter) => void): void; - on( - obj: MSForms.ScrollBar2, event: 'Error', argNames: MSForms.EventHelperTypes.ScrollBar2_Error_ArgNames, handler: ( - this: MSForms.ScrollBar2, parameter: MSForms.EventHelperTypes.ScrollBar2_Error_Parameter) => void): void; - on( - obj: MSForms.ScrollBar2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ScrollBar2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.ScrollBar2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ScrollBar2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.SpinButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.SpinButton_BeforeDragOver_ArgNames, handler: ( - this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.SpinButton_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.SpinButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.SpinButton_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.SpinButton_BeforeDropOrPaste_Parameter) => void): void; - on( - obj: MSForms.SpinButton, event: 'Error', argNames: MSForms.EventHelperTypes.SpinButton_Error_ArgNames, handler: ( - this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.SpinButton_Error_Parameter) => void): void; - on( - obj: MSForms.SpinButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.SpinButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.OptionButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.OptionButton, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.ScrollBar, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.ScrollBar, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.ScrollBar, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.ScrollBar, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.ScrollBar, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.ScrollBar, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.ScrollBar, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ScrollBar, parameter: { readonly KeyAscii: MSForms.ReturnInteger }) => void): void; + on(obj: MSForms.SpinButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.SpinButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.SpinButton, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.SpinButton, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.SpinButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.SpinButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.SpinButton, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.SpinButton, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.SpinButton2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.SpinButton2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.SpinButton2, parameter: MSForms.EventHelperTypes.SpinButton2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.SpinButton2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.SpinButton2_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.SpinButton2, parameter: MSForms.EventHelperTypes.SpinButton2_BeforeDropOrPaste_Parameter) => void): void; - on( - obj: MSForms.SpinButton2, event: 'Error', argNames: MSForms.EventHelperTypes.SpinButton2_Error_ArgNames, handler: ( - this: MSForms.SpinButton2, parameter: MSForms.EventHelperTypes.SpinButton2_Error_Parameter) => void): void; - on( - obj: MSForms.SpinButton2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.SpinButton2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.SpinButton2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.SpinButton2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.TabStrip, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.TabStrip_BeforeDragOver_ArgNames, handler: ( - this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.TabStrip_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.TabStrip, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.TabStrip_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.TabStrip_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.TabStrip, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.TabStrip_BeforeDragOver_ArgNames, handler: (this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.TabStrip_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.TabStrip, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.TabStrip_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.TabStrip_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.TabStrip, event: 'Click', argNames: ['Index'], handler: (this: MSForms.TabStrip, parameter: {readonly Index: number}) => void): void; - on( - obj: MSForms.TabStrip, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: ( - this: MSForms.TabStrip, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.TabStrip, event: 'Error', argNames: MSForms.EventHelperTypes.TabStrip_Error_ArgNames, handler: ( - this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.TabStrip_Error_Parameter) => void): void; - on( - obj: MSForms.TabStrip, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.TabStrip, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.TabStrip, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: (this: MSForms.TabStrip, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; + on(obj: MSForms.TabStrip, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.TabStrip, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.TabStrip, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.TabStrip, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.TabStrip, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.TabStrip, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.TabStrip, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.TabStrip, parameter: {readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.TabStrip2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.TabStrip2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.TabStrip2, parameter: MSForms.EventHelperTypes.TabStrip2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.TabStrip2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.TabStrip2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.TabStrip2, parameter: MSForms.EventHelperTypes.TabStrip2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.TabStrip2, event: 'Click', argNames: ['Index'], handler: (this: MSForms.TabStrip2, parameter: {readonly Index: number}) => void): void; - on( - obj: MSForms.TabStrip2, event: 'DblClick', argNames: ['Index', 'Cancel'], handler: ( - this: MSForms.TabStrip2, parameter: {readonly Index: number, readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.TabStrip2, event: 'Error', argNames: MSForms.EventHelperTypes.TabStrip2_Error_ArgNames, handler: ( - this: MSForms.TabStrip2, parameter: MSForms.EventHelperTypes.TabStrip2_Error_Parameter) => void): void; - on( - obj: MSForms.TabStrip2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.TabStrip2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.TabStrip2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.TabStrip2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.TabStrip2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.TabStrip2, parameter: {readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.TextBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.TextBox_BeforeDragOver_ArgNames, handler: ( - this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.TextBox_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.TextBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.TextBox_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.TextBox_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.TabStrip, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Index', 'Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.TabStrip, parameter: { readonly Index: number, readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.TextBox, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.TextBox, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.TextBox, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.TextBox, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.TextBox, event: 'Error', argNames: MSForms.EventHelperTypes.TextBox_Error_ArgNames, handler: ( - this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.TextBox_Error_Parameter) => void): void; - on( - obj: MSForms.TextBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.TextBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.TextBox, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.TextBox, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.TextBox, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.TextBox, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.TextBox, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.TextBox, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.TextBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.TextBox, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.TextBox2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.TextBox2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.TextBox2, parameter: MSForms.EventHelperTypes.TextBox2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.TextBox2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.TextBox2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.TextBox2, parameter: MSForms.EventHelperTypes.TextBox2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.TextBox2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.TextBox2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.TextBox2, event: 'Error', argNames: MSForms.EventHelperTypes.TextBox2_Error_ArgNames, handler: ( - this: MSForms.TextBox2, parameter: MSForms.EventHelperTypes.TextBox2_Error_Parameter) => void): void; - on( - obj: MSForms.TextBox2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.TextBox2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.TextBox2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.TextBox2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.TextBox2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.TextBox2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ToggleButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ToggleButton_BeforeDragOver_ArgNames, handler: ( - this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.ToggleButton_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ToggleButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ToggleButton_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.ToggleButton_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.TextBox, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.TextBox, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; + on(obj: MSForms.ToggleButton, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Control_BeforeDragOver_ArgNames, handler: (this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.Control_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.ToggleButton, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.Control_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.ToggleButton, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ToggleButton, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ToggleButton, event: 'Error', argNames: MSForms.EventHelperTypes.ToggleButton_Error_ArgNames, handler: ( - this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.ToggleButton_Error_Parameter) => void): void; - on( - obj: MSForms.ToggleButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ToggleButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.ToggleButton, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.ToggleButton, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.ToggleButton, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.ToggleButton, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.ToggleButton, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ToggleButton, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ToggleButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ToggleButton, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.ToggleButton2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.ToggleButton2_BeforeDragOver_ArgNames, - handler: (this: MSForms.ToggleButton2, parameter: MSForms.EventHelperTypes.ToggleButton2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.ToggleButton2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.ToggleButton2_BeforeDropOrPaste_ArgNames, - handler: (this: MSForms.ToggleButton2, parameter: MSForms.EventHelperTypes.ToggleButton2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.ToggleButton2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.ToggleButton2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.ToggleButton2, event: 'Error', argNames: MSForms.EventHelperTypes.ToggleButton2_Error_ArgNames, handler: ( - this: MSForms.ToggleButton2, parameter: MSForms.EventHelperTypes.ToggleButton2_Error_Parameter) => void): void; - on( - obj: MSForms.ToggleButton2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.ToggleButton2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.ToggleButton2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.ToggleButton2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.ToggleButton2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.ToggleButton2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; + on(obj: MSForms.ToggleButton, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.ToggleButton, parameter: { readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number }) => void): void; on(obj: MSForms.UserForm, event: 'AddControl' | 'RemoveControl', argNames: ['Control'], handler: (this: MSForms.UserForm, parameter: {readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.UserForm, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.UserForm_BeforeDragOver_ArgNames, handler: ( - this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.UserForm_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.UserForm, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.UserForm_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.UserForm_BeforeDropOrPaste_Parameter) => void): void; + on(obj: MSForms.UserForm, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.Container_BeforeDragOver_ArgNames, handler: (this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.Container_BeforeDragOver_Parameter) => void): void; + on(obj: MSForms.UserForm, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.Container_BeforeDropOrPaste_ArgNames, handler: (this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.Container_BeforeDropOrPaste_Parameter) => void): void; on(obj: MSForms.UserForm, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.UserForm, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.UserForm, event: 'Error', argNames: MSForms.EventHelperTypes.UserForm_Error_ArgNames, handler: ( - this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.UserForm_Error_Parameter) => void): void; - on( - obj: MSForms.UserForm, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.UserForm, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; + on(obj: MSForms.UserForm, event: 'Error', argNames: MSForms.EventHelperTypes.Error_ArgNames, handler: (this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.Error_Parameter) => void): void; + on(obj: MSForms.UserForm, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: (this: MSForms.UserForm, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; on(obj: MSForms.UserForm, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.UserForm, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.UserForm, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.UserForm, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.UserForm, event: 'Scroll', argNames: MSForms.EventHelperTypes.UserForm_Scroll_ArgNames, handler: ( - this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.UserForm_Scroll_Parameter) => void): void; - on(obj: MSForms.UserForm, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.UserForm, parameter: {Percent: number}) => void): void; - on(obj: MSForms.UserForm2, event: 'AddControl' | 'RemoveControl', argNames: ['Control'], handler: (this: MSForms.UserForm2, parameter: {readonly Control: MSForms.Control}) => void): void; - on( - obj: MSForms.UserForm2, event: 'BeforeDragOver', argNames: MSForms.EventHelperTypes.UserForm2_BeforeDragOver_ArgNames, handler: ( - this: MSForms.UserForm2, parameter: MSForms.EventHelperTypes.UserForm2_BeforeDragOver_Parameter) => void): void; - on( - obj: MSForms.UserForm2, event: 'BeforeDropOrPaste', argNames: MSForms.EventHelperTypes.UserForm2_BeforeDropOrPaste_ArgNames, handler: ( - this: MSForms.UserForm2, parameter: MSForms.EventHelperTypes.UserForm2_BeforeDropOrPaste_Parameter) => void): void; - on(obj: MSForms.UserForm2, event: 'DblClick', argNames: ['Cancel'], handler: (this: MSForms.UserForm2, parameter: {readonly Cancel: MSForms.ReturnBoolean}) => void): void; - on( - obj: MSForms.UserForm2, event: 'Error', argNames: MSForms.EventHelperTypes.UserForm2_Error_ArgNames, handler: ( - this: MSForms.UserForm2, parameter: MSForms.EventHelperTypes.UserForm2_Error_Parameter) => void): void; - on( - obj: MSForms.UserForm2, event: 'KeyDown' | 'KeyUp', argNames: ['KeyCode', 'Shift'], handler: ( - this: MSForms.UserForm2, parameter: {readonly KeyCode: MSForms.ReturnInteger, readonly Shift: number}) => void): void; - on(obj: MSForms.UserForm2, event: 'KeyPress', argNames: ['KeyAscii'], handler: (this: MSForms.UserForm2, parameter: {readonly KeyAscii: MSForms.ReturnInteger}) => void): void; - on( - obj: MSForms.UserForm2, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: ( - this: MSForms.UserForm2, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; - on( - obj: MSForms.UserForm2, event: 'Scroll', argNames: MSForms.EventHelperTypes.UserForm2_Scroll_ArgNames, handler: ( - this: MSForms.UserForm2, parameter: MSForms.EventHelperTypes.UserForm2_Scroll_Parameter) => void): void; - on(obj: MSForms.UserForm2, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.UserForm2, parameter: {Percent: number}) => void): void; + on(obj: MSForms.UserForm, event: 'MouseDown' | 'MouseMove' | 'MouseUp', argNames: ['Button', 'Shift', 'X', 'Y'], handler: (this: MSForms.UserForm, parameter: {readonly Button: number, readonly Shift: number, readonly X: number, readonly Y: number}) => void): void; + on(obj: MSForms.UserForm, event: 'Scroll', argNames: MSForms.EventHelperTypes.Container_Scroll_ArgNames, handler: (this: MSForms.UserForm, parameter: MSForms.EventHelperTypes.Container_Scroll_Parameter) => void): void; + on(obj: MSForms.UserForm, event: 'Zoom', argNames: ['Percent'], handler: (this: MSForms.UserForm, parameter: { Percent: number }) => void): void; on(obj: MSForms.CheckBox, event: 'Change' | 'Click', handler: (this: MSForms.CheckBox, parameter: {}) => void): void; - on(obj: MSForms.CheckBox2, event: 'Change' | 'Click', handler: (this: MSForms.CheckBox2, parameter: {}) => void): void; on(obj: MSForms.ComboBox, event: 'Change' | 'Click' | 'DropButtonClick', handler: (this: MSForms.ComboBox, parameter: {}) => void): void; - on(obj: MSForms.ComboBox2, event: 'Change' | 'Click' | 'DropButtonClick', handler: (this: MSForms.ComboBox2, parameter: {}) => void): void; on(obj: MSForms.CommandButton, event: 'Click', handler: (this: MSForms.CommandButton, parameter: {}) => void): void; - on(obj: MSForms.CommandButton2, event: 'Click', handler: (this: MSForms.CommandButton2, parameter: {}) => void): void; on(obj: MSForms.Control, event: 'AfterUpdate' | 'Enter', handler: (this: MSForms.Control, parameter: {}) => void): void; on(obj: MSForms.Frame, event: 'Click' | 'Layout', handler: (this: MSForms.Frame, parameter: {}) => void): void; - on(obj: MSForms.Frame2, event: 'Click' | 'Layout', handler: (this: MSForms.Frame2, parameter: {}) => void): void; on(obj: MSForms.HTMLCheckbox, event: 'Click', handler: (this: MSForms.HTMLCheckbox, parameter: {}) => void): void; - on(obj: MSForms.HTMLCheckbox2, event: 'Click', handler: (this: MSForms.HTMLCheckbox2, parameter: {}) => void): void; on(obj: MSForms.HTMLHidden, event: 'Click', handler: (this: MSForms.HTMLHidden, parameter: {}) => void): void; - on(obj: MSForms.HTMLHidden2, event: 'Click', handler: (this: MSForms.HTMLHidden2, parameter: {}) => void): void; on(obj: MSForms.HTMLImage, event: 'Click', handler: (this: MSForms.HTMLImage, parameter: {}) => void): void; - on(obj: MSForms.HTMLImage2, event: 'Click', handler: (this: MSForms.HTMLImage2, parameter: {}) => void): void; on(obj: MSForms.HTMLOption, event: 'Click', handler: (this: MSForms.HTMLOption, parameter: {}) => void): void; - on(obj: MSForms.HTMLOption2, event: 'Click', handler: (this: MSForms.HTMLOption2, parameter: {}) => void): void; on(obj: MSForms.HTMLPassword, event: 'Click', handler: (this: MSForms.HTMLPassword, parameter: {}) => void): void; - on(obj: MSForms.HTMLPassword2, event: 'Click', handler: (this: MSForms.HTMLPassword2, parameter: {}) => void): void; on(obj: MSForms.HTMLReset, event: 'Click', handler: (this: MSForms.HTMLReset, parameter: {}) => void): void; - on(obj: MSForms.HTMLReset2, event: 'Click', handler: (this: MSForms.HTMLReset2, parameter: {}) => void): void; on(obj: MSForms.HTMLSelect, event: 'Click', handler: (this: MSForms.HTMLSelect, parameter: {}) => void): void; - on(obj: MSForms.HTMLSelect2, event: 'Click', handler: (this: MSForms.HTMLSelect2, parameter: {}) => void): void; on(obj: MSForms.HTMLSubmit, event: 'Click', handler: (this: MSForms.HTMLSubmit, parameter: {}) => void): void; - on(obj: MSForms.HTMLSubmit2, event: 'Click', handler: (this: MSForms.HTMLSubmit2, parameter: {}) => void): void; on(obj: MSForms.HTMLText, event: 'Click', handler: (this: MSForms.HTMLText, parameter: {}) => void): void; - on(obj: MSForms.HTMLText2, event: 'Click', handler: (this: MSForms.HTMLText2, parameter: {}) => void): void; on(obj: MSForms.HTMLTextArea, event: 'Click', handler: (this: MSForms.HTMLTextArea, parameter: {}) => void): void; - on(obj: MSForms.HTMLTextArea2, event: 'Click', handler: (this: MSForms.HTMLTextArea2, parameter: {}) => void): void; on(obj: MSForms.Image, event: 'Click', handler: (this: MSForms.Image, parameter: {}) => void): void; - on(obj: MSForms.Image2, event: 'Click', handler: (this: MSForms.Image2, parameter: {}) => void): void; on(obj: MSForms.Label, event: 'Click', handler: (this: MSForms.Label, parameter: {}) => void): void; - on(obj: MSForms.Label2, event: 'Click', handler: (this: MSForms.Label2, parameter: {}) => void): void; on(obj: MSForms.ListBox, event: 'Change' | 'Click', handler: (this: MSForms.ListBox, parameter: {}) => void): void; - on(obj: MSForms.ListBox2, event: 'Change' | 'Click', handler: (this: MSForms.ListBox2, parameter: {}) => void): void; on(obj: MSForms.MultiPage, event: 'Change', handler: (this: MSForms.MultiPage, parameter: {}) => void): void; - on(obj: MSForms.MultiPage2, event: 'Change', handler: (this: MSForms.MultiPage2, parameter: {}) => void): void; on(obj: MSForms.OptionButton, event: 'Change' | 'Click', handler: (this: MSForms.OptionButton, parameter: {}) => void): void; - on(obj: MSForms.OptionButton2, event: 'Change' | 'Click', handler: (this: MSForms.OptionButton2, parameter: {}) => void): void; on(obj: MSForms.ScrollBar, event: 'Change' | 'Scroll', handler: (this: MSForms.ScrollBar, parameter: {}) => void): void; - on(obj: MSForms.ScrollBar2, event: 'Change' | 'Scroll', handler: (this: MSForms.ScrollBar2, parameter: {}) => void): void; on(obj: MSForms.SpinButton, event: 'Change' | 'SpinDown' | 'SpinUp', handler: (this: MSForms.SpinButton, parameter: {}) => void): void; - on(obj: MSForms.SpinButton2, event: 'Change' | 'SpinDown' | 'SpinUp', handler: (this: MSForms.SpinButton2, parameter: {}) => void): void; on(obj: MSForms.TabStrip, event: 'Change', handler: (this: MSForms.TabStrip, parameter: {}) => void): void; - on(obj: MSForms.TabStrip2, event: 'Change', handler: (this: MSForms.TabStrip2, parameter: {}) => void): void; on(obj: MSForms.TextBox, event: 'Change' | 'DropButtonClick', handler: (this: MSForms.TextBox, parameter: {}) => void): void; - on(obj: MSForms.TextBox2, event: 'Change' | 'DropButtonClick', handler: (this: MSForms.TextBox2, parameter: {}) => void): void; on(obj: MSForms.ToggleButton, event: 'Change' | 'Click', handler: (this: MSForms.ToggleButton, parameter: {}) => void): void; - on(obj: MSForms.ToggleButton2, event: 'Change' | 'Click', handler: (this: MSForms.ToggleButton2, parameter: {}) => void): void; on(obj: MSForms.UserForm, event: 'Click' | 'Layout', handler: (this: MSForms.UserForm, parameter: {}) => void): void; - on(obj: MSForms.UserForm2, event: 'Click' | 'Layout', handler: (this: MSForms.UserForm2, parameter: {}) => void): void; - set(obj: MSForms.ComboBox | MSForms.ComboBox2 | MSForms.ListBox | MSForms.ListBox2, propertyName: 'Column' | 'List', parameterTypes: [number | undefined, number] | [number] | never[], - newValue: any): void; - set(obj: MSForms.ListBox | MSForms.ListBox2, propertyName: 'Selected', parameterTypes: [any], newValue: boolean): void; + set(obj: MSForms.ComboBox | MSForms.ListBox, propertyName: 'Column' | 'List', parameterTypes: [number, number] | [number], newValue: any): void; + set(obj: MSForms.ComboBox | MSForms.ListBox, propertyName: 'Column' | 'List', parameterTypes: number[], newValue: SafeArray): void; + set(obj: MSForms.ListBox, propertyName: 'Selected', parameterTypes: [any], newValue: boolean): void; new(progid: K): ActiveXObjectNameMap[K]; } interface ActiveXObjectNameMap { 'Forms.Image': MSForms.Image; } - -interface EnumeratorConstructor { - new(col: MSForms.Controls | MSForms.Pages | MSForms.Tabs): Enumerator; // tslint:disable-line:use-default-type-parameter -} - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-msforms/tslint.json b/types/activex-msforms/tslint.json index 3224b40b8b..7b89accc6d 100644 --- a/types/activex-msforms/tslint.json +++ b/types/activex-msforms/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-mshtml/index.d.ts b/types/activex-mshtml/index.d.ts index 01c6007620..94466927d7 100644 --- a/types/activex-mshtml/index.d.ts +++ b/types/activex-mshtml/index.d.ts @@ -2885,11 +2885,10 @@ declare namespace MSHTML { update(): void; } - class BlockFormats { - private 'MSHTML.BlockFormats_typekey': BlockFormats; - private constructor(); + interface BlockFormats { readonly Count: number; item(pvarIndex: any): string; + (pvarIndex: any): string; } class CanvasGradient { @@ -2975,7 +2974,7 @@ declare namespace MSHTML { private 'MSHTML.CClientCaps_typekey': CClientCaps; private constructor(); - /** @param string [bStrVer=''] */ + /** @param bStrVer [bStrVer=''] */ addComponentRequest(bstrName: string, bstrURL: string, bStrVer?: string): void; readonly availHeight: number; readonly availWidth: number; @@ -2991,7 +2990,7 @@ declare namespace MSHTML { getComponentVersion(bstrName: string, bstrURL: string): string; readonly height: number; - /** @param string [bStrVer=''] */ + /** @param bStrVer [bStrVer=''] */ isComponentInstalled(bstrName: string, bstrURL: string, bStrVer?: string): boolean; readonly javaEnabled: boolean; readonly onLine: boolean; @@ -3025,7 +3024,7 @@ declare namespace MSHTML { readonly dataTransfer: IHTMLDataTransfer; fromElement: IHTMLElement; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; keyCode: number; readonly nextPage: string; @@ -3037,14 +3036,14 @@ declare namespace MSHTML { reason: number; recordset: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; repeat: boolean; returnValue: any; screenX: number; screenY: number; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; shiftKey: boolean; shiftLeft: boolean; @@ -3086,7 +3085,7 @@ declare namespace MSHTML { readonly 'constructor': any; readonly length: number; - /** @param boolean [reload=false] */ + /** @param reload [reload=false] */ refresh(reload?: boolean): void; } @@ -3230,13 +3229,12 @@ declare namespace MSHTML { readonly type: string; } - class DOMChildrenCollection { - private 'MSHTML.DOMChildrenCollection_typekey': DOMChildrenCollection; - private constructor(); + interface DOMChildrenCollection { readonly 'constructor': any; ie9_item(index: number): any; item(index: number): any; readonly length: number; + (index: number): any; } class DOMCloseEvent { @@ -3348,7 +3346,7 @@ declare namespace MSHTML { readonly publicId: any; removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceNode(replacement: IHTMLDOMNode): IHTMLDOMNode; @@ -3376,14 +3374,9 @@ declare namespace MSHTML { readonly eventPhase: number; readonly fromElement: IHTMLElement; getModifierState(keyArg: string): boolean; - initDragEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, - relatedTargetArg: IEventTarget, dataTransferArg: IHTMLDataTransfer): void; + initDragEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget, dataTransferArg: IHTMLDataTransfer): void; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initMouseEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; + initMouseEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; initUIEvent(eventType: string, canBubble: boolean, cancelable: boolean, view: IHTMLWindow2, detail: number): void; readonly isTrusted: boolean; readonly layerX: number; @@ -3479,8 +3472,7 @@ declare namespace MSHTML { getModifierState(keyArg: string): boolean; readonly ie9_char: any; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initKeyboardEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, keyArg: string, locationArg: number, modifiersListArg: string, repeat: boolean, locale: string): void; + initKeyboardEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, keyArg: string, locationArg: number, modifiersListArg: string, repeat: boolean, locale: string): void; initUIEvent(eventType: string, canBubble: boolean, cancelable: boolean, view: IHTMLWindow2, detail: number): void; readonly isTrusted: boolean; readonly key: string; @@ -3544,9 +3536,7 @@ declare namespace MSHTML { readonly fromElement: IHTMLElement; getModifierState(keyArg: string): boolean; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initMouseEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; + initMouseEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; initUIEvent(eventType: string, canBubble: boolean, cancelable: boolean, view: IHTMLWindow2, detail: number): void; readonly isTrusted: boolean; readonly layerX: number; @@ -3593,12 +3583,8 @@ declare namespace MSHTML { readonly fromElement: IHTMLElement; getModifierState(keyArg: string): boolean; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initMouseEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; - initMouseWheelEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: IEventTarget, modifiersListArg: string, wheelDeltaArg: number): void; + initMouseEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; + initMouseWheelEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: IEventTarget, modifiersListArg: string, wheelDeltaArg: number): void; initUIEvent(eventType: string, canBubble: boolean, cancelable: boolean, view: IHTMLWindow2, detail: number): void; readonly isTrusted: boolean; readonly layerX: number; @@ -3711,8 +3697,7 @@ declare namespace MSHTML { readonly defaultPrevented: boolean; readonly eventPhase: number; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initMutationEvent( - eventType: string, canBubble: boolean, cancelable: boolean, relatedNodeArg: any, prevValueArg: string, newValueArg: string, attrNameArg: string, attrChangeArg: number): void; + initMutationEvent(eventType: string, canBubble: boolean, cancelable: boolean, relatedNodeArg: any, prevValueArg: string, newValueArg: string, attrNameArg: string, attrChangeArg: number): void; readonly isTrusted: boolean; readonly newValue: string; preventDefault(): void; @@ -3732,10 +3717,9 @@ declare namespace MSHTML { parseFromString(xmlSource: string, mimeType: string): IHTMLDocument2; } - class DOMParserFactory { - private 'MSHTML.DOMParserFactory_typekey': DOMParserFactory; - private constructor(); + interface DOMParserFactory { create(): IDOMParser; + (): IDOMParser; } class DOMProcessingInstruction { @@ -3773,7 +3757,7 @@ declare namespace MSHTML { readonly previousSibling: IHTMLDOMNode; removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceNode(replacement: IHTMLDOMNode): IHTMLDOMNode; @@ -3838,8 +3822,7 @@ declare namespace MSHTML { readonly defaultPrevented: boolean; readonly eventPhase: number; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initStorageEvent( - eventType: string, canBubble: boolean, cancelable: boolean, keyArg: string, oldValueArg: string, newValueArg: string, urlArg: string, storageAreaArg: IHTMLStorage): void; + initStorageEvent(eventType: string, canBubble: boolean, cancelable: boolean, keyArg: string, oldValueArg: string, newValueArg: string, urlArg: string, storageAreaArg: IHTMLStorage): void; readonly isTrusted: boolean; readonly key: string; readonly newValue: string; @@ -3928,14 +3911,9 @@ declare namespace MSHTML { readonly fromElement: IHTMLElement; getModifierState(keyArg: string): boolean; initEvent(eventType: string, canBubble: boolean, cancelable: boolean): void; - initMouseEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; + initMouseEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: IEventTarget): void; initUIEvent(eventType: string, canBubble: boolean, cancelable: boolean, view: IHTMLWindow2, detail: number): void; - initWheelEvent( - eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, - clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: IEventTarget, modifiersListArg: string, deltaX: number, deltaY: number, - deltaZ: number, deltaMode: number): void; + initWheelEvent(eventType: string, canBubble: boolean, cancelable: boolean, viewArg: IHTMLWindow2, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: IEventTarget, modifiersListArg: string, deltaX: number, deltaY: number, deltaZ: number, deltaMode: number): void; readonly isTrusted: boolean; readonly layerX: number; readonly layerY: number; @@ -3967,25 +3945,22 @@ declare namespace MSHTML { private constructor(); } - class FontNames { - private 'MSHTML.FontNames_typekey': FontNames; - private constructor(); + interface FontNames { readonly Count: number; item(pvarIndex: any): string; + (pvarIndex: any): string; } - class FramesCollection { - private 'MSHTML.FramesCollection_typekey': FramesCollection; - private constructor(); + interface FramesCollection { item(pvarIndex: any): any; readonly length: number; + (pvarIndex: any): any; } - class HTCAttachBehavior { - private 'MSHTML.HTCAttachBehavior_typekey': HTCAttachBehavior; - private constructor(); + interface HTCAttachBehavior { detachEvent(): void; FireEvent(evt: any): void; + (evt: any): void; } class HTCDefaultDispatch { @@ -4098,7 +4073,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -4317,7 +4292,7 @@ declare namespace MSHTML { rel: string; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -4326,7 +4301,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -4343,16 +4318,16 @@ declare namespace MSHTML { search: string; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; shape: string; readonly sourceIndex: number; @@ -4468,7 +4443,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -4666,7 +4641,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -4675,7 +4650,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -4691,16 +4666,16 @@ declare namespace MSHTML { search: string; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; shape: string; readonly sourceIndex: number; @@ -4718,9 +4693,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLAreasCollection { - private 'MSHTML.HTMLAreasCollection_typekey': HTMLAreasCollection; - private constructor(); + interface HTMLAreasCollection { add(element: IHTMLElement, before?: any): void; readonly 'constructor': any; ie8_item(index: number): IHTMLElement2; @@ -4730,15 +4703,14 @@ declare namespace MSHTML { length: number; namedItem(name: string): any; - /** @param number [index=-1] */ + /** @param index [index=-1] */ remove(index?: number): void; tags(tagName: any): any; urns(urn: any): any; + (name?: any, index?: any): any; } - class HTMLAttributeCollection { - private 'MSHTML.HTMLAttributeCollection_typekey': HTMLAttributeCollection; - private constructor(); + interface HTMLAttributeCollection { readonly 'constructor': any; getNamedItem(bstrName: string): IHTMLDOMAttribute; getNamedItemNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -4758,6 +4730,7 @@ declare namespace MSHTML { removeNamedItemNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; setNamedItem(ppNode: IHTMLDOMAttribute): IHTMLDOMAttribute; setNamedItemNS(pNodeIn: IHTMLDOMAttribute2): IHTMLDOMAttribute2; + (name?: any): any; } class HTMLAudioElement { @@ -4848,7 +4821,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -5065,7 +5038,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -5074,7 +5047,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -5091,16 +5064,16 @@ declare namespace MSHTML { readonly seeking: boolean; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -5120,10 +5093,9 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLAudioElementFactory { - private 'MSHTML.HTMLAudioElementFactory_typekey': HTMLAudioElementFactory; - private constructor(); + interface HTMLAudioElementFactory { create(src?: any): IHTMLAudioElement; + (src?: any): IHTMLAudioElement; } class HTMLBaseElement { @@ -5196,7 +5168,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -5385,7 +5357,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -5394,7 +5366,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -5409,16 +5381,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -5507,7 +5479,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -5694,7 +5666,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -5703,7 +5675,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -5718,16 +5690,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; size: number; readonly sourceIndex: number; @@ -5815,7 +5787,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -6003,7 +5975,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -6012,7 +5984,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -6027,16 +5999,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -6126,7 +6098,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -6314,7 +6286,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -6323,7 +6295,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -6338,16 +6310,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -6440,7 +6412,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -6641,7 +6613,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -6650,7 +6622,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -6667,16 +6639,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -6766,7 +6738,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -6953,7 +6925,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -6962,7 +6934,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -6977,16 +6949,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -7078,7 +7050,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -7282,7 +7254,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -7291,7 +7263,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -7306,16 +7278,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -7405,7 +7377,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -7594,7 +7566,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -7603,7 +7575,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -7618,16 +7590,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -7719,7 +7691,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -7912,7 +7884,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -7921,7 +7893,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -7937,16 +7909,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -7992,10 +7964,10 @@ declare namespace MSHTML { readonly cssRules: IHTMLStyleSheetRulesCollection; cssText: string; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ deleteRule(lIndex?: number): void; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ insertRule(bstrRule: string, lIndex?: number): number; media: any; readonly parentRule: IHTMLCSSRule; @@ -8023,9 +7995,7 @@ declare namespace MSHTML { readonly type: number; } - class HTMLCSSStyleDeclaration { - private 'MSHTML.HTMLCSSStyleDeclaration_typekey': HTMLCSSStyleDeclaration; - private constructor(); + interface HTMLCSSStyleDeclaration { accelerator: string; alignContent: string; alignItems: string; @@ -8306,7 +8276,7 @@ declare namespace MSHTML { scrollbarShadowColor: any; scrollbarTrackColor: any; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; stopColor: any; stopOpacity: any; @@ -8400,11 +8370,10 @@ declare namespace MSHTML { writingMode: string; zIndex: any; zoom: any; + (index: number): string; } - class HTMLCurrentStyle { - private 'MSHTML.HTMLCurrentStyle_typekey': HTMLCurrentStyle; - private constructor(); + interface HTMLCurrentStyle { readonly accelerator: string; alignContent: string; alignItems: string; @@ -8496,7 +8465,7 @@ declare namespace MSHTML { readonly fontVariant: string; readonly fontWeight: any; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getPropertyPriority(bstrPropertyName: string): string; getPropertyValue(bstrPropertyName: string): string; @@ -8642,7 +8611,7 @@ declare namespace MSHTML { readonly scrollbarShadowColor: any; readonly scrollbarTrackColor: any; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; readonly styleFloat: string; readonly tableLayout: string; @@ -8725,6 +8694,7 @@ declare namespace MSHTML { readonly writingMode: string; readonly zIndex: any; readonly zoom: any; + (index: number): string; } class HTMLDDElement { @@ -8797,7 +8767,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -8985,7 +8955,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -8994,7 +8964,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -9009,16 +8979,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -9140,7 +9110,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -9343,7 +9313,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -9352,7 +9322,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -9367,16 +9337,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -9468,7 +9438,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -9670,7 +9640,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -9679,7 +9649,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -9694,16 +9664,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -9800,7 +9770,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -9987,7 +9957,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -9996,7 +9966,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -10011,16 +9981,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -10078,8 +10048,8 @@ declare namespace MSHTML { createRenderStyle(v: string): IHTMLRenderStyle; /** - * @param string [bstrHref=''] - * @param number [lIndex=-1] + * @param bstrHref [bstrHref=''] + * @param lIndex [lIndex=-1] */ createStyleSheet(bstrHref?: string, lIndex?: number): IHTMLStyleSheet; createTextNode(text: string): IHTMLDOMNode; @@ -10099,7 +10069,7 @@ declare namespace MSHTML { elementsFromRect(left: number, top: number, width: number, height: number): IHTMLDOMChildrenCollection; readonly embeds: IHTMLElementCollection; - /** @param boolean [showUI=false] */ + /** @param showUI [showUI=false] */ execCommand(cmdID: string, showUI?: boolean, value?: any): boolean; execCommandShowHelp(cmdID: string): boolean; expando: boolean; @@ -10257,7 +10227,7 @@ declare namespace MSHTML { onvolumechange: any; onwaiting: any; - /** @param string [url='text/html'] */ + /** @param url [url='text/html'] */ open(url?: string, name?: any, features?: any, replace?: any): any; readonly ownerDocument: any; readonly parentNode: IHTMLDOMNode; @@ -10276,14 +10246,14 @@ declare namespace MSHTML { querySelectorAll(v: string): IHTMLDOMChildrenCollection; readonly readyState: string; - /** @param boolean [fForce=false] */ + /** @param fForce [fForce=false] */ recalc(fForce?: boolean): void; readonly referrer: string; releaseCapture(): void; removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; removeEventListener(type: string, listener: any, useCapture: boolean): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceNode(replacement: IHTMLDOMNode): IHTMLDOMNode; @@ -10470,7 +10440,7 @@ declare namespace MSHTML { removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; removeEventListener(type: string, listener: any, useCapture: boolean): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceData(offset: number, Count: number, bstrstring: string): void; @@ -10484,10 +10454,9 @@ declare namespace MSHTML { readonly wholeText: string; } - class HTMLDOMXmlSerializerFactory { - private 'MSHTML.HTMLDOMXmlSerializerFactory_typekey': HTMLDOMXmlSerializerFactory; - private constructor(); + interface HTMLDOMXmlSerializerFactory { create(): IDOMXmlSerializer; + (): IDOMXmlSerializer; } class HTMLDTElement { @@ -10560,7 +10529,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -10748,7 +10717,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -10757,7 +10726,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -10772,16 +10741,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -10797,9 +10766,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLElementCollection { - private 'MSHTML.HTMLElementCollection_typekey': HTMLElementCollection; - private constructor(); + interface HTMLElementCollection { readonly 'constructor': any; ie8_item(index: number): IHTMLElement2; readonly ie8_length: number; @@ -10810,6 +10777,7 @@ declare namespace MSHTML { tags(tagName: any): any; toString(): string; urns(urn: any): any; + (name?: any, index?: any): any; } class HTMLEmbed { @@ -10882,7 +10850,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -11077,7 +11045,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -11086,7 +11054,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -11101,16 +11069,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -11201,7 +11169,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -11388,7 +11356,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -11397,7 +11365,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -11412,16 +11380,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -11509,7 +11477,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -11696,7 +11664,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -11705,7 +11673,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -11720,16 +11688,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; size: any; readonly sourceIndex: number; @@ -11746,9 +11714,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLFormElement { - private 'MSHTML.HTMLFormElement_typekey': HTMLFormElement; - private constructor(); + interface HTMLFormElement { acceptCharset: string; accessKey: string; action: string; @@ -11759,14 +11725,14 @@ declare namespace MSHTML { appendItemSeparator(): void; /** - * @param string [name=''] - * @param string [filename=''] + * @param name [name=''] + * @param filename [filename=''] */ appendNameFilePair(name?: string, filename?: string): void; /** - * @param string [name=''] - * @param string [value=''] + * @param name [name=''] + * @param value [value=''] */ appendNameValuePair(name?: string, value?: string): void; applyElement(apply: IHTMLElement, where: string): IHTMLElement; @@ -11833,7 +11799,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -12026,7 +11992,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -12035,7 +12001,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -12051,16 +12017,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -12078,6 +12044,7 @@ declare namespace MSHTML { readonly uniqueNumber: number; urns(urn: any): any; xmsAcceleratorKey: string; + (name?: any, index?: any): any; } class HTMLFrameBase { @@ -12155,7 +12122,7 @@ declare namespace MSHTML { frameSpacing: any; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -12347,7 +12314,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -12356,7 +12323,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -12372,16 +12339,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -12479,7 +12446,7 @@ declare namespace MSHTML { frameSpacing: any; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -12691,7 +12658,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -12700,7 +12667,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -12716,16 +12683,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -12819,7 +12786,7 @@ declare namespace MSHTML { frameSpacing: any; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -13016,7 +12983,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -13025,7 +12992,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -13041,16 +13008,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -13136,7 +13103,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -13325,7 +13292,7 @@ declare namespace MSHTML { readonly recordset: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -13334,7 +13301,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -13349,16 +13316,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -13444,7 +13411,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -13633,7 +13600,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -13642,7 +13609,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -13657,16 +13624,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -13754,7 +13721,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -13941,7 +13908,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -13950,7 +13917,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -13965,16 +13932,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -14072,7 +14039,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -14260,7 +14227,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -14269,7 +14236,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -14284,16 +14251,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; size: any; readonly sourceIndex: number; @@ -14381,7 +14348,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -14568,7 +14535,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -14577,7 +14544,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -14592,16 +14559,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -14699,7 +14666,7 @@ declare namespace MSHTML { frameSpacing: any; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -14912,7 +14879,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -14921,7 +14888,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -14937,16 +14904,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -14966,10 +14933,9 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLImageElementFactory { - private 'MSHTML.HTMLImageElementFactory_typekey': HTMLImageElementFactory; - private constructor(); + interface HTMLImageElementFactory { create(width?: any, height?: any): IHTMLImgElement; + (width?: any, height?: any): IHTMLImgElement; } class HTMLImg { @@ -15055,7 +15021,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -15276,7 +15242,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -15285,7 +15251,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -15300,16 +15266,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -15354,7 +15320,7 @@ declare namespace MSHTML { focus(): void; readonly form: IHTMLFormElement; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; innerHTML: string; @@ -15401,12 +15367,12 @@ declare namespace MSHTML { readonly parentTextEdit: IHTMLElement; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeFilter(pUnk: any): void; scrollIntoView(varargStart?: any): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; readonly sourceIndex: number; status: any; @@ -15504,7 +15470,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -15720,7 +15686,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -15729,7 +15695,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -15747,16 +15713,16 @@ declare namespace MSHTML { selectionStart: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; setSelectionRange(start: number, end: number): void; size: number; @@ -15767,10 +15733,10 @@ declare namespace MSHTML { status: boolean; step: string; - /** @param number [n=1] */ + /** @param n [n=1] */ stepDown(n?: number): void; - /** @param number [n=1] */ + /** @param n [n=1] */ stepUp(n?: number): void; readonly style: IHTMLStyle; swapNode(otherNode: IHTMLDOMNode): IHTMLDOMNode; @@ -15813,7 +15779,7 @@ declare namespace MSHTML { focus(): void; readonly form: IHTMLFormElement; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; innerHTML: string; @@ -15863,13 +15829,13 @@ declare namespace MSHTML { readonly parentTextEdit: IHTMLElement; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeFilter(pUnk: any): void; scrollIntoView(varargStart?: any): void; select(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; size: number; readonly sourceIndex: number; @@ -15908,7 +15874,7 @@ declare namespace MSHTML { readonly filters: IHTMLFiltersCollection; focus(): void; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; height: number; hspace: number; @@ -15963,12 +15929,12 @@ declare namespace MSHTML { readonly readyState: string; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeFilter(pUnk: any): void; scrollIntoView(varargStart?: any): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; readonly sourceIndex: number; src: string; @@ -16010,7 +15976,7 @@ declare namespace MSHTML { focus(): void; readonly form: IHTMLFormElement; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; innerHTML: string; @@ -16061,13 +16027,13 @@ declare namespace MSHTML { readOnly: boolean; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeFilter(pUnk: any): void; scrollIntoView(varargStart?: any): void; select(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; size: number; readonly sourceIndex: number; @@ -16153,7 +16119,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -16341,7 +16307,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -16350,7 +16316,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -16365,16 +16331,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -16465,7 +16431,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -16668,7 +16634,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -16677,7 +16643,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -16692,16 +16658,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -16794,7 +16760,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -16996,7 +16962,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -17005,7 +16971,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -17020,16 +16986,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -17116,7 +17082,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -17303,7 +17269,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -17312,7 +17278,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -17327,16 +17293,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -17425,7 +17391,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -17617,7 +17583,7 @@ declare namespace MSHTML { rel: string; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -17626,7 +17592,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -17642,16 +17608,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sheet: IHTMLStyleSheet; readonly sourceIndex: number; @@ -17742,7 +17708,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -17929,7 +17895,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -17938,7 +17904,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -17953,16 +17919,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -17991,7 +17957,7 @@ declare namespace MSHTML { port: string; protocol: string; - /** @param boolean [flag=false] */ + /** @param flag [flag=false] */ reload(flag?: boolean): void; replace(bstr: string): void; search: string; @@ -18069,7 +18035,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -18257,7 +18223,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -18266,7 +18232,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -18281,16 +18247,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -18383,7 +18349,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -18591,7 +18557,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -18600,7 +18566,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -18617,16 +18583,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -18736,7 +18702,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -18953,7 +18919,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -18962,7 +18928,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -18979,16 +18945,16 @@ declare namespace MSHTML { readonly seeking: boolean; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -19086,7 +19052,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -19276,7 +19242,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -19285,7 +19251,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -19301,16 +19267,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -19366,13 +19332,12 @@ declare namespace MSHTML { readonly urn: string; } - class HTMLNamespaceCollection { - private 'MSHTML.HTMLNamespaceCollection_typekey': HTMLNamespaceCollection; - private constructor(); + interface HTMLNamespaceCollection { add(bstrNamespace: string, bstrUrn: string, implementationUrl?: any): any; readonly 'constructor': any; item(index: any): any; readonly length: number; + (index: any): any; } class HTMLNavigator { @@ -19473,7 +19438,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -19661,7 +19626,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -19670,7 +19635,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -19685,16 +19650,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -19780,7 +19745,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -19967,7 +19932,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -19976,7 +19941,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -19991,16 +19956,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -20104,7 +20069,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -20316,7 +20281,7 @@ declare namespace MSHTML { recordset: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -20325,7 +20290,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -20340,16 +20305,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -20442,7 +20407,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -20629,7 +20594,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -20638,7 +20603,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -20653,16 +20618,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -20706,7 +20671,7 @@ declare namespace MSHTML { focus(): void; readonly form: IHTMLFormElement; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; indeterminate: boolean; @@ -20755,12 +20720,12 @@ declare namespace MSHTML { readonly parentTextEdit: IHTMLElement; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeFilter(pUnk: any): void; scrollIntoView(varargStart?: any): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; readonly sourceIndex: number; status: boolean; @@ -20849,7 +20814,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -21054,7 +21019,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -21063,7 +21028,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -21079,16 +21044,16 @@ declare namespace MSHTML { selected: boolean; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -21107,10 +21072,9 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLOptionElementFactory { - private 'MSHTML.HTMLOptionElementFactory_typekey': HTMLOptionElementFactory; - private constructor(); + interface HTMLOptionElementFactory { create(text?: any, value?: any, defaultSelected?: any, selected?: any): IHTMLOptionElement; + (text?: any, value?: any, defaultSelected?: any, selected?: any): IHTMLOptionElement; } class HTMLParaElement { @@ -21185,7 +21149,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -21372,7 +21336,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -21381,7 +21345,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -21396,16 +21360,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -21491,7 +21455,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -21680,7 +21644,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -21689,7 +21653,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -21704,16 +21668,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -21850,7 +21814,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -22038,7 +22002,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -22047,7 +22011,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -22062,16 +22026,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -22172,7 +22136,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -22376,7 +22340,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -22385,7 +22349,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -22400,16 +22364,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -22519,7 +22483,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -22723,7 +22687,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -22732,7 +22696,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -22749,16 +22713,16 @@ declare namespace MSHTML { select(): void; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -22779,9 +22743,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLRuleStyle { - private 'MSHTML.HTMLRuleStyle_typekey': HTMLRuleStyle; - private constructor(); + interface HTMLRuleStyle { accelerator: string; alignContent: string; alignItems: string; @@ -22881,7 +22843,7 @@ declare namespace MSHTML { fontVariant: string; fontWeight: string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getPropertyPriority(bstrPropertyName: string): string; getPropertyValue(bstrPropertyName: string): string; @@ -23021,7 +22983,7 @@ declare namespace MSHTML { posRight: number; quotes: string; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeProperty(bstrPropertyName: string): string; right: any; @@ -23037,10 +22999,10 @@ declare namespace MSHTML { scrollbarShadowColor: any; scrollbarTrackColor: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; styleFloat: string; tableLayout: string; @@ -23128,6 +23090,7 @@ declare namespace MSHTML { writingMode: string; zIndex: any; zoom: any; + (index: number): string; } class HTMLScreen { @@ -23224,7 +23187,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -23413,7 +23376,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -23422,7 +23385,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -23437,16 +23400,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -23466,9 +23429,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLSelectElement { - private 'MSHTML.HTMLSelectElement_typekey': HTMLSelectElement; - private constructor(); + interface HTMLSelectElement { accessKey: string; add(element: IHTMLElement, before?: any): void; addBehavior(bstrURL: string, pvarFactory?: any): number; @@ -23542,7 +23503,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -23753,10 +23714,10 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [index=-1] */ + /** @param index [index=-1] */ remove(index?: number): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -23765,7 +23726,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -23781,16 +23742,16 @@ declare namespace MSHTML { selectedIndex: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; size: number; readonly sourceIndex: number; @@ -23810,6 +23771,7 @@ declare namespace MSHTML { urns(urn: any): any; value: string; xmsAcceleratorKey: string; + (name?: any, index?: any): any; } class HTMLSemanticElement { @@ -23882,7 +23844,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -24069,7 +24031,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -24078,7 +24040,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -24093,16 +24055,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -24192,7 +24154,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -24395,7 +24357,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -24404,7 +24366,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -24419,16 +24381,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -24521,7 +24483,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -24723,7 +24685,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -24732,7 +24694,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -24747,16 +24709,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -24848,7 +24810,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -25050,7 +25012,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -25059,7 +25021,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -25074,16 +25036,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -25114,9 +25076,7 @@ declare namespace MSHTML { setItem(bstrKey: string, bstrValue: string): void; } - class HTMLStyle { - private 'MSHTML.HTMLStyle_typekey': HTMLStyle; - private constructor(); + interface HTMLStyle { accelerator: string; alignContent: string; alignItems: string; @@ -25216,7 +25176,7 @@ declare namespace MSHTML { fontVariant: string; fontWeight: string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getExpression(propname: string): any; getPropertyPriority(bstrPropertyName: string): string; @@ -25365,7 +25325,7 @@ declare namespace MSHTML { posWidth: number; quotes: string; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeExpression(propname: string): boolean; removeProperty(bstrPropertyName: string): string; @@ -25382,13 +25342,13 @@ declare namespace MSHTML { scrollbarShadowColor: any; scrollbarTrackColor: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; styleFloat: string; tableLayout: string; @@ -25477,6 +25437,7 @@ declare namespace MSHTML { writingMode: string; zIndex: any; zoom: any; + (index: number): string; } class HTMLStyleElement { @@ -25549,7 +25510,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -25737,7 +25698,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -25746,7 +25707,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -25761,16 +25722,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sheet: IHTMLStyleSheet; readonly sourceIndex: number; @@ -25811,19 +25772,19 @@ declare namespace MSHTML { private 'MSHTML.HTMLStyleSheet_typekey': HTMLStyleSheet; private constructor(); - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ addImport(bstrURL: string, lIndex?: number): number; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ addPageRule(bstrSelector: string, bstrStyle: string, lIndex?: number): number; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ addRule(bstrSelector: string, bstrStyle: string, lIndex?: number): number; readonly 'constructor': any; readonly cssRules: IHTMLStyleSheetRulesCollection; cssText: string; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ deleteRule(lIndex?: number): void; disabled: boolean; href: string; @@ -25835,7 +25796,7 @@ declare namespace MSHTML { readonly ie9_type: string; readonly imports: IHTMLStyleSheetsCollection; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ insertRule(bstrRule: string, lIndex?: number): number; readonly isAlternate: boolean; readonly isPrefAlternate: boolean; @@ -25867,12 +25828,11 @@ declare namespace MSHTML { readonly type: number; } - class HTMLStyleSheetPagesCollection { - private 'MSHTML.HTMLStyleSheetPagesCollection_typekey': HTMLStyleSheetPagesCollection; - private constructor(); + interface HTMLStyleSheetPagesCollection { readonly 'constructor': any; item(index: number): IHTMLStyleSheetPage; readonly length: number; + (index: number): IHTMLStyleSheetPage; } class HTMLStyleSheetRule { @@ -25890,33 +25850,30 @@ declare namespace MSHTML { readonly type: number; } - class HTMLStyleSheetRulesAppliedCollection { - private 'MSHTML.HTMLStyleSheetRulesAppliedCollection_typekey': HTMLStyleSheetRulesAppliedCollection; - private constructor(); + interface HTMLStyleSheetRulesAppliedCollection { item(index: number): IHTMLStyleSheetRule; readonly length: number; propertyAppliedBy(name: string): IHTMLStyleSheetRule; propertyAppliedTrace(name: string, index: number): IHTMLStyleSheetRule; propertyAppliedTraceLength(name: string): number; + (index: number): IHTMLStyleSheetRule; } - class HTMLStyleSheetRulesCollection { - private 'MSHTML.HTMLStyleSheetRulesCollection_typekey': HTMLStyleSheetRulesCollection; - private constructor(); + interface HTMLStyleSheetRulesCollection { readonly 'constructor': any; ie9_item(index: number): IHTMLCSSRule; readonly ie9_length: number; item(index: number): IHTMLStyleSheetRule; readonly length: number; + (index: number): IHTMLStyleSheetRule; } - class HTMLStyleSheetsCollection { - private 'MSHTML.HTMLStyleSheetsCollection_typekey': HTMLStyleSheetsCollection; - private constructor(); + interface HTMLStyleSheetsCollection { readonly 'constructor': any; ie9_item(index: number): any; item(pvarIndex: any): any; readonly length: number; + (pvarIndex: any): any; } class HTMLTable { @@ -26000,7 +25957,7 @@ declare namespace MSHTML { dataSrc: string; deleteCaption(): void; - /** @param number [index=-1] */ + /** @param index [index=-1] */ deleteRow(index?: number): void; deleteTFoot(): void; deleteTHead(): void; @@ -26018,7 +25975,7 @@ declare namespace MSHTML { frame: string; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -26046,7 +26003,7 @@ declare namespace MSHTML { ie9_appendChild(newChild: IHTMLDOMNode): IHTMLDOMNode; ie9_caption: IHTMLTableCaption; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_deleteRow(index?: number): void; ie9_getAttribute(strAttributeName: string): any; ie9_getAttributeNode(strAttributeName: string): IHTMLDOMAttribute2; @@ -26054,7 +26011,7 @@ declare namespace MSHTML { ie9_hasAttributes(): boolean; ie9_insertBefore(newChild: IHTMLDOMNode, refChild?: any): IHTMLDOMNode; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_insertRow(index?: number): any; readonly ie9_nodeName: string; ie9_removeAttribute(strAttributeName: string): void; @@ -26073,7 +26030,7 @@ declare namespace MSHTML { insertAdjacentText(where: string, text: string): void; insertBefore(newChild: IHTMLDOMNode, refChild?: any): IHTMLDOMNode; - /** @param number [index=-1] */ + /** @param index [index=-1] */ insertRow(index?: number): any; readonly isContentEditable: boolean; isDefaultNamespace(pvarNamespace: any): boolean; @@ -26093,8 +26050,8 @@ declare namespace MSHTML { mergeAttributes(mergeThis: IHTMLElement, pvarFlags?: any): void; /** - * @param number [indexFrom=-1] - * @param number [indexTo=-1] + * @param indexFrom [indexFrom=-1] + * @param indexTo [indexTo=-1] */ moveRow(indexFrom?: number, indexTo?: number): any; msMatchesSelector(v: string): boolean; @@ -26243,7 +26200,7 @@ declare namespace MSHTML { refresh(): void; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -26252,7 +26209,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -26269,16 +26226,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -26371,7 +26328,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -26558,7 +26515,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -26567,7 +26524,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -26582,16 +26539,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -26690,7 +26647,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -26882,7 +26839,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -26891,7 +26848,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -26908,16 +26865,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -27008,7 +26965,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -27197,7 +27154,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -27206,7 +27163,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -27221,16 +27178,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; span: number; @@ -27316,7 +27273,7 @@ declare namespace MSHTML { createControlRange(): any; readonly currentStyle: IHTMLCurrentStyle; - /** @param number [index=-1] */ + /** @param index [index=-1] */ deleteCell(index?: number): void; detachEvent(event: string, pdisp: any): void; dir: string; @@ -27330,7 +27287,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -27358,14 +27315,14 @@ declare namespace MSHTML { ie9_ch: string; ie9_chOff: string; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_deleteCell(index?: number): void; ie9_getAttribute(strAttributeName: string): any; ie9_getAttributeNode(strAttributeName: string): IHTMLDOMAttribute2; ie9_hasAttribute(name: string): boolean; ie9_hasAttributes(): boolean; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_insertCell(index?: number): any; readonly ie9_nodeName: string; ie9_removeAttribute(strAttributeName: string): void; @@ -27380,7 +27337,7 @@ declare namespace MSHTML { insertAdjacentText(where: string, text: string): void; insertBefore(newChild: IHTMLDOMNode, refChild?: any): IHTMLDOMNode; - /** @param number [index=-1] */ + /** @param index [index=-1] */ insertCell(index?: number): any; readonly isContentEditable: boolean; readonly isDisabled: boolean; @@ -27529,7 +27486,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -27538,7 +27495,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -27555,16 +27512,16 @@ declare namespace MSHTML { readonly sectionRowIndex: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -27644,7 +27601,7 @@ declare namespace MSHTML { createControlRange(): any; readonly currentStyle: IHTMLCurrentStyle; - /** @param number [index=-1] */ + /** @param index [index=-1] */ deleteRow(index?: number): void; detachEvent(event: string, pdisp: any): void; dir: string; @@ -27658,7 +27615,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -27685,14 +27642,14 @@ declare namespace MSHTML { ie9_ch: string; ie9_chOff: string; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_deleteRow(index?: number): void; ie9_getAttribute(strAttributeName: string): any; ie9_getAttributeNode(strAttributeName: string): IHTMLDOMAttribute2; ie9_hasAttribute(name: string): boolean; ie9_hasAttributes(): boolean; - /** @param number [index=-1] */ + /** @param index [index=-1] */ ie9_insertRow(index?: number): any; readonly ie9_nodeName: string; ie9_removeAttribute(strAttributeName: string): void; @@ -27707,7 +27664,7 @@ declare namespace MSHTML { insertAdjacentText(where: string, text: string): void; insertBefore(newChild: IHTMLDOMNode, refChild?: any): IHTMLDOMNode; - /** @param number [index=-1] */ + /** @param index [index=-1] */ insertRow(index?: number): any; readonly isContentEditable: boolean; readonly isDisabled: boolean; @@ -27719,8 +27676,8 @@ declare namespace MSHTML { mergeAttributes(mergeThis: IHTMLElement, pvarFlags?: any): void; /** - * @param number [indexFrom=-1] - * @param number [indexTo=-1] + * @param indexFrom [indexFrom=-1] + * @param indexTo [indexTo=-1] */ moveRow(indexFrom?: number, indexTo?: number): any; msMatchesSelector(v: string): boolean; @@ -27862,7 +27819,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -27871,7 +27828,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -27887,16 +27844,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -27991,7 +27948,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -28195,7 +28152,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -28204,7 +28161,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -28223,16 +28180,16 @@ declare namespace MSHTML { selectionStart: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; setSelectionRange(start: number, end: number): void; readonly sourceIndex: number; @@ -28324,7 +28281,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -28511,7 +28468,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -28520,7 +28477,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -28535,16 +28492,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -28640,7 +28597,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -28827,7 +28784,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -28836,7 +28793,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -28851,16 +28808,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -28948,7 +28905,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -29135,7 +29092,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -29144,7 +29101,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -29159,16 +29116,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -29255,7 +29212,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -29442,7 +29399,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -29451,7 +29408,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -29466,16 +29423,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -29491,12 +29448,11 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLUrnCollection { - private 'MSHTML.HTMLUrnCollection_typekey': HTMLUrnCollection; - private constructor(); + interface HTMLUrnCollection { readonly 'constructor': any; item(index: number): string; readonly length: number; + (index: number): string; } class HTMLVideoElement { @@ -29587,7 +29543,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -29806,7 +29762,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -29815,7 +29771,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -29832,16 +29788,16 @@ declare namespace MSHTML { readonly seeking: boolean; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -29864,9 +29820,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLW3CComputedStyle { - private 'MSHTML.HTMLW3CComputedStyle_typekey': HTMLW3CComputedStyle; - private constructor(); + interface HTMLW3CComputedStyle { accelerator: string; alignContent: string; alignItems: string; @@ -30145,7 +30099,7 @@ declare namespace MSHTML { scrollbarShadowColor: any; scrollbarTrackColor: any; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; stopColor: any; stopOpacity: any; @@ -30239,14 +30193,13 @@ declare namespace MSHTML { writingMode: string; zIndex: any; zoom: any; + (index: number): string; } - class HTMLWindow2 { - private 'MSHTML.HTMLWindow2_typekey': HTMLWindow2; - private constructor(); + interface HTMLWindow2 { addEventListener(type: string, listener: any, useCapture: boolean): void; - /** @param string [message=''] */ + /** @param message [message=''] */ alert(message?: string): void; readonly applicationCache: applicationCache; attachEvent(event: string, pdisp: any): boolean; @@ -30258,7 +30211,7 @@ declare namespace MSHTML { close(): void; readonly closed: boolean; - /** @param string [message=''] */ + /** @param message [message=''] */ confirm(message?: string): boolean; readonly 'constructor': any; createPopup(varArgIn?: any): any; @@ -30268,14 +30221,14 @@ declare namespace MSHTML { readonly document: IHTMLDocument2; readonly event: IHTMLEventObj; - /** @param string [language='JScript'] */ + /** @param language [language='JScript'] */ execScript(code: string, language?: string): any; readonly external: any; focus(): void; readonly frameElement: IHTMLFrameBase; readonly frames: FramesCollection; - /** @param string [bstrPseudoElt=''] */ + /** @param bstrPseudoElt [bstrPseudoElt=''] */ getComputedStyle(varArgIn: IHTMLDOMNode, bstrPseudoElt?: string): IHTMLCSSStyleDeclaration; getSelection(): IHTMLSelection; readonly history: IOmHistory; @@ -30376,10 +30329,10 @@ declare namespace MSHTML { onwaiting: any; /** - * @param string [url=''] - * @param string [name=''] - * @param string [features=''] - * @param boolean [replace=false] + * @param url [url=''] + * @param name [name=''] + * @param features [features=''] + * @param replace [replace=false] */ open(url?: string, name?: string, features?: string, replace?: boolean): IHTMLWindow2; opener: any; @@ -30393,8 +30346,8 @@ declare namespace MSHTML { print(): void; /** - * @param string [message=''] - * @param string [defstr='undefined'] + * @param message [message=''] + * @param defstr [defstr='undefined'] */ prompt(message?: string, defstr?: string): any; removeEventListener(type: string, listener: any, useCapture: boolean): void; @@ -30413,11 +30366,11 @@ declare namespace MSHTML { setInterval(expression: any, msec: number, language?: any): number; setTimeout(expression: any, msec: number, language?: any): number; - /** @param string [features=''] */ + /** @param features [features=''] */ showHelp(helpURL: string, helpArg: any, features?: string): void; showModalDialog(dialog: string, varArgIn?: any, varOptions?: any): any; - /** @param string [url=''] */ + /** @param url [url=''] */ showModelessDialog(url?: string, varArgIn?: any, options?: any): IHTMLWindow2; status: string; readonly styleMedia: IHTMLStyleMedia; @@ -30425,14 +30378,13 @@ declare namespace MSHTML { toStaticHTML(bstrHTML: string): string; toString(): string; readonly window: IHTMLWindow2; + (pvarIndex: any): any; } - class HTMLWindowProxy { - private 'MSHTML.HTMLWindowProxy_typekey': HTMLWindowProxy; - private constructor(); + interface HTMLWindowProxy { addEventListener(type: string, listener: any, useCapture: boolean): void; - /** @param string [message=''] */ + /** @param message [message=''] */ alert(message?: string): void; readonly applicationCache: applicationCache; attachEvent(event: string, pdisp: any): boolean; @@ -30444,7 +30396,7 @@ declare namespace MSHTML { close(): void; readonly closed: boolean; - /** @param string [message=''] */ + /** @param message [message=''] */ confirm(message?: string): boolean; readonly 'constructor': any; createPopup(varArgIn?: any): any; @@ -30454,14 +30406,14 @@ declare namespace MSHTML { readonly document: IHTMLDocument2; readonly event: IHTMLEventObj; - /** @param string [language='JScript'] */ + /** @param language [language='JScript'] */ execScript(code: string, language?: string): any; readonly external: any; focus(): void; readonly frameElement: IHTMLFrameBase; readonly frames: FramesCollection; - /** @param string [bstrPseudoElt=''] */ + /** @param bstrPseudoElt [bstrPseudoElt=''] */ getComputedStyle(varArgIn: IHTMLDOMNode, bstrPseudoElt?: string): IHTMLCSSStyleDeclaration; getSelection(): IHTMLSelection; readonly history: IOmHistory; @@ -30562,10 +30514,10 @@ declare namespace MSHTML { onwaiting: any; /** - * @param string [url=''] - * @param string [name=''] - * @param string [features=''] - * @param boolean [replace=false] + * @param url [url=''] + * @param name [name=''] + * @param features [features=''] + * @param replace [replace=false] */ open(url?: string, name?: string, features?: string, replace?: boolean): IHTMLWindow2; opener: any; @@ -30579,8 +30531,8 @@ declare namespace MSHTML { print(): void; /** - * @param string [message=''] - * @param string [defstr='undefined'] + * @param message [message=''] + * @param defstr [defstr='undefined'] */ prompt(message?: string, defstr?: string): any; removeEventListener(type: string, listener: any, useCapture: boolean): void; @@ -30599,11 +30551,11 @@ declare namespace MSHTML { setInterval(expression: any, msec: number, language?: any): number; setTimeout(expression: any, msec: number, language?: any): number; - /** @param string [features=''] */ + /** @param features [features=''] */ showHelp(helpURL: string, helpArg: any, features?: string): void; showModalDialog(dialog: string, varArgIn?: any, varOptions?: any): any; - /** @param string [url=''] */ + /** @param url [url=''] */ showModelessDialog(url?: string, varArgIn?: any, options?: any): IHTMLWindow2; status: string; readonly styleMedia: IHTMLStyleMedia; @@ -30611,6 +30563,7 @@ declare namespace MSHTML { toStaticHTML(bstrHTML: string): string; toString(): string; readonly window: IHTMLWindow2; + (pvarIndex: any): any; } class HTMLWndOptionElement { @@ -30689,7 +30642,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -30893,7 +30846,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -30902,7 +30855,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -30918,16 +30871,16 @@ declare namespace MSHTML { selected: boolean; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -30946,9 +30899,7 @@ declare namespace MSHTML { xmsAcceleratorKey: string; } - class HTMLWndSelectElement { - private 'MSHTML.HTMLWndSelectElement_typekey': HTMLWndSelectElement; - private constructor(); + interface HTMLWndSelectElement { accessKey: string; add(element: IHTMLElement, before?: any): void; addBehavior(bstrURL: string, pvarFactory?: any): number; @@ -31022,7 +30973,7 @@ declare namespace MSHTML { readonly form: IHTMLFormElement; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -31230,10 +31181,10 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [index=-1] */ + /** @param index [index=-1] */ remove(index?: number): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -31242,7 +31193,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -31258,16 +31209,16 @@ declare namespace MSHTML { selectedIndex: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; size: number; readonly sourceIndex: number; @@ -31287,6 +31238,7 @@ declare namespace MSHTML { urns(urn: any): any; value: string; xmsAcceleratorKey: string; + (name?: any, index?: any): any; } class HTMLXMLHttpRequest { @@ -31313,10 +31265,9 @@ declare namespace MSHTML { timeout: number; } - class HTMLXMLHttpRequestFactory { - private 'MSHTML.HTMLXMLHttpRequestFactory_typekey': HTMLXMLHttpRequestFactory; - private constructor(); + interface HTMLXMLHttpRequestFactory { create(): IHTMLXMLHttpRequest; + (): IHTMLXMLHttpRequest; } class ICanvasGradient { @@ -31485,16 +31436,16 @@ declare namespace MSHTML { removeEventListener(type: string, listener: any, useCapture: boolean): void; } - class IHTMLAreasCollection { - private 'MSHTML.IHTMLAreasCollection_typekey': IHTMLAreasCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLAreasCollection { add(element: IHTMLElement, before?: any): void; item(name?: any, index?: any): any; length: number; - /** @param number [index=-1] */ + /** @param index [index=-1] */ remove(index?: number): void; tags(tagName: any): any; + (name?: any, index?: any): any; } class IHTMLAttributeCollection3 { @@ -31512,11 +31463,11 @@ declare namespace MSHTML { private constructor(); } - class IHTMLBookmarkCollection { - private 'MSHTML.IHTMLBookmarkCollection_typekey': IHTMLBookmarkCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLBookmarkCollection { item(index: number): any; readonly length: number; + (index: number): any; } class IHTMLCanvasElement { @@ -31537,9 +31488,8 @@ declare namespace MSHTML { readonly type: number; } - class IHTMLCSSStyleDeclaration { - private 'MSHTML.IHTMLCSSStyleDeclaration_typekey': IHTMLCSSStyleDeclaration; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLCSSStyleDeclaration { accelerator: string; alignmentBaseline: string; background: string; @@ -31693,7 +31643,7 @@ declare namespace MSHTML { scrollbarShadowColor: any; scrollbarTrackColor: any; - /** @param any [pvarPropertyPriority=''] */ + /** @param pvarPropertyPriority [pvarPropertyPriority=''] */ setProperty(bstrPropertyName: string, pvarPropertyValue: any, pvarPropertyPriority?: any): void; stopColor: any; stopOpacity: any; @@ -31733,6 +31683,7 @@ declare namespace MSHTML { writingMode: string; zIndex: any; zoom: any; + (index: number): string; } class IHTMLCurrentStyle { @@ -31779,7 +31730,7 @@ declare namespace MSHTML { readonly fontVariant: string; readonly fontWeight: any; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; readonly height: any; readonly imeMode: string; @@ -31866,8 +31817,8 @@ declare namespace MSHTML { createElement(eTag: string): IHTMLElement; /** - * @param string [bstrHref=''] - * @param number [lIndex=-1] + * @param bstrHref [bstrHref=''] + * @param lIndex [lIndex=-1] */ createStyleSheet(bstrHref?: string, lIndex?: number): IHTMLStyleSheet; defaultCharset: string; @@ -31876,7 +31827,7 @@ declare namespace MSHTML { elementFromPoint(x: number, y: number): IHTMLElement; readonly embeds: IHTMLElementCollection; - /** @param boolean [showUI=false] */ + /** @param showUI [showUI=false] */ execCommand(cmdID: string, showUI?: boolean, value?: any): boolean; execCommandShowHelp(cmdID: string): boolean; expando: boolean; @@ -31914,7 +31865,7 @@ declare namespace MSHTML { onrowexit: any; onselectstart: any; - /** @param string [url='text/html'] */ + /** @param url [url='text/html'] */ open(url?: string, name?: any, features?: any, replace?: any): any; readonly parentWindow: IHTMLWindow2; readonly plugins: IHTMLElementCollection; @@ -32014,11 +31965,11 @@ declare namespace MSHTML { readonly version: string; } - class IHTMLDocumentCompatibleInfoCollection { - private 'MSHTML.IHTMLDocumentCompatibleInfoCollection_typekey': IHTMLDocumentCompatibleInfoCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLDocumentCompatibleInfoCollection { item(index: number): IHTMLDocumentCompatibleInfo; readonly length: number; + (index: number): IHTMLDocumentCompatibleInfo; } class IHTMLDOMAttribute { @@ -32052,11 +32003,11 @@ declare namespace MSHTML { value: string; } - class IHTMLDOMChildrenCollection { - private 'MSHTML.IHTMLDOMChildrenCollection_typekey': IHTMLDOMChildrenCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLDOMChildrenCollection { item(index: number): any; readonly length: number; + (index: number): any; } class IHTMLDOMImplementation { @@ -32084,7 +32035,7 @@ declare namespace MSHTML { readonly previousSibling: IHTMLDOMNode; removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceNode(replacement: IHTMLDOMNode): IHTMLDOMNode; @@ -32153,7 +32104,7 @@ declare namespace MSHTML { readonly document: any; readonly filters: IHTMLFiltersCollection; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; innerHTML: string; @@ -32196,11 +32147,11 @@ declare namespace MSHTML { readonly parentTextEdit: IHTMLElement; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; scrollIntoView(varargStart?: any): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; readonly sourceIndex: number; readonly style: IHTMLStyle; @@ -32276,22 +32227,22 @@ declare namespace MSHTML { scrollTop: number; readonly scrollWidth: number; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; tabIndex: number; tagUrn: string; } - class IHTMLElementCollection { - private 'MSHTML.IHTMLElementCollection_typekey': IHTMLElementCollection; - private constructor(); - item(name?: string | number, index?: number): any; + // tslint:disable-next-line:interface-name + interface IHTMLElementCollection { + item(name?: any, index?: any): any; length: number; tags(tagName: any): any; toString(): string; + (name?: any, index?: any): any; } class IHTMLEventObj { @@ -32321,16 +32272,15 @@ declare namespace MSHTML { readonly y: number; } - class IHTMLFiltersCollection { - private 'MSHTML.IHTMLFiltersCollection_typekey': IHTMLFiltersCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLFiltersCollection { item(pvarIndex: any): any; readonly length: number; + (pvarIndex: any): any; } - class IHTMLFormElement { - private 'MSHTML.IHTMLFormElement_typekey': IHTMLFormElement; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLFormElement { action: string; dir: string; readonly elements: any; @@ -32345,6 +32295,7 @@ declare namespace MSHTML { submit(): void; tags(tagName: any): any; target: string; + (name?: any, index?: any): any; } class IHTMLFrameBase { @@ -32407,7 +32358,7 @@ declare namespace MSHTML { port: string; protocol: string; - /** @param boolean [flag=false] */ + /** @param flag [flag=false] */ reload(flag?: boolean): void; replace(bstr: string): void; search: string; @@ -32480,7 +32431,7 @@ declare namespace MSHTML { private constructor(); readonly length: number; - /** @param boolean [reload=false] */ + /** @param reload [reload=false] */ refresh(reload?: boolean): void; } @@ -32493,11 +32444,11 @@ declare namespace MSHTML { top: number; } - class IHTMLRectCollection { - private 'MSHTML.IHTMLRectCollection_typekey': IHTMLRectCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLRectCollection { item(pvarIndex: any): any; readonly length: number; + (pvarIndex: any): any; } class IHTMLRenderStyle { @@ -32559,7 +32510,7 @@ declare namespace MSHTML { fontVariant: string; fontWeight: string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; height: any; left: any; @@ -32584,10 +32535,10 @@ declare namespace MSHTML { pageBreakBefore: string; readonly position: string; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; styleFloat: string; textAlign: string; @@ -32708,7 +32659,7 @@ declare namespace MSHTML { fontVariant: string; fontWeight: string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; height: any; left: any; @@ -32741,10 +32692,10 @@ declare namespace MSHTML { posTop: number; posWidth: number; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; styleFloat: string; textAlign: string; @@ -32777,10 +32728,10 @@ declare namespace MSHTML { private 'MSHTML.IHTMLStyleSheet_typekey': IHTMLStyleSheet; private constructor(); - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ addImport(bstrURL: string, lIndex?: number): number; - /** @param number [lIndex=-1] */ + /** @param lIndex [lIndex=-1] */ addRule(bstrSelector: string, bstrStyle: string, lIndex?: number): number; cssText: string; disabled: boolean; @@ -32805,11 +32756,11 @@ declare namespace MSHTML { readonly selector: string; } - class IHTMLStyleSheetPagesCollection { - private 'MSHTML.IHTMLStyleSheetPagesCollection_typekey': IHTMLStyleSheetPagesCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLStyleSheetPagesCollection { item(index: number): IHTMLStyleSheetPage; readonly length: number; + (index: number): IHTMLStyleSheetPage; } class IHTMLStyleSheetRule { @@ -32820,28 +32771,28 @@ declare namespace MSHTML { readonly style: IHTMLRuleStyle; } - class IHTMLStyleSheetRulesAppliedCollection { - private 'MSHTML.IHTMLStyleSheetRulesAppliedCollection_typekey': IHTMLStyleSheetRulesAppliedCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLStyleSheetRulesAppliedCollection { item(index: number): IHTMLStyleSheetRule; readonly length: number; propertyAppliedBy(name: string): IHTMLStyleSheetRule; propertyAppliedTrace(name: string, index: number): IHTMLStyleSheetRule; propertyAppliedTraceLength(name: string): number; + (index: number): IHTMLStyleSheetRule; } - class IHTMLStyleSheetRulesCollection { - private 'MSHTML.IHTMLStyleSheetRulesCollection_typekey': IHTMLStyleSheetRulesCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLStyleSheetRulesCollection { item(index: number): IHTMLStyleSheetRule; readonly length: number; + (index: number): IHTMLStyleSheetRule; } - class IHTMLStyleSheetsCollection { - private 'MSHTML.IHTMLStyleSheetsCollection_typekey': IHTMLStyleSheetsCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface IHTMLStyleSheetsCollection { item(pvarIndex: any): any; readonly length: number; + (pvarIndex: any): any; } class IHTMLTableCaption { @@ -32857,10 +32808,10 @@ declare namespace MSHTML { align: string; bgColor: any; - /** @param number [index=-1] */ + /** @param index [index=-1] */ deleteRow(index?: number): void; - /** @param number [index=-1] */ + /** @param index [index=-1] */ insertRow(index?: number): any; readonly rows: IHTMLElementCollection; vAlign: string; @@ -32878,19 +32829,19 @@ declare namespace MSHTML { private 'MSHTML.IHTMLTxtRange_typekey': IHTMLTxtRange; private constructor(); - /** @param boolean [start=true] */ + /** @param start [start=true] */ collapse(start?: boolean): void; compareEndPoints(how: string, sourceRange: IHTMLTxtRange): number; duplicate(): IHTMLTxtRange; - /** @param boolean [showUI=false] */ + /** @param showUI [showUI=false] */ execCommand(cmdID: string, showUI?: boolean, value?: any): boolean; execCommandShowHelp(cmdID: string): boolean; expand(Unit: string): boolean; /** - * @param number [Count=1073741823] - * @param number [flags=0] + * @param Count [Count=1073741823] + * @param flags [flags=0] */ findText(String: string, Count?: number, flags?: number): boolean; getBookmark(): string; @@ -32898,13 +32849,13 @@ declare namespace MSHTML { inRange(range: IHTMLTxtRange): boolean; isEqual(range: IHTMLTxtRange): boolean; - /** @param number [Count=1] */ + /** @param Count [Count=1] */ move(Unit: string, Count?: number): number; - /** @param number [Count=1] */ + /** @param Count [Count=1] */ moveEnd(Unit: string, Count?: number): number; - /** @param number [Count=1] */ + /** @param Count [Count=1] */ moveStart(Unit: string, Count?: number): number; moveToBookmark(Bookmark: string): boolean; moveToElementText(element: IHTMLElement): void; @@ -32918,18 +32869,16 @@ declare namespace MSHTML { queryCommandText(cmdID: string): string; queryCommandValue(cmdID: string): any; - /** @param boolean [fStart=true] */ + /** @param fStart [fStart=true] */ scrollIntoView(fStart?: boolean): void; select(): void; setEndPoint(how: string, sourceRange: IHTMLTxtRange): void; text: string; } - class IHTMLWindow2 { - private 'MSHTML.IHTMLWindow2_typekey': IHTMLWindow2; - private constructor(); - - /** @param string [message=''] */ + // tslint:disable-next-line:interface-name + interface IHTMLWindow2 { + /** @param message [message=''] */ alert(message?: string): void; blur(): void; clearInterval(timerID: number): void; @@ -32938,13 +32887,13 @@ declare namespace MSHTML { close(): void; readonly closed: boolean; - /** @param string [message=''] */ + /** @param message [message=''] */ confirm(message?: string): boolean; defaultStatus: string; readonly document: IHTMLDocument2; readonly event: IHTMLEventObj; - /** @param string [language='JScript'] */ + /** @param language [language='JScript'] */ execScript(code: string, language?: string): any; readonly external: any; focus(): void; @@ -32971,10 +32920,10 @@ declare namespace MSHTML { onunload: any; /** - * @param string [url=''] - * @param string [name=''] - * @param string [features=''] - * @param boolean [replace=false] + * @param url [url=''] + * @param name [name=''] + * @param features [features=''] + * @param replace [replace=false] */ open(url?: string, name?: string, features?: string, replace?: boolean): IHTMLWindow2; opener: any; @@ -32982,8 +32931,8 @@ declare namespace MSHTML { readonly parent: IHTMLWindow2; /** - * @param string [message=''] - * @param string [defstr='undefined'] + * @param message [message=''] + * @param defstr [defstr='undefined'] */ prompt(message?: string, defstr?: string): any; resizeBy(x: number, y: number): void; @@ -32996,13 +32945,14 @@ declare namespace MSHTML { setInterval(expression: string, msec: number, language?: any): number; setTimeout(expression: string, msec: number, language?: any): number; - /** @param string [features=''] */ + /** @param features [features=''] */ showHelp(helpURL: string, helpArg: any, features?: string): void; showModalDialog(dialog: string, varArgIn?: any, varOptions?: any): any; status: string; readonly top: IHTMLWindow2; toString(): string; readonly window: IHTMLWindow2; + (pvarIndex: any): any; } class IHTMLXDomainRequest { @@ -33398,8 +33348,8 @@ declare namespace MSHTML { createRenderStyle(v: string): IHTMLRenderStyle; /** - * @param string [bstrHref=''] - * @param number [lIndex=-1] + * @param bstrHref [bstrHref=''] + * @param lIndex [lIndex=-1] */ createStyleSheet(bstrHref?: string, lIndex?: number): IHTMLStyleSheet; createTextNode(text: string): IHTMLDOMNode; @@ -33419,7 +33369,7 @@ declare namespace MSHTML { elementsFromRect(left: number, top: number, width: number, height: number): IHTMLDOMChildrenCollection; readonly embeds: IHTMLElementCollection; - /** @param boolean [showUI=false] */ + /** @param showUI [showUI=false] */ execCommand(cmdID: string, showUI?: boolean, value?: any): boolean; execCommandShowHelp(cmdID: string): boolean; expando: boolean; @@ -33577,7 +33527,7 @@ declare namespace MSHTML { onvolumechange: any; onwaiting: any; - /** @param string [url='text/html'] */ + /** @param url [url='text/html'] */ open(url?: string, name?: any, features?: any, replace?: any): any; readonly ownerDocument: any; readonly parentNode: IHTMLDOMNode; @@ -33596,14 +33546,14 @@ declare namespace MSHTML { querySelectorAll(v: string): IHTMLDOMChildrenCollection; readonly readyState: string; - /** @param boolean [fForce=false] */ + /** @param fForce [fForce=false] */ recalc(fForce?: boolean): void; readonly referrer: string; releaseCapture(): void; removeChild(oldChild: IHTMLDOMNode): IHTMLDOMNode; removeEventListener(type: string, listener: any, useCapture: boolean): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; replaceNode(replacement: IHTMLDOMNode): IHTMLDOMNode; @@ -33629,9 +33579,7 @@ declare namespace MSHTML { xmlVersion: string; } - class OldHTMLFormElement { - private 'MSHTML.OldHTMLFormElement_typekey': OldHTMLFormElement; - private constructor(); + interface OldHTMLFormElement { acceptCharset: string; accessKey: string; action: string; @@ -33642,14 +33590,14 @@ declare namespace MSHTML { appendItemSeparator(): void; /** - * @param string [name=''] - * @param string [filename=''] + * @param name [name=''] + * @param filename [filename=''] */ appendNameFilePair(name?: string, filename?: string): void; /** - * @param string [name=''] - * @param string [value=''] + * @param name [name=''] + * @param value [value=''] */ appendNameValuePair(name?: string, value?: string): void; applyElement(apply: IHTMLElement, where: string): IHTMLElement; @@ -33716,7 +33664,7 @@ declare namespace MSHTML { focus(): void; getAdjacentText(where: string): string; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; getAttributeNode(bstrName: string): IHTMLDOMAttribute; getAttributeNodeNS(pvarNS: any, bstrName: string): IHTMLDOMAttribute2; @@ -33909,7 +33857,7 @@ declare namespace MSHTML { readonly recordNumber: any; releaseCapture(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; removeAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; removeAttributeNS(pvarNS: any, strAttributeName: string): void; @@ -33918,7 +33866,7 @@ declare namespace MSHTML { removeExpression(propname: string): boolean; removeFilter(pUnk: any): void; - /** @param boolean [fDeep=false] */ + /** @param fDeep [fDeep=false] */ removeNode(fDeep?: boolean): IHTMLDOMNode; replaceAdjacentText(where: string, newText: string): string; replaceChild(newChild: IHTMLDOMNode, oldChild: IHTMLDOMNode): IHTMLDOMNode; @@ -33934,16 +33882,16 @@ declare namespace MSHTML { readonly scrollWidth: number; setActive(): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; setAttributeNode(pattr: IHTMLDOMAttribute): IHTMLDOMAttribute; setAttributeNodeNS(pattr: IHTMLDOMAttribute2): IHTMLDOMAttribute2; setAttributeNS(pvarNS: any, strAttributeName: string, pvarAttributeValue: any): void; - /** @param boolean [containerCapture=true] */ + /** @param containerCapture [containerCapture=true] */ setCapture(containerCapture?: boolean): void; - /** @param string [language=''] */ + /** @param language [language=''] */ setExpression(propname: string, expression: string, language?: string): void; readonly sourceIndex: number; spellcheck: any; @@ -33961,6 +33909,7 @@ declare namespace MSHTML { readonly uniqueNumber: number; urns(urn: any): any; xmsAcceleratorKey: string; + (name?: any, index?: any): any; } class RangeException { @@ -33981,9 +33930,7 @@ declare namespace MSHTML { propertyIsInline(name: string): boolean; } - class RulesAppliedCollection { - private 'MSHTML.RulesAppliedCollection_typekey': RulesAppliedCollection; - private constructor(); + interface RulesAppliedCollection { readonly element: IHTMLElement; item(index: number): IRulesApplied; readonly length: number; @@ -33992,6 +33939,7 @@ declare namespace MSHTML { propertyInheritedFrom(name: string): IRulesApplied; propertyInheritedTrace(name: string, index: number): IRulesApplied; propertyInheritedTraceLength(name: string): number; + (index: number): IRulesApplied; } class Scriptlet { @@ -34005,12 +33953,11 @@ declare namespace MSHTML { url: string; } - class StaticNodeList { - private 'MSHTML.StaticNodeList_typekey': StaticNodeList; - private constructor(); + interface StaticNodeList { readonly 'constructor': any; item(index: number): any; readonly length: number; + (index: number): any; } class SVGAElement { @@ -34230,7 +34177,7 @@ declare namespace MSHTML { readonly filters: IHTMLFiltersCollection; focusable: SVGAnimatedEnumeration; - /** @param number [lFlags=0] */ + /** @param lFlags [lFlags=0] */ getAttribute(strAttributeName: string, lFlags?: number): any; id: string; innerHTML: string; @@ -34274,11 +34221,11 @@ declare namespace MSHTML { readonly parentTextEdit: IHTMLElement; readonly recordNumber: any; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ removeAttribute(strAttributeName: string, lFlags?: number): boolean; scrollIntoView(varargStart?: any): void; - /** @param number [lFlags=1] */ + /** @param lFlags [lFlags=1] */ setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void; readonly sourceIndex: number; readonly style: IHTMLStyle; @@ -35487,10 +35434,9 @@ declare namespace MSHTML { readonly 'constructor': any; } - class XDomainRequestFactory { - private 'MSHTML.XDomainRequestFactory_typekey': XDomainRequestFactory; - private constructor(); + interface XDomainRequestFactory { create(): IHTMLXDomainRequest; + (): IHTMLXDomainRequest; } class XMLHttpRequestEventTarget { @@ -35510,982 +35456,120 @@ declare namespace MSHTML { interface ActiveXObject { on(obj: MSHTML.HTMLNamespace, event: 'onreadystatechange', argNames: ['pEvtObj'], handler: (this: MSHTML.HTMLNamespace, parameter: {readonly pEvtObj: MSHTML.IHTMLEventObj}) => void): void; - on( - obj: MSHTML.HTMLWindow2, event: 'onerror', argNames: ['description', 'url', 'line'], handler: ( - this: MSHTML.HTMLWindow2, parameter: {readonly description: string, readonly url: string, readonly line: number}) => void): void; - on( - obj: MSHTML.HTMLWindowProxy, event: 'onerror', argNames: ['description', 'url', 'line'], handler: ( - this: MSHTML.HTMLWindowProxy, parameter: {readonly description: string, readonly url: string, readonly line: number}) => void): void; + on(obj: MSHTML.HTMLWindow2, event: 'onerror', argNames: ['description', 'url', 'line'], handler: (this: MSHTML.HTMLWindow2, parameter: {readonly description: string, readonly url: string, readonly line: number}) => void): void; + on(obj: MSHTML.HTMLWindowProxy, event: 'onerror', argNames: ['description', 'url', 'line'], handler: (this: MSHTML.HTMLWindowProxy, parameter: {readonly description: string, readonly url: string, readonly line: number}) => void): void; on(obj: MSHTML.Scriptlet, event: 'onscriptletevent', argNames: ['name', 'eventData'], handler: (this: MSHTML.Scriptlet, parameter: {readonly name: string, readonly eventData: any}) => void): void; - on( - obj: MSHTML.HTMLAnchorElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLAnchorElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLAreaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLAreaElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLAudioElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLAudioElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBaseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLBaseElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBaseFontElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLBaseFontElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBGsound, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLBGsound, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBlockElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLBlockElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBody, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLBody, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLBRElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLBRElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLButtonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLButtonElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLCanvasElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLCanvasElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLCommentElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLCommentElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDDElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLDDElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDivElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLDivElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDivPosition, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLDivPosition, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLDListElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDocument, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforeupdate' | - 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | - 'ondragstart' | 'onerrorupdate' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onpropertychange' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | - 'onselectionchange' | 'onselectstart' | 'onstop', - handler: (this: MSHTML.HTMLDocument, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLDTElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLDTElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLEmbed, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLEmbed, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFieldSetElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLFieldSetElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFontElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLFontElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFormElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onreset' | 'onresize' | - 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart' | 'onsubmit', - handler: (this: MSHTML.HTMLFormElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFrameBase, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLFrameBase, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFrameElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLFrameElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLFrameSetSite, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLFrameSetSite, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLGenericElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLGenericElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLHeadElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLHeadElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLHeaderElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLHeaderElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLHRElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLHRElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLHtmlElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLHtmlElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLIFrame, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLIFrame, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLImg, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLImg, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLInputButtonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLInputButtonElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLInputElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLInputElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLInputFileElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLInputFileElement, parameter: {}) => void): void; - on( - obj: MSHTML.htmlInputImage, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.htmlInputImage, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLInputTextElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLInputTextElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLIsIndexElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLIsIndexElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLLabelElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLLabelElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLLegendElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLLegendElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLLIElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLLIElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLLinkElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLLinkElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLListElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLMapElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLMapElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLMarqueeElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'onbounce' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | - 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | - 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfinish' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | - 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart' | - 'onstart', - handler: (this: MSHTML.HTMLMarqueeElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLMediaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLMediaElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLMetaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLMetaElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLNextIdElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLNextIdElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLNoShowElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLNoShowElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLObjectElement, event: 'onafterupdate' | 'onbeforeupdate' | 'oncellchange' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | - 'onerror' | 'onerrorupdate' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted', - handler: (this: MSHTML.HTMLObjectElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLOListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLOListElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLOptionButtonElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | - 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | - 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | - 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | - 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | - 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | - 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | - 'onselectstart', - handler: (this: MSHTML.HTMLOptionButtonElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLOptionElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLOptionElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLParaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLParaElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLParamElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLParamElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLPhraseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLPhraseElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLProgressElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLProgressElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLRichtextElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLRichtextElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLScriptElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | - 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | - 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLScriptElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLSelectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLSelectElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLSemanticElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLSemanticElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLSourceElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLSourceElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLSpanElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLSpanElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLSpanFlow, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: ( - this: MSHTML.HTMLSpanFlow, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLStyleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLStyleElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTable, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTable, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTableCaption, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLTableCaption, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTableCell, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: ( - this: MSHTML.HTMLTableCell, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTableCol, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTableCol, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTableRow, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTableRow, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTableSection, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTableSection, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTextAreaElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | - 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | - 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', - handler: (this: MSHTML.HTMLTextAreaElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTextElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTextElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLTitleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLTitleElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLUListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLUListElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLUnknownElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLUnknownElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLVideoElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLVideoElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLWindow2, event: 'onafterprint' | 'onbeforeprint' | 'onbeforeunload' | 'onblur' | 'onfocus' | 'onhelp' | 'onload' | 'onresize' | 'onscroll' | - 'onunload', - handler: (this: MSHTML.HTMLWindow2, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLWindowProxy, event: 'onafterprint' | 'onbeforeprint' | 'onbeforeunload' | 'onblur' | 'onfocus' | 'onhelp' | 'onload' | 'onresize' | 'onscroll' | - 'onunload', - handler: (this: MSHTML.HTMLWindowProxy, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLWndOptionElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLWndOptionElement, parameter: {}) => void): void; - on( - obj: MSHTML.HTMLWndSelectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | - 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.HTMLWndSelectElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLAnchorElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLAnchorElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLAreaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLAreaElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLAudioElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLAudioElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBaseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLBaseElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBaseFontElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLBaseFontElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBGsound, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLBGsound, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBlockElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLBlockElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBody, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLBody, parameter: {}) => void): void; + on(obj: MSHTML.HTMLBRElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLBRElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLButtonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLButtonElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLCanvasElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLCanvasElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLCommentElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLCommentElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDDElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLDDElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDivElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLDivElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDivPosition, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLDivPosition, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLDListElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDocument, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforeupdate' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondragstart' | 'onerrorupdate' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onpropertychange' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onselectionchange' | 'onselectstart' | 'onstop', handler: (this: MSHTML.HTMLDocument, parameter: {}) => void): void; + on(obj: MSHTML.HTMLDTElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLDTElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLEmbed, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLEmbed, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFieldSetElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLFieldSetElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFontElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLFontElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFormElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onreset' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart' | 'onsubmit', handler: (this: MSHTML.HTMLFormElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFrameBase, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLFrameBase, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFrameElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLFrameElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLFrameSetSite, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLFrameSetSite, parameter: {}) => void): void; + on(obj: MSHTML.HTMLGenericElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLGenericElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLHeadElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLHeadElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLHeaderElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLHeaderElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLHRElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLHRElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLHtmlElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLHtmlElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLIFrame, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLIFrame, parameter: {}) => void): void; + on(obj: MSHTML.HTMLImg, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLImg, parameter: {}) => void): void; + on(obj: MSHTML.HTMLInputButtonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLInputButtonElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLInputElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLInputElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLInputFileElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLInputFileElement, parameter: {}) => void): void; + on(obj: MSHTML.htmlInputImage, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.htmlInputImage, parameter: {}) => void): void; + on(obj: MSHTML.HTMLInputTextElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLInputTextElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLIsIndexElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLIsIndexElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLLabelElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLLabelElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLLegendElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLLegendElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLLIElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLLIElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLLinkElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLLinkElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLListElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLMapElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLMapElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLMarqueeElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'onbounce' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfinish' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart' | 'onstart', handler: (this: MSHTML.HTMLMarqueeElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLMediaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLMediaElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLMetaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLMetaElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLNextIdElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLNextIdElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLNoShowElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLNoShowElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLObjectElement, event: 'onafterupdate' | 'onbeforeupdate' | 'oncellchange' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'onerror' | 'onerrorupdate' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted', handler: (this: MSHTML.HTMLObjectElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLOListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLOListElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLOptionButtonElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLOptionButtonElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLOptionElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLOptionElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLParaElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLParaElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLParamElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLParamElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLPhraseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLPhraseElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLProgressElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLProgressElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLRichtextElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLRichtextElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLScriptElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLScriptElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLSelectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLSelectElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLSemanticElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLSemanticElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLSourceElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLSourceElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLSpanElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLSpanElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLSpanFlow, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLSpanFlow, parameter: {}) => void): void; + on(obj: MSHTML.HTMLStyleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLStyleElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTable, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTable, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTableCaption, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLTableCaption, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTableCell, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLTableCell, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTableCol, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTableCol, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTableRow, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTableRow, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTableSection, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTableSection, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTextAreaElement, event: 'onabort' | 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerror' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onload' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselect' | 'onselectstart', handler: (this: MSHTML.HTMLTextAreaElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTextElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTextElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLTitleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLTitleElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLUListElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLUListElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLUnknownElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLUnknownElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLVideoElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLVideoElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLWindow2, event: 'onafterprint' | 'onbeforeprint' | 'onbeforeunload' | 'onblur' | 'onfocus' | 'onhelp' | 'onload' | 'onresize' | 'onscroll' | 'onunload', handler: (this: MSHTML.HTMLWindow2, parameter: {}) => void): void; + on(obj: MSHTML.HTMLWindowProxy, event: 'onafterprint' | 'onbeforeprint' | 'onbeforeunload' | 'onblur' | 'onfocus' | 'onhelp' | 'onload' | 'onresize' | 'onscroll' | 'onunload', handler: (this: MSHTML.HTMLWindowProxy, parameter: {}) => void): void; + on(obj: MSHTML.HTMLWndOptionElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLWndOptionElement, parameter: {}) => void): void; + on(obj: MSHTML.HTMLWndSelectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.HTMLWndSelectElement, parameter: {}) => void): void; on(obj: MSHTML.HTMLXMLHttpRequest, event: 'onreadystatechange' | 'ontimeout', handler: (this: MSHTML.HTMLXMLHttpRequest, parameter: {}) => void): void; - on( - obj: MSHTML.OldHTMLDocument, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforeupdate' | - 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | - 'ondragstart' | 'onerrorupdate' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseout' | - 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onpropertychange' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | - 'onselectionchange' | 'onselectstart' | 'onstop', - handler: (this: MSHTML.OldHTMLDocument, parameter: {}) => void): void; - on( - obj: MSHTML.OldHTMLFormElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onreset' | 'onresize' | - 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart' | 'onsubmit', - handler: (this: MSHTML.OldHTMLFormElement, parameter: {}) => void): void; - on( - obj: MSHTML.Scriptlet, event: 'onclick' | 'ondblclick' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseup' | - 'onreadystatechange', - handler: (this: MSHTML.Scriptlet, parameter: {}) => void): void; - on( - obj: MSHTML.SVGAElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGAElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGCircleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGCircleElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGClipPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGClipPathElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGDefsElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGDefsElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGEllipseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGEllipseElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | - 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | - 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | - 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | - 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | - 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | - 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGGElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGGradientElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGGradientElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGImageElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGImageElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGLineElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGLineElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGMarkerElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGMarkerElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGMaskElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGMaskElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGPathElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGPatternElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGPatternElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGPolygonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGPolygonElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGPolylineElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGPolylineElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGRectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGRectElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGScriptElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGScriptElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGStopElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGStopElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGSVGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGSVGElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGSymbolElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGSymbolElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGTextElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGTextElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGTextPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGTextPathElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGTSpanElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGTSpanElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGUseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGUseElement, parameter: {}) => void): void; - on( - obj: MSHTML.SVGViewElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | - 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | - 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | - 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | - 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | - 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | - 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', - handler: (this: MSHTML.SVGViewElement, parameter: {}) => void): void; + on(obj: MSHTML.OldHTMLDocument, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforeupdate' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondragstart' | 'onerrorupdate' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onpropertychange' | 'onreadystatechange' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onselectionchange' | 'onselectstart' | 'onstop', handler: (this: MSHTML.OldHTMLDocument, parameter: {}) => void): void; + on(obj: MSHTML.OldHTMLFormElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onreset' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart' | 'onsubmit', handler: (this: MSHTML.OldHTMLFormElement, parameter: {}) => void): void; + on(obj: MSHTML.Scriptlet, event: 'onclick' | 'ondblclick' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onmousedown' | 'onmousemove' | 'onmouseup' | 'onreadystatechange', handler: (this: MSHTML.Scriptlet, parameter: {}) => void): void; + on(obj: MSHTML.SVGAElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGAElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGCircleElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGCircleElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGClipPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGClipPathElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGDefsElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGDefsElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGEllipseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGEllipseElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGGElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGGradientElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGGradientElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGImageElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGImageElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGLineElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGLineElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGMarkerElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGMarkerElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGMaskElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGMaskElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGPathElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGPatternElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGPatternElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGPolygonElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGPolygonElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGPolylineElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGPolylineElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGRectElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGRectElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGScriptElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGScriptElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGStopElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGStopElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGSVGElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGSVGElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGSymbolElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGSymbolElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGTextElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGTextElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGTextPathElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGTextPathElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGTSpanElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGTSpanElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGUseElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGUseElement, parameter: {}) => void): void; + on(obj: MSHTML.SVGViewElement, event: 'onactivate' | 'onafterupdate' | 'onbeforeactivate' | 'onbeforecopy' | 'onbeforecut' | 'onbeforedeactivate' | 'onbeforeeditfocus' | 'onbeforepaste' | 'onbeforeupdate' | 'onblur' | 'oncellchange' | 'onclick' | 'oncontextmenu' | 'oncontrolselect' | 'oncopy' | 'oncut' | 'ondataavailable' | 'ondatasetchanged' | 'ondatasetcomplete' | 'ondblclick' | 'ondeactivate' | 'ondrag' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondragstart' | 'ondrop' | 'onerrorupdate' | 'onfilterchange' | 'onfocus' | 'onfocusin' | 'onfocusout' | 'onhelp' | 'onkeydown' | 'onkeypress' | 'onkeyup' | 'onlayoutcomplete' | 'onlosecapture' | 'onmousedown' | 'onmouseenter' | 'onmouseleave' | 'onmousemove' | 'onmouseout' | 'onmouseover' | 'onmouseup' | 'onmousewheel' | 'onmove' | 'onmoveend' | 'onmovestart' | 'onpage' | 'onpaste' | 'onpropertychange' | 'onreadystatechange' | 'onresize' | 'onresizeend' | 'onresizestart' | 'onrowenter' | 'onrowexit' | 'onrowsdelete' | 'onrowsinserted' | 'onscroll' | 'onselectstart', handler: (this: MSHTML.SVGViewElement, parameter: {}) => void): void; new(progid: K): ActiveXObjectNameMap[K]; } @@ -36494,7 +35578,3 @@ interface ActiveXObjectNameMap { 'ScriptBridge.ScriptBridge': MSHTML.Scriptlet; 'TemplatePrinter.TemplatePrinter': MSHTML.CTemplatePrinter; } - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-mshtml/tslint.json b/types/activex-mshtml/tslint.json index 3224b40b8b..916af93888 100644 --- a/types/activex-mshtml/tslint.json +++ b/types/activex-mshtml/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-msxml2/activex-msxml2-tests.ts b/types/activex-msxml2/activex-msxml2-tests.ts index a793c08db5..470f35d785 100644 --- a/types/activex-msxml2/activex-msxml2-tests.ts +++ b/types/activex-msxml2/activex-msxml2-tests.ts @@ -1,18 +1,18 @@ // https://msdn.microsoft.com/en-us/library/ms764708(v=vs.85).aspx -(() => { +{ const dom = new ActiveXObject('Msxml2.DOMDocument.6.0'); dom.async = false; dom.resolveExternals = false; dom.loadXML('A'); WScript.Echo(`dom: ${dom.xml}`); -})(); +} // https://msdn.microsoft.com/en-us/library/ms766390(v=vs.85).aspx -(() => { +{ const doc = new ActiveXObject('Msxml2.DOMDocument.6.0'); doc.load('test.xml'); WScript.Echo(`doc: ${doc.xml}`); -})(); +} const MakeDOM = () => { try { @@ -37,7 +37,7 @@ const LoadDOM = (file: string) => { }; // https://msdn.microsoft.com/en-us/library/ms759105(v=vs.85).aspx -(() => { +{ const doc = new ActiveXObject('Msxml2.DOMDocument.6.0'); doc.async = false; doc.resolveExternals = false; @@ -60,10 +60,10 @@ const LoadDOM = (file: string) => { `; doc.loadXML(xml); doc.save('saved.xml'); -})(); +} // https://msdn.microsoft.com/en-us/library/ms764656(v=vs.85).aspx -(() => { +{ const doc = LoadDOM('test.xml')!; const xsl = (LoadDOM('test.xsl')! as any) as MSXML2.IXMLDOMNode; @@ -73,10 +73,10 @@ const LoadDOM = (file: string) => { const out = MakeDOM()!; doc.transformNodeToObject(xsl, out); WScript.Echo('\ndoc.transformNodeToObject:\n' + out.xml); -})(); +} // https://msdn.microsoft.com/en-us/library/ms763685(v=vs.85).aspx -(() => { +{ const dom = MakeDOM()!; // Create a processing instruction targeted for xml. @@ -148,10 +148,10 @@ const LoadDOM = (file: string) => { // Save the XML document to a file. dom.save("dynamDom.xml"); -})(); +} // https://msdn.microsoft.com/en-us/library/ms757050(v=vs.85).aspx -(() => { +{ const dom = LoadDOM("stocks.xml")!; try { // Query a single node. @@ -172,17 +172,17 @@ const LoadDOM = (file: string) => { } catch (e) { WScript.Echo(e.description); } -})(); +} // https://msdn.microsoft.com/en-us/library/ms757064(v=vs.85).aspx -(() => { +{ const xhr = new ActiveXObject("Msxml2.XMLHTTP.6.0"); xhr.open("GET", "http://localhost/sxh/contact.asp?SearchID=John Doe", false); xhr.send(); const doc = xhr.responseXML; WScript.Echo(doc.xml); -})(); +} const xmlValidation = (fn: (x: MSXML2.DOMDocument60) => void) => { // Create and initialize the DOMDocument object @@ -212,16 +212,16 @@ ${x.xml} }; // https://msdn.microsoft.com/en-us/library/ms766449(v=vs.85).aspx -(() => { +{ const validateFile = (filename: string) => xmlValidation(x => x.load(filename)); let sOutput = validateFile("nn-valid.xml"); sOutput = sOutput + validateFile("nn-notValid.xml"); WScript.Echo(sOutput); -})(); +} // https://msdn.microsoft.com/en-us/library/ms767542(v=vs.85).aspx -(() => { +{ const validateFile = (filename: string) => xmlValidation(x => { // Configure DOM properties for namespace selection. x.setProperty("SelectionLanguage", "XPath"); @@ -235,10 +235,10 @@ ${x.xml} let sOutput = validateFile("sl-valid.xml"); sOutput = sOutput + validateFile("sl-notValid.xml"); WScript.Echo(sOutput); -})(); +} // https://msdn.microsoft.com/en-us/library/ms766439(v=vs.85).aspx -(() => { +{ const validateFile = (filename: string) => xmlValidation(xd => { // Create a schema cache and add books.xsd to it. const xs = new ActiveXObject('Msxml2.XMLSchemaCache'); @@ -253,10 +253,10 @@ ${x.xml} let sOutput = validateFile("sc-valid.xml"); sOutput = sOutput + validateFile("sc-notValid.xml"); WScript.Echo(sOutput); -})(); +} // https://msdn.microsoft.com/en-us/library/ms767636(v=vs.85).aspx -(() => { +{ const validateFile = (filename: string) => xmlValidation(x => { x.setProperty("UseInlineSchema", true); x.load(filename); @@ -265,10 +265,10 @@ ${x.xml} let sOutput = validateFile("valid.xml"); sOutput = sOutput + validateFile("notValid.xml"); WScript.Echo(sOutput); -})(); +} // https://msdn.microsoft.com/en-us/library/ms757833(v=vs.85).aspx -(() => { +{ // Load an XML document into a DOM instance. const oXMLDoc = LoadDOM("books.xml")!; @@ -326,4 +326,4 @@ ${oError.reason}`; } WScript.Echo(msg); } -})(); +} diff --git a/types/activex-msxml2/index.d.ts b/types/activex-msxml2/index.d.ts index 76dc3d9415..6f43ba02c5 100644 --- a/types/activex-msxml2/index.d.ts +++ b/types/activex-msxml2/index.d.ts @@ -424,7 +424,7 @@ declare namespace MSXML2 { createEntityReference(name: string): IXMLDOMEntityReference; /** create a node of the specified node type and name */ - createNode(type: any, name: string, namespaceURI: string): IXMLDOMNode; + createNode(type: DOMNodeType.NODE_ATTRIBUTE | DOMNodeType.NODE_CDATA_SECTION | DOMNodeType.NODE_COMMENT | DOMNodeType.NODE_DOCUMENT_FRAGMENT | DOMNodeType.NODE_TEXT | DOMNodeType.NODE_ELEMENT | DOMNodeType.NODE_ENTITY_REFERENCE | DOMNodeType.NODE_PROCESSING_INSTRUCTION, name: string, namespaceURI: string): IXMLDOMNode; /** create a processing instruction node */ createProcessingInstruction(target: string, data: string): IXMLDOMProcessingInstruction; @@ -433,7 +433,7 @@ declare namespace MSXML2 { createTextNode(data: string): IXMLDOMText; /** the data type of the node */ - dataType: any; + dataType: string | null; /** pointer to the definition of the node in the DTD or schema */ readonly definition: IXMLDOMNode; @@ -497,7 +497,7 @@ declare namespace MSXML2 { readonly nodeTypeString: string; /** value stored in the node */ - nodeValue: any; + nodeValue: string | null; /** register an ondataavailable event handler */ readonly ondataavailable: any; @@ -795,8 +795,7 @@ declare namespace MSXML2 { getAllResponseHeaders(ppwszHeaders: string): void; GetCookie(pwszUrl: string, pwszName: string, dwFlags: number, pcCookies: number, ppCookies: tagXHR_COOKIE): void; getResponseHeader(pwszHeader: string, ppwszValue: string): void; - open( - pwszMethod: string, pwszUrl: string, pStatusCallback: IXMLHTTPRequest2Callback, pwszUserName: string, pwszPassword: string, pwszProxyUserName: string, pwszProxyPassword: string): void; + open(pwszMethod: string, pwszUrl: string, pStatusCallback: IXMLHTTPRequest2Callback, pwszUserName: string, pwszPassword: string, pwszProxyUserName: string, pwszProxyPassword: string): void; send(pBody: ISequentialStream, cbBody: number): void; SetCookie(pCookie: tagXHR_COOKIE, pdwCookieState: number): void; SetCustomResponseStream(pSequentialStream: ISequentialStream): void; @@ -805,11 +804,11 @@ declare namespace MSXML2 { } /** IMXNamespacePrefixes interface */ - class IMXNamespacePrefixes { - private 'MSXML2.IMXNamespacePrefixes_typekey': IMXNamespacePrefixes; - private constructor(); + // tslint:disable-next-line:interface-name + interface IMXNamespacePrefixes { item(index: number): string; readonly length: number; + (index: number): string; } /** XML Schema */ @@ -848,21 +847,21 @@ declare namespace MSXML2 { } /** XML Schema Item Collection */ - class ISchemaItemCollection { - private 'MSXML2.ISchemaItemCollection_typekey': ISchemaItemCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface ISchemaItemCollection { item(index: number): ISchemaItem; itemByName(name: string): ISchemaItem; itemByQName(name: string, namespaceURI: string): ISchemaItem; readonly length: number; + (index: number): ISchemaItem; } /** XML Schema String Collection */ - class ISchemaStringCollection { - private 'MSXML2.ISchemaStringCollection_typekey': ISchemaStringCollection; - private constructor(); + // tslint:disable-next-line:interface-name + interface ISchemaStringCollection { item(index: number): string; readonly length: number; + (index: number): string; } class ISequentialStream { @@ -1960,10 +1959,8 @@ declare namespace MSXML2 { hasFeature(feature: string, version: string): boolean; } - class IXMLDOMNamedNodeMap { - private 'MSXML2.IXMLDOMNamedNodeMap_typekey': IXMLDOMNamedNodeMap; - private constructor(); - + // tslint:disable-next-line:interface-name + interface IXMLDOMNamedNodeMap { /** lookup item by name */ getNamedItem(name: string): IXMLDOMNode; @@ -1990,6 +1987,9 @@ declare namespace MSXML2 { /** set item by name */ setNamedItem(newItem: IXMLDOMNode): IXMLDOMNode; + + /** collection of nodes */ + (index: number): IXMLDOMNode; } /** Core DOM node interface */ @@ -2090,10 +2090,8 @@ declare namespace MSXML2 { readonly xml: string; } - class IXMLDOMNodeList { - private 'MSXML2.IXMLDOMNodeList_typekey': IXMLDOMNodeList; - private constructor(); - + // tslint:disable-next-line:interface-name + interface IXMLDOMNodeList { /** collection of nodes */ item(index: number): IXMLDOMNode; @@ -2105,6 +2103,9 @@ declare namespace MSXML2 { /** reset the position of iterator */ reset(): void; + + /** collection of nodes */ + (index: number): IXMLDOMNode; } /** structure for reporting parser errors */ @@ -2238,10 +2239,8 @@ declare namespace MSXML2 { } /** XML Schemas Collection */ - class IXMLDOMSchemaCollection { - private 'MSXML2.IXMLDOMSchemaCollection_typekey': IXMLDOMSchemaCollection; - private constructor(); - + // tslint:disable-next-line:interface-name + interface IXMLDOMSchemaCollection { /** add a new schema */ add(namespaceURI: string, var_1: any): void; @@ -2259,6 +2258,9 @@ declare namespace MSXML2 { /** remove schema by namespaceURI */ remove(namespaceURI: string): void; + + /** Get namespaceURI for schema by index */ + (index: number): string; } class IXMLDOMText { @@ -2403,7 +2405,7 @@ declare namespace MSXML2 { /** * set values - * @param string [namespaceURI=''] + * @param namespaceURI [namespaceURI='0'] */ addParameter(baseName: string, parameter: any, namespaceURI?: string): void; @@ -2424,7 +2426,7 @@ declare namespace MSXML2 { /** * set XSL mode and it's namespace - * @param string [namespaceURI=''] + * @param namespaceURI [namespaceURI='0'] */ setStartMode(mode: string, namespaceURI?: string): void; @@ -2487,7 +2489,7 @@ declare namespace MSXML2 { popContext(): void; pushContext(): void; - /** @param boolean [fDeep=true] */ + /** @param fDeep [fDeep=true] */ pushNodeContext(contextNode: IXMLDOMNode, fDeep?: boolean): void; reset(): void; } @@ -2730,10 +2732,7 @@ declare namespace MSXML2 { } /** XML Schema Cache 6.0 */ - class XMLSchemaCache60 { - private 'MSXML2.XMLSchemaCache60_typekey': XMLSchemaCache60; - private constructor(); - + interface XMLSchemaCache60 { /** add a new schema */ add(namespaceURI: string, var_1: any): void; @@ -2755,6 +2754,9 @@ declare namespace MSXML2 { remove(namespaceURI: string): void; validate(): void; validateOnLoad: boolean; + + /** Get namespaceURI for schema by index */ + (index: number): string; } /** XSL Stylesheet Cache 6.0 */ @@ -2787,12 +2789,6 @@ interface ActiveXObjectNameMap { 'Msxml2.SAXXMLReader': MSXML2.SAXXMLReader60; 'Msxml2.ServerXMLHTTP': MSXML2.ServerXMLHTTP60; 'Msxml2.XMLHTTP': MSXML2.XMLHTTP60; - 'Msxml2.XMLHTTP.6.0': MSXML2.XMLHTTP60; 'Msxml2.XMLSchemaCache': MSXML2.XMLSchemaCache60; - 'Msxml2.XMLSchemaCache.6.0': MSXML2.XMLSchemaCache60; 'Msxml2.XSLTemplate': MSXML2.XSLTemplate60; } - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-msxml2/tslint.json b/types/activex-msxml2/tslint.json index 3224b40b8b..7b89accc6d 100644 --- a/types/activex-msxml2/tslint.json +++ b/types/activex-msxml2/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-office/activex-office-tests.ts b/types/activex-office/activex-office-tests.ts index 69a0563640..7aab0b4521 100644 --- a/types/activex-office/activex-office-tests.ts +++ b/types/activex-office/activex-office-tests.ts @@ -1,19 +1,26 @@ /// +const collectionToArray = (col: { Item(key: any): T }): T[] => { + const results: T[] = []; + const enumerator = new Enumerator(col); + enumerator.moveFirst(); + while (!enumerator.atEnd()) { + results.push(enumerator.item()); + enumerator.moveNext(); + } + return results; +}; + let app = new ActiveXObject('Word.Application'); +app.Visible = true; let dlg = app.FileDialog(Office.MsoFileDialogType.msoFileDialogFolderPicker); dlg.AllowMultiSelect = true; dlg.Title = 'Select one or more folders'; dlg.Execute(); -let enumerator = new Enumerator(dlg.SelectedItems); -enumerator.moveFirst(); -while (!enumerator.atEnd()) { - WScript.Echo(enumerator.item); +for (const item of collectionToArray(dlg.SelectedItems)) { + WScript.Echo(item); } -let enumerator2 = new Enumerator(app.COMAddIns); -enumerator2.moveFirst(); -while (!enumerator2.atEnd()) { - const item = enumerator2.item(); +for (const item of collectionToArray(app.COMAddIns)) { WScript.Echo(`COM Addin: ${item.Description} -- ${item.ProgId}`); } diff --git a/types/activex-office/index.d.ts b/types/activex-office/index.d.ts index 20351b91f9..18a7dd285d 100644 --- a/types/activex-office/index.d.ts +++ b/types/activex-office/index.d.ts @@ -1,10 +1,11 @@ -// Type definitions for Microsoft Office 14.0 Object Library - Office 14.0 +// Type definitions for Microsoft Office 16.0 Object Library - Office 16.0 // Project: https://msdn.microsoft.com/VBA/Office-Shared-VBA/articles/office-vba-object-library-reference // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// +/// declare namespace Office { type MsoRGBType = number; @@ -524,6 +525,18 @@ declare namespace Office { msoblogImageTypePNG = 3, } + const enum MsoBroadcastCapabilities { + BroadcastCapFileSizeLimited = 1, + BroadcastCapSupportsMeetingNotes = 2, + BroadcastCapSupportsUpdateDoc = 4, + } + + const enum MsoBroadcastState { + BroadcastPaused = 2, + BroadcastStarted = 1, + NoBroadcast = 0, + } + const enum MsoBulletType { msoBulletMixed = -2, msoBulletNone = 0, @@ -622,6 +635,7 @@ declare namespace Office { msoElementChartWallShow = 1101, msoElementDataLabelBestFit = 210, msoElementDataLabelBottom = 209, + msoElementDataLabelCallout = 211, msoElementDataLabelCenter = 202, msoElementDataLabelInsideBase = 204, msoElementDataLabelInsideEnd = 203, @@ -741,6 +755,16 @@ declare namespace Office { msoElementUpDownBarsShow = 901, } + const enum MsoChartFieldType { + msoChartFieldBubbleSize = 1, + msoChartFieldCategoryName = 2, + msoChartFieldFormula = 6, + msoChartFieldPercentage = 3, + msoChartFieldRange = 7, + msoChartFieldSeriesName = 4, + msoChartFieldValue = 5, + } + const enum MsoClipboardFormat { msoClipboardFormatHTML = 2, msoClipboardFormatMixed = -2, @@ -1625,6 +1649,13 @@ declare namespace Office { msoLightRigTwoPoint = 25, } + const enum MsoLineCapStyle { + msoLineCapFlat = 3, + msoLineCapMixed = -2, + msoLineCapRound = 2, + msoLineCapSquare = 1, + } + const enum MsoLineDashStyle { msoLineDash = 4, msoLineDashDot = 5, @@ -1641,6 +1672,24 @@ declare namespace Office { msoLineSysDot = 11, } + const enum MsoLineFillType { + msoLineFillBackground = 5, + msoLineFillGradient = 3, + msoLineFillMixed = -2, + msoLineFillNone = 0, + msoLineFillPatterned = 2, + msoLineFillPicture = 6, + msoLineFillSolid = 1, + msoLineFillTextured = 4, + } + + const enum MsoLineJoinStyle { + msoLineJoinBevel = 2, + msoLineJoinMiter = 3, + msoLineJoinMixed = -2, + msoLineJoinRound = 1, + } + const enum MsoLineStyle { msoLineSingle = 1, msoLineStyleMixed = -2, @@ -1657,6 +1706,14 @@ declare namespace Office { msoMenuAnimationUnfold = 2, } + const enum MsoMergeCmd { + msoMergeCombine = 2, + msoMergeFragment = 5, + msoMergeIntersect = 3, + msoMergeSubtract = 4, + msoMergeUnion = 1, + } + const enum MsoMetaPropertyType { msoMetaPropertyTypeBoolean = 1, msoMetaPropertyTypeBusinessData = 20, @@ -1884,6 +1941,12 @@ declare namespace Office { msoPictureWatermark = 4, } + const enum MsoPictureCompress { + msoPictureCompressDocDefault = -1, + msoPictureCompressFalse = 0, + msoPictureCompressTrue = 1, + } + const enum MsoPictureEffectType { msoEffectBackgroundRemoval = 1, msoEffectBlur = 2, @@ -2086,8 +2149,28 @@ declare namespace Office { msoTextEffect29 = 28, msoTextEffect3 = 2, msoTextEffect30 = 29, + msoTextEffect31 = 30, + msoTextEffect32 = 31, + msoTextEffect33 = 32, + msoTextEffect34 = 33, + msoTextEffect35 = 34, + msoTextEffect36 = 35, + msoTextEffect37 = 36, + msoTextEffect38 = 37, + msoTextEffect39 = 38, msoTextEffect4 = 3, + msoTextEffect40 = 39, + msoTextEffect41 = 40, + msoTextEffect42 = 41, + msoTextEffect43 = 42, + msoTextEffect44 = 43, + msoTextEffect45 = 44, + msoTextEffect46 = 45, + msoTextEffect47 = 46, + msoTextEffect48 = 47, + msoTextEffect49 = 48, msoTextEffect5 = 4, + msoTextEffect50 = 49, msoTextEffect6 = 5, msoTextEffect7 = 6, msoTextEffect8 = 7, @@ -2324,8 +2407,29 @@ declare namespace Office { msoLineStylePreset2 = 10002, msoLineStylePreset20 = 10020, msoLineStylePreset21 = 10021, + msoLineStylePreset22 = 10022, + msoLineStylePreset23 = 10023, + msoLineStylePreset24 = 10024, + msoLineStylePreset25 = 10025, + msoLineStylePreset26 = 10026, + msoLineStylePreset27 = 10027, + msoLineStylePreset28 = 10028, + msoLineStylePreset29 = 10029, msoLineStylePreset3 = 10003, + msoLineStylePreset30 = 10030, + msoLineStylePreset31 = 10031, + msoLineStylePreset32 = 10032, + msoLineStylePreset33 = 10033, + msoLineStylePreset34 = 10034, + msoLineStylePreset35 = 10035, + msoLineStylePreset36 = 10036, + msoLineStylePreset37 = 10037, + msoLineStylePreset38 = 10038, + msoLineStylePreset39 = 10039, msoLineStylePreset4 = 10004, + msoLineStylePreset40 = 10040, + msoLineStylePreset41 = 10041, + msoLineStylePreset42 = 10042, msoLineStylePreset5 = 10005, msoLineStylePreset6 = 10006, msoLineStylePreset7 = 10007, @@ -2370,9 +2474,44 @@ declare namespace Office { msoShapeStylePreset40 = 40, msoShapeStylePreset41 = 41, msoShapeStylePreset42 = 42, + msoShapeStylePreset43 = 43, + msoShapeStylePreset44 = 44, + msoShapeStylePreset45 = 45, + msoShapeStylePreset46 = 46, + msoShapeStylePreset47 = 47, + msoShapeStylePreset48 = 48, + msoShapeStylePreset49 = 49, msoShapeStylePreset5 = 5, + msoShapeStylePreset50 = 50, + msoShapeStylePreset51 = 51, + msoShapeStylePreset52 = 52, + msoShapeStylePreset53 = 53, + msoShapeStylePreset54 = 54, + msoShapeStylePreset55 = 55, + msoShapeStylePreset56 = 56, + msoShapeStylePreset57 = 57, + msoShapeStylePreset58 = 58, + msoShapeStylePreset59 = 59, msoShapeStylePreset6 = 6, + msoShapeStylePreset60 = 60, + msoShapeStylePreset61 = 61, + msoShapeStylePreset62 = 62, + msoShapeStylePreset63 = 63, + msoShapeStylePreset64 = 64, + msoShapeStylePreset65 = 65, + msoShapeStylePreset66 = 66, + msoShapeStylePreset67 = 67, + msoShapeStylePreset68 = 68, + msoShapeStylePreset69 = 69, msoShapeStylePreset7 = 7, + msoShapeStylePreset70 = 70, + msoShapeStylePreset71 = 71, + msoShapeStylePreset72 = 72, + msoShapeStylePreset73 = 73, + msoShapeStylePreset74 = 74, + msoShapeStylePreset75 = 75, + msoShapeStylePreset76 = 76, + msoShapeStylePreset77 = 77, msoShapeStylePreset8 = 8, msoShapeStylePreset9 = 9, } @@ -2383,6 +2522,7 @@ declare namespace Office { msoCanvas = 20, msoChart = 3, msoComment = 4, + msoContentApp = 27, msoDiagram = 21, msoEmbeddedOLEObject = 7, msoFormControl = 8, @@ -2404,6 +2544,7 @@ declare namespace Office { msoTable = 19, msoTextBox = 17, msoTextEffect = 15, + msoWebVideo = 26, } const enum MsoSharedWorkspaceTaskPriority { @@ -2858,6 +2999,14 @@ declare namespace Office { xlPyramidToPoint = 1, } + const enum XlBinsType { + xlBinsTypeAutomatic = 0, + xlBinsTypeBinCount = 4, + xlBinsTypeBinSize = 3, + xlBinsTypeCategorical = 1, + xlBinsTypeManual = 2, + } + const enum XlBorderWeight { xlHairline = 1, xlMedium = -4138, @@ -2865,6 +3014,12 @@ declare namespace Office { xlThin = 2, } + const enum XlCategoryLabelLevel { + xlCategoryLabelLevelAll = -1, + xlCategoryLabelLevelCustom = -2, + xlCategoryLabelLevelNone = -3, + } + const enum XlCategoryType { xlAutomaticScale = -4105, xlCategoryScale = 2, @@ -2897,7 +3052,9 @@ declare namespace Office { xlMajorGridlines = 15, xlMinorGridlines = 16, xlNothing = 28, + xlPivotChartCollapseEntireFieldButton = 34, xlPivotChartDropZone = 32, + xlPivotChartExpandEntireFieldButton = 33, xlPivotChartFieldButton = 31, xlPlotArea = 19, xlRadarAxisLabels = 27, @@ -2952,11 +3109,16 @@ declare namespace Office { xlBarOfPie = 71, xlBarStacked = 58, xlBarStacked100 = 59, + xlBoxwhisker = 121, xlBubble = 15, xlBubble3DEffect = 87, xlColumnClustered = 51, xlColumnStacked = 52, xlColumnStacked100 = 53, + xlCombo = -4152, + xlComboAreaStackedColumnClustered = 115, + xlComboColumnClusteredLine = 113, + xlComboColumnClusteredLineSecondaryAxis = 114, xlConeBarClustered = 102, xlConeBarStacked = 103, xlConeBarStacked100 = 104, @@ -2973,12 +3135,15 @@ declare namespace Office { xlCylinderColStacked100 = 94, xlDoughnut = -4120, xlDoughnutExploded = 80, + xlHistogram = 118, xlLine = 4, xlLineMarkers = 65, xlLineMarkersStacked = 66, xlLineMarkersStacked100 = 67, xlLineStacked = 63, xlLineStacked100 = 64, + xlOtherCombinations = 116, + xlPareto = 122, xlPie = 5, xlPieExploded = 69, xlPieOfPie = 68, @@ -2996,10 +3161,14 @@ declare namespace Office { xlStockOHLC = 89, xlStockVHLC = 90, xlStockVOHLC = 91, + xlSuggestedChart = -2, + xlSunburst = 120, xlSurface = 83, xlSurfaceTopView = 85, xlSurfaceTopViewWireframe = 86, xlSurfaceWireframe = 84, + xlTreemap = 117, + xlWaterfall = 119, xlXYScatter = -4169, xlXYScatterLines = 74, xlXYScatterLinesNoMarkers = 75, @@ -3181,6 +3350,12 @@ declare namespace Office { xlMarkerStyleX = -4168, } + const enum XlParentDataLabelOptions { + xlParentDataLabelOptionsBanner = 1, + xlParentDataLabelOptionsNone = 0, + xlParentDataLabelOptionsOverlapping = 2, + } + const enum XlPieSliceIndex { xlCenterPoint = 5, xlInnerCenterPoint = 8, @@ -3222,6 +3397,12 @@ declare namespace Office { xlScaleLogarithmic = -4133, } + const enum XlSeriesNameLevel { + xlSeriesNameLevelAll = -1, + xlSeriesNameLevelCustom = -2, + xlSeriesNameLevelNone = -3, + } + const enum XlSizeRepresents { xlSizeIsArea = 1, xlSizeIsWidth = 2, @@ -3280,14 +3461,13 @@ declare namespace Office { xlVAlignTop = -4160, } - class Adjustments { - private 'Office.Adjustments_typekey': Adjustments; - private constructor(); + interface Adjustments { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): number; readonly Parent: any; + (Index: number): number; } class AnswerWizard { @@ -3301,9 +3481,7 @@ declare namespace Office { ResetFileList(): void; } - class AnswerWizardFiles { - private 'Office.AnswerWizardFiles_typekey': AnswerWizardFiles; - private constructor(); + interface AnswerWizardFiles { Add(FileName: string): void; readonly Application: any; readonly Count: number; @@ -3311,12 +3489,13 @@ declare namespace Office { Delete(FileName: string): void; Item(Index: number): string; readonly Parent: any; + (Index: number): string; } class Assistant { private 'Office.Assistant_typekey': Assistant; private constructor(); - ActivateWizard(WizardID: number, act: MsoWizardActType, Animation?: any): void; + ActivateWizard(WizardID: number, act: MsoWizardActType, Animation?: MsoAnimationType): void; Animation: MsoAnimationType; readonly Application: any; AssistWithAlerts: boolean; @@ -3325,7 +3504,7 @@ declare namespace Office { readonly BalloonError: MsoBalloonErrorType; readonly Creator: number; DoAlert(bstrAlertTitle: string, bstrAlertText: string, alb: MsoAlertButtonType, alc: MsoAlertIconType, ald: MsoAlertDefaultType, alq: MsoAlertCancelType, varfSysAlert: boolean): number; - EndWizard(WizardID: number, varfSuccess: boolean, Animation?: any): void; + EndWizard(WizardID: number, varfSuccess: boolean, Animation?: MsoAnimationType): void; FeatureTips: boolean; FileName: string; GuessHelp: boolean; @@ -3345,7 +3524,7 @@ declare namespace Office { ResetTips(): void; SearchWhenProgramming: boolean; Sounds: boolean; - StartWizard(On: boolean, Callback: string, PrivateX: number, Animation?: any, CustomTeaser?: any, Top?: any, Left?: any, Bottom?: any, Right?: any): number; + StartWizard(On: boolean, Callback: string, PrivateX: number, Animation?: MsoAnimationType, CustomTeaser?: any, Top?: number, Left?: number, Bottom?: number, Right?: number): number; TipOfDay: boolean; Top: number; Visible: boolean; @@ -3359,12 +3538,12 @@ declare namespace Office { BalloonType: MsoBalloonType; Button: MsoButtonSetType; Callback: string; - readonly Checkboxes: any; + readonly Checkboxes: BalloonCheckboxes; Close(): void; readonly Creator: number; Heading: string; Icon: MsoIconType; - readonly Labels: any; + readonly Labels: BalloonLabels; Mode: MsoModeType; readonly Name: string; readonly Parent: any; @@ -3374,6 +3553,49 @@ declare namespace Office { Text: string; } + class BalloonCheckbox { + private 'Office.BalloonCheckbox_typekey': BalloonCheckbox; + private constructor(); + readonly Application: any; + Checked: boolean; + readonly Creator: number; + readonly Item: string; + readonly Name: string; + readonly Parent: any; + Text: string; + } + + interface BalloonCheckboxes { + readonly Application: any; + Count: number; + readonly Creator: number; + Item(Index: number): BalloonCheckbox; + readonly Name: string; + readonly Parent: any; + (Index: number): BalloonCheckbox; + } + + class BalloonLabel { + private constructor(); + private 'Office.BalloonLabel_typekey': BalloonLabel; + readonly Application: any; + readonly Creator: number; + readonly Item: string; + readonly Name: string; + readonly Parent: any; + Text: string; + } + + interface BalloonLabels { + readonly Application: any; + Count: number; + readonly Creator: number; + Item(Index: number): BalloonLabel; + readonly Name: string; + readonly Parent: any; + (Index: number): BalloonLabel; + } + class BulletFormat2 { private 'Office.BulletFormat2_typekey': BulletFormat2; private constructor(); @@ -3415,21 +3637,19 @@ declare namespace Office { Type: MsoCalloutType; } - class CanvasShapes { - private 'Office.CanvasShapes_typekey': CanvasShapes; - private constructor(); + interface CanvasShapes { AddCallout(Type: MsoCalloutType, Left: number, Top: number, Width: number, Height: number): Shape; AddConnector(Type: MsoConnectorType, BeginX: number, BeginY: number, EndX: number, EndY: number): Shape; - AddCurve(SafeArrayOfPoints: any): Shape; + AddCurve(SafeArrayOfPoints: SafeArray): Shape; AddLabel(Orientation: MsoTextOrientation, Left: number, Top: number, Width: number, Height: number): Shape; AddLine(BeginX: number, BeginY: number, EndX: number, EndY: number): Shape; /** - * @param number [Width=-1] - * @param number [Height=-1] + * @param Width [Width=-1] + * @param Height [Height=-1] */ AddPicture(FileName: string, LinkToFile: MsoTriState, SaveWithDocument: MsoTriState, Left: number, Top: number, Width?: number, Height?: number): Shape; - AddPolyline(SafeArrayOfPoints: any): Shape; + AddPolyline(SafeArrayOfPoints: SafeArray): Shape; AddShape(Type: MsoAutoShapeType, Left: number, Top: number, Width: number, Height: number): Shape; AddTextbox(Orientation: MsoTextOrientation, Left: number, Top: number, Width: number, Height: number): Shape; AddTextEffect(PresetTextEffect: MsoPresetTextEffect, Text: string, FontName: string, FontSize: number, FontBold: MsoTriState, FontItalic: MsoTriState, Left: number, Top: number): Shape; @@ -3438,10 +3658,11 @@ declare namespace Office { BuildFreeform(EditingType: MsoEditingType, X1: number, Y1: number): FreeformBuilder; readonly Count: number; readonly Creator: number; - Item(Index: any): Shape; + Item(Index: number | string): Shape; readonly Parent: any; Range(Index: any): ShapeRange; SelectAll(): void; + (Index: number | string): Shape; } class ChartColorFormat { @@ -3480,7 +3701,7 @@ declare namespace Office { readonly TextureType: number; TwoColorGradient(Style: number, Variant: number): void; readonly Type: number; - UserPicture(PictureFile: any, PictureFormat: any, PictureStackUnit: any, PicturePlacement: any): void; + UserPicture(PictureFile: string, PictureFormat: any, PictureStackUnit: any, PicturePlacement: any): void; UserTextured(TextureFile: string): void; Visible: number; } @@ -3534,16 +3755,15 @@ declare namespace Office { readonly ProgId: string; } - class COMAddIns { - private 'Office.COMAddIns_typekey': COMAddIns; - private constructor(); + interface COMAddIns { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): COMAddIn; + Item(Index: number | string): COMAddIn; readonly Parent: any; SetAppModal(varfModal: boolean): void; Update(): void; + (Index: number | string): COMAddIn; } class CommandBar { @@ -3576,7 +3796,7 @@ declare namespace Office { readonly Creator: number; Delete(): void; Enabled: boolean; - FindControl(Type?: any, Id?: any, Tag?: any, Visible?: any, Recursive?: any): CommandBarControl; + FindControl(Type?: any, Id?: any, Tag?: any, Visible?: boolean, Recursive?: boolean): CommandBarControl; Height: number; readonly Id: number; readonly Index: number; @@ -3590,7 +3810,7 @@ declare namespace Office { Protection: MsoBarProtection; Reset(): void; RowIndex: number; - ShowPopup(x?: any, y?: any): void; + ShowPopup(x?: number, y?: number): void; Top: number; readonly Type: MsoBarType; Visible: boolean; @@ -3625,10 +3845,10 @@ declare namespace Office { BuiltInFace: boolean; Caption: string; readonly Control: any; - Copy(Bar?: any, Before?: any): CommandBarControl; + Copy(Bar?: CommandBar, Before?: number): CommandBarControl; CopyFace(): void; readonly Creator: number; - Delete(Temporary?: any): void; + Delete(Temporary?: boolean): void; DescriptionText: string; Enabled: boolean; Execute(): void; @@ -3644,7 +3864,7 @@ declare namespace Office { readonly IsPriorityDropped: boolean; readonly Left: number; Mask: stdole.IPictureDisp; - Move(Bar?: any, Before?: any): CommandBarControl; + Move(Bar?: CommandBar, Before?: number): CommandBarControl; OLEUsage: MsoControlOLEUsage; OnAction: string; Parameter: string; @@ -3701,9 +3921,9 @@ declare namespace Office { Caption: string; Clear(): void; readonly Control: any; - Copy(Bar?: any, Before?: any): CommandBarControl; + Copy(Bar?: CommandBar, Before?: number): CommandBarControl; readonly Creator: number; - Delete(Temporary?: any): void; + Delete(Temporary?: boolean): void; DescriptionText: string; DropDownLines: number; DropDownWidth: number; @@ -3722,7 +3942,7 @@ declare namespace Office { readonly ListCount: number; ListHeaderCount: number; ListIndex: number; - Move(Bar?: any, Before?: any): CommandBarControl; + Move(Bar?: CommandBar, Before?: number): CommandBarControl; OLEUsage: MsoControlOLEUsage; OnAction: string; Parameter: string; @@ -3775,9 +3995,9 @@ declare namespace Office { readonly BuiltIn: boolean; Caption: string; readonly Control: any; - Copy(Bar?: any, Before?: any): CommandBarControl; + Copy(Bar?: CommandBar, Before?: number): CommandBarControl; readonly Creator: number; - Delete(Temporary?: any): void; + Delete(Temporary?: boolean): void; DescriptionText: string; Enabled: boolean; Execute(): void; @@ -3789,7 +4009,7 @@ declare namespace Office { readonly InstanceId: number; readonly IsPriorityDropped: boolean; readonly Left: number; - Move(Bar?: any, Before?: any): CommandBarControl; + Move(Bar?: CommandBar, Before?: number): CommandBarControl; OLEUsage: MsoControlOLEUsage; OnAction: string; Parameter: string; @@ -3812,24 +4032,21 @@ declare namespace Office { Width: number; } - class CommandBarControls { - private 'Office.CommandBarControls_typekey': CommandBarControls; - private constructor(); - Add(Type?: any, Id?: any, Parameter?: any, Before?: any, Temporary?: any): CommandBarControl; + interface CommandBarControls { + Add(Type?: MsoControlType.msoControlButton | MsoControlType.msoControlEdit | MsoControlType.msoControlDropdown | MsoControlType.msoControlComboBox | MsoControlType.msoControlPopup, Id?: number, Parameter?: any, Before?: number, Temporary?: boolean): CommandBarControl; readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): CommandBarControl; + Item(Index: number | string): CommandBarControl; readonly Parent: CommandBar; + (Index: number | string): CommandBarControl; } - class CommandBars { - private 'Office.CommandBars_typekey': CommandBars; - private constructor(); + interface CommandBars { readonly ActionControl: CommandBarControl; readonly ActiveMenuBar: CommandBar; AdaptiveMenus: boolean; - Add(Name?: any, Position?: any, MenuBar?: any, Temporary?: any): CommandBar; + Add(Name?: string, Position?: MsoBarPosition, MenuBar?: boolean, Temporary?: boolean): CommandBar; AddEx(TbidOrName?: any, Position?: any, MenuBar?: any, Temporary?: any, TbtrProtection?: any): CommandBar; readonly Application: any; CommitRenderingTransaction(hwnd: number): void; @@ -3841,8 +4058,8 @@ declare namespace Office { DisplayKeysInTooltips: boolean; DisplayTooltips: boolean; ExecuteMso(idMso: string): void; - FindControl(Type?: any, Id?: any, Tag?: any, Visible?: any): CommandBarControl; - FindControls(Type?: any, Id?: any, Tag?: any, Visible?: any): CommandBarControls; + FindControl(Type?: MsoControlType, Id?: any, Tag?: any, Visible?: boolean): CommandBarControl | null; + FindControls(Type?: MsoControlType, Id?: any, Tag?: any, Visible?: boolean): CommandBarControls | null; GetEnabledMso(idMso: string): boolean; GetImageMso(idMso: string, Width: number, Height: number): stdole.IPictureDisp; GetLabelMso(idMso: string): string; @@ -3851,12 +4068,13 @@ declare namespace Office { GetSupertipMso(idMso: string): string; GetVisibleMso(idMso: string): boolean; IdsString(ids: number, pbstrName: string): number; - Item(Index: any): CommandBar; + Item(Index: number | string): CommandBar; LargeButtons: boolean; MenuAnimationStyle: MsoMenuAnimation; readonly Parent: any; ReleaseFocus(): void; TmcGetName(tmc: number, pbstrName: string): number; + (Index: number | string): CommandBar; } class ConnectorFormat { @@ -3886,8 +4104,7 @@ declare namespace Office { readonly Creator: number; /** @param boolean [ShowWithDelay=false] */ - Show( - CardStyle: MsoContactCardStyle, RectangleLeft: number, RectangleRight: number, RectangleTop: number, RectangleBottom: number, HorizontalPosition: number, ShowWithDelay?: boolean): void; + Show(CardStyle: MsoContactCardStyle, RectangleLeft: number, RectangleRight: number, RectangleTop: number, RectangleBottom: number, HorizontalPosition: number, ShowWithDelay?: boolean): void; } class Crop { @@ -3925,10 +4142,10 @@ declare namespace Office { private constructor(); /** - * @param string [Name=''] - * @param string [NamespaceURI=''] - * @param Office.MsoCustomXMLNodeType [NodeType=1] - * @param string [NodeValue=''] + * @param Name [Name=''] + * @param NamespaceURI [NamespaceURI=''] + * @param NodeType [NodeType=1] + * @param NodeValue [NodeValue=''] */ AppendChildNode(Name?: string, NamespaceURI?: string, NodeType?: MsoCustomXMLNodeType, NodeValue?: string): void; AppendChildSubtree(XML: string): void; @@ -3942,15 +4159,15 @@ declare namespace Office { HasChildNodes(): boolean; /** - * @param string [Name=''] - * @param string [NamespaceURI=''] - * @param Office.MsoCustomXMLNodeType [NodeType=1] - * @param string [NodeValue=''] - * @param Office.CustomXMLNode [NextSibling=0] + * @param Name [Name=''] + * @param NamespaceURI [NamespaceURI=''] + * @param NodeType [NodeType=1] + * @param NodeValue [NodeValue=''] + * @param NextSibling [NextSibling=0] */ InsertNodeBefore(Name?: string, NamespaceURI?: string, NodeType?: MsoCustomXMLNodeType, NodeValue?: string, NextSibling?: CustomXMLNode): void; - /** @param Office.CustomXMLNode [NextSibling=0] */ + /** @param NextSibling [NextSibling=0] */ InsertSubtreeBefore(XML: string, NextSibling?: CustomXMLNode): void; readonly LastChild: CustomXMLNode; readonly NamespaceURI: string; @@ -3965,10 +4182,10 @@ declare namespace Office { RemoveChild(Child: CustomXMLNode): void; /** - * @param string [Name=''] - * @param string [NamespaceURI=''] - * @param Office.MsoCustomXMLNodeType [NodeType=1] - * @param string [NodeValue=''] + * @param Name [Name=''] + * @param NamespaceURI [NamespaceURI=''] + * @param NodeType [NodeType=1] + * @param NodeValue [NodeValue=''] */ ReplaceChildNode(OldNode: CustomXMLNode, Name?: string, NamespaceURI?: string, NodeType?: MsoCustomXMLNodeType, NodeValue?: string): void; ReplaceChildSubtree(XML: string, OldNode: CustomXMLNode): void; @@ -3979,14 +4196,13 @@ declare namespace Office { readonly XPath: string; } - class CustomXMLNodes { - private 'Office.CustomXMLNodes_typekey': CustomXMLNodes; - private constructor(); + interface CustomXMLNodes { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): CustomXMLNode; readonly Parent: any; + (Index: number): CustomXMLNode; } class CustomXMLPart { @@ -3994,11 +4210,11 @@ declare namespace Office { private constructor(); /** - * @param string [Name=''] - * @param string [NamespaceURI=''] - * @param Office.CustomXMLNode [NextSibling=0] - * @param Office.MsoCustomXMLNodeType [NodeType=1] - * @param string [NodeValue=''] + * @param Name [Name=''] + * @param NamespaceURI [NamespaceURI=''] + * @param NextSibling [NextSibling=0] + * @param NodeType [NodeType=1] + * @param NodeValue [NodeValue=''] */ AddNode(Parent: CustomXMLNode, Name?: string, NamespaceURI?: string, NextSibling?: CustomXMLNode, NodeType?: MsoCustomXMLNodeType, NodeValue?: string): void; readonly Application: any; @@ -4019,19 +4235,17 @@ declare namespace Office { readonly XML: string; } - class CustomXMLParts { - private 'Office.CustomXMLParts_typekey': CustomXMLParts; - private constructor(); - - /** @param string [XML=''] */ - Add(XML?: string, SchemaCollection?: any): CustomXMLPart; + interface CustomXMLParts { + /** @param XML [XML=''] */ + Add(XML?: string, SchemaCollection?: CustomXMLSchemaCollection): CustomXMLPart; readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): CustomXMLPart; + Item(Index: number | string): CustomXMLPart; readonly Parent: any; SelectByID(Id: string): CustomXMLPart; SelectByNamespace(NamespaceURI: string): CustomXMLParts; + (Index: number | string): CustomXMLPart; } class CustomXMLPrefixMapping { @@ -4044,17 +4258,16 @@ declare namespace Office { readonly Prefix: string; } - class CustomXMLPrefixMappings { - private 'Office.CustomXMLPrefixMappings_typekey': CustomXMLPrefixMappings; - private constructor(); + interface CustomXMLPrefixMappings { AddNamespace(Prefix: string, NamespaceURI: string): void; readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): CustomXMLPrefixMapping; + Item(Index: number | string): CustomXMLPrefixMapping; LookupNamespace(Prefix: string): string; LookupPrefix(NamespaceURI: string): string; readonly Parent: any; + (Index: number | string): CustomXMLPrefixMapping; } class CustomXMLSchema { @@ -4069,25 +4282,23 @@ declare namespace Office { Reload(): void; } - class CustomXMLSchemaCollection { - private 'Office.CustomXMLSchemaCollection_typekey': CustomXMLSchemaCollection; - private constructor(); - + interface CustomXMLSchemaCollection { /** - * @param string [NamespaceURI=''] - * @param string [Alias=''] - * @param string [FileName=''] - * @param boolean [InstallForAllUsers=false] + * @param NamespaceURI [NamespaceURI=''] + * @param Alias [Alias=''] + * @param FileName [FileName=''] + * @param InstallForAllUsers [InstallForAllUsers=false] */ Add(NamespaceURI?: string, Alias?: string, FileName?: string, InstallForAllUsers?: boolean): CustomXMLSchema; AddCollection(SchemaCollection: CustomXMLSchemaCollection): void; readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): CustomXMLSchema; + Item(Index: number | string): CustomXMLSchema; NamespaceURI(Index: number): string; readonly Parent: any; Validate(): boolean; + (Index: number | string): CustomXMLSchema; } class CustomXMLValidationError { @@ -4104,13 +4315,10 @@ declare namespace Office { readonly Type: MsoCustomXMLValidationErrorType; } - class CustomXMLValidationErrors { - private 'Office.CustomXMLValidationErrors_typekey': CustomXMLValidationErrors; - private constructor(); - + interface CustomXMLValidationErrors { /** - * @param string [ErrorText=''] - * @param boolean [ClearedOnUpdate=true] + * @param ErrorText [ErrorText=''] + * @param ClearedOnUpdate [ClearedOnUpdate=true] */ Add(Node: CustomXMLNode, ErrorName: string, ErrorText?: string, ClearedOnUpdate?: boolean): void; readonly Application: any; @@ -4118,6 +4326,7 @@ declare namespace Office { readonly Creator: number; Item(Index: number): CustomXMLValidationError; readonly Parent: any; + (Index: number): CustomXMLValidationError; } class DiagramNode { @@ -4125,14 +4334,14 @@ declare namespace Office { private constructor(); /** - * @param Office.MsoRelativeNodePosition [Pos=2] - * @param Office.MsoDiagramNodeType [NodeType=1] + * @param Pos [Pos=2] + * @param NodeType [NodeType=1] */ AddNode(Pos?: MsoRelativeNodePosition, NodeType?: MsoDiagramNodeType): DiagramNode; readonly Application: any; readonly Children: DiagramNodeChildren; - /** @param Office.MsoRelativeNodePosition [Pos=2] */ + /** @param Pos [Pos=2] */ CloneNode(CopyChildren: boolean, TargetNode: DiagramNode, Pos?: MsoRelativeNodePosition): DiagramNode; readonly Creator: number; Delete(): void; @@ -4146,19 +4355,16 @@ declare namespace Office { readonly Root: DiagramNode; readonly Shape: Shape; - /** @param boolean [SwapChildren=true] */ + /** @param SwapChildren [SwapChildren=true] */ SwapNode(TargetNode: DiagramNode, SwapChildren?: boolean): void; readonly TextShape: Shape; TransferChildren(ReceivingNode: DiagramNode): void; } - class DiagramNodeChildren { - private 'Office.DiagramNodeChildren_typekey': DiagramNodeChildren; - private constructor(); - + interface DiagramNodeChildren { /** - * @param any [Index=-1] - * @param Office.MsoDiagramNodeType [NodeType=1] + * @param Index [Index=-1] + * @param NodeType [NodeType=1] */ AddNode(Index?: any, NodeType?: MsoDiagramNodeType): DiagramNode; readonly Application: any; @@ -4169,17 +4375,17 @@ declare namespace Office { readonly LastChild: DiagramNode; readonly Parent: any; SelectAll(): void; + (Index: any): DiagramNode; } - class DiagramNodes { - private 'Office.DiagramNodes_typekey': DiagramNodes; - private constructor(); + interface DiagramNodes { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: any): DiagramNode; readonly Parent: any; SelectAll(): void; + (Index: any): DiagramNode; } class DocumentInspector { @@ -4194,25 +4400,23 @@ declare namespace Office { readonly Parent: any; } - class DocumentInspectors { - private 'Office.DocumentInspectors_typekey': DocumentInspectors; - private constructor(); + interface DocumentInspectors { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): DocumentInspector; readonly Parent: any; + (Index: number): DocumentInspector; } - class DocumentProperties { - private 'Office.DocumentProperties_typekey': DocumentProperties; - private constructor(); + interface DocumentProperties { Add(Name: string, LinkToContent: boolean, Type?: MsoDocProperties, Value?: any, LinkSource?: string): DocumentProperty; Application: TApplication; Count: number; Creator: number; Item(index: string | number): DocumentProperty; Parent: any; + (index: string | number): DocumentProperty; } class DocumentProperty { @@ -4237,22 +4441,21 @@ declare namespace Office { readonly Creator: number; Delete(): void; readonly Index: number; - readonly Modified: any; + readonly Modified: VarDate; readonly ModifiedBy: string; Open(): any; readonly Parent: any; Restore(): any; } - class DocumentLibraryVersions { - private 'Office.DocumentLibraryVersions_typekey': DocumentLibraryVersions; - private constructor(); + interface DocumentLibraryVersions { readonly Application: any; readonly Count: number; readonly Creator: number; readonly IsVersioningEnabled: boolean; Item(lIndex: number): DocumentLibraryVersion; readonly Parent: any; + (lIndex: number): DocumentLibraryVersion; } class EffectParameter { @@ -4264,13 +4467,12 @@ declare namespace Office { Value: any; } - class EffectParameters { - private 'Office.EffectParameters_typekey': EffectParameters; - private constructor(); + interface EffectParameters { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): EffectParameter; + Item(Index: string | number): EffectParameter; + (Index: string | number): EffectParameter; } class FileDialog { @@ -4303,10 +4505,8 @@ declare namespace Office { readonly Parent: any; } - class FileDialogFilters { - private 'Office.FileDialogFilters_typekey': FileDialogFilters; - private constructor(); - Add(Description: string, Extensions: string, Position?: any): FileDialogFilter; + interface FileDialogFilters { + Add(Description: string, Extensions: string, Position?: number): FileDialogFilter; readonly Application: any; Clear(): void; readonly Count: number; @@ -4314,16 +4514,16 @@ declare namespace Office { Delete(filter?: any): void; Item(Index: number): FileDialogFilter; readonly Parent: any; + (Index: number): FileDialogFilter; } - class FileDialogSelectedItems { - private 'Office.FileDialogSelectedItems_typekey': FileDialogSelectedItems; - private constructor(); + interface FileDialogSelectedItems { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): string; readonly Parent: any; + (Index: number): string; } class FileSearch { @@ -4333,9 +4533,9 @@ declare namespace Office { readonly Creator: number; /** - * @param Office.MsoSortBy [SortBy=1] - * @param Office.MsoSortOrder [SortOrder=1] - * @param boolean [AlwaysAccurate=true] + * @param SortBy [SortBy=1] + * @param SortOrder [SortOrder=1] + * @param AlwaysAccurate [AlwaysAccurate=true] */ Execute(SortBy?: MsoSortBy, SortOrder?: MsoSortOrder, AlwaysAccurate?: boolean): number; FileName: string; @@ -4355,15 +4555,14 @@ declare namespace Office { TextOrProperty: string; } - class FileTypes { - private 'Office.FileTypes_typekey': FileTypes; - private constructor(); + interface FileTypes { Add(FileType: MsoFileType): void; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): MsoFileType; Remove(Index: number): void; + (Index: number): MsoFileType; } class FillFormat { @@ -4448,13 +4647,12 @@ declare namespace Office { WordArtformat: MsoPresetTextEffect; } - class FoundFiles { - private 'Office.FoundFiles_typekey': FoundFiles; - private constructor(); + interface FoundFiles { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): string; + (Index: number): string; } class FreeformBuilder { @@ -4462,10 +4660,10 @@ declare namespace Office { private constructor(); /** - * @param number [X2=0] - * @param number [Y2=0] - * @param number [X3=0] - * @param number [Y3=0] + * @param X2 [X2=0] + * @param Y2 [Y2=0] + * @param X3 [X3=0] + * @param Y3 [Y3=0] */ AddNodes(SegmentType: MsoSegmentType, EditingType: MsoEditingType, X1: number, Y1: number, X2?: number, Y2?: number, X3?: number, Y3?: number): void; readonly Application: any; @@ -4494,40 +4692,38 @@ declare namespace Office { Transparency: number; } - class GradientStops { - private 'Office.GradientStops_typekey': GradientStops; - private constructor(); + interface GradientStops { readonly Application: any; readonly Count: number; readonly Creator: number; - /** @param number [Index=-1] */ + /** @param Index [Index=-1] */ Delete(Index?: number): void; /** - * @param number [Transparency=0] - * @param number [Index=-1] + * @param Transparency [Transparency=0] + * @param Index [Index=-1] */ Insert(RGB: number, Position: number, Transparency?: number, Index?: number): void; /** - * @param number [Transparency=0] - * @param number [Index=-1] - * @param number [Brightness=0] + * @param Transparency [Transparency=0] + * @param Index [Index=-1] + * @param Brightness [Brightness=0] */ Insert2(RGB: number, Position: number, Transparency?: number, Index?: number, Brightness?: number): void; Item(Index: number): GradientStop; + (Index: number): GradientStop; } - class GroupShapes { - private 'Office.GroupShapes_typekey': GroupShapes; - private constructor(); + interface GroupShapes { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: any): Shape; readonly Parent: any; Range(Index: any): ShapeRange; + (Index: any): Shape; } class HTMLProject { @@ -4537,14 +4733,14 @@ declare namespace Office { readonly Creator: number; readonly HTMLProjectItems: HTMLProjectItems; - /** @param Office.MsoHTMLProjectOpen [OpenKind=0] */ + /** @param OpenKind [OpenKind=0] */ Open(OpenKind?: MsoHTMLProjectOpen): void; readonly Parent: any; - /** @param boolean [Refresh=true] */ + /** @param Refresh [Refresh=true] */ RefreshDocument(Refresh?: boolean): void; - /** @param boolean [Refresh=true] */ + /** @param Refresh [Refresh=true] */ RefreshProject(Refresh?: boolean): void; readonly State: MsoHTMLProjectState; } @@ -4558,21 +4754,20 @@ declare namespace Office { LoadFromFile(FileName: string): void; readonly Name: string; - /** @param Office.MsoHTMLProjectOpen [OpenKind=0] */ + /** @param OpenKind [OpenKind=0] */ Open(OpenKind?: MsoHTMLProjectOpen): void; readonly Parent: any; SaveCopyAs(FileName: string): void; Text: string; } - class HTMLProjectItems { - private 'Office.HTMLProjectItems_typekey': HTMLProjectItems; - private constructor(); + interface HTMLProjectItems { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: any): HTMLProjectItem; readonly Parent: any; + (Index: any): HTMLProjectItem; } class IAssistance { @@ -4584,7 +4779,7 @@ declare namespace Office { /** * SearchHelp Method - * @param string [Scope=''] + * @param Scope [Scope=''] */ SearchHelp(Query: string, Scope?: string): void; @@ -4593,12 +4788,14 @@ declare namespace Office { /** * ShowHelp Method - * @param string [HelpId=''] - * @param string [Scope=''] + * @param HelpId [HelpId=''] + * @param Scope [Scope=''] */ ShowHelp(HelpId?: string, Scope?: string): void; } + /** For Macintosh only */ + // tslint:disable-next-line:interface-name class IFind { private 'Office.IFind_typekey': IFind; private constructor(); @@ -4631,11 +4828,12 @@ declare namespace Office { View: MsoFileFindView; } - class IFoundFiles { - private 'Office.IFoundFiles_typekey': IFoundFiles; - private constructor(); + /** For Macintosh only */ + // tslint:disable-next-line:interface-name + interface IFoundFiles { readonly Count: number; Item(Index: number): string; + (Index: number): string; } class IMsoBorder { @@ -4669,52 +4867,52 @@ declare namespace Office { private 'Office.IMsoChart_typekey': IMsoChart; private constructor(); - /** @param Office.XlDataLabelsType [Type=2] */ + /** @param Type [Type=2] */ _ApplyDataLabels(Type?: XlDataLabelsType, IMsoLegendKey?: any, AutoText?: any, HasLeaderLines?: any): void; readonly Application: any; ApplyChartTemplate(bstrFileName: string): void; ApplyCustomType(ChartType: XlChartType, TypeName?: any): void; - /** @param Office.XlDataLabelsType [Type=2] */ - ApplyDataLabels( - Type?: XlDataLabelsType, IMsoLegendKey?: any, AutoText?: any, HasLeaderLines?: any, ShowSeriesName?: any, ShowCategoryName?: any, ShowValue?: any, - ShowPercentage?: any, ShowBubbleSize?: any, Separator?: any): void; + /** @param Type [Type=2] */ + ApplyDataLabels(Type?: XlDataLabelsType, IMsoLegendKey?: any, AutoText?: any, HasLeaderLines?: any, ShowSeriesName?: any, ShowCategoryName?: any, ShowValue?: any, ShowPercentage?: any, ShowBubbleSize?: any, Separator?: any): void; ApplyLayout(Layout: number, varChartType?: any): void; readonly Area3DGroup: IMsoChartGroup; AreaGroups(Index?: any): any; AutoFormat(rGallery: number, varFormat?: any): void; AutoScaling: boolean; - /** @param Office.XlAxisGroup [AxisGroup=1] */ + /** @param AxisGroup [AxisGroup=1] */ Axes(Type: any, AxisGroup?: XlAxisGroup): any; readonly BackWall: IMsoWalls; readonly Bar3DGroup: IMsoChartGroup; BarGroups(Index?: any): any; BarShape: XlBarShape; + CategoryLabelLevel: XlCategoryLabelLevel; readonly ChartArea: IMsoChartArea; + ChartColor: any; readonly ChartData: IMsoChartData; ChartGroups(pvarIndex?: any, varIgallery?: any): any; ChartStyle: any; readonly ChartTitle: IMsoChartTitle; ChartType: XlChartType; - ChartWizard( - varSource?: any, varGallery?: any, varFormat?: any, varPlotBy?: any, varCategoryLabels?: any, varSeriesLabels?: any, varHasLegend?: any, varTitle?: any, - varCategoryTitle?: any, varValueTitle?: any, varExtraTitle?: any): void; + ChartWizard(varSource?: any, varGallery?: any, varFormat?: any, varPlotBy?: any, varCategoryLabels?: any, varSeriesLabels?: any, varHasLegend?: any, varTitle?: any, varCategoryTitle?: any, varValueTitle?: any, varExtraTitle?: any): void; + ClearToMatchColorStyle(): void; ClearToMatchStyle(): void; readonly Column3DGroup: IMsoChartGroup; ColumnGroups(Index?: any): any; Copy(): any; /** - * @param number [Appearance=1] - * @param number [Format=-4147] - * @param number [Size=2] + * @param Appearance [Appearance=1] + * @param Format [Format=-4147] + * @param Size [Size=2] */ CopyPicture(Appearance?: number, Format?: number, Size?: number): void; readonly Corners: IMsoCorners; readonly Creator: number; readonly DataTable: IMsoDataTable; Delete(): any; + DeleteHiddenContent(): void; DepthPercent: number; DisplayBlanksAs: XlDisplayBlanksAs; DoughnutGroups(Index?: any): any; @@ -4722,10 +4920,12 @@ declare namespace Office { Export(bstr: string, varFilterName?: any, varInteractive?: any): boolean; readonly Floor: IMsoFloor; readonly Format: IMsoChartFormat; + FullSeriesCollection(Index?: any): any; GapDepth: number; GetChartElement(x: number, y: number, ElementID: number, Arg1: number, Arg2: number): void; HasAxis(axisType?: any, AxisGroup?: any): any; HasDataTable: boolean; + readonly HasHiddenContent: boolean; HasLegend: boolean; HasPivotFields: boolean; HasTitle: boolean; @@ -4749,6 +4949,7 @@ declare namespace Office { SaveChartTemplate(bstrFileName: string): void; Select(Replace?: any): any; SeriesCollection(Index?: any): any; + SeriesNameLevel: XlSeriesNameLevel; SetDefaultChart(varName: any): void; SetElement(RHS: MsoChartElementType): void; SetSourceData(Source: string, PlotBy?: any): void; @@ -4756,6 +4957,7 @@ declare namespace Office { ShowAllFieldButtons: boolean; ShowAxisFieldButtons: boolean; ShowDataLabelsOverMaximum: boolean; + ShowExpandCollapseEntireFieldButtons: boolean; ShowLegendFieldButtons: boolean; ShowReportFilterFieldButtons: boolean; ShowValueFieldButtons: boolean; @@ -4764,7 +4966,7 @@ declare namespace Office { readonly SurfaceGroup: IMsoChartGroup; Type: number; - /** @param boolean [fBackWall=true] */ + /** @param fBackWall [fBackWall=true] */ Walls(fBackWall?: boolean): IMsoWalls; XYGroups(Index?: any): any; } @@ -4799,6 +5001,7 @@ declare namespace Office { private 'Office.IMsoChartData_typekey': IMsoChartData; private constructor(); Activate(): void; + ActivateChartDataWindow(): void; BreakLink(): void; readonly IsLinked: boolean; readonly Workbook: any; @@ -4807,7 +5010,9 @@ declare namespace Office { class IMsoChartFormat { private 'Office.IMsoChartFormat_typekey': IMsoChartFormat; private constructor(); + readonly Adjustments: Adjustments; readonly Application: any; + AutoShapeType: MsoAutoShapeType; readonly Creator: number; readonly Fill: FillFormat; readonly Glow: GlowFormat; @@ -4825,12 +5030,21 @@ declare namespace Office { private constructor(); readonly Application: any; AxisGroup: number; + BinsCountValue: number; + BinsOverflowEnabled: boolean; + BinsOverflowValue: number; + BinsType: XlBinsType; + BinsUnderflowEnabled: boolean; + BinsUnderflowValue: number; + BinWidthValue: number; BubbleScale: number; + CategoryCollection(Index?: any): any; readonly Creator: number; DoughnutHoleSize: number; readonly DownBars: IMsoDownBars; readonly DropLines: IMsoDropLines; FirstSliceAngle: number; + FullCategoryCollection(Index?: any): any; GapWidth: number; Has3DShading: boolean; HasDropLines: boolean; @@ -5137,18 +5351,17 @@ declare namespace Office { Weight: number; } - class MetaProperties { - private 'Office.MetaProperties_typekey': MetaProperties; - private constructor(); + interface MetaProperties { readonly Application: any; readonly Count: number; readonly Creator: number; GetItemByInternalName(InternalName: string): MetaProperty; - Item(Index: any): MetaProperty; + Item(Index: number | string): MetaProperty; readonly Parent: any; readonly SchemaXml: string; Validate(): string; readonly ValidationError: string; + (Index: number | string): MetaProperty; } class MetaProperty { @@ -5170,31 +5383,33 @@ declare namespace Office { class MsoDebugOptions { private 'Office.MsoDebugOptions_typekey': MsoDebugOptions; private constructor(); + AddIgnoredAssertTag(bstrTagToIgnore: string): void; readonly Application: any; readonly Creator: number; FeatureReports: number; OutputToDebugger: boolean; OutputToFile: boolean; OutputToMessageBox: boolean; + RemoveIgnoredAssertTag(bstrTagToIgnore: string): void; readonly UnitTestManager: any; } class MsoEnvelope { private 'Office.MsoEnvelope_typekey': MsoEnvelope; private constructor(); - readonly CommandBars: any; + readonly CommandBars: CommandBars; Introduction: string; - readonly Item: any; + readonly Item: Outlook.MailItem; readonly Parent: any; } class NewFile { private 'Office.NewFile_typekey': NewFile; private constructor(); - Add(FileName: string, Section?: any, DisplayName?: any, Action?: any): boolean; + Add(FileName: string, Section?: MsoFileNewSection, DisplayName?: string, Action?: MsoFileNewAction): boolean; readonly Application: any; readonly Creator: number; - Remove(FileName: string, Section?: any, DisplayName?: any, Action?: any): boolean; + Remove(FileName: string, Section?: MsoFileNewSection, DisplayName?: string, Action?: MsoFileNewAction): boolean; } class OfficeTheme { @@ -5234,10 +5449,8 @@ declare namespace Office { WordWrap: MsoTriState; } - class Permission { - private 'Office.Permission_typekey': Permission; - private constructor(); - Add(UserId: string, Permission?: any, ExpirationDate?: any): UserPermission; + interface Permission { + Add(UserId: string, Permission?: MsoPermission, ExpirationDate?: VarDate): UserPermission; readonly Application: any; ApplyPolicy(FileName: string): void; readonly Count: number; @@ -5253,6 +5466,7 @@ declare namespace Office { RemoveAll(): void; RequestPermissionURL: string; StoreLicenses: boolean; + (Index: any): UserPermission; } class PickerDialog { @@ -5266,8 +5480,8 @@ declare namespace Office { Resolve(TokenText: string, duplicateDlgMode: number): PickerResults; /** - * @param boolean [IsMultiSelect=true] - * @param Office.PickerResults [ExistingResults=0] + * @param IsMultiSelect [IsMultiSelect=true] + * @param ExistingResults [ExistingResults=0] */ Show(IsMultiSelect?: boolean, ExistingResults?: PickerResults): PickerResults; Title: string; @@ -5283,24 +5497,22 @@ declare namespace Office { readonly Type: MsoPickerField; } - class PickerFields { - private 'Office.PickerFields_typekey': PickerFields; - private constructor(); + interface PickerFields { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): PickerField; + (Index: number): PickerField; } - class PickerProperties { - private 'Office.PickerProperties_typekey': PickerProperties; - private constructor(); + interface PickerProperties { Add(Id: string, Value: string, Type: MsoPickerField): PickerProperty; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): PickerProperty; Remove(Id: string): void; + (Index: number): PickerProperty; } class PickerProperty { @@ -5328,16 +5540,14 @@ declare namespace Office { Type: string; } - class PickerResults { - private 'Office.PickerResults_typekey': PickerResults; - private constructor(); - - /** @param string [SIPId=''] */ + interface PickerResults { + /** @param SIPId [SIPId=''] */ Add(Id: string, DisplayName: string, Type: string, SIPId?: string, ItemData?: any, SubItems?: any): PickerResult; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): PickerResult; + (Index: number): PickerResult; } class PictureEffect { @@ -5352,19 +5562,18 @@ declare namespace Office { Visible: MsoTriState; } - class PictureEffects { - private 'Office.PictureEffects_typekey': PictureEffects; - private constructor(); + interface PictureEffects { readonly Application: any; readonly Count: number; readonly Creator: number; - /** @param number [Index=-1] */ + /** @param Index [Index=-1] */ Delete(Index?: number): void; - /** @param number [Position=-1] */ + /** @param Position [Position=-1] */ Insert(EffectType: MsoPictureEffectType, Position?: number): PictureEffect; Item(Index: number): PictureEffect; + (Index: number): PictureEffect; } class PictureFormat { @@ -5411,17 +5620,15 @@ declare namespace Office { readonly Value: any; } - class PropertyTests { - private 'Office.PropertyTests_typekey': PropertyTests; - private constructor(); - - /** @param Office.MsoConnector [Connector=1] */ + interface PropertyTests { + /** @param Connector [Connector=1] */ Add(Name: string, Condition: MsoCondition, Value: any, SecondValue: any, Connector?: MsoConnector): void; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): PropertyTest; Remove(Index: number): void; + (Index: number): PropertyTest; } class ReflectionFormat { @@ -5456,14 +5663,13 @@ declare namespace Office { readonly Parent: any; } - class RulerLevels2 { - private 'Office.RulerLevels2_typekey': RulerLevels2; - private constructor(); + interface RulerLevels2 { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): RulerLevel2; + Item(Index: 1 | 2 | 3 | 4 | 5): RulerLevel2; readonly Parent: any; + (Index: 1 | 2 | 3 | 4 | 5): RulerLevel2; } class ScopeFolder { @@ -5477,13 +5683,12 @@ declare namespace Office { readonly ScopeFolders: ScopeFolders; } - class ScopeFolders { - private 'Office.ScopeFolders_typekey': ScopeFolders; - private constructor(); + interface ScopeFolders { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): ScopeFolder; + (Index: number): ScopeFolder; } class Script { @@ -5501,16 +5706,13 @@ declare namespace Office { readonly Shape: any; } - class Scripts { - private 'Office.Scripts_typekey': Scripts; - private constructor(); - + interface Scripts { /** - * @param Office.MsoScriptLocation [Location=2] - * @param Office.MsoScriptLanguage [Language=2] - * @param string [Id=''] - * @param string [Extended=''] - * @param string [ScriptText=''] + * @param Location [Location=2] + * @param Language [Language=2] + * @param Id [Id=''] + * @param Extended [Extended=''] + * @param ScriptText [ScriptText=''] */ Add(Anchor?: any, Location?: MsoScriptLocation, Language?: MsoScriptLanguage, Id?: string, Extended?: string, ScriptText?: string): Script; readonly Application: any; @@ -5519,17 +5721,17 @@ declare namespace Office { Delete(): void; Item(Index: any): Script; readonly Parent: any; + (Index: any): Script; } - class SearchFolders { - private 'Office.SearchFolders_typekey': SearchFolders; - private constructor(); + interface SearchFolders { Add(ScopeFolder: ScopeFolder): void; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): ScopeFolder; Remove(Index: number): void; + (Index: number): ScopeFolder; } class SearchScope { @@ -5541,28 +5743,26 @@ declare namespace Office { readonly Type: MsoSearchIn; } - class SearchScopes { - private 'Office.SearchScopes_typekey': SearchScopes; - private constructor(); + interface SearchScopes { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SearchScope; + (Index: number): SearchScope; } - class ServerPolicy { - private 'Office.ServerPolicy_typekey': ServerPolicy; - private constructor(); + interface ServerPolicy { readonly Application: any; readonly BlockPreview: boolean; readonly Count: number; readonly Creator: number; readonly Description: string; readonly Id: string; - Item(Index: any): PolicyItem; + Item(Index: number | string): PolicyItem; readonly Name: string; readonly Parent: any; readonly Statement: string; + (Index: number | string): PolicyItem; } class ShadowFormat { @@ -5643,10 +5843,10 @@ declare namespace Office { Rotation: number; readonly RTF: string; - /** @param Office.MsoScaleFrom [fScale=0] */ + /** @param fScale [fScale=0] */ ScaleHeight(Factor: number, RelativeToOriginalSize: MsoTriState, fScale?: MsoScaleFrom): void; - /** @param Office.MsoScaleFrom [fScale=0] */ + /** @param fScale [fScale=0] */ ScaleWidth(Factor: number, RelativeToOriginalSize: MsoTriState, fScale?: MsoScaleFrom): void; readonly Script: Script; Select(Replace?: any): void; @@ -5682,19 +5882,17 @@ declare namespace Office { readonly SegmentType: MsoSegmentType; } - class ShapeNodes { - private 'Office.ShapeNodes_typekey': ShapeNodes; - private constructor(); + interface ShapeNodes { readonly Application: any; readonly Count: number; readonly Creator: number; Delete(Index: number): void; /** - * @param number [X2=0] - * @param number [Y2=0] - * @param number [X3=0] - * @param number [Y3=0] + * @param X2 [X2=0] + * @param Y2 [Y2=0] + * @param X3 [X3=0] + * @param Y3 [Y3=0] */ Insert(Index: number, SegmentType: MsoSegmentType, EditingType: MsoEditingType, X1: number, Y1: number, X2?: number, Y2?: number, X3?: number, Y3?: number): void; Item(Index: any): ShapeNode; @@ -5702,11 +5900,10 @@ declare namespace Office { SetEditingType(Index: number, EditingType: MsoEditingType): void; SetPosition(Index: number, X1: number, Y1: number): void; SetSegmentType(Index: number, SegmentType: MsoSegmentType): void; + (Index: any): ShapeNode; } - class ShapeRange { - private 'Office.ShapeRange_typekey': ShapeRange; - private constructor(); + interface ShapeRange { readonly Adjustments: Adjustments; Align(AlignCmd: MsoAlignCmd, RelativeTo: MsoTriState): void; AlternativeText: string; @@ -5753,6 +5950,9 @@ declare namespace Office { Left: number; readonly Line: LineFormat; LockAspectRatio: MsoTriState; + + /** @param PrimaryShape [PrimaryShape=0] */ + MergeShapes(MergeCmd: MsoMergeCmd, PrimaryShape?: Shape): void; Name: string; readonly Nodes: ShapeNodes; readonly Parent: any; @@ -5765,10 +5965,10 @@ declare namespace Office { Rotation: number; readonly RTF: string; - /** @param Office.MsoScaleFrom [fScale=0] */ + /** @param fScale [fScale=0] */ ScaleHeight(Factor: number, RelativeToOriginalSize: MsoTriState, fScale?: MsoScaleFrom): void; - /** @param Office.MsoScaleFrom [fScale=0] */ + /** @param fScale [fScale=0] */ ScaleWidth(Factor: number, RelativeToOriginalSize: MsoTriState, fScale?: MsoScaleFrom): void; readonly Script: Script; Select(Replace?: any): void; @@ -5790,22 +5990,32 @@ declare namespace Office { Width: number; ZOrder(ZOrderCmd: MsoZOrderCmd): void; readonly ZOrderPosition: number; + (Index: any): Shape; } - class Shapes { - private 'Office.Shapes_typekey': Shapes; - private constructor(); + interface Shapes { AddCallout(Type: MsoCalloutType, Left: number, Top: number, Width: number, Height: number): Shape; AddCanvas(Left: number, Top: number, Width: number, Height: number): Shape; /** - * @param Office.XlChartType [Type=-1] - * @param number [Left=-1] - * @param number [Top=-1] - * @param number [Width=-1] - * @param number [Height=-1] + * @param Type [Type=-1] + * @param Left [Left=-1] + * @param Top [Top=-1] + * @param Width [Width=-1] + * @param Height [Height=-1] */ AddChart(Type?: XlChartType, Left?: number, Top?: number, Width?: number, Height?: number): Shape; + + /** + * @param Style [Style=-1] + * @param Type [Type=-1] + * @param Left [Left=-1] + * @param Top [Top=-1] + * @param Width [Width=-1] + * @param Height [Height=-1] + * @param NewLayout [NewLayout=true] + */ + AddChart2(Style?: number, Type?: XlChartType, Left?: number, Top?: number, Width?: number, Height?: number, NewLayout?: boolean): Shape; AddConnector(Type: MsoConnectorType, BeginX: number, BeginY: number, EndX: number, EndY: number): Shape; AddCurve(SafeArrayOfPoints: any): Shape; AddDiagram(Type: MsoDiagramType, Left: number, Top: number, Width: number, Height: number): Shape; @@ -5813,18 +6023,18 @@ declare namespace Office { AddLine(BeginX: number, BeginY: number, EndX: number, EndY: number): Shape; /** - * @param number [Width=-1] - * @param number [Height=-1] + * @param Width [Width=-1] + * @param Height [Height=-1] */ AddPicture(FileName: string, LinkToFile: MsoTriState, SaveWithDocument: MsoTriState, Left: number, Top: number, Width?: number, Height?: number): Shape; AddPolyline(SafeArrayOfPoints: any): Shape; AddShape(Type: MsoAutoShapeType, Left: number, Top: number, Width: number, Height: number): Shape; /** - * @param number [Left=-1] - * @param number [Top=-1] - * @param number [Width=-1] - * @param number [Height=-1] + * @param Left [Left=-1] + * @param Top [Top=-1] + * @param Width [Width=-1] + * @param Height [Height=-1] */ AddSmartArt(Layout: SmartArtLayout, Left?: number, Top?: number, Width?: number, Height?: number): Shape; AddTable(NumRows: number, NumColumns: number, Left: number, Top: number, Width: number, Height: number): Shape; @@ -5840,6 +6050,7 @@ declare namespace Office { readonly Parent: any; Range(Index: any): ShapeRange; SelectAll(): void; + (Index: any): Shape; } class SharedWorkspace { @@ -5847,13 +6058,13 @@ declare namespace Office { private constructor(); readonly Application: any; readonly Connected: boolean; - CreateNew(URL?: any, Name?: any): void; + CreateNew(URL?: string, Name?: string): void; readonly Creator: number; Delete(): void; Disconnect(): void; readonly Files: SharedWorkspaceFiles; readonly Folders: SharedWorkspaceFolders; - readonly LastRefreshed: any; + readonly LastRefreshed: VarDate; readonly Links: SharedWorkspaceLinks; readonly Members: SharedWorkspaceMembers; Name: string; @@ -5870,25 +6081,24 @@ declare namespace Office { private constructor(); readonly Application: any; readonly CreatedBy: string; - readonly CreatedDate: any; + readonly CreatedDate: VarDate; readonly Creator: number; Delete(): void; readonly ModifiedBy: string; - readonly ModifiedDate: any; + readonly ModifiedDate: VarDate; readonly Parent: any; readonly URL: string; } - class SharedWorkspaceFiles { - private 'Office.SharedWorkspaceFiles_typekey': SharedWorkspaceFiles; - private constructor(); - Add(FileName: string, ParentFolder?: any, OverwriteIfFileAlreadyExists?: any, KeepInSync?: any): SharedWorkspaceFile; + interface SharedWorkspaceFiles { + Add(FileName: string, ParentFolder?: SharedWorkspaceFolder, OverwriteIfFileAlreadyExists?: boolean, KeepInSync?: boolean): SharedWorkspaceFile; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SharedWorkspaceFile; readonly ItemCountExceeded: boolean; readonly Parent: any; + (Index: number): SharedWorkspaceFile; } class SharedWorkspaceFolder { @@ -5896,21 +6106,20 @@ declare namespace Office { private constructor(); readonly Application: any; readonly Creator: number; - Delete(DeleteEventIfFolderContainsFiles?: any): void; + Delete(DeleteEventIfFolderContainsFiles?: boolean): void; readonly FolderName: string; readonly Parent: any; } - class SharedWorkspaceFolders { - private 'Office.SharedWorkspaceFolders_typekey': SharedWorkspaceFolders; - private constructor(); - Add(FolderName: string, ParentFolder?: any): SharedWorkspaceFolder; + interface SharedWorkspaceFolders { + Add(FolderName: string, ParentFolder?: SharedWorkspaceFolder): SharedWorkspaceFolder; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SharedWorkspaceFolder; readonly ItemCountExceeded: boolean; readonly Parent: any; + (Index: number): SharedWorkspaceFolder; } class SharedWorkspaceLink { @@ -5918,28 +6127,27 @@ declare namespace Office { private constructor(); readonly Application: any; readonly CreatedBy: string; - readonly CreatedDate: any; + readonly CreatedDate: VarDate; readonly Creator: number; Delete(): void; Description: string; readonly ModifiedBy: string; - readonly ModifiedDate: any; + readonly ModifiedDate: VarDate; Notes: string; readonly Parent: any; Save(): void; URL: string; } - class SharedWorkspaceLinks { - private 'Office.SharedWorkspaceLinks_typekey': SharedWorkspaceLinks; - private constructor(); - Add(URL: string, Description?: any, Notes?: any): SharedWorkspaceLink; + interface SharedWorkspaceLinks { + Add(URL: string, Description?: string, Notes?: string): SharedWorkspaceLink; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SharedWorkspaceLink; readonly ItemCountExceeded: boolean; readonly Parent: any; + (Index: number): SharedWorkspaceLink; } class SharedWorkspaceMember { @@ -5955,16 +6163,15 @@ declare namespace Office { readonly Parent: any; } - class SharedWorkspaceMembers { - private 'Office.SharedWorkspaceMembers_typekey': SharedWorkspaceMembers; - private constructor(); - Add(Email: string, DomainName: string, DisplayName: string, Role?: any): SharedWorkspaceMember; + interface SharedWorkspaceMembers { + Add(Email: string, DomainName: string, DisplayName: string, Role?: string): SharedWorkspaceMember; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SharedWorkspaceMember; readonly ItemCountExceeded: boolean; readonly Parent: any; + (Index: number): SharedWorkspaceMember; } class SharedWorkspaceTask { @@ -5973,13 +6180,13 @@ declare namespace Office { readonly Application: any; AssignedTo: string; readonly CreatedBy: string; - readonly CreatedDate: any; + readonly CreatedDate: VarDate; readonly Creator: number; Delete(): void; Description: string; - DueDate: any; + DueDate: VarDate; readonly ModifiedBy: string; - readonly ModifiedDate: any; + readonly ModifiedDate: VarDate; readonly Parent: any; Priority: MsoSharedWorkspaceTaskPriority; Save(): void; @@ -5987,16 +6194,15 @@ declare namespace Office { Title: string; } - class SharedWorkspaceTasks { - private 'Office.SharedWorkspaceTasks_typekey': SharedWorkspaceTasks; - private constructor(); - Add(Title: string, Status?: any, Priority?: any, Assignee?: any, Description?: any, DueDate?: any): SharedWorkspaceTask; + interface SharedWorkspaceTasks { + Add(Title: string, Status?: MsoSharedWorkspaceTaskStatus, Priority?: MsoSharedWorkspaceTaskPriority, Assignee?: SharedWorkspaceMember, Description?: string, DueDate?: VarDate): SharedWorkspaceTask; readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): SharedWorkspaceTask; readonly ItemCountExceeded: boolean; readonly Parent: any; + (Index: number): SharedWorkspaceTask; } class Signature { @@ -6008,7 +6214,7 @@ declare namespace Office { readonly Creator: number; Delete(): void; readonly Details: SignatureInfo; - readonly ExpireDate: any; + readonly ExpireDate: VarDate; readonly IsCertificateExpired: boolean; readonly IsCertificateRevoked: boolean; readonly IsSignatureLine: boolean; @@ -6019,8 +6225,8 @@ declare namespace Office { readonly Setup: SignatureSetup; ShowDetails(): void; Sign(varSigImg?: any, varDelSuggSigner?: any, varDelSuggSignerLine2?: any, varDelSuggSignerEmail?: any): void; - readonly SignatureLineShape: any; - readonly SignDate: any; + readonly SignatureLineShape: Shape; + readonly SignDate: VarDate; readonly Signer: string; readonly SortHint: number; } @@ -6048,9 +6254,7 @@ declare namespace Office { SignatureText: string; } - class SignatureSet { - private 'Office.SignatureSet_typekey': SignatureSet; - private constructor(); + interface SignatureSet { Add(): Signature; AddNonVisibleSignature(varSigProv?: any): Signature; AddSignatureLine(varSigProv?: any): Signature; @@ -6063,6 +6267,7 @@ declare namespace Office { readonly Parent: any; readonly ShowSignaturesPane: boolean; Subset: MsoSignatureSubset; + (iSig: number): Signature; } class SignatureSetup { @@ -6109,14 +6314,13 @@ declare namespace Office { readonly Parent: any; } - class SmartArtColors { - private 'Office.SmartArtColors_typekey': SmartArtColors; - private constructor(); + interface SmartArtColors { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): SmartArtColor; + Item(Index: number | string): SmartArtColor; readonly Parent: any; + (Index: number | string): SmartArtColor; } class SmartArtLayout { @@ -6131,14 +6335,13 @@ declare namespace Office { readonly Parent: any; } - class SmartArtLayouts { - private 'Office.SmartArtLayouts_typekey': SmartArtLayouts; - private constructor(); + interface SmartArtLayouts { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): SmartArtLayout; + Item(Index: number | string): SmartArtLayout; readonly Parent: any; + (Index: number | string): SmartArtLayout; } class SmartArtNode { @@ -6146,8 +6349,8 @@ declare namespace Office { private constructor(); /** - * @param Office.MsoSmartArtNodePosition [Position=1] - * @param Office.MsoSmartArtNodeType [Type=1] + * @param Position [Position=1] + * @param Type [Type=1] */ AddNode(Position?: MsoSmartArtNodePosition, Type?: MsoSmartArtNodeType): SmartArtNode; readonly Application: any; @@ -6170,15 +6373,14 @@ declare namespace Office { readonly Type: MsoSmartArtNodeType; } - class SmartArtNodes { - private 'Office.SmartArtNodes_typekey': SmartArtNodes; - private constructor(); + interface SmartArtNodes { Add(): SmartArtNode; readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): SmartArtNode; + Item(Index: number | string): SmartArtNode; readonly Parent: any; + (Index: number | string): SmartArtNode; } class SmartArtQuickStyle { @@ -6193,14 +6395,13 @@ declare namespace Office { readonly Parent: any; } - class SmartArtQuickStyles { - private 'Office.SmartArtQuickStyles_typekey': SmartArtQuickStyles; - private constructor(); + interface SmartArtQuickStyles { readonly Application: any; readonly Count: number; readonly Creator: number; - Item(Index: any): SmartArtQuickStyle; + Item(Index: number | string): SmartArtQuickStyle; readonly Parent: any; + (Index: number | string): SmartArtQuickStyle; } class SmartDocument { @@ -6209,7 +6410,7 @@ declare namespace Office { readonly Application: any; readonly Creator: number; - /** @param boolean [ConsiderAllSchemas=false] */ + /** @param ConsiderAllSchemas [ConsiderAllSchemas=false] */ PickSolution(ConsiderAllSchemas?: boolean): void; RefreshPane(): void; SolutionID: string; @@ -6232,7 +6433,7 @@ declare namespace Office { readonly Creator: number; readonly ErrorType: MsoSyncErrorType; GetUpdate(): void; - readonly LastSyncTime: any; + readonly LastSyncTime: VarDate; OpenVersion(SyncVersionType: MsoSyncVersionType): void; readonly Parent: any; PutUpdate(): void; @@ -6253,16 +6454,15 @@ declare namespace Office { Type: MsoTabStopType; } - class TabStops2 { - private 'Office.TabStops2_typekey': TabStops2; - private constructor(); + interface TabStops2 { Add(Type: MsoTabStopType, Position: number): TabStop2; readonly Application: any; readonly Count: number; readonly Creator: number; DefaultSpacing: number; - Item(Index: any): TabStop2; + Item(Index: number): TabStop2; readonly Parent: any; + (Index: number): TabStop2; } class TextColumn2 { @@ -6348,8 +6548,8 @@ declare namespace Office { ChangeCase(Type: MsoTextChangeCase): void; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Characters(Start?: number, Length?: number): TextRange2; Copy(): void; @@ -6359,42 +6559,48 @@ declare namespace Office { Delete(): void; /** - * @param number [After=0] - * @param Office.MsoTriState [MatchCase=0] - * @param Office.MsoTriState [WholeWords=0] + * @param After [After=0] + * @param MatchCase [MatchCase=0] + * @param WholeWords [WholeWords=0] */ Find(FindWhat: string, After?: number, MatchCase?: MsoTriState, WholeWords?: MsoTriState): TextRange2; readonly Font: Font2; - /** @param string [NewText=''] */ + /** @param NewText [NewText=''] */ InsertAfter(NewText?: string): TextRange2; - /** @param string [NewText=''] */ + /** @param NewText [NewText=''] */ InsertBefore(NewText?: string): TextRange2; - /** @param Office.MsoTriState [Unicode=0] */ + /** + * @param Formula [Formula=''] + * @param Position [Position=-1] + */ + InsertChartField(ChartFieldType: MsoChartFieldType, Formula?: string, Position?: number): TextRange2; + + /** @param Unicode [Unicode=0] */ InsertSymbol(FontName: string, CharNumber: number, Unicode?: MsoTriState): TextRange2; - Item(Index: any): TextRange2; + Item(Index: number): TextRange2; LanguageID: MsoLanguageID; readonly Length: number; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Lines(Start?: number, Length?: number): TextRange2; LtrRun(): void; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ MathZones(Start?: number, Length?: number): TextRange2; readonly ParagraphFormat: ParagraphFormat2; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Paragraphs(Start?: number, Length?: number): TextRange2; readonly Parent: any; @@ -6403,24 +6609,24 @@ declare namespace Office { RemovePeriods(): void; /** - * @param number [After=0] - * @param Office.MsoTriState [MatchCase=0] - * @param Office.MsoTriState [WholeWords=0] + * @param After [After=0] + * @param MatchCase [MatchCase=0] + * @param WholeWords [WholeWords=0] */ Replace(FindWhat: string, ReplaceWhat: string, After?: number, MatchCase?: MsoTriState, WholeWords?: MsoTriState): TextRange2; RotatedBounds(X1: number, Y1: number, X2: number, Y2: number, X3: number, Y3: number, x4: number, y4: number): void; RtlRun(): void; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Runs(Start?: number, Length?: number): TextRange2; Select(): void; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Sentences(Start?: number, Length?: number): TextRange2; readonly Start: number; @@ -6428,8 +6634,8 @@ declare namespace Office { TrimText(): TextRange2; /** - * @param number [Start=-1] - * @param number [Length=-1] + * @param Start [Start=-1] + * @param Length [Length=-1] */ Words(Start?: number, Length?: number): TextRange2; } @@ -6444,9 +6650,7 @@ declare namespace Office { readonly ThemeColorSchemeIndex: MsoThemeColorSchemeIndex; } - class ThemeColorScheme { - private 'Office.ThemeColorScheme_typekey': ThemeColorScheme; - private constructor(); + interface ThemeColorScheme { readonly Application: any; Colors(Index: MsoThemeColorSchemeIndex): ThemeColor; readonly Count: number; @@ -6455,6 +6659,7 @@ declare namespace Office { Load(FileName: string): void; readonly Parent: any; Save(FileName: string): void; + (Index: MsoThemeColorSchemeIndex): ThemeColor; } class ThemeEffectScheme { @@ -6475,14 +6680,13 @@ declare namespace Office { readonly Parent: any; } - class ThemeFonts { - private 'Office.ThemeFonts_typekey': ThemeFonts; - private constructor(); + interface ThemeFonts { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: MsoFontLanguageIndex): ThemeFont; readonly Parent: any; + (Index: MsoFontLanguageIndex): ThemeFont; } class ThemeFontScheme { @@ -6546,7 +6750,7 @@ declare namespace Office { private constructor(); readonly Application: any; readonly Creator: number; - ExpirationDate: any; + ExpirationDate: VarDate; readonly Parent: any; Permission: number; Remove(): void; @@ -6564,13 +6768,12 @@ declare namespace Office { ProportionalFontSize: number; } - class WebPageFonts { - private 'Office.WebPageFonts_typekey': WebPageFonts; - private constructor(); + interface WebPageFonts { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: MsoCharacterSet): WebPageFont; + (Index: MsoCharacterSet): WebPageFont; } class WorkflowTask { @@ -6590,13 +6793,12 @@ declare namespace Office { readonly WorkflowID: string; } - class WorkflowTasks { - private 'Office.WorkflowTasks_typekey': WorkflowTasks; - private constructor(); + interface WorkflowTasks { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): WorkflowTask; + (Index: number): WorkflowTask; } class WorkflowTemplate { @@ -6612,13 +6814,12 @@ declare namespace Office { Show(): number; } - class WorkflowTemplates { - private 'Office.WorkflowTemplates_typekey': WorkflowTemplates; - private constructor(); + interface WorkflowTemplates { readonly Application: any; readonly Count: number; readonly Creator: number; Item(Index: number): WorkflowTemplate; + (Index: number): WorkflowTemplate; } namespace EventHelperTypes { @@ -6703,103 +6904,45 @@ declare namespace Office { } interface ActiveXObject { - on( - obj: Office.CommandBarButton, event: 'Click', argNames: ['Ctrl', 'CancelDefault'], handler: ( - this: Office.CommandBarButton, parameter: {readonly Ctrl: Office.CommandBarButton, CancelDefault: boolean}) => void): void; - on( - obj: Office.CommandBarButton, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CommandBarButton, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CommandBarButton, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CommandBarButton, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CommandBarButton, event: 'Click', argNames: ['Ctrl', 'CancelDefault'], handler: (this: Office.CommandBarButton, parameter: {readonly Ctrl: Office.CommandBarButton, CancelDefault: boolean}) => void): void; + on(obj: Office.CommandBarButton, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CommandBarButton, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CommandBarButton, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CommandBarButton, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CommandBarButton, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CommandBarButton, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CommandBarButton, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBarButton_Invoke_ArgNames, handler: ( - this: Office.CommandBarButton, parameter: Office.EventHelperTypes.CommandBarButton_Invoke_Parameter) => void): void; - on( - obj: Office.CommandBarButton, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: ( - this: Office.CommandBarButton, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; + on(obj: Office.CommandBarButton, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBarButton_Invoke_ArgNames, handler: (this: Office.CommandBarButton, parameter: Office.EventHelperTypes.CommandBarButton_Invoke_Parameter) => void): void; + on(obj: Office.CommandBarButton, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CommandBarButton, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; on(obj: Office.CommandBarComboBox, event: 'Change', argNames: ['Ctrl'], handler: (this: Office.CommandBarComboBox, parameter: {readonly Ctrl: Office.CommandBarComboBox}) => void): void; - on( - obj: Office.CommandBarComboBox, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CommandBarComboBox, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CommandBarComboBox, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CommandBarComboBox, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CommandBarComboBox, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CommandBarComboBox, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CommandBarComboBox, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CommandBarComboBox, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CommandBarComboBox, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CommandBarComboBox, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CommandBarComboBox, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBarComboBox_Invoke_ArgNames, handler: ( - this: Office.CommandBarComboBox, parameter: Office.EventHelperTypes.CommandBarComboBox_Invoke_Parameter) => void): void; - on( - obj: Office.CommandBarComboBox, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: ( - this: Office.CommandBarComboBox, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; - on( - obj: Office.CommandBars, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CommandBars, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CommandBars, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CommandBars, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CommandBarComboBox, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBarComboBox_Invoke_ArgNames, handler: (this: Office.CommandBarComboBox, parameter: Office.EventHelperTypes.CommandBarComboBox_Invoke_Parameter) => void): void; + on(obj: Office.CommandBarComboBox, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CommandBarComboBox, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; + on(obj: Office.CommandBars, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CommandBars, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CommandBars, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CommandBars, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CommandBars, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CommandBars, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CommandBars, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBars_Invoke_ArgNames, handler: ( - this: Office.CommandBars, parameter: Office.EventHelperTypes.CommandBars_Invoke_Parameter) => void): void; + on(obj: Office.CommandBars, event: 'Invoke', argNames: Office.EventHelperTypes.CommandBars_Invoke_ArgNames, handler: (this: Office.CommandBars, parameter: Office.EventHelperTypes.CommandBars_Invoke_Parameter) => void): void; on(obj: Office.CommandBars, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CommandBars, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; - on( - obj: Office.CustomTaskPane, event: 'DockPositionStateChange' | 'VisibleStateChange', argNames: ['CustomTaskPaneInst'], handler: ( - this: Office.CustomTaskPane, parameter: {readonly CustomTaskPaneInst: Office.CustomTaskPane}) => void): void; - on( - obj: Office.CustomTaskPane, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CustomTaskPane, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CustomTaskPane, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CustomTaskPane, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CustomTaskPane, event: 'DockPositionStateChange' | 'VisibleStateChange', argNames: ['CustomTaskPaneInst'], handler: (this: Office.CustomTaskPane, parameter: {readonly CustomTaskPaneInst: Office.CustomTaskPane}) => void): void; + on(obj: Office.CustomTaskPane, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CustomTaskPane, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CustomTaskPane, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CustomTaskPane, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CustomTaskPane, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CustomTaskPane, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CustomTaskPane, event: 'Invoke', argNames: Office.EventHelperTypes.CustomTaskPane_Invoke_ArgNames, handler: ( - this: Office.CustomTaskPane, parameter: Office.EventHelperTypes.CustomTaskPane_Invoke_Parameter) => void): void; - on( - obj: Office.CustomTaskPane, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: ( - this: Office.CustomTaskPane, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CustomXMLPart, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CustomXMLPart, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CustomTaskPane, event: 'Invoke', argNames: Office.EventHelperTypes.CustomTaskPane_Invoke_ArgNames, handler: (this: Office.CustomTaskPane, parameter: Office.EventHelperTypes.CustomTaskPane_Invoke_Parameter) => void): void; + on(obj: Office.CustomTaskPane, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CustomTaskPane, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; + on(obj: Office.CustomXMLPart, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CustomXMLPart, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CustomXMLPart, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CustomXMLPart, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CustomXMLPart, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CustomXMLPart, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'Invoke', argNames: Office.EventHelperTypes.CustomXMLPart_Invoke_ArgNames, handler: ( - this: Office.CustomXMLPart, parameter: Office.EventHelperTypes.CustomXMLPart_Invoke_Parameter) => void): void; - on( - obj: Office.CustomXMLPart, event: 'NodeAfterDelete', argNames: ['OldNode', 'OldParentNode', 'OldNextSibling', 'InUndoRedo'], handler: ( - this: Office.CustomXMLPart, - parameter: { - readonly OldNode: Office.CustomXMLNode, readonly OldParentNode: Office.CustomXMLNode, readonly OldNextSibling: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'NodeAfterInsert', argNames: ['NewNode', 'InUndoRedo'], handler: ( - this: Office.CustomXMLPart, parameter: {readonly NewNode: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'NodeAfterReplace', argNames: ['OldNode', 'NewNode', 'InUndoRedo'], handler: ( - this: Office.CustomXMLPart, parameter: {readonly OldNode: Office.CustomXMLNode, readonly NewNode: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; - on( - obj: Office.CustomXMLPart, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: ( - this: Office.CustomXMLPart, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; - on( - obj: Office.CustomXMLParts, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: ( - this: Office.CustomXMLParts, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; - on( - obj: Office.CustomXMLParts, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: ( - this: Office.CustomXMLParts, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; + on(obj: Office.CustomXMLPart, event: 'Invoke', argNames: Office.EventHelperTypes.CustomXMLPart_Invoke_ArgNames, handler: (this: Office.CustomXMLPart, parameter: Office.EventHelperTypes.CustomXMLPart_Invoke_Parameter) => void): void; + on(obj: Office.CustomXMLPart, event: 'NodeAfterDelete', argNames: ['OldNode', 'OldParentNode', 'OldNextSibling', 'InUndoRedo'], handler: (this: Office.CustomXMLPart, parameter: {readonly OldNode: Office.CustomXMLNode, readonly OldParentNode: Office.CustomXMLNode, readonly OldNextSibling: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; + on(obj: Office.CustomXMLPart, event: 'NodeAfterInsert', argNames: ['NewNode', 'InUndoRedo'], handler: (this: Office.CustomXMLPart, parameter: {readonly NewNode: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; + on(obj: Office.CustomXMLPart, event: 'NodeAfterReplace', argNames: ['OldNode', 'NewNode', 'InUndoRedo'], handler: (this: Office.CustomXMLPart, parameter: {readonly OldNode: Office.CustomXMLNode, readonly NewNode: Office.CustomXMLNode, readonly InUndoRedo: boolean}) => void): void; + on(obj: Office.CustomXMLPart, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CustomXMLPart, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; + on(obj: Office.CustomXMLParts, event: 'GetIDsOfNames', argNames: ['riid', 'rgszNames', 'cNames', 'lcid', 'rgdispid'], handler: (this: Office.CustomXMLParts, parameter: {readonly riid: stdole.GUID, readonly rgszNames: number, readonly cNames: number, readonly lcid: number, rgdispid: number}) => void): void; + on(obj: Office.CustomXMLParts, event: 'GetTypeInfo', argNames: ['itinfo', 'lcid', 'pptinfo'], handler: (this: Office.CustomXMLParts, parameter: {readonly itinfo: number, readonly lcid: number, pptinfo: undefined}) => void): void; on(obj: Office.CustomXMLParts, event: 'GetTypeInfoCount', argNames: ['pctinfo'], handler: (this: Office.CustomXMLParts, parameter: {pctinfo: number}) => void): void; - on( - obj: Office.CustomXMLParts, event: 'Invoke', argNames: Office.EventHelperTypes.CustomXMLParts_Invoke_ArgNames, handler: ( - this: Office.CustomXMLParts, parameter: Office.EventHelperTypes.CustomXMLParts_Invoke_Parameter) => void): void; + on(obj: Office.CustomXMLParts, event: 'Invoke', argNames: Office.EventHelperTypes.CustomXMLParts_Invoke_ArgNames, handler: (this: Office.CustomXMLParts, parameter: Office.EventHelperTypes.CustomXMLParts_Invoke_Parameter) => void): void; on(obj: Office.CustomXMLParts, event: 'PartAfterAdd', argNames: ['NewPart'], handler: (this: Office.CustomXMLParts, parameter: {readonly NewPart: Office.CustomXMLPart}) => void): void; on(obj: Office.CustomXMLParts, event: 'PartAfterLoad', argNames: ['Part'], handler: (this: Office.CustomXMLParts, parameter: {readonly Part: Office.CustomXMLPart}) => void): void; on(obj: Office.CustomXMLParts, event: 'PartBeforeDelete', argNames: ['OldPart'], handler: (this: Office.CustomXMLParts, parameter: {readonly OldPart: Office.CustomXMLPart}) => void): void; - on( - obj: Office.CustomXMLParts, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: ( - this: Office.CustomXMLParts, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; + on(obj: Office.CustomXMLParts, event: 'QueryInterface', argNames: ['riid', 'ppvObj'], handler: (this: Office.CustomXMLParts, parameter: {readonly riid: stdole.GUID, ppvObj: undefined}) => void): void; on(obj: Office.CommandBarButton, event: 'AddRef' | 'Release', handler: (this: Office.CommandBarButton, parameter: {}) => void): void; on(obj: Office.CommandBarComboBox, event: 'AddRef' | 'Release', handler: (this: Office.CommandBarComboBox, parameter: {}) => void): void; on(obj: Office.CommandBars, event: 'AddRef' | 'OnUpdate' | 'Release', handler: (this: Office.CommandBars, parameter: {}) => void): void; @@ -6810,56 +6953,3 @@ interface ActiveXObject { set(obj: Office.CommandBarButton | Office.CommandBarComboBox, propertyName: 'accName' | 'accValue', parameterTypes: [any], newValue: string): void; set(obj: Office.CommandBarComboBox, propertyName: 'List', parameterTypes: [number], newValue: string): void; } - -interface EnumeratorConstructor { - new(col: Office.CanvasShapes | Office.GroupShapes | Office.ShapeRange | Office.Shapes): Enumerator; - new(col: Office.COMAddIns): Enumerator; - new(col: Office.CommandBarControls): Enumerator; - new(col: Office.CommandBars): Enumerator; - new(col: Office.CustomXMLNodes): Enumerator; - new(col: Office.CustomXMLParts): Enumerator; - new(col: Office.CustomXMLPrefixMappings): Enumerator; - new(col: Office.CustomXMLSchemaCollection): Enumerator; - new(col: Office.CustomXMLValidationErrors): Enumerator; - new(col: Office.DiagramNodeChildren | Office.DiagramNodes): Enumerator; - new(col: Office.DocumentInspectors): Enumerator; - new(col: Office.DocumentLibraryVersions): Enumerator; - new(col: Office.EffectParameters): Enumerator; - new(col: Office.FileDialogFilters): Enumerator; - new(col: Office.FileDialogSelectedItems | Office.FoundFiles | Office.IFoundFiles): Enumerator; - new(col: Office.FileTypes): Enumerator; - new(col: Office.GradientStops): Enumerator; - new(col: Office.HTMLProjectItems): Enumerator; - new(col: Office.MetaProperties): Enumerator; - new(col: Office.Permission): Enumerator; - new(col: Office.PickerFields): Enumerator; - new(col: Office.PickerProperties): Enumerator; - new(col: Office.PickerResults): Enumerator; - new(col: Office.PictureEffects): Enumerator; - new(col: Office.PropertyTests): Enumerator; - new(col: Office.RulerLevels2): Enumerator; - new(col: Office.ScopeFolders | Office.SearchFolders): Enumerator; - new(col: Office.Scripts): Enumerator; - new(col: Office.SearchScopes): Enumerator; - new(col: Office.ShapeNodes): Enumerator; - new(col: Office.SharedWorkspaceFiles): Enumerator; - new(col: Office.SharedWorkspaceFolders): Enumerator; - new(col: Office.SharedWorkspaceLinks): Enumerator; - new(col: Office.SharedWorkspaceMembers): Enumerator; - new(col: Office.SharedWorkspaceTasks): Enumerator; - new(col: Office.SignatureSet): Enumerator; - new(col: Office.SmartArtColors): Enumerator; - new(col: Office.SmartArtLayouts): Enumerator; - new(col: Office.SmartArtNodes): Enumerator; - new(col: Office.SmartArtQuickStyles): Enumerator; - new(col: Office.TabStops2): Enumerator; - new(col: Office.TextRange2): Enumerator; - new(col: Office.ThemeFonts): Enumerator; - new(col: Office.WebPageFonts): Enumerator; - new(col: Office.WorkflowTasks): Enumerator; - new(col: Office.WorkflowTemplates): Enumerator; -} - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-office/tslint.json b/types/activex-office/tslint.json index 3224b40b8b..7b89accc6d 100644 --- a/types/activex-office/tslint.json +++ b/types/activex-office/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-outlook/index.d.ts b/types/activex-outlook/index.d.ts index b7a709fe45..37628722b5 100644 --- a/types/activex-outlook/index.d.ts +++ b/types/activex-outlook/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/vba/vba-outlook // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// /// diff --git a/types/activex-powerpoint/index.d.ts b/types/activex-powerpoint/index.d.ts index 6de089010d..ee59fd0be4 100644 --- a/types/activex-powerpoint/index.d.ts +++ b/types/activex-powerpoint/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/fp161225.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// /// diff --git a/types/activex-stdole/index.d.ts b/types/activex-stdole/index.d.ts index 9d0c8f3a3c..e738e4f03d 100644 --- a/types/activex-stdole/index.d.ts +++ b/types/activex-stdole/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/hh272953.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 declare namespace stdole { type IPictureDisp = StdPicture; @@ -86,7 +86,3 @@ interface ActiveXObjectNameMap { StdFont: stdole.StdFont; StdPicture: stdole.StdPicture; } - -interface SafeArray { - _brand: SafeArray; -} diff --git a/types/activex-vbide/activex-vbide-tests.ts b/types/activex-vbide/activex-vbide-tests.ts index c3d92e51cf..02209ec9bd 100644 --- a/types/activex-vbide/activex-vbide-tests.ts +++ b/types/activex-vbide/activex-vbide-tests.ts @@ -1,21 +1,25 @@ -// tslint:disable-next-line no-unnecessary-generics -const collectionToArray = (col: any): T[] => { +/// + +const collectionToArray = (col: { Item(key: any): T }): T[] => { const results: T[] = []; const enumerator = new Enumerator(col); enumerator.moveFirst(); while (!enumerator.atEnd()) { results.push(enumerator.item()); + enumerator.moveNext(); } return results; }; const app = new ActiveXObject('Word.Application'); -const projects = collectionToArray(app.VBE.VBProjects); -projects.forEach(project => { +app.Visible = true; + +for (const project of collectionToArray(app.VBE.VBProjects)) { WScript.Echo(`Name: ${project.Name}`); - collectionToArray(project.References) - .forEach(reference => { - WScript.Echo(` ${reference.Name} ${reference.Major}.${reference.Minor} -- ${reference.FullPath}`); - }); -}); + for (const reference of collectionToArray(project.References)) { + WScript.Echo(` ${reference.Name} ${reference.Major}.${reference.Minor} -- ${reference.FullPath}`); + } +} + +app.Quit(); diff --git a/types/activex-vbide/index.d.ts b/types/activex-vbide/index.d.ts index 83049260c2..88594969e6 100644 --- a/types/activex-vbide/index.d.ts +++ b/types/activex-vbide/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/vba/language-reference-vba/articles/collections-visual-basic-add-in-model // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// @@ -99,14 +99,13 @@ declare namespace VBIDE { readonly VBE: VBE; } - class Addins { - private 'VBIDE.Addins_typekey': Addins; - private constructor(); + interface Addins { readonly Count: number; Item(index: any): AddIn; readonly Parent: any; Update(): void; readonly VBE: VBE; + (index: any): AddIn; } class Application { @@ -125,13 +124,13 @@ declare namespace VBIDE { readonly CountOfLines: number; CreateEventProc(EventName: string, ObjectName: string): number; - /** @param number [Count=1] */ + /** @param Count [Count=1] */ DeleteLines(StartLine: number, Count?: number): void; /** - * @param boolean [WholeWord=false] - * @param boolean [MatchCase=false] - * @param boolean [PatternSearch=false] + * @param WholeWord [WholeWord=false] + * @param MatchCase [MatchCase=false] + * @param PatternSearch [PatternSearch=false] */ Find(Target: string, StartLine: number, StartColumn: number, EndLine: number, EndColumn: number, WholeWord?: boolean, MatchCase?: boolean, PatternSearch?: boolean): boolean; InsertLines(Line: number, String: string): void; @@ -161,14 +160,13 @@ declare namespace VBIDE { readonly Window: Window; } - class CodePanes { - private 'VBIDE.CodePanes_typekey': CodePanes; - private constructor(); + interface CodePanes { readonly Count: number; Current: CodePane; Item(index: any): CodePane; readonly Parent: VBE; readonly VBE: VBE; + (index: any): CodePane; } class CommandBarEvents { @@ -185,9 +183,7 @@ declare namespace VBIDE { readonly Parent: Components; } - class Components { - private 'VBIDE.Components_typekey': Components; - private constructor(); + interface Components { Add(ComponentType: vbext_ComponentType): Component; readonly Application: Application; readonly Count: number; @@ -196,6 +192,7 @@ declare namespace VBIDE { readonly Parent: VBProject; Remove(Component: Component): void; readonly VBE: VBE; + (index: any): Component; } class Events { @@ -205,15 +202,14 @@ declare namespace VBIDE { ReferencesEvents(VBProject: VBProject): ReferencesEvents; } - class LinkedWindows { - private 'VBIDE.LinkedWindows_typekey': LinkedWindows; - private constructor(); + interface LinkedWindows { Add(Window: Window): void; readonly Count: number; Item(index: any): Window; readonly Parent: Window; Remove(Window: Window): void; readonly VBE: VBE; + (index: any): Window; } class ProjectTemplate { @@ -223,14 +219,13 @@ declare namespace VBIDE { readonly Parent: Application; } - class Properties { - private 'VBIDE.Properties_typekey': Properties; - private constructor(); + interface Properties { readonly Application: Application; readonly Count: number; Item(index: any): Property; readonly Parent: any; readonly VBE: VBE; + (index: any): Property; } class Property { @@ -263,9 +258,7 @@ declare namespace VBIDE { readonly VBE: VBE; } - class References { - private 'VBIDE.References_typekey': References; - private constructor(); + interface References { AddFromFile(FileName: string): Reference; AddFromGuid(Guid: string, Major: number, Minor: number): Reference; readonly Count: number; @@ -273,6 +266,7 @@ declare namespace VBIDE { readonly Parent: VBProject; Remove(Reference: Reference): void; readonly VBE: VBE; + (index: any): Reference; } class ReferencesEvents { @@ -298,13 +292,11 @@ declare namespace VBIDE { readonly VBE: VBE; } - class VBComponents { - private 'VBIDE.VBComponents_typekey': VBComponents; - private constructor(); + interface VBComponents { Add(ComponentType: vbext_ComponentType): VBComponent; AddCustom(ProgId: string): VBComponent; - /** @param number [index=0] */ + /** @param index [index=0] */ AddMTDesigner(index?: number): VBComponent; readonly Count: number; Import(FileName: string): VBComponent; @@ -312,6 +304,7 @@ declare namespace VBIDE { readonly Parent: VBProject; Remove(VBComponent: VBComponent): void; readonly VBE: VBE; + (index: any): VBComponent; } class VBE { @@ -354,9 +347,7 @@ declare namespace VBIDE { readonly VBE: VBE; } - class VBProjects { - private 'VBIDE.VBProjects_typekey': VBProjects; - private constructor(); + interface VBProjects { Add(Type: vbext_ProjectType): VBProject; readonly Count: number; Item(index: any): VBProject; @@ -364,6 +355,7 @@ declare namespace VBIDE { readonly Parent: VBE; Remove(lpc: VBProject): void; readonly VBE: VBE; + (index: any): VBProject; } class Window { @@ -386,38 +378,18 @@ declare namespace VBIDE { WindowState: vbext_WindowState; } - class Windows { - private 'VBIDE.Windows_typekey': Windows; - private constructor(); + interface Windows { readonly Count: number; CreateToolWindow(AddInInst: AddIn, ProgId: string, Caption: string, GuidPosition: string, DocObj: any): Window; Item(index: any): Window; readonly Parent: Application; readonly VBE: VBE; + (index: any): Window; } } interface ActiveXObject { - on( - obj: VBIDE.CommandBarEvents, event: 'Click', argNames: ['CommandBarControl', 'handled', 'CancelDefault'], handler: ( - this: VBIDE.CommandBarEvents, parameter: {readonly CommandBarControl: any, readonly handled: boolean, readonly CancelDefault: boolean}) => void): void; + on(obj: VBIDE.CommandBarEvents, event: 'Click', argNames: ['CommandBarControl', 'handled', 'CancelDefault'], handler: (this: VBIDE.CommandBarEvents, parameter: {readonly CommandBarControl: any, readonly handled: boolean, readonly CancelDefault: boolean}) => void): void; on(obj: VBIDE.References, event: 'ItemAdded' | 'ItemRemoved', argNames: ['Reference'], handler: (this: VBIDE.References, parameter: {readonly Reference: VBIDE.Reference}) => void): void; - on( - obj: VBIDE.ReferencesEvents, event: 'ItemAdded' | 'ItemRemoved', argNames: ['Reference'], handler: ( - this: VBIDE.ReferencesEvents, parameter: {readonly Reference: VBIDE.Reference}) => void): void; -} - -interface EnumeratorConstructor { - new(col: VBIDE.Addins): Enumerator; - new(col: VBIDE.CodePanes): Enumerator; - new(col: VBIDE.Components): Enumerator; - new(col: VBIDE.LinkedWindows | VBIDE.Windows): Enumerator; - new(col: VBIDE.Properties): Enumerator; - new(col: VBIDE.References): Enumerator; - new(col: VBIDE.VBComponents): Enumerator; - new(col: VBIDE.VBProjects): Enumerator; -} - -interface SafeArray { - _brand: SafeArray; + on(obj: VBIDE.ReferencesEvents, event: 'ItemAdded' | 'ItemRemoved', argNames: ['Reference'], handler: (this: VBIDE.ReferencesEvents, parameter: {readonly Reference: VBIDE.Reference}) => void): void; } diff --git a/types/activex-vbide/tslint.json b/types/activex-vbide/tslint.json index 3224b40b8b..7b89accc6d 100644 --- a/types/activex-vbide/tslint.json +++ b/types/activex-vbide/tslint.json @@ -1,6 +1,7 @@ { "extends": "dtslint/dt.json", "rules": { - "no-const-enum": false + "no-const-enum": false, + "max-line-length": false } } diff --git a/types/activex-word/index.d.ts b/types/activex-word/index.d.ts index 7fe194552a..879af9021d 100644 --- a/types/activex-word/index.d.ts +++ b/types/activex-word/index.d.ts @@ -2,7 +2,7 @@ // Project: https://msdn.microsoft.com/en-us/library/fp179696.aspx // Definitions by: Zev Spitz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.6 /// /// diff --git a/types/adal-angular/adal-angular-tests.ts b/types/adal-angular/adal-angular-tests.ts index 272591d56e..81293de159 100644 --- a/types/adal-angular/adal-angular-tests.ts +++ b/types/adal-angular/adal-angular-tests.ts @@ -1,10 +1,6 @@ -import AuthenticationContext, { - AuthenticationContextOptions, - TokenCallback, - UserCallback -} from "adal-angular"; +import AuthenticationContext = require("adal-angular"); -const onLogin: TokenCallback = (errorDescription, idToken, error) => { +const onLogin: AuthenticationContext.TokenCallback = (errorDescription, idToken, error) => { if (error) { console.error(errorDescription, error); return; @@ -14,7 +10,7 @@ const onLogin: TokenCallback = (errorDescription, idToken, error) => { } }; -const onToken: TokenCallback = (errorDesc, token, error) => { +const onToken: AuthenticationContext.TokenCallback = (errorDesc, token, error) => { if (error) { console.error(error); return; @@ -22,7 +18,7 @@ const onToken: TokenCallback = (errorDesc, token, error) => { console.log('Making request with token:', token); }; -const onUser: UserCallback = (error, user) => { +const onUser: AuthenticationContext.UserCallback = (error, user) => { if (error) { console.error(error); return; @@ -57,7 +53,7 @@ const acquireAnAccessToken = () => { ); }; -const config: AuthenticationContextOptions = { +const config: AuthenticationContext.Options = { clientId: "7cee0f68-5051-41f6-9e45-80463d21d65d", redirectUri: "http://localhost:16969/", instance: "https://login.microsoftonline.com/", @@ -70,6 +66,7 @@ const config: AuthenticationContextOptions = { }; const authenticationContext = new AuthenticationContext(config); +window.Logging.level = authenticationContext.CONSTANTS.LOGGING_LEVEL.ERROR; if (authenticationContext.isCallback(window.location.hash)) { authenticationContext.handleWindowCallback(); @@ -79,6 +76,11 @@ if (authenticationContext.isCallback(window.location.hash)) { acquireAnAccessToken(); } +const injectedContext = AuthenticationContext.inject({ + clientId: "7cee0f68-5051-41f6-9e45-80463d21d65d", +}); +injectedContext.handleWindowCallback(); + setTimeout(() => { authenticationContext.logOut(); }, 60000); diff --git a/types/adal-angular/index.d.ts b/types/adal-angular/index.d.ts index 00dc813ee8..ea4963b6d2 100644 --- a/types/adal-angular/index.d.ts +++ b/types/adal-angular/index.d.ts @@ -1,142 +1,28 @@ // Type definitions for adal-angular 1.0 // Project: https://github.com/AzureAD/azure-activedirectory-library-for-js#readme // Definitions by: Daniel Perez Alvarez +// Anthony Ciccarello // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -export enum LoggingLevel { - ERROR = 0, - WARNING = 1, - INFO = 2, - VERBOSE = 3 -} +// In module contexts the class constructor function is the exported object +export = AuthenticationContext; -export type RequestType = "LOGIN" | "RENEW_TOKEN" | "UNKNOWN"; +// This class is defined globally in not in a module context +declare class AuthenticationContext { + instance: string; + config: AuthenticationContext.Options; + callback: AuthenticationContext.TokenCallback; + popUp: boolean; + isAngular: boolean; -export type ResponseType = "id_token token" | "token"; + /** + * Enum for request type + */ + REQUEST_TYPE: AuthenticationContext.RequestType; + RESPONSE_TYPE: AuthenticationContext.ResponseType; + CONSTANTS: AuthenticationContext.Constants; -export interface RequestInfo { - /** - * Object comprising of fields such as id_token/error, session_state, state, e.t.c. - */ - parameters: any; - /** - * Request type. - */ - requestType: RequestType; - /** - * Whether state is valid. - */ - stateMatch: boolean; - /** - * Unique guid used to match the response with the request. - */ - stateResponse: string; - /** - * Whether `requestType` contains `id_token`, `access_token` or error. - */ - valid: boolean; -} - -export interface UserInfo { - /** - * Username assigned from UPN or email. - */ - userName: string; - /** - * Properties parsed from `id_token`. - */ - profile: any; -} - -export type TokenCallback = ( - errorDesc: string | null, - token: string, - error: any -) => void; - -export type UserCallback = (errorDesc: string | null, user: UserInfo) => void; - -export interface AuthenticationContextOptions { - /** - * Client ID assigned to your app by Azure Active Directory. - */ - clientId: string; - /** - * Endpoint at which you expect to receive tokens.Defaults to `window.location.href`. - */ - redirectUri: string; - /** - * Azure Active Directory instance. Defaults to `https://login.microsoftonline.com/`. - */ - instance?: string; - /** - * Your target tenant. Defaults to `common`. - */ - tenant?: string; - /** - * Query parameters to add to the authentication request. - */ - extraQueryParameter?: string; - /** - * Unique identifier used to map the request with the response. Defaults to RFC4122 version 4 guid (128 bits). - */ - correlationId?: string; - /** - * User defined function of handling the navigation to Azure AD authorization endpoint in case of login. - */ - displayCall?: (url: string) => void; - /** - * Set this to true to enable login in a popup winodow instead of a full redirect. Defaults to `false`. - */ - popUp?: boolean; - /** - * Set this to the resource to request on login. Defaults to `clientId`. - */ - loginResource?: string; - /** - * Set this to redirect the user to a custom login page. - */ - localLoginUrl?: string; - /** - * Redirects to start page after login. Defaults to `true`. - */ - navigateToLoginRequestUrl?: boolean; - /** - * Set this to redirect the user to a custom logout page. - */ - logOutUri?: string; - /** - * Redirects the user to postLogoutRedirectUri after logout. Defaults to `redirectUri`. - */ - postLogoutRedirectUri?: string; - /** - * Sets browser storage to either 'localStorage' or sessionStorage'. Defaults to `sessionStorage`. - */ - cacheLocation?: "localStorage" | "sessionStorage"; - /** - * Array of keywords or URIs. Adal will attach a token to outgoing requests that have these keywords or URIs. - */ - endpoints?: { [resource: string]: string }; - /** - * Array of keywords or URIs. Adal will not attach a token to outgoing requests that have these keywords or URIs. - */ - anonymousEndpoints?: string[]; - /** - * If the cached token is about to be expired in the expireOffsetSeconds (in seconds), Adal will renew the token instead of using the cached token. Defaults to 300 seconds. - */ - expireOffsetSeconds?: number; - /** - * The number of milliseconds of inactivity before a token renewal response from AAD should be considered timed out. Defaults to 6 seconds. - */ - loadFrameTimeout?: number; - /** - * Callback to be invoked when a token is acquired. - */ - callback?: TokenCallback; -} - -export default class AuthenticationContext { - constructor(options: AuthenticationContextOptions); + constructor(options: AuthenticationContext.Options); /** * Initiates the login process by redirecting the user to Azure AD authorization endpoint. */ @@ -153,7 +39,7 @@ export default class AuthenticationContext { /** * If user object exists, returns it. Else creates a new user object by decoding `id_token` from the cache. */ - getCachedUser(): UserInfo; + getCachedUser(): AuthenticationContext.UserInfo; /** * Adds the passed callback to the array of callbacks for the specified resource. * @param resource A URI that identifies the resource for which the token is requested. @@ -163,14 +49,14 @@ export default class AuthenticationContext { registerCallback( expectedState: string, resource: string, - callback: TokenCallback + callback: AuthenticationContext.TokenCallback ): void; /** * Acquires token from the cache if it is not expired. Otherwise sends request to AAD to obtain a new token. * @param resource Resource URI identifying the target resource. * @param callback The callback provided by the caller. It will be called with token or error. */ - acquireToken(resource: string, callback: TokenCallback): void; + acquireToken(resource: string, callback: AuthenticationContext.TokenCallback): void; /** * Acquires token (interactive flow using a popup window) by sending request to AAD to obtain a new token. * @param resource Resource URI identifying the target resource. @@ -182,7 +68,7 @@ export default class AuthenticationContext { resource: string, extraQueryParameters: string | null | undefined, claims: string | null | undefined, - callback: TokenCallback + callback: AuthenticationContext.TokenCallback ): void; /** * Acquires token (interactive flow using a redirect) by sending request to AAD to obtain a new token. In this case the callback passed in the authentication request constructor will be called. @@ -217,7 +103,7 @@ export default class AuthenticationContext { * Calls the passed in callback with the user object or error message related to the user. * @param callback The callback provided by the caller. It will be called with user or error. */ - getUser(callback: UserCallback): void; + getUser(callback: AuthenticationContext.UserCallback): void; /** * Checks if the URL fragment contains access token, id token or error description. * @param hash Hash passed from redirect page. @@ -230,11 +116,11 @@ export default class AuthenticationContext { /** * Creates a request info object from the URL fragment and returns it. */ - getRequestInfo(hash: string): RequestInfo; + getRequestInfo(hash: string): AuthenticationContext.RequestInfo; /** * Saves token or error received in the response from AAD in the cache. In case of `id_token`, it also creates the user object. */ - saveTokenFromHash(requestInfo: RequestInfo): void; + saveTokenFromHash(requestInfo: AuthenticationContext.RequestInfo): void; /** * Gets resource for given endpoint if mapping is provided with config. * @param endpoint Resource URI identifying the target resource. @@ -252,7 +138,7 @@ export default class AuthenticationContext { * @param message Message to log. * @param error Error to log. */ - log(level: LoggingLevel, message: string, error: any): void; + log(level: AuthenticationContext.LoggingLevel, message: string, error: any): void; /** * Logs messages when logging level is set to 0. * @param message Message to log. @@ -274,4 +160,221 @@ export default class AuthenticationContext { * @param message Message to log. */ verbose(message: string): void; + + /** + * Logs Pii messages when Logging Level is set to 0 and window.piiLoggingEnabled is set to true. + * @param message Message to log. + * @param error Error to log. + */ + errorPii(message: string, error: any): void; + + /** + * Logs Pii messages when Logging Level is set to 1 and window.piiLoggingEnabled is set to true. + * @param message Message to log. + */ + warnPii(message: string): void; + + /** + * Logs messages when Logging Level is set to 2 and window.piiLoggingEnabled is set to true. + * @param message Message to log. + */ + infoPii(message: string): void; + + /** + * Logs messages when Logging Level is set to 3 and window.piiLoggingEnabled is set to true. + * @param message Message to log. + */ + verbosePii(message: string): void; +} + +declare namespace AuthenticationContext { + function inject(config: Options): AuthenticationContext; + + type LoggingLevel = 0 | 1 | 2 | 3; + + type RequestType = "LOGIN" | "RENEW_TOKEN" | "UNKNOWN"; + + type ResponseType = "id_token token" | "token"; + + interface RequestInfo { + /** + * Object comprising of fields such as id_token/error, session_state, state, e.t.c. + */ + parameters: any; + /** + * Request type. + */ + requestType: RequestType; + /** + * Whether state is valid. + */ + stateMatch: boolean; + /** + * Unique guid used to match the response with the request. + */ + stateResponse: string; + /** + * Whether `requestType` contains `id_token`, `access_token` or error. + */ + valid: boolean; + } + + interface UserInfo { + /** + * Username assigned from UPN or email. + */ + userName: string; + /** + * Properties parsed from `id_token`. + */ + profile: any; + } + + type TokenCallback = ( + errorDesc: string | null, + token: string | null, + error: any + ) => void; + + type UserCallback = (errorDesc: string | null, user: UserInfo | null) => void; + + /** + * Configuration options for Authentication Context + */ + interface Options { + /** + * Client ID assigned to your app by Azure Active Directory. + */ + clientId: string; + /** + * Endpoint at which you expect to receive tokens.Defaults to `window.location.href`. + */ + redirectUri?: string; + /** + * Azure Active Directory instance. Defaults to `https://login.microsoftonline.com/`. + */ + instance?: string; + /** + * Your target tenant. Defaults to `common`. + */ + tenant?: string; + /** + * Query parameters to add to the authentication request. + */ + extraQueryParameter?: string; + /** + * Unique identifier used to map the request with the response. Defaults to RFC4122 version 4 guid (128 bits). + */ + correlationId?: string; + /** + * User defined function of handling the navigation to Azure AD authorization endpoint in case of login. + */ + displayCall?: (url: string) => void; + /** + * Set this to true to enable login in a popup winodow instead of a full redirect. Defaults to `false`. + */ + popUp?: boolean; + /** + * Set this to the resource to request on login. Defaults to `clientId`. + */ + loginResource?: string; + /** + * Set this to redirect the user to a custom login page. + */ + localLoginUrl?: string; + /** + * Redirects to start page after login. Defaults to `true`. + */ + navigateToLoginRequestUrl?: boolean; + /** + * Set this to redirect the user to a custom logout page. + */ + logOutUri?: string; + /** + * Redirects the user to postLogoutRedirectUri after logout. Defaults to `redirectUri`. + */ + postLogoutRedirectUri?: string; + /** + * Sets browser storage to either 'localStorage' or sessionStorage'. Defaults to `sessionStorage`. + */ + cacheLocation?: "localStorage" | "sessionStorage"; + /** + * Array of keywords or URIs. Adal will attach a token to outgoing requests that have these keywords or URIs. + */ + endpoints?: { [resource: string]: string }; + /** + * Array of keywords or URIs. Adal will not attach a token to outgoing requests that have these keywords or URIs. + */ + anonymousEndpoints?: string[]; + /** + * If the cached token is about to be expired in the expireOffsetSeconds (in seconds), Adal will renew the token instead of using the cached token. Defaults to 300 seconds. + */ + expireOffsetSeconds?: number; + /** + * The number of milliseconds of inactivity before a token renewal response from AAD should be considered timed out. Defaults to 6 seconds. + */ + loadFrameTimeout?: number; + /** + * Callback to be invoked when a token is acquired. + */ + callback?: TokenCallback; + } + + interface LoggingConfig { + level: LoggingLevel; + log: (message: string) => void; + piiLoggingEnabled: boolean; + } + + /** + * Enum for storage constants + */ + interface Constants { + ACCESS_TOKEN: 'access_token'; + EXPIRES_IN: 'expires_in'; + ID_TOKEN: 'id_token'; + ERROR_DESCRIPTION: 'error_description'; + SESSION_STATE: 'session_state'; + STORAGE: { + TOKEN_KEYS: 'adal.token.keys'; + ACCESS_TOKEN_KEY: 'adal.access.token.key'; + EXPIRATION_KEY: 'adal.expiration.key'; + STATE_LOGIN: 'adal.state.login'; + STATE_RENEW: 'adal.state.renew'; + NONCE_IDTOKEN: 'adal.nonce.idtoken'; + SESSION_STATE: 'adal.session.state'; + USERNAME: 'adal.username'; + IDTOKEN: 'adal.idtoken'; + ERROR: 'adal.error'; + ERROR_DESCRIPTION: 'adal.error.description'; + LOGIN_REQUEST: 'adal.login.request'; + LOGIN_ERROR: 'adal.login.error'; + RENEW_STATUS: 'adal.token.renew.status'; + }; + RESOURCE_DELIMETER: '|'; + LOADFRAME_TIMEOUT: '6000'; + TOKEN_RENEW_STATUS_CANCELED: 'Canceled'; + TOKEN_RENEW_STATUS_COMPLETED: 'Completed'; + TOKEN_RENEW_STATUS_IN_PROGRESS: 'In Progress'; + LOGGING_LEVEL: { + ERROR: 0; + WARN: 1; + INFO: 2; + VERBOSE: 3; + }; + LEVEL_STRING_MAP: { + 0: 'ERROR:'; + 1: 'WARNING:'; + 2: 'INFO:'; + 3: 'VERBOSE:'; + }; + POPUP_WIDTH: 483; + POPUP_HEIGHT: 600; + } +} + +declare global { + interface Window { + Logging: AuthenticationContext.LoggingConfig; + } } diff --git a/types/adal-angular/tsconfig.json b/types/adal-angular/tsconfig.json index 9052e3fc04..f297baa423 100644 --- a/types/adal-angular/tsconfig.json +++ b/types/adal-angular/tsconfig.json @@ -15,10 +15,11 @@ ], "types": [], "noEmit": true, - "forceConsistentCasingInFileNames": true + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true }, "files": [ "index.d.ts", "adal-angular-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/adone/adone.d.ts b/types/adone/adone.d.ts index d4e8b67b7b..6322bf6efc 100644 --- a/types/adone/adone.d.ts +++ b/types/adone/adone.d.ts @@ -1,6 +1,7 @@ /// /// /// +/// declare namespace adone { const _null: symbol; @@ -110,4 +111,6 @@ declare namespace adone { export const lodash: _.LoDashStatic; export const benchmark: typeof tbenchmark; + + export const async: typeof tasync; } diff --git a/types/adone/async.d.ts b/types/adone/async.d.ts new file mode 100644 index 0000000000..4cd3d421da --- /dev/null +++ b/types/adone/async.d.ts @@ -0,0 +1,3 @@ +export * from "async"; + +export as namespace tasync; diff --git a/types/adone/glosses/application.d.ts b/types/adone/glosses/app.d.ts similarity index 90% rename from types/adone/glosses/application.d.ts rename to types/adone/glosses/app.d.ts index 4c9661843a..1c6dee3369 100644 --- a/types/adone/glosses/application.d.ts +++ b/types/adone/glosses/app.d.ts @@ -1,5 +1,5 @@ declare namespace adone { - namespace application { + namespace app { namespace I { type ArgumentType = ((x: string, index: number) => any) | RegExp; @@ -12,7 +12,7 @@ declare namespace adone { | "append" | "count" | "set"; - nargs?: number | "+" | "*" | "?" + nargs?: number | "+" | "*" | "?"; type?: ArgumentType | ArgumentType[]; verify?: (args: any, opts: any) => boolean; // TODO required?: boolean; @@ -49,7 +49,7 @@ declare namespace adone { name?: string; description?: string; subsystems?: SubsystemInfo[]; - commandsGroups?: Group[] + commandsGroups?: Group[]; } interface SubsystemInfo { @@ -71,24 +71,24 @@ declare namespace adone { namespace I { interface LoadSubsystemOptions { - name?: string, - description?: string, - group?: string, - transpile?: boolean + name?: string; + description?: string; + group?: string; + transpile?: boolean; } interface CommonAddSubsystemInfo { - name?: string, - useFilename?: boolean - description?: string, - group?: string, - configureArgs?: any[] - transpile?: boolean, - bind?: boolean | string + name?: string; + useFilename?: boolean; + description?: string; + group?: string; + configureArgs?: any[]; + transpile?: boolean; + bind?: boolean | string; } interface AddSubsystemInfo extends CommonAddSubsystemInfo { - subsystem: Subsystem | string, + subsystem: Subsystem | string; } interface SysInfo { @@ -109,7 +109,7 @@ declare namespace adone { } interface AddSubsystemsFromOptions extends CommonAddSubsystemInfo { - filter?: string[] | ((file: string) => boolean | Promise) + filter?: string[] | ((file: string) => boolean | Promise); } } @@ -211,25 +211,22 @@ declare namespace adone { _rejectionHandled(p: Promise): void; _signalExit(sigName: string): void; - } namespace I { interface Command { - // ? + names: string[]; + // TODO } interface Argument { - // ? + names: string[]; + // TODO } - interface PositionalArgument extends Argument { - // ? - } + type PositionalArgument = Argument; // TODO - interface OptionalArgument extends Argument { - // ? - } + type OptionalArgument = Argument; // TODO interface DefineCommandFromSubsystemOptions { name?: string; diff --git a/types/adone/glosses/collections/byte_array.d.ts b/types/adone/glosses/collections/byte_array.d.ts index 1dc3080fb3..e6f145ce38 100644 --- a/types/adone/glosses/collections/byte_array.d.ts +++ b/types/adone/glosses/collections/byte_array.d.ts @@ -103,6 +103,13 @@ declare namespace adone.collection { */ readUInt16BE(offset?: number): number; + /** + * Reads a 24bit unsigned be integer + * + * @param offset Offset to read from + */ + readUInt24BE(offset?: number): number; + /** * Reads a 32bit signed le integer * @@ -260,6 +267,13 @@ declare namespace adone.collection { */ writeUInt16BE(value: number, offset?: number): this; + /** + * Writes a 24bit unsigned be integer + * + * @param offset Offset to write at + */ + writeUInt24BE(value: number, offset?: number): this; + /** * Writes a 32bit signed le integer * diff --git a/types/adone/glosses/collections/fast_lru.d.ts b/types/adone/glosses/collections/fast_lru.d.ts index e991322bc0..3418f60ffa 100644 --- a/types/adone/glosses/collections/fast_lru.d.ts +++ b/types/adone/glosses/collections/fast_lru.d.ts @@ -4,13 +4,18 @@ declare namespace adone.collection { */ class FastLRU { /** - * @param size Cache size, unlimited by default + * @param size */ - constructor(size?: number, options?: { + constructor(options?: { + /** + * Cache size, unlimited by default + */ + maxSize?: number; + /** * Function that is called when a value is deleted */ - dispose?(key: K, value: V): void + dispose?(key: K, value: V): void; }); /** diff --git a/types/adone/glosses/collections/index.d.ts b/types/adone/glosses/collections/index.d.ts index 234ffe85f4..ab4e744d1a 100644 --- a/types/adone/glosses/collections/index.d.ts +++ b/types/adone/glosses/collections/index.d.ts @@ -16,7 +16,7 @@ /// /// /// -/// +/// declare namespace adone { /** diff --git a/types/adone/glosses/collections/lru.d.ts b/types/adone/glosses/collections/lru.d.ts index 7d41e32cd5..730845ae16 100644 --- a/types/adone/glosses/collections/lru.d.ts +++ b/types/adone/glosses/collections/lru.d.ts @@ -6,7 +6,7 @@ declare namespace adone.collection { * The maximum size of the cache, checked by applying the length function to all values in the cache. * Default is Infinity */ - max?: number; + maxSize?: number; /** * Maximum age in ms. Items are not pro-actively pruned out as they age, @@ -85,11 +85,6 @@ declare namespace adone.collection { * Represent an LRU cache */ class LRU { - /** - * Creates an LRU cache of the given size - */ - constructor(max: number); - /** * Creates an LRU cache with the given options */ @@ -98,7 +93,7 @@ declare namespace adone.collection { /** * The length of the cache, setter resizes the cache */ - max: number; + maxSize: number; /** * stale setting diff --git a/types/adone/glosses/collections/ns_cache.d.ts b/types/adone/glosses/collections/ns_cache.d.ts index 5630c295d3..1c6e88702f 100644 --- a/types/adone/glosses/collections/ns_cache.d.ts +++ b/types/adone/glosses/collections/ns_cache.d.ts @@ -1,6 +1,6 @@ declare namespace adone.collection { class NSCache { - constructor(size: number, namespaces: string[]); + constructor(maxSize: number, namespaces: string[]); resize(newSize: number): void; diff --git a/types/adone/glosses/collections/timedout_map.d.ts b/types/adone/glosses/collections/time_map.d.ts similarity index 93% rename from types/adone/glosses/collections/timedout_map.d.ts rename to types/adone/glosses/collections/time_map.d.ts index fedcf79fa2..ae5d23e62b 100644 --- a/types/adone/glosses/collections/timedout_map.d.ts +++ b/types/adone/glosses/collections/time_map.d.ts @@ -2,7 +2,7 @@ declare namespace adone.collection { /** * Represents a Map that keeps keys only for a specified interval of time */ - class TimedoutMap extends Map { + class TimeMap extends Map { /** * @param timeout maximum age of the keys, 1000 by default * @param callback callback that is called with each key when the timeout is passed diff --git a/types/adone/glosses/is.d.ts b/types/adone/glosses/is.d.ts index d112d3f109..bf8bb0a347 100644 --- a/types/adone/glosses/is.d.ts +++ b/types/adone/glosses/is.d.ts @@ -320,12 +320,12 @@ declare namespace adone { /** * Checks whether the given object is an adone subsystem */ - export function subsystem(obj: any): obj is adone.application.Subsystem; + export function subsystem(obj: any): obj is adone.app.Subsystem; /** * Checks whether the given object is an adone application */ - export function application(obj: any): obj is adone.application.Application; + export function application(obj: any): obj is adone.app.Application; /** * Checks whether the given object is an adone logger @@ -490,12 +490,17 @@ declare namespace adone { /** * Checks whether the given string is an IPv4 address */ - export function ip4(str: string): boolean; + export function ip4(str: string, options?: adone.regex.I.IP.Options): boolean; /** * Checks whether the given string is an IPv6 address */ - export function ip6(str: string): boolean; + export function ip6(str: string, options?: adone.regex.I.IP.Options): boolean; + + /** + * Checks whether the given string is IPv4 or IPv6 address + */ + export function ip(str: string, options?: adone.regex.I.IP.Options): boolean; /** * Checks whether the given object is an array buffer @@ -628,21 +633,6 @@ declare namespace adone { requireTld?: boolean }): obj is string; - /** - * Checks whether the given object is a valid IPv4 address - */ - export function ip(obj: any, version: 4): boolean; - - /** - * Checks whether the given object is a valid IPv6 address - */ - export function ip(obj: any, version: 6): boolean; - - /** - * Checks whether the given object in a valid IPv4 or IPv6 address - */ - export function ip(obj: any): boolean; - /** * Checks whether the given object is a valid UUIDv1 identifier */ @@ -680,5 +670,10 @@ declare namespace adone { export const openbsd: boolean; export const aix: boolean; + + /** + * Checks whether the given object is adone.multi.address.Multiaddr + */ + export function multiAddress(obj: any): boolean; // TODO: obj is adone.multi.address.Multiaddr } } diff --git a/types/adone/glosses/math/bignumber.d.ts b/types/adone/glosses/math/bignumber.d.ts new file mode 100644 index 0000000000..f746ebfe02 --- /dev/null +++ b/types/adone/glosses/math/bignumber.d.ts @@ -0,0 +1,227 @@ +declare namespace adone.math { + namespace I.BigNumber { + interface BufferConvertOptions { + endian?: 1 | -1 | "big" | "little"; + size?: "auto" | number; + } + } + + /** + * Represents a number of arbitrary precision + */ + class BigNumber { + /** + * Creates a BigNumber from the given value, the base is 10 + */ + constructor(n: number | string | BigNumber); + + /** + * Creates a BigNumber from the given string and base + */ + constructor(n: string, base: number); + + /** + * Converts the number to a string in the given base + */ + toString(base?: number): string; + + /** + * Converts the bignum into a Number. + * If the bignum is too big you'll lose precision or you'll get ±Infinity. + */ + toNumber(): number; + + /** + * Returns a new Buffer with the data from the bignum. + */ + toBuffer(opts?: I.BigNumber.BufferConvertOptions): Buffer; + + /** + * Returns a new bignum containing the instance value plus n + */ + add(n: number | string | BigNumber): BigNumber; + + /** + * Return a new bignum containing the instance value minus n + */ + sub(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum containing the instance value multiplied by n + */ + mul(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum containing the instance value integrally divided by n + */ + div(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the absolute value of the instance + */ + abs(): BigNumber; + + /** + * Returns a new bignum with the negative of the instance value + */ + neg(): BigNumber; + + /** + * Compares the instance value to n. + * + * Returns a positive integer if > n, a negative integer if < n, and 0 if == n + */ + cmp(n: number | string | BigNumber): number; + + /** + * Checks whether the instance value is greater than n (> n). + */ + gt(n: number | string | BigNumber): boolean; + + /** + * Checks whether the instance value is greater than or equal to n (>= n). + */ + ge(n: number | string | BigNumber): boolean; + + /** + * Checks whether the instance value is equal to n (== n). + */ + eq(n: number | string | BigNumber): boolean; + + /** + * Checks whether the instance value is less than n (< n). + */ + lt(n: number | string | BigNumber): boolean; + + /** + * Checks whether the instance value is less than or equal to n (<= n). + */ + le(n: number | string | BigNumber): boolean; + + /** + * Returns a new bignum with the instance value bitwise AND (&)-ed with n. + */ + and(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the instance value bitwise inclusive-OR (|)-ed with n. + */ + or(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the instance value bitwise exclusive-OR (^)-ed with n. + */ + xor(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the instance value modulo n. + */ + mod(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the instance value raised to the nth power. + */ + pow(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum with the instance value raised to the nth power modulo m. + */ + powm(n: number | string | BigNumber, m: number | string | BigNumber): BigNumber; + + /** + * Computes the multiplicative inverse modulo m. + */ + invertm(m: number | string | BigNumber): BigNumber; + + /** + * Returns a random number from 0 to this -1 + */ + rand(): BigNumber; + + /** + * Returns a random number from this to upperBound - 1 + */ + rand(upperBound: number | string | BigNumber): BigNumber; + + /** + * Checks whether the bignum is: + * + * - certainly prime (true) + * + * - probably prime ('maybe') + * + * - certainly composite (false) + */ + probPrime(): boolean | "maybe"; + + /** + * Returns the next prime number after this bignum + */ + nextPrime(): BigNumber; + + /** + * Returns a new bignum that is the square root. This truncates. + */ + sqrt(): BigNumber; + + /** + * Returns a new bignum that is the nth root. This truncates. + */ + root(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum that is the 2^n multiple. Equivalent of the << operator. + */ + shiftLeft(n: number | string | BigNumber): BigNumber; + + /** + * Returns a new bignum of the value integer divided by 2^n. Equivalent of the >> operator. + */ + shiftRight(n: number | string | BigNumber): BigNumber; + + /** + * Returns the greatest common divisor of the current bignum with n as a new bignum. + */ + gcd(n: number | string | BigNumber): BigNumber; + + /** + * Returns the Jacobi symbol (or Legendre symbol if n is prime) of the current bignum (= a) over n. + * Note that n must be odd and >= 3. 0 <= a < n. + * Returns -1 or 1 + */ + jacobi(n: number | string | BigNumber): number; + + /** + * Returns the number of bits used to represent the current bignum + */ + bitLength(): number; + + /** + * Checks whether the bit at the given index is set + */ + isBitSet(n: number): boolean; + + /** + * Generates a probable prime number of length bits. + * + * @param bits the number of bits + * @param safe If true, it will be a "safe" prime of the form p=2p'+1 where p' is also prime. Default: true + */ + static prime(bits: number, safe?: boolean): BigNumber; + + /** + * Creates a new bignum from a Buffer. + */ + static fromBuffer(buf: Buffer, opts?: I.BigNumber.BufferConvertOptions): BigNumber; + + /** + * One + */ + static ONE: BigNumber; + + /** + * Zero + */ + static ZERO: BigNumber; + } +} diff --git a/types/adone/glosses/math/bitset.d.ts b/types/adone/glosses/math/bitset.d.ts new file mode 100644 index 0000000000..a6bbd36989 --- /dev/null +++ b/types/adone/glosses/math/bitset.d.ts @@ -0,0 +1,225 @@ +declare namespace adone.math { + /** + * Represents a set of bits + */ + class BitSet { + /** + * Creates a new bitset of n bits + */ + constructor(n: number); + + /** + * Creates a new bitset from a dehydrated bitset + */ + constructor(key: string); + + /** + * Checks whether a bit at a specific index is set + */ + get(idx: number): boolean; + + /** + * Sets a single bit. + * Returns true if set was successfull + */ + set(idx: number): boolean; + + /** + * Sets a range of bits. + * Returns true if set was successfull + */ + setRange(from: number, to: number): boolean; + + /** + * Unsets a single bit. + * Returns true if unset was successfull + */ + unset(idx: number): boolean; + + /** + * Unsets a range of bits. + * Returns true if unset was successfull + */ + unsetRange(from: number, to: number): boolean; + + /** + * Toggles a single bit + */ + toggle(idx: number): boolean; + + /** + * Toggles a range of bits + */ + toggleRange(from: number, to: number): boolean; + + /** + * Clears the entire bitset + */ + clear(): boolean; + + /** + * Clones the set + */ + clone(): BitSet; + + /** + * Turns the bitset into a comma separated string that skips leading & trailing 0 words. + * Ends with the number of leading 0s and MAX_BIT. + * Useful if you need the bitset to be an object key (eg dynamic programming). + * Can rehydrate by passing the result into the constructor + */ + dehydrate(): string; + + /** + * Performs a bitwise AND on 2 bitsets or 1 bitset and 1 index. + * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. + */ + and(value: number | BitSet): BitSet; + + /** + * Performs a bitwise OR on 2 bitsets or 1 bitset and 1 index. + * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. + */ + or(value: number | BitSet): BitSet; + + /** + * Performs a bitwise XOR on 2 bitsets or 1 bitset and 1 index. + * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. + */ + xor(value: number | BitSet): BitSet; + + /** + * Runs a custom function on every set bit. + * Faster than iterating over the entire bitset with a get(). + * If the callback returns `false` it stops iterating. + */ + forEach(callback: ((idx: number) => void | boolean)): void; + + /** + * Performs a circular shift bitset by an offset + * + * @param n number of positions that the bitset that will be shifted to the right. Using a negative number will result in a left shift. + */ + circularShift(n: number): BitSet; + + /** + * Gets the cardinality (count of set bits) for the entire bitset + */ + getCardinality(): number; + + /** + * Gets the indices of all set bits + */ + getIndices(): number[]; + + /** + * Checks if one bitset is subset of another. + */ + isSubsetOf(other: BitSet): boolean; + + /** + * Quickly determines if a bitset is empty + */ + isEmpty(): boolean; + + /** + * Quickly determines if both bitsets are equal (faster than checking if the XOR of the two is === 0). + * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. + */ + isEqual(other: BitSet): boolean; + + /** + * Gets a string representation of the entire bitset, including leading 0s + */ + toString(): string; + + /** + * Finds first set bit (useful for processing queues, breadth-first tree searches, etc.). + * Returns -1 if not found + * + * @param startWord the word to start with (only used internally by nextSetBit) + */ + ffs(startWord?: number): number; + + /** + * Finds first zero (unset bit). + * Returns -1 if not found + * + * @param startWord the word to start with (only used internally by nextUnsetBit) + */ + ffz(startWord?: number): number; + + /** + * Finds last set bit. + * Returns -1 if not found + * + * @param startWord the word to start with (only used internally by previousSetBit) + */ + fls(startWord?: number): number; + + /** + * Finds last zero (unset bit). + * Returns -1 if not found + * + * @param startWord the word to start with (only used internally by previousUnsetBit) + */ + flz(startWord?: number): number; + + /** + * Finds first set bit, starting at a given index. + * Return -1 if not found + * + * @param idx the starting index for the next set bit + */ + nextSetBit(idx: number): number; + + /** + * Finds first unset bit, starting at a given index. + * Return -1 if not found + * + * @param idx the starting index for the next unset bit + */ + nextUnsetBit(idx: number): number; + + /** + * Finds last set bit, up to a given index. + * Returns -1 if not found + * + * @param idx the starting index for the next unset bit (going in reverse) + */ + previousSetBit(idx: number): number; + + /** + * Finds last unset bit, up to a given index. + * Returns -1 if not found + */ + previousUnsetBit(idx: number): number; + + /** + * Converts the bitset to a math.Long number + */ + toLong(): Long; + + /** + * Reads an unsigned integer of the given bits from the given offset + * + * @param bits number of bits, 1 by default + * @param offset offset, 0 by default + */ + readUInt(bits?: number, offset?: number): number; + + /** + * Writes the given unsigned integer + * + * @param val integer + * @param bits number of bits to write, 1 by default + * @param offset write offset, 0 by default + */ + writeUInt(val: number, bits?: number, offset?: number): void; + + /** + * Creates a new BitSet from the given math.Long number + */ + static fromLong(l: Long): BitSet; + } +} diff --git a/types/adone/glosses/math/decimal.d.ts b/types/adone/glosses/math/decimal.d.ts new file mode 100644 index 0000000000..a7acb0ecad --- /dev/null +++ b/types/adone/glosses/math/decimal.d.ts @@ -0,0 +1,1287 @@ +declare namespace adone.math { + namespace I.Decimal { + type Constructor = typeof Decimal; + type Instance = Decimal; + type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; + type Modulo = Rounding | 9; + type Value = string | number | Decimal; + + interface Config { + /** + * The maximum number of significant digits of the result of an operation. + * + * @default 20 + */ + precision?: number; + + /** + * The default rounding mode used when rounding the result of an operation to precision significant digits, and when rounding + * the return value of the round, toBinary, toDecimalPlaces, toExponential, toFixed, toHexadecimal, toNearest, toOctal, + * toPrecision and toSignificantDigits methods. + * + * @default 4 (ROUND_HALF_UP) + */ + rounding?: Rounding; + + /** + * The negative exponent value at and below which toString returns exponential notation. + * + * JavaScript numbers use exponential notation for negative exponents of -7 and below. + * + * @default -7 + */ + toExpNeg?: number; + + /** + * The positive exponent value at and above which toString returns exponential notation. + * + * JavaScript numbers use exponential notation for positive exponents of 20 and above. + * + * @default 20 + */ + toExpPos?: number; + + /** + * The negative exponent limit, i.e. the exponent value below which underflow to zero occurs. + * + * If the Decimal to be returned by a calculation would have an exponent lower than minE then the value of that Decimal becomes zero. + * + * JavaScript numbers underflow to zero for exponents below -324. + * + * @default -9e15 + */ + minE?: number; + + /** + * The positive exponent limit, i.e. the exponent value above which overflow to Infinity occurs. + * + * If the Decimal to be returned by a calculation would have an exponent higher than maxE then the value of that Decimal becomes Infinity. + * + * JavaScript numbers overflow to Infinity for exponents above 308. + * + * @default 9e15 + */ + maxE?: number; + + /** + * The value that determines whether cryptographically-secure pseudo-random number generation is used. + */ + crypto?: boolean; + + /** + * The modulo mode used when calculating the modulus: a mod n. + * + * The quotient, q = a / n, is calculated according to the rounding mode that corresponds to the chosen modulo mode. + * + * The remainder, r, is calculated as: r = a - n * q. + * + * @default 1 (ROUND_DOWN) + */ + modulo?: Modulo; + + defaults?: boolean; + } + } + + /** + * An arbitrary precision decimal number + */ + class Decimal { + /** + * digits + */ + readonly d: number[]; + + /** + * exponent + */ + readonly e: number; + + /** + * sign + */ + readonly s: number; + + private readonly name: string; + + constructor(x: I.Decimal.Value); + + /** + * Returns a new Decimal whose value is the absolute value, i.e. the magnitude, of the value of this Decimal. + * + * @alias abs + */ + absoluteValue(): Decimal; + + /** + * Returns a new Decimal whose value is the absolute value, i.e. the magnitude, of the value of this Decimal. + * + * @alias absoluteValue + */ + abs(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to a whole number in the direction of positive Infinity. + * + * The return value is not affected by the value of the precision setting. + */ + ceil(): Decimal; + + /** + * 1 if the value of this Decimal is greater than the value of x + * + * -1 if the value of this Decimal is less than the value of x + * + * 0 if this Decimal and x have the same value + * + * NaN if the value of either this Decimal or x is NaN + * + * @alias cmp + */ + comparedTo(x: I.Decimal.Value): number; + + /** + * 1 if the value of this Decimal is greater than the value of x + * + * -1 if the value of this Decimal is less than the value of x + * + * 0 if this Decimal and x have the same value + * + * NaN if the value of either this Decimal or x is NaN + * + * @alias comparedTo + */ + cmp(x: I.Decimal.Value): number; + + /** + * Returns a new Decimal whose value is the cosine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias cos + */ + cosine(): Decimal; + + /** + * Returns a new Decimal whose value is the cosine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias cosine + */ + cos(): Decimal; + + /** + * Returns a new Decimal whose value is the cube root of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * + * @alias cbrt + */ + cubeRoot(): Decimal; + + /** + * Returns a new Decimal whose value is the cube root of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * + * @alias cubeRoot + */ + cbrt(): Decimal; + + /** + * Returns the number of decimal places, i.e. the number of digits after the decimal point, of the value of this Decimal. + * + * @alias dp + */ + decimalPlaces(): number; + + /** + * Returns the number of decimal places, i.e. the number of digits after the decimal point, of the value of this Decimal. + * + * @alias decimalPlaces + */ + dp(): number; + + /** + * Returns a new Decimal whose value is the value of this Decimal divided by x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias div + */ + dividedBy(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal divided by x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias dividedBy + */ + div(x: I.Decimal.Value): Decimal; + + /** + * Return a new Decimal whose value is the integer part of dividing this Decimal by x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias divToInt + */ + dividedToIntegerBy(x: I.Decimal.Value): Decimal; + + /** + * Return a new Decimal whose value is the integer part of dividing this Decimal by x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias dividedToIntegerBy + */ + divToInt(x: I.Decimal.Value): Decimal; + + /** + * Returns true if the value of this Decimal equals the value of x, otherwise returns false. + * As with JavaScript, NaN does not equal NaN. + * + * @alias eq + */ + equals(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal equals the value of x, otherwise returns false. + * As with JavaScript, NaN does not equal NaN. + * + * @alias equals + */ + eq(x: I.Decimal.Value): boolean; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to a whole number in the direction of negative Infinity. + * + * The return value is not affected by the value of the precision setting. + */ + floor(): Decimal; + + /** + * Returns true if the value of this Decimal is greater than the value of x, otherwise returns false. + * + * @alias gt + */ + greaterThan(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is greater than the value of x, otherwise returns false. + * + * @alias greaterThan + */ + gt(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is greater than or equal to the value of x, otherwise returns false. + * + * @alias gte + */ + greaterThanOrEqualTo(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is greater than or equal to the value of x, otherwise returns false. + * + * @alias greaterThanOrEqualTo + */ + gte(x: I.Decimal.Value): boolean; + + /** + * Returns a new Decimal whose value is the hyperbolic cosine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias cosh + */ + hyperbolicCosine(): Decimal; + + /** + * Returns a new Decimal whose value is the hyperbolic cosine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias hyperbolicCosine + */ + cosh(): Decimal; + + /** + * Returns a new Decimal whose value is the hyperbolic sine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias sinh + */ + hyperbolicSine(): Decimal; + + /** + * Returns a new Decimal whose value is the hyperbolic sine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias hyperbolicSine + */ + sinh(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias tanh + */ + hyperbolicTangent(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias hyperbolicTangent + */ + tanh(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse cosine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias acos + */ + inverseCosine(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse cosine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseCosine + */ + acos(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic cosine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias acosh + */ + inverseHyperbolicCosine(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic cosine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseHyperbolicCosine + */ + acosh(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic sine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias asinh + */ + inverseHyperbolicSine(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic sine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseHyperbolicSine + */ + asinh(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias atanh + */ + inverseHyperbolicTangent(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseHyperbolicTangent + */ + atanh(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse sine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias asin + */ + inverseSine(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse sine in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseSine + */ + asin(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias atan + */ + inverseTangent(): Decimal; + + /** + * Returns a new Decimal whose value is the inverse tangent in radians of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias inverseTangent + */ + atan(): Decimal; + + /** + * Returns true if the value of this Decimal is a finite number, otherwise returns false. + * The only possible non-finite values of a Decimal are NaN, Infinity and -Infinity. + */ + isFinite(): boolean; + + /** + * Returns true if the value of this Decimal is a whole number, otherwise returns false. + * + * @alias isInt + */ + isInteger(): boolean; + + /** + * Returns true if the value of this Decimal is a whole number, otherwise returns false. + * + * @alias isInteger + */ + isInt(): boolean; + + /** + * Returns true if the value of this Decimal is NaN, otherwise returns false. + */ + isNaN(): boolean; + + /** + * Returns true if the value of this Decimal is negative, otherwise returns false. + * + * @alias isNeg + */ + isNegative(): boolean; + + /** + * Returns true if the value of this Decimal is negative, otherwise returns false. + * + * @alias isNegative + */ + isNeg(): boolean; + + /** + * Returns true if the value of this Decimal is positive, otherwise returns false. + * + * @alias isPos + */ + isPositive(): boolean; + + /** + * Returns true if the value of this Decimal is positive, otherwise returns false. + * + * @alias isPositive + */ + isPos(): boolean; + + /** + * Returns true if the value of this Decimal is zero or minus zero, otherwise returns false. + */ + isZero(): boolean; + + /** + * Returns true if the value of this Decimal is less than the value of x, otherwise returns false. + * + * @alias lt + */ + lessThan(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is less than the value of x, otherwise returns false. + * + * @alias lessThan + */ + lt(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is less than or equal to the value of x, otherwise returns false. + * + * @alias lte + */ + lessThanOrEqualTo(x: I.Decimal.Value): boolean; + + /** + * Returns true if the value of this Decimal is less than or equal to the value of x, otherwise returns false. + * + * @alias lessThanOrEqualTo + */ + lte(x: I.Decimal.Value): boolean; + + /** + * Returns a new Decimal whose value is the base x logarithm of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias log + */ + logarithm(n?: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base x logarithm of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias logarithm + */ + log(n?: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal minus x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias sub + */ + minus(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal minus x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias minus + */ + sub(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal modulo x, + * rounded to precision significant digits using rounding mode rounding. + * + * The value returned, and in particular its sign, is dependent on the value of the modulo property of this Decimal's constructor. + * If it is 1 (default value), the result will have the same sign as this Decimal, + * and it will match that of Javascript's % operator (within the limits of double precision) and BigDecimal's remainder method. + * + * @alias mod + */ + modulo(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal modulo x, + * rounded to precision significant digits using rounding mode rounding. + * + * The value returned, and in particular its sign, is dependent on the value of the modulo property of this Decimal's constructor. + * If it is 1 (default value), the result will have the same sign as this Decimal, + * and it will match that of Javascript's % operator (within the limits of double precision) and BigDecimal's remainder method. + * + * @alias modulo + */ + mod(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base e (Euler's number, the base of the natural logarithm) exponential of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias exp + */ + naturalExponential(): Decimal; + + /** + * Returns a new Decimal whose value is the base e (Euler's number, the base of the natural logarithm) exponential of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias naturalExponential + */ + exp(): Decimal; + + /** + * Returns a new Decimal whose value is the natural logarithm of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias ln + */ + naturalLogarithm(): Decimal; + + /** + * Returns a new Decimal whose value is the natural logarithm of the value of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias naturalLogarithm + */ + ln(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal negated, i.e. multiplied by -1. + * + * @alias neg + */ + negated(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal negated, i.e. multiplied by -1. + * + * @alias negated + */ + neg(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal plus x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias add + */ + plus(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal plus x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias plus + */ + add(x: I.Decimal.Value): Decimal; + + /** + * Returns the number of significant digits of the value of this Decimal. + * + * @param includeZeros If it is true or 1 then any trailing zeros of the integer part of a number are counted as significant digits, + * otherwise they are not. + * @alias sd + */ + precision(includeZeros?: boolean): number; + + /** + * Returns the number of significant digits of the value of this Decimal. + * + * @param includeZeros If it is true or 1 then any trailing zeros of the integer part of a number are counted as significant digits, + * otherwise they are not. + * @alias precision + */ + sd(includeZeros?: boolean): number; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to a whole number using rounding mode rounding. + */ + round(): Decimal; + + /** + * Returns a new Decimal whose value is the sine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias sin + */ + sine(): Decimal; + + /** + * Returns a new Decimal whose value is the sine of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias sine + */ + sin(): Decimal; + + /** + * Returns a new Decimal whose value is the square root of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * + * @alias sqrt + */ + squareRoot(): Decimal; + + /** + * Returns a new Decimal whose value is the square root of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * + * @alias squareRoot + */ + sqrt(): Decimal; + + /** + * Returns a new Decimal whose value is the tangent of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias tan + */ + tangent(): Decimal; + + /** + * Returns a new Decimal whose value is the tangent of the value in radians of this Decimal, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias tangent + */ + tan(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal times x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias mul + */ + times(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal times x, + * rounded to precision significant digits using rounding mode rounding. + * + * @alias times + */ + mul(x: I.Decimal.Value): Decimal; + + /** + * Returns a string representing the value of this Decimal in binary, rounded to sd significant digits using rounding mode rm. + */ + toBinary(significantDigits?: number): string; + + /** + * Returns a string representing the value of this Decimal in binary, rounded to sd significant digits using rounding mode rm. + */ + toBinary(significantDigits: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to dp decimal places using rounding mode rm. + * + * @alias toDP + */ + toDecimalPlaces(decimalPlaces?: number): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to dp decimal places using rounding mode rm. + * + * @alias toDP + */ + toDecimalPlaces(decimalPlaces: number, rounding: I.Decimal.Rounding): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to dp decimal places using rounding mode rm. + * + * @alias toDecimalPlaces + */ + toDP(decimalPlaces?: number): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to dp decimal places using rounding mode rm. + * + * @alias toDecimalPlaces + */ + toDP(decimalPlaces: number, rounding: I.Decimal.Rounding): Decimal; + + /** + * Returns a string representing the value of this Decimal in exponential notation rounded using rounding mode rm to dp decimal places, + * i.e with one digit before the decimal point and dp digits after it. + * + * If the value of this Decimal in exponential notation has fewer than dp fraction digits, + * the return value will be appended with zeros accordingly. + */ + toExponential(decimalPlaces?: number): string; + + /** + * Returns a string representing the value of this Decimal in exponential notation rounded using rounding mode rm to dp decimal places, + * i.e with one digit before the decimal point and dp digits after it. + * + * If the value of this Decimal in exponential notation has fewer than dp fraction digits, + * the return value will be appended with zeros accordingly. + */ + toExponential(decimalPlaces: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns a string representing the value of this Decimal in normal (fixed-point) notation rounded to dp decimal places using rounding mode rm. + * + * If the value of this Decimal in normal notation has fewer than dp fraction digits, the return value will be appended with zeros accordingly. + * + * Unlike Number.prototype.toFixed, which returns exponential notation if a number is greater or equal to 1021, this method will always return normal notation. + */ + toFixed(decimalPlaces?: number): string; + + /** + * Returns a string representing the value of this Decimal in normal (fixed-point) notation rounded to dp decimal places using rounding mode rm. + * + * If the value of this Decimal in normal notation has fewer than dp fraction digits, the return value will be appended with zeros accordingly. + * + * Unlike Number.prototype.toFixed, which returns exponential notation if a number is greater or equal to 1021, this method will always return normal notation. + */ + toFixed(decimalPlaces: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns an array of two Decimals representing the value of this Decimal as a simple fraction with an integer numerator and an integer denominator. + * The denominator will be a positive non-zero value less than or equal to maxDenominator. + * + * If a maximum denominator is omitted, the denominator will be the lowest value necessary to represent the number exactly. + */ + toFraction(maxDenominator?: I.Decimal.Value): Decimal[]; + + /** + * Returns a string representing the value of this Decimal in hexadecimal, rounded to sd significant digits using rounding mode rm. + * + * @alias toHex + */ + toHexadecimal(significantDigits?: number): string; + + /** + * Returns a string representing the value of this Decimal in hexadecimal, rounded to sd significant digits using rounding mode rm. + * + * @alias toHex + */ + toHexadecimal(significantDigits: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns a string representing the value of this Decimal in hexadecimal, rounded to sd significant digits using rounding mode rm. + * + * @alias toHexadecimal + */ + toHex(significantDigits?: number): string; + + /** + * Returns a string representing the value of this Decimal in hexadecimal, rounded to sd significant digits using rounding mode rm. + * + * @alias toHexadecimal + */ + toHex(significantDigits: number, rounding?: I.Decimal.Rounding): string; + + /** + * Same as valueOf + */ + toJSON(): string; + + /** + * Returns a new Decimal whose value is the nearest multiple of x in the direction of rounding mode rm, or rounding if rm is omitted, + * to the value of this Decimal. + * + * The return value will always have the same sign as this Decimal, unless either this Decimal or x is NaN, + * in which case the return value will be also be NaN. + */ + toNearest(x?: I.Decimal.Value, rounding?: I.Decimal.Rounding): Decimal; + + /** + * Returns the value of this Decimal converted to a primitive number. + * + * Type coercion with, for example, JavaScript's unary plus operator will also work, + * except that a Decimal with the value minus zero will convert to positive zero. + */ + toNumber(): number; + + /** + * Returns a string representing the value of this Decimal in octal, rounded to sd significant digits using rounding mode rm. + */ + toOctal(significantDigits?: number): string; + + /** + * Returns a string representing the value of this Decimal in octal, rounded to sd significant digits using rounding mode rm. + */ + toOctal(significantDigits: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns a new Decimal whose value is the value of this Decimal raised to the power x, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will almost always be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * If a result is incorrectly rounded the maximum error will be 1 ulp (unit in the last place). + * + * @alias pow + */ + toPower(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal raised to the power x, + * rounded to precision significant digits using rounding mode rounding. + * + * The return value will almost always be correctly rounded, + * i.e. rounded as if the result was first calculated to an infinite number of correct digits before rounding. + * If a result is incorrectly rounded the maximum error will be 1 ulp (unit in the last place). + * + * @alias toPower + */ + pow(x: I.Decimal.Value): Decimal; + + /** + * Returns a string representing the value of this Decimal rounded to sd significant digits using rounding mode rm. + */ + toPrecision(significantDigits?: number): string; + + /** + * Returns a string representing the value of this Decimal rounded to sd significant digits using rounding mode rm. + */ + toPrecision(significantDigits: number, rounding: I.Decimal.Rounding): string; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to sd significant digits using rounding mode rm. + * + * @alias toSD + */ + toSignificantDigits(significantDigits?: number): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to sd significant digits using rounding mode rm. + * + * @alias toSD + */ + toSignificantDigits(significantDigits: number, rounding: I.Decimal.Rounding): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to sd significant digits using rounding mode rm. + * + * @alias toSignificantDigits + */ + toSD(significantDigits?: number): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal rounded to sd significant digits using rounding mode rm. + * + * @alias toSignificantDigits + */ + toSD(significantDigits: number, rounding: I.Decimal.Rounding): Decimal; + + /** + * Returns a string representing the value of this Decimal. + * + * If this Decimal has a positive exponent that is equal to or greater than toExpPos, + * or a negative exponent equal to or less than toExpNeg, then exponential notation will be returned. + */ + toString(): string; + + /** + * Returns a new Decimal whose value is the value of this Decimal truncated to a whole number. + * + * @alias trunc + */ + truncated(): Decimal; + + /** + * Returns a new Decimal whose value is the value of this Decimal truncated to a whole number. + * + * @alias truncated + */ + trunc(): Decimal; + + /** + * As toString, but zero is signed. + */ + valueOf(): string; + + /** + * Returns a new Decimal whose value is the absolute value of x + */ + static abs(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse cosine in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static acos(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse cosine in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static acosh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of x + y, rounded to precision significant digits using rounding mode rounding. + */ + static add(x: I.Decimal.Value, y: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse sine in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static asin(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic sine in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static asinh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse tangent in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static atan(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic tangent in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static atanh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse tangent in radians of the quotient of y and x, rounded to precision significant digits using rounding mode rounding. + * + * The signs of y and x are used to determine the quadrant of the result. + */ + static atan2(y: I.Decimal.Value, x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the cube root of x, rounded to precision significant digits using rounding mode rounding. + */ + static cbrt(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of x rounded to a whole number in the direction of positive Infinity. + */ + static ceil(x: I.Decimal.Value): Decimal; + + /** + * Returns a new independent Decimal constructor with configuration settings as described by object, or with the same settings as this Decimal constructor if object is omitted. + * + * @alias config + */ + static clone(object?: I.Decimal.Config): I.Decimal.Constructor; + + /** + * Configures the 'global' settings for this particular Decimal constructor, i.e. the settings which apply to operations performed on the Decimal instances created by it. + * + * @alias set + */ + static config(object: I.Decimal.Config): I.Decimal.Constructor; + + /** + * Configures the 'global' settings for this particular Decimal constructor, i.e. the settings which apply to operations performed on the Decimal instances created by it. + * + * @alias config + */ + static set(object: I.Decimal.Config): I.Decimal.Constructor; + + /** + * Returns a new Decimal whose value is the cosine of the value in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static cos(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the inverse hyperbolic cosine in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static cosh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of x divided by x, rounded to precision significant digits using rounding mode rounding. + */ + static div(x: I.Decimal.Value, y: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base e (Euler's number, the base of the natural logarithm) exponential of x, rounded to precision significant digits using rounding mode rounding. + */ + static exp(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the value of x rounded to a whole number in the direction of negative Infinity. + */ + static floor(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the square root of the sum of the squares of the arguments, rounded to precision significant digits using rounding mode rounding. + */ + static hypot(...x: I.Decimal.Value[]): Decimal; + + /** + * Returns true if object is a Decimal instance (where Decimal is any Decimal constructor), or false if it is not. + */ + static isDecimal(object: any): boolean; + + /** + * Returns a new Decimal whose value is the natural logarithm of x, rounded to precision significant digits using rounding mode rounding. + */ + static ln(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base x logarithm of x, rounded to precision significant digits using rounding mode rounding. + * + * @param base logarithm base, default is 10 + */ + static log(x: I.Decimal.Value, base?: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base 2 logarithm of x, rounded to precision significant digits using rounding mode rounding. + */ + static log2(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the base 10 logarithm of x, rounded to precision significant digits using rounding mode rounding. + */ + static log10(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the maximum of the arguments. + */ + static max(...x: I.Decimal.Value[]): Decimal; + + /** + * Returns a new Decimal whose value is the minimum of the arguments. + */ + static min(...x: I.Decimal.Value[]): Decimal; + + /** + * Returns a new Decimal whose value is x modulo y, rounded to precision significant digits using rounding mode rounding. + */ + static mod(x: I.Decimal.Value, y: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is x times y, rounded to precision significant digits using rounding mode rounding. + */ + static mul(x: I.Decimal.Value, y: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is base raised to the power exponent, rounded to precision significant digits using rounding mode rounding. + */ + static pow(base: I.Decimal.Value, exponent: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal with a pseudo-random value equal to or greater than 0 and less than 1. + * + * The return value will have dp decimal places (or less if trailing zeros are produced). If dp is omitted then the number of decimal places will default to the current precision setting. + */ + static random(significantDigits?: number): Decimal; + + /** + * Returns a new Decimal whose value is x rounded to a whole number using rounding mode rounding. + */ + static round(x: I.Decimal.Value): Decimal; + + /** + * 1 if the value of x is non-zero and its sign is positive + * + * -1 if the value of x is non-zero and its sign is negative + * + * 0 if the value of x is positive zero + * + * -0 if the value of x is negative zero + * + * NaN if the value of x is NaN + */ + static sign(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the sine of the value in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static sin(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the hyperbolic sine of the value in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static sinh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the square root of x, rounded to precision significant digits using rounding mode rounding. + */ + static sqrt(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is x minus y, rounded to precision significant digits using rounding mode rounding. + */ + static sub(x: I.Decimal.Value, y: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the tangent of the value in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static tan(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is the hyperbolic tangent of the value in radians of x, rounded to precision significant digits using rounding mode rounding. + */ + static tanh(x: I.Decimal.Value): Decimal; + + /** + * Returns a new Decimal whose value is x truncated to a whole number. + */ + static trunc(x: I.Decimal.Value): Decimal; + + static readonly default?: I.Decimal.Constructor; + static readonly Decimal?: I.Decimal.Constructor; + + /** + * The maximum number of significant digits of the result of an operation. + */ + static readonly precision: number; + + /** + * The default rounding mode used when rounding the result of an operation to precision significant digits, and when rounding + * the return value of the round, toBinary, toDecimalPlaces, toExponential, toFixed, toHexadecimal, toNearest, toOctal, + * toPrecision and toSignificantDigits methods. + */ + static readonly rounding: I.Decimal.Rounding; + + /** + * The negative exponent value at and below which toString returns exponential notation. + * + * JavaScript numbers use exponential notation for negative exponents of -7 and below. + */ + static readonly toExpNeg: number; + + /** + * The positive exponent value at and above which toString returns exponential notation. + * + * JavaScript numbers use exponential notation for positive exponents of 20 and above. + */ + static readonly toExpPos: number; + + static readonly minE: number; + + static readonly maxE: number; + + static readonly crypto: boolean; + + /** + * The modulo mode used when calculating the modulus: a mod n. + * + * The quotient, q = a / n, is calculated according to the rounding mode that corresponds to the chosen modulo mode. + * + * The remainder, r, is calculated as: r = a - n * q. + */ + static readonly modulo: I.Decimal.Modulo; + + /** + * Rounds away from zero + */ + static readonly ROUND_UP: 0; + + /** + * Rounds towards zero + */ + static readonly ROUND_DOWN: 1; + + /** + * Rounds towards Infinity + */ + static readonly ROUND_CEIL: 2; + + /** + * Rounds towards -Infinity + */ + static readonly ROUND_FLOOR: 3; + + /** + * Rounds towards nearest neighbour. + * + * If equidistant, rounds away from zero + */ + static readonly ROUND_HALF_UP: 4; + + /** + * Rounds towards nearest neighbour. + * + * If equidistant, rounds towards zero + */ + static readonly ROUND_HALF_DOWN: 5; + + /** + * Rounds towards nearest neighbour. + * + * If equidistant, rounds towards even neighbour + */ + static readonly ROUND_HALF_EVEN: 6; + + /** + * Rounds towards nearest neighbour. + * + * If equidistant, rounds towards Infinity + */ + static readonly ROUND_HALF_CEIL: 7; + + /** + * Rounds towards nearest neighbour. + * + * If equidistant, rounds towards -Infinity + */ + static readonly ROUND_HALF_FLOOR: 8; + + /** + * Not a rounding mode + */ + static readonly EUCLID: 9; + } +} diff --git a/types/adone/glosses/math/index.d.ts b/types/adone/glosses/math/index.d.ts index 2713196e6e..5e6bbeea65 100644 --- a/types/adone/glosses/math/index.d.ts +++ b/types/adone/glosses/math/index.d.ts @@ -1,3 +1,7 @@ +/// +/// +/// +/// /// /// @@ -6,748 +10,6 @@ declare namespace adone { * math related things */ namespace math { - namespace I { - interface LowHighBits { - /** - * The low (signed) 32 bits of the long - */ - low: number; - /** - * The high (signed) 32 bits of the long - */ - high: number; - } - type Longable = Long | number | string | LowHighBits; - } - - /** - * Represents a 64 bit two's-complement integer - */ - class Long { - low: number; - high: number; - unsigned: boolean; - - /** - * @param low The low (signed) 32 bits of the long - * @param high The high (signed) 32 bits of the long - * @param unsigned Whether unsigned or not, defaults to false for signed - */ - constructor(low?: number, high?: number, unsigned?: boolean); - - /** - * Converts the Long to a 32 bit integer, assuming it is a 32 bit integer - */ - toInt(): number; - - /** - * Converts the Long to a the nearest floating-point representation of this value (double, 53 bit mantissa) - */ - toNumber(): number; - - /** - * Converts the Long to a string written in the specified radix - * - * @param radix Radix (2-36), 10 by default - */ - toString(radix?: number): string; - - inspect(): string; - - /** - * Gets the high 32 bits as a signed integer - */ - getHighBits(): number; - - /** - * Gets the high 32 bits as an unsigned integer - */ - getHighBitsUnsigned(): number; - - /** - * Gets the low 32 bits as a signed integer - */ - getLowBits(): number; - - /** - * Gets the low 32 bits as an unsigned integer - */ - getLowBitsUnsigned(): number; - - /** - * Gets the number of bits needed to represent the absolute value of this Long - */ - getNumBitsAbs(): number; - - /** - * Tests if this Long's value equals zero - */ - isZero(): boolean; - - /** - * Tests if this Long's value is negative - */ - isNegative(): boolean; - - /** - * Tests if this Long's value is positive - */ - isPositive(): boolean; - - /** - * Tests if this Long's value is odd - */ - isOdd(): boolean; - - /** - * Tests if this Long's value is even - */ - isEven(): boolean; - - /** - * Tests if this Long's value equals the specified's - */ - equals(other: I.Longable): boolean; - - /** - * Tests if this Long's value is less than the specified's - */ - lessThan(other: I.Longable): boolean; - - /** - * Tests if this Long's value is less than or equal the specified's - */ - lessThanOrEqual(other: I.Longable): boolean; - - /** - * Tests if this Long's value is greater than the specified's - */ - greaterThan(other: I.Longable): boolean; - - /** - * Tests if this Long's value is greater than or equal the specified's - */ - greaterThanOrEqual(other: I.Longable): boolean; - - /** - * Compares this Long's value with the specified's. - * Returns 0 if they are the same, 1 if the this is greater and -1 if the given one is greater - */ - compare(other: I.Longable): number; - - /** - * Negates this Long's value - */ - negate(): Long; - - /** - * Returns the sum of this and the specified Long - */ - add(addend: I.Longable): Long; - - /** - * Returns the difference of this and the specified Long - */ - sub(subtrahend: I.Longable): Long; - - /** - * Returns the product of this and the specified Long - */ - mul(multiplier: I.Longable): Long; - - /** - * Returns this Long divided by the specified - */ - div(divisor: I.Longable): Long; - - /** - * Returns this Long modulo the specified - */ - mod(divisor: I.Longable): Long; - - /** - * Returns the bitwise NOT of this Long - */ - not(): Long; - - /** - * Returns the bitwise AND of this Long and the specified - */ - and(other: I.Longable): Long; - - /** - * Returns the bitwise OR of this Long and the specifieds - */ - or(other: I.Longable): Long; - - /** - * Returns the bitwise XOR of this Long and the given one - */ - xor(other: I.Longable): Long; - - /** - * Returns this Long with bits shifted to the left by the given amount - */ - shl(numBits: number | Long): Long; - - /** - * Returns this Long with bits arithmetically shifted to the right by the given amount - */ - shr(numBits: number | Long): Long; - - /** - * Returns this Long with bits logically shifted to the right by the given amount - */ - shru(numBits: number | Long): Long; - - /** - * Converts this Long to signed - */ - toSigned(): Long; - - /** - * Converts this Long to unsigned - */ - toUnsigned(): Long; - - /** - * Converts this Long to an array of bytes, big-endian by default - * - * @param le Whether to return an array in little-endian format - */ - toBytes(le?: boolean): number[]; - - /** - * Converts this Long to an array of bytes in little-endian format - */ - toBytesLE(): number[]; - - /** - * Converts this Long to an array of bytes in big-endian format - */ - toBytesBE(): number[]; - - /** - * Returns a Long representing the given 32 bit integer value - */ - static fromInt(value: number, unsigned?: boolean): Long; - - /** - * Returns a Long representing the given value, provided that it is a finite number. Otherwise, zero is returned - */ - static fromNumber(value?: number, unsigned?: boolean): Long; - - /** - * Returns a Long representing the 64 bit integer that comes by concatenating the given low and high bits. Each is assumed to use 32 bits - */ - static fromBits(lowBits: number, highBits: number, unsigned?: boolean): Long; - - /** - * Returns a Long representation of the given string, written using the specified radix - */ - static fromString(str: string, unsigned?: boolean, radix?: number): Long; - - /** - * Returns a Long representation of the given string, written using the specified radix - */ - static fromString(str: string, radix?: number): Long; - - /** - * Converts the specified value to a Long - */ - static fromValue(val: I.Longable): Long; - - /** - * Minimum signed value - */ - static MIN_VALUE: Long; - - /** - * Maximum signed value - */ - static MAX_VALUE: Long; - - /** - * Maximum unsigned value - */ - static MAX_UNSIGNED_VALUE: Long; - - /** - * Signed zero - */ - static ZERO: Long; - - /** - * Unsigned zero - */ - static UZERO: Long; - - /** - * Signed one - */ - static ONE: Long; - - /** - * Unsigned one - */ - static UONE: Long; - - /** - * Signed negative one - */ - static NEG_ONE: Long; - } - - namespace I.BigNumber { - interface BufferConvertOptions { - endian?: 1 | -1 | "big" | "little"; - size?: "auto" | number; - } - } - - /** - * Represents a number of arbitrary precision - */ - class BigNumber { - /** - * Creates a BigNumber from the given value, the base is 10 - */ - constructor(n: number | string | BigNumber); - - /** - * Creates a BigNumber from the given string and base - */ - constructor(n: string, base: number); - - /** - * Converts the number to a string in the given base - */ - toString(base?: number): string; - - /** - * Converts the bignum into a Number. - * If the bignum is too big you'll lose precision or you'll get ±Infinity. - */ - toNumber(): number; - - /** - * Returns a new Buffer with the data from the bignum. - */ - toBuffer(opts?: I.BigNumber.BufferConvertOptions): Buffer; - - /** - * Returns a new bignum containing the instance value plus n - */ - add(n: number | string | BigNumber): BigNumber; - - /** - * Return a new bignum containing the instance value minus n - */ - sub(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum containing the instance value multiplied by n - */ - mul(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum containing the instance value integrally divided by n - */ - div(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the absolute value of the instance - */ - abs(): BigNumber; - - /** - * Returns a new bignum with the negative of the instance value - */ - neg(): BigNumber; - - /** - * Compares the instance value to n. - * - * Returns a positive integer if > n, a negative integer if < n, and 0 if == n - */ - cmp(n: number | string | BigNumber): number; - - /** - * Checks whether the instance value is greater than n (> n). - */ - gt(n: number | string | BigNumber): boolean; - - /** - * Checks whether the instance value is greater than or equal to n (>= n). - */ - ge(n: number | string | BigNumber): boolean; - - /** - * Checks whether the instance value is equal to n (== n). - */ - eq(n: number | string | BigNumber): boolean; - - /** - * Checks whether the instance value is less than n (< n). - */ - lt(n: number | string | BigNumber): boolean; - - /** - * Checks whether the instance value is less than or equal to n (<= n). - */ - le(n: number | string | BigNumber): boolean; - - /** - * Returns a new bignum with the instance value bitwise AND (&)-ed with n. - */ - and(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the instance value bitwise inclusive-OR (|)-ed with n. - */ - or(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the instance value bitwise exclusive-OR (^)-ed with n. - */ - xor(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the instance value modulo n. - */ - mod(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the instance value raised to the nth power. - */ - pow(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum with the instance value raised to the nth power modulo m. - */ - powm(n: number | string | BigNumber, m: number | string | BigNumber): BigNumber; - - /** - * Computes the multiplicative inverse modulo m. - */ - invertm(m: number | string | BigNumber): BigNumber; - - /** - * Returns a random number from 0 to this -1 - */ - rand(): BigNumber; - - /** - * Returns a random number from this to upperBound - 1 - */ - rand(upperBound: number | string | BigNumber): BigNumber; - - /** - * Checks whether the bignum is: - * - * - certainly prime (true) - * - * - probably prime ('maybe') - * - * - certainly composite (false) - */ - probPrime(): boolean | "maybe"; - - /** - * Returns the next prime number after this bignum - */ - nextPrime(): BigNumber; - - /** - * Returns a new bignum that is the square root. This truncates. - */ - sqrt(): BigNumber; - - /** - * Returns a new bignum that is the nth root. This truncates. - */ - root(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum that is the 2^n multiple. Equivalent of the << operator. - */ - shiftLeft(n: number | string | BigNumber): BigNumber; - - /** - * Returns a new bignum of the value integer divided by 2^n. Equivalent of the >> operator. - */ - shiftRight(n: number | string | BigNumber): BigNumber; - - /** - * Returns the greatest common divisor of the current bignum with n as a new bignum. - */ - gcd(n: number | string | BigNumber): BigNumber; - - /** - * Returns the Jacobi symbol (or Legendre symbol if n is prime) of the current bignum (= a) over n. - * Note that n must be odd and >= 3. 0 <= a < n. - * Returns -1 or 1 - */ - jacobi(n: number | string | BigNumber): number; - - /** - * Returns the number of bits used to represent the current bignum - */ - bitLength(): number; - - /** - * Checks whether the bit at the given index is set - */ - isBitSet(n: number): boolean; - - /** - * Generates a probable prime number of length bits. - * - * @param bits the number of bits - * @param safe If true, it will be a "safe" prime of the form p=2p'+1 where p' is also prime. Default: true - */ - static prime(bits: number, safe?: boolean): BigNumber; - - /** - * Creates a new bignum from a Buffer. - */ - static fromBuffer(buf: Buffer, opts?: I.BigNumber.BufferConvertOptions): BigNumber; - - /** - * One - */ - static ONE: BigNumber; - - /** - * Zero - */ - static ZERO: BigNumber; - } - - /** - * Represents a set of bits - */ - class BitSet { - /** - * Creates a new bitset of n bits - */ - constructor(n: number); - - /** - * Creates a new bitset from a dehydrated bitset - */ - constructor(key: string); - - /** - * Checks whether a bit at a specific index is set - */ - get(idx: number): boolean; - - /** - * Sets a single bit. - * Returns true if set was successfull - */ - set(idx: number): boolean; - - /** - * Sets a range of bits. - * Returns true if set was successfull - */ - setRange(from: number, to: number): boolean; - - /** - * Unsets a single bit. - * Returns true if unset was successfull - */ - unset(idx: number): boolean; - - /** - * Unsets a range of bits. - * Returns true if unset was successfull - */ - unsetRange(from: number, to: number): boolean; - - /** - * Toggles a single bit - */ - toggle(idx: number): boolean; - - /** - * Toggles a range of bits - */ - toggleRange(from: number, to: number): boolean; - - /** - * Clears the entire bitset - */ - clear(): boolean; - - /** - * Clones the set - */ - clone(): BitSet; - - /** - * Turns the bitset into a comma separated string that skips leading & trailing 0 words. - * Ends with the number of leading 0s and MAX_BIT. - * Useful if you need the bitset to be an object key (eg dynamic programming). - * Can rehydrate by passing the result into the constructor - */ - dehydrate(): string; - - /** - * Performs a bitwise AND on 2 bitsets or 1 bitset and 1 index. - * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. - */ - and(value: number | BitSet): BitSet; - - /** - * Performs a bitwise OR on 2 bitsets or 1 bitset and 1 index. - * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. - */ - or(value: number | BitSet): BitSet; - - /** - * Performs a bitwise XOR on 2 bitsets or 1 bitset and 1 index. - * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. - */ - xor(value: number | BitSet): BitSet; - - /** - * Runs a custom function on every set bit. - * Faster than iterating over the entire bitset with a get(). - * If the callback returns `false` it stops iterating. - */ - forEach(callback: ((idx: number) => void | boolean)): void; - - /** - * Performs a circular shift bitset by an offset - * - * @param n number of positions that the bitset that will be shifted to the right. Using a negative number will result in a left shift. - */ - circularShift(n: number): BitSet; - - /** - * Gets the cardinality (count of set bits) for the entire bitset - */ - getCardinality(): number; - - /** - * Gets the indices of all set bits - */ - getIndices(): number[]; - - /** - * Checks if one bitset is subset of another. - */ - isSubsetOf(other: BitSet): boolean; - - /** - * Quickly determines if a bitset is empty - */ - isEmpty(): boolean; - - /** - * Quickly determines if both bitsets are equal (faster than checking if the XOR of the two is === 0). - * Both bitsets must have the same number of words, no length check is performed to prevent and overflow. - */ - isEqual(other: BitSet): boolean; - - /** - * Gets a string representation of the entire bitset, including leading 0s - */ - toString(): string; - - /** - * Finds first set bit (useful for processing queues, breadth-first tree searches, etc.). - * Returns -1 if not found - * - * @param startWord the word to start with (only used internally by nextSetBit) - */ - ffs(startWord?: number): number; - - /** - * Finds first zero (unset bit). - * Returns -1 if not found - * - * @param startWord the word to start with (only used internally by nextUnsetBit) - */ - ffz(startWord?: number): number; - - /** - * Finds last set bit. - * Returns -1 if not found - * - * @param startWord the word to start with (only used internally by previousSetBit) - */ - fls(startWord?: number): number; - - /** - * Finds last zero (unset bit). - * Returns -1 if not found - * - * @param startWord the word to start with (only used internally by previousUnsetBit) - */ - flz(startWord?: number): number; - - /** - * Finds first set bit, starting at a given index. - * Return -1 if not found - * - * @param idx the starting index for the next set bit - */ - nextSetBit(idx: number): number; - - /** - * Finds first unset bit, starting at a given index. - * Return -1 if not found - * - * @param idx the starting index for the next unset bit - */ - nextUnsetBit(idx: number): number; - - /** - * Finds last set bit, up to a given index. - * Returns -1 if not found - * - * @param idx the starting index for the next unset bit (going in reverse) - */ - previousSetBit(idx: number): number; - - /** - * Finds last unset bit, up to a given index. - * Returns -1 if not found - */ - previousUnsetBit(idx: number): number; - - /** - * Converts the bitset to a math.Long number - */ - toLong(): Long; - - /** - * Reads an unsigned integer of the given bits from the given offset - * - * @param bits number of bits, 1 by default - * @param offset offset, 0 by default - */ - readUInt(bits?: number, offset?: number): number; - - /** - * Writes the given unsigned integer - * - * @param val integer - * @param bits number of bits to write, 1 by default - * @param offset write offset, 0 by default - */ - writeUInt(val: number, bits?: number, offset?: number): void; - - /** - * Creates a new BitSet from the given math.Long number - */ - static fromLong(l: Long): BitSet; - } - /** * Returns a random number from min to max - 1 * @@ -755,5 +17,21 @@ declare namespace adone { * @param max upper bound, default is 0xFFFFFFFF */ function random(min?: number, max?: number): number; + + /** + * Returns the maximum value from the given array + * + * @param array array of values + * @param score function to calculate the element score value + */ + function max(array: T[], score?: (x: T) => any): T; + + /** + * Returns the minimum value from the given array + * + * @param array array of values + * @param score function to calculate the element score value + */ + function min(array: T[], score?: (x: T) => any): T; } } diff --git a/types/adone/glosses/math/long.d.ts b/types/adone/glosses/math/long.d.ts new file mode 100644 index 0000000000..a4a15e2be5 --- /dev/null +++ b/types/adone/glosses/math/long.d.ts @@ -0,0 +1,293 @@ +declare namespace adone.math { + namespace I { + interface LowHighBits { + /** + * The low (signed) 32 bits of the long + */ + low: number; + /** + * The high (signed) 32 bits of the long + */ + high: number; + } + type Longable = Long | number | string | LowHighBits; + } + + /** + * Represents a 64 bit two's-complement integer + */ + class Long { + low: number; + high: number; + unsigned: boolean; + + /** + * @param low The low (signed) 32 bits of the long + * @param high The high (signed) 32 bits of the long + * @param unsigned Whether unsigned or not, defaults to false for signed + */ + constructor(low?: number, high?: number, unsigned?: boolean); + + /** + * Converts the Long to a 32 bit integer, assuming it is a 32 bit integer + */ + toInt(): number; + + /** + * Converts the Long to a the nearest floating-point representation of this value (double, 53 bit mantissa) + */ + toNumber(): number; + + /** + * Converts the Long to a string written in the specified radix + * + * @param radix Radix (2-36), 10 by default + */ + toString(radix?: number): string; + + inspect(): string; + + /** + * Gets the high 32 bits as a signed integer + */ + getHighBits(): number; + + /** + * Gets the high 32 bits as an unsigned integer + */ + getHighBitsUnsigned(): number; + + /** + * Gets the low 32 bits as a signed integer + */ + getLowBits(): number; + + /** + * Gets the low 32 bits as an unsigned integer + */ + getLowBitsUnsigned(): number; + + /** + * Gets the number of bits needed to represent the absolute value of this Long + */ + getNumBitsAbs(): number; + + /** + * Tests if this Long's value equals zero + */ + isZero(): boolean; + + /** + * Tests if this Long's value is negative + */ + isNegative(): boolean; + + /** + * Tests if this Long's value is positive + */ + isPositive(): boolean; + + /** + * Tests if this Long's value is odd + */ + isOdd(): boolean; + + /** + * Tests if this Long's value is even + */ + isEven(): boolean; + + /** + * Tests if this Long's value equals the specified's + */ + equals(other: I.Longable): boolean; + + /** + * Tests if this Long's value is less than the specified's + */ + lessThan(other: I.Longable): boolean; + + /** + * Tests if this Long's value is less than or equal the specified's + */ + lessThanOrEqual(other: I.Longable): boolean; + + /** + * Tests if this Long's value is greater than the specified's + */ + greaterThan(other: I.Longable): boolean; + + /** + * Tests if this Long's value is greater than or equal the specified's + */ + greaterThanOrEqual(other: I.Longable): boolean; + + /** + * Compares this Long's value with the specified's. + * Returns 0 if they are the same, 1 if the this is greater and -1 if the given one is greater + */ + compare(other: I.Longable): number; + + /** + * Negates this Long's value + */ + negate(): Long; + + /** + * Returns the sum of this and the specified Long + */ + add(addend: I.Longable): Long; + + /** + * Returns the difference of this and the specified Long + */ + sub(subtrahend: I.Longable): Long; + + /** + * Returns the product of this and the specified Long + */ + mul(multiplier: I.Longable): Long; + + /** + * Returns this Long divided by the specified + */ + div(divisor: I.Longable): Long; + + /** + * Returns this Long modulo the specified + */ + mod(divisor: I.Longable): Long; + + /** + * Returns the bitwise NOT of this Long + */ + not(): Long; + + /** + * Returns the bitwise AND of this Long and the specified + */ + and(other: I.Longable): Long; + + /** + * Returns the bitwise OR of this Long and the specifieds + */ + or(other: I.Longable): Long; + + /** + * Returns the bitwise XOR of this Long and the given one + */ + xor(other: I.Longable): Long; + + /** + * Returns this Long with bits shifted to the left by the given amount + */ + shl(numBits: number | Long): Long; + + /** + * Returns this Long with bits arithmetically shifted to the right by the given amount + */ + shr(numBits: number | Long): Long; + + /** + * Returns this Long with bits logically shifted to the right by the given amount + */ + shru(numBits: number | Long): Long; + + /** + * Converts this Long to signed + */ + toSigned(): Long; + + /** + * Converts this Long to unsigned + */ + toUnsigned(): Long; + + /** + * Converts this Long to an array of bytes, big-endian by default + * + * @param le Whether to return an array in little-endian format + */ + toBytes(le?: boolean): number[]; + + /** + * Converts this Long to an array of bytes in little-endian format + */ + toBytesLE(): number[]; + + /** + * Converts this Long to an array of bytes in big-endian format + */ + toBytesBE(): number[]; + + /** + * Returns a Long representing the given 32 bit integer value + */ + static fromInt(value: number, unsigned?: boolean): Long; + + /** + * Returns a Long representing the given value, provided that it is a finite number. Otherwise, zero is returned + */ + static fromNumber(value?: number, unsigned?: boolean): Long; + + /** + * Returns a Long representing the 64 bit integer that comes by concatenating the given low and high bits. Each is assumed to use 32 bits + */ + static fromBits(lowBits: number, highBits: number, unsigned?: boolean): Long; + + /** + * Returns a Long representation of the given string, written using the specified radix + */ + static fromString(str: string, unsigned?: boolean, radix?: number): Long; + + /** + * Returns a Long representation of the given string, written using the specified radix + */ + static fromString(str: string, radix?: number): Long; + + /** + * Converts the specified value to a Long + */ + static fromValue(val: I.Longable): Long; + + /** + * Minimum signed value + */ + static MIN_VALUE: Long; + + /** + * Maximum signed value + */ + static MAX_VALUE: Long; + + /** + * Maximum unsigned value + */ + static MAX_UNSIGNED_VALUE: Long; + + /** + * Signed zero + */ + static ZERO: Long; + + /** + * Unsigned zero + */ + static UZERO: Long; + + /** + * Signed one + */ + static ONE: Long; + + /** + * Unsigned one + */ + static UONE: Long; + + /** + * Signed negative one + */ + static NEG_ONE: Long; + } +} diff --git a/types/adone/glosses/regex.d.ts b/types/adone/glosses/regex.d.ts index e5c3be642a..edd66d324f 100644 --- a/types/adone/glosses/regex.d.ts +++ b/types/adone/glosses/regex.d.ts @@ -2,9 +2,17 @@ declare namespace adone { namespace regex { function filename(): RegExp; - function ip4(): RegExp; + namespace I.IP { + interface Options { + exact?: boolean; + } + } - function ip6(): RegExp; + function ip(options?: I.IP.Options): RegExp; + + function ip4(options?: I.IP.Options): RegExp; + + function ip6(options?: I.IP.Options): RegExp; function protocol(): RegExp; diff --git a/types/adone/index.d.ts b/types/adone/index.d.ts index a74641c4df..c6add2eeea 100644 --- a/types/adone/index.d.ts +++ b/types/adone/index.d.ts @@ -5,7 +5,7 @@ // TypeScript Version: 2.4 /// -/// +/// /// /// /// diff --git a/types/adone/test/glosses/application.ts b/types/adone/test/glosses/app.ts similarity index 99% rename from types/adone/test/glosses/application.ts rename to types/adone/test/glosses/app.ts index 38c5b0c8ff..8d74c8093b 100644 --- a/types/adone/test/glosses/application.ts +++ b/types/adone/test/glosses/app.ts @@ -8,7 +8,7 @@ namespace applicationTests { Subsystem, runCli, Application - } = adone.application; + } = adone.app; namespace DApplicationTests { { diff --git a/types/adone/test/glosses/collections/byte_array.ts b/types/adone/test/glosses/collections/byte_array.ts index 7254008322..377acfba9c 100644 --- a/types/adone/test/glosses/collections/byte_array.ts +++ b/types/adone/test/glosses/collections/byte_array.ts @@ -56,6 +56,11 @@ namespace adoneTests.collection.ByteArray { const b: number = buffer.readUInt16BE(10); } + namespace readUInt24BE { + const a: number = buffer.readUInt24BE(); + const b: number = buffer.readUInt24BE(10); + } + namespace readInt32LE { const a: number = buffer.readInt32LE(); const b: number = buffer.readInt32LE(10); @@ -162,6 +167,11 @@ namespace adoneTests.collection.ByteArray { const b: adone.collection.ByteArray = buffer.writeUInt16BE(10, 10); } + namespace writeUInt24BE { + const a: adone.collection.ByteArray = buffer.writeUInt24BE(10); + const b: adone.collection.ByteArray = buffer.writeUInt24BE(10, 10); + } + namespace writeInt32LE { const a: adone.collection.ByteArray = buffer.writeInt32LE(10); const b: adone.collection.ByteArray = buffer.writeInt32LE(10, 10); diff --git a/types/adone/test/glosses/collections/fast_lru.ts b/types/adone/test/glosses/collections/fast_lru.ts index 0e61f51dc5..6df1164d53 100644 --- a/types/adone/test/glosses/collections/fast_lru.ts +++ b/types/adone/test/glosses/collections/fast_lru.ts @@ -6,8 +6,8 @@ namespace adoneTests.collection.FastLRU { } = adone; new FastLRU(); - new FastLRU(100); - new FastLRU(100, { dispose: (key: string, value: number) => null }); + new FastLRU({ maxSize: 100 }); + new FastLRU({ maxSize: 100, dispose: (key: string, value: number) => null }); { const a: number = new FastLRU().size; } { const a: number | undefined = new FastLRU().get("key"); } new FastLRU().set("key", 123); diff --git a/types/adone/test/glosses/collections/lru.ts b/types/adone/test/glosses/collections/lru.ts index 934e5a1fbf..59e7b77694 100644 --- a/types/adone/test/glosses/collections/lru.ts +++ b/types/adone/test/glosses/collections/lru.ts @@ -8,15 +8,14 @@ namespace adoneTests.collection.LRU { type LRU = adone.collection.LRU; new LRU(); - new LRU(100); + new LRU({ maxSize: 100 }); new LRU({}); - new LRU({ max: 100 }); new LRU({ dispose: (key: string, value: number) => null }); new LRU({ maxAge: 100 }); new LRU({ noDisposeOnSet: false }); new LRU({ stale: true }); - { const a: number = new LRU().max; } - { new LRU().max = 100; } + { const a: number = new LRU().maxSize; } + { new LRU().maxSize = 100; } { const a: boolean = new LRU().allowStale; } { new LRU().allowStale = false; } { const a: number = new LRU().maxAge; } diff --git a/types/adone/test/glosses/collections/time_map.ts b/types/adone/test/glosses/collections/time_map.ts new file mode 100644 index 0000000000..5cabcdac9d --- /dev/null +++ b/types/adone/test/glosses/collections/time_map.ts @@ -0,0 +1,22 @@ +namespace adoneTests.collection.TimedoutMap { + const { + collection: { + TimeMap + } + } = adone; + + type TimeMap = adone.collection.TimeMap; + + new TimeMap(); + new TimeMap(1000); + new TimeMap(1000, (key: string) => null); + { + const a: TimeMap = new TimeMap().forEach((value: number, key: string) => null); + } + { + const a: TimeMap = new TimeMap().forEach(function (value: number, key: string) { + const a: number = this.a; + }, { a: 1 }); + } + { const a: boolean = new TimeMap().delete("123"); } +} diff --git a/types/adone/test/glosses/collections/timedout_map.ts b/types/adone/test/glosses/collections/timedout_map.ts deleted file mode 100644 index ffca754e2a..0000000000 --- a/types/adone/test/glosses/collections/timedout_map.ts +++ /dev/null @@ -1,22 +0,0 @@ -namespace adoneTests.collection.TimedoutMap { - const { - collection: { - TimedoutMap - } - } = adone; - - type TimedoutMap = adone.collection.TimedoutMap; - - new TimedoutMap(); - new TimedoutMap(1000); - new TimedoutMap(1000, (key: string) => null); - { - const a: TimedoutMap = new TimedoutMap().forEach((value: number, key: string) => null); - } - { - const a: TimedoutMap = new TimedoutMap().forEach(function (value: number, key: string) { - const a: number = this.a; - }, { a: 1 }); - } - { const a: boolean = new TimedoutMap().delete("123"); } -} diff --git a/types/adone/test/glosses/is.ts b/types/adone/test/glosses/is.ts index 455dd745da..96c954d284 100644 --- a/types/adone/test/glosses/is.ts +++ b/types/adone/test/glosses/is.ts @@ -345,7 +345,11 @@ namespace isTests { { const a: boolean = is.binaryExtension("mp3"); } { const a: boolean = is.binaryPath("a.mp3"); } { const a: boolean = is.ip4("192.168.1.1"); } + { const a: boolean = is.ip4("192.168.1.1", { exact: true }); } { const a: boolean = is.ip6("::192.168.1.1"); } + { const a: boolean = is.ip6("::192.168.1.1", { exact: true }); } + { const a: boolean = is.ip("::192.168.1.1"); } + { const a: boolean = is.ip("::192.168.1.1", { exact: true }); } { const a: boolean = is.arrayBuffer({}); const b: any = 2; @@ -492,4 +496,7 @@ namespace isTests { b.charCodeAt(0); } } + { + const a: boolean = is.multiAddress(2); + } } diff --git a/types/adone/test/glosses/math/bignumber.ts b/types/adone/test/glosses/math/bignumber.ts new file mode 100644 index 0000000000..8466abae7f --- /dev/null +++ b/types/adone/test/glosses/math/bignumber.ts @@ -0,0 +1,154 @@ +namespace mathTests.bignumberTests { + const { + math: { + BigNumber + } + } = adone; + + type BigNumber = adone.math.BigNumber; + + new BigNumber(10); + new BigNumber("10"); + new BigNumber(new BigNumber(10)); + new BigNumber("10", 2); + + { const a: string = new BigNumber(1).toString(); } + { const a: string = new BigNumber(1).toString(2); } + + { const a: number = new BigNumber(1).toNumber(); } + + { const a: Buffer = new BigNumber(1).toBuffer(); } + { const a: Buffer = new BigNumber(1).toBuffer({}); } + { const a: Buffer = new BigNumber(1).toBuffer({ endian: 1 }); } + { const a: Buffer = new BigNumber(1).toBuffer({ endian: -1 }); } + { const a: Buffer = new BigNumber(1).toBuffer({ endian: "big" }); } + { const a: Buffer = new BigNumber(1).toBuffer({ endian: "little" }); } + { const a: Buffer = new BigNumber(1).toBuffer({ size: 1 }); } + { const a: Buffer = new BigNumber(1).toBuffer({ size: "auto" }); } + + { const a: BigNumber = new BigNumber(10).add(1); } + { const a: BigNumber = new BigNumber(10).add("1"); } + { const a: BigNumber = new BigNumber(10).add(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).sub(1); } + { const a: BigNumber = new BigNumber(10).sub("1"); } + { const a: BigNumber = new BigNumber(10).sub(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).mul(1); } + { const a: BigNumber = new BigNumber(10).mul("1"); } + { const a: BigNumber = new BigNumber(10).mul(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).div(1); } + { const a: BigNumber = new BigNumber(10).div("1"); } + { const a: BigNumber = new BigNumber(10).div(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).abs(); } + + { const a: BigNumber = new BigNumber(10).neg(); } + + { const a: number = new BigNumber(10).cmp(1); } + { const a: number = new BigNumber(10).cmp("1"); } + { const a: number = new BigNumber(10).cmp(new BigNumber(1)); } + + { const a: boolean = new BigNumber(10).gt(1); } + { const a: boolean = new BigNumber(10).gt("1"); } + { const a: boolean = new BigNumber(10).gt(new BigNumber(10)); } + + { const a: boolean = new BigNumber(10).ge(1); } + { const a: boolean = new BigNumber(10).ge("1"); } + { const a: boolean = new BigNumber(10).ge(new BigNumber(10)); } + + { const a: boolean = new BigNumber(10).eq(1); } + { const a: boolean = new BigNumber(10).eq("1"); } + { const a: boolean = new BigNumber(10).eq(new BigNumber(10)); } + + { const a: boolean = new BigNumber(10).lt(1); } + { const a: boolean = new BigNumber(10).lt("1"); } + { const a: boolean = new BigNumber(10).lt(new BigNumber(10)); } + + { const a: boolean = new BigNumber(10).le(1); } + { const a: boolean = new BigNumber(10).le("1"); } + { const a: boolean = new BigNumber(10).le(new BigNumber(10)); } + + { const a: BigNumber = new BigNumber(10).and(1); } + { const a: BigNumber = new BigNumber(10).and("1"); } + { const a: BigNumber = new BigNumber(10).and(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).or(1); } + { const a: BigNumber = new BigNumber(10).or("1"); } + { const a: BigNumber = new BigNumber(10).or(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).xor(1); } + { const a: BigNumber = new BigNumber(10).xor("1"); } + { const a: BigNumber = new BigNumber(10).xor(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).mod(1); } + { const a: BigNumber = new BigNumber(10).mod("1"); } + { const a: BigNumber = new BigNumber(10).mod(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).pow(1); } + { const a: BigNumber = new BigNumber(10).pow("1"); } + { const a: BigNumber = new BigNumber(10).pow(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).powm(1, 1); } + { const a: BigNumber = new BigNumber(10).powm("1", 1); } + { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), 1); } + { const a: BigNumber = new BigNumber(10).powm(1, "1"); } + { const a: BigNumber = new BigNumber(10).powm("1", "1"); } + { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), "1"); } + { const a: BigNumber = new BigNumber(10).powm(1, new BigNumber(1)); } + { const a: BigNumber = new BigNumber(10).powm("1", new BigNumber(1)); } + { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).invertm(1); } + { const a: BigNumber = new BigNumber(10).invertm("1"); } + { const a: BigNumber = new BigNumber(10).invertm(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).rand(); } + { const a: BigNumber = new BigNumber(10).rand(1); } + { const a: BigNumber = new BigNumber(10).rand("1"); } + { const a: BigNumber = new BigNumber(10).rand(new BigNumber(1)); } + + { const a: boolean | "maybe" = new BigNumber(10).probPrime(); } + + { const a: BigNumber = new BigNumber(10).nextPrime(); } + + { const a: BigNumber = new BigNumber(10).sqrt(); } + + { const a: BigNumber = new BigNumber(10).root(1); } + { const a: BigNumber = new BigNumber(10).root("1"); } + { const a: BigNumber = new BigNumber(10).root(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).shiftLeft(1); } + { const a: BigNumber = new BigNumber(10).shiftLeft("1"); } + { const a: BigNumber = new BigNumber(10).shiftLeft(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).shiftRight(1); } + { const a: BigNumber = new BigNumber(10).shiftRight("1"); } + { const a: BigNumber = new BigNumber(10).shiftRight(new BigNumber(1)); } + + { const a: BigNumber = new BigNumber(10).gcd(1); } + { const a: BigNumber = new BigNumber(10).gcd("1"); } + { const a: BigNumber = new BigNumber(10).gcd(new BigNumber(1)); } + + { const a: number = new BigNumber(10).jacobi(1); } + { const a: number = new BigNumber(10).jacobi("1"); } + { const a: number = new BigNumber(10).jacobi(new BigNumber(1)); } + + { const a: number = new BigNumber(10).bitLength(); } + + { const a: boolean = new BigNumber(10).isBitSet(10); } + + { const a: BigNumber = BigNumber.prime(10); } + { const a: BigNumber = BigNumber.prime(10, true); } + + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10)); } + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: "little" }); } + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: -1 }); } + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: 1 }); } + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: "big" }); } + { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { size: "auto" }); } + + { const a: BigNumber = BigNumber.ONE; } + { const a: BigNumber = BigNumber.ZERO; } +} diff --git a/types/adone/test/glosses/math/bitset.ts b/types/adone/test/glosses/math/bitset.ts new file mode 100644 index 0000000000..1e08d0649f --- /dev/null +++ b/types/adone/test/glosses/math/bitset.ts @@ -0,0 +1,62 @@ +namespace mathTests.bitsetTests { + const { + math: { + BitSet + } + } = adone; + + type BitSet = adone.math.BitSet; + + new BitSet(10); + new BitSet(new BitSet(10).dehydrate()); + + { const a: boolean = new BitSet(10).get(0); } + { const a: boolean = new BitSet(10).set(0); } + { const a: boolean = new BitSet(10).setRange(0, 10); } + { const a: boolean = new BitSet(10).unset(0); } + { const a: boolean = new BitSet(10).unsetRange(0, 10); } + { const a: boolean = new BitSet(10).toggle(0); } + { const a: boolean = new BitSet(10).toggleRange(0, 10); } + { const a: boolean = new BitSet(10).clear(); } + { const a: BitSet = new BitSet(10).clone(); } + { const a: string = new BitSet(10).dehydrate(); } + + { const a: BitSet = new BitSet(10).and(1); } + { const a: BitSet = new BitSet(10).and(new BitSet(10)); } + + { const a: BitSet = new BitSet(10).or(1); } + { const a: BitSet = new BitSet(10).or(new BitSet(10)); } + + { const a: BitSet = new BitSet(10).xor(1); } + { const a: BitSet = new BitSet(10).xor(new BitSet(10)); } + + new BitSet(10).forEach((x: number) => {}); + new BitSet(10).forEach((x: number) => false); + + { const a: BitSet = new BitSet(10).circularShift(10); } + { const a: number = new BitSet(10).getCardinality(); } + { const a: number[] = new BitSet(10).getIndices(); } + { const a: boolean = new BitSet(10).isSubsetOf(new BitSet(10)); } + { const a: boolean = new BitSet(10).isEmpty(); } + { const a: boolean = new BitSet(10).isEqual(new BitSet(10)); } + { const a: string = new BitSet(10).toString(); } + { const a: number = new BitSet(10).ffs(); } + { const a: number = new BitSet(10).ffs(1); } + { const a: number = new BitSet(10).ffz(); } + { const a: number = new BitSet(10).ffz(1); } + { const a: number = new BitSet(10).fls(); } + { const a: number = new BitSet(10).fls(1); } + { const a: number = new BitSet(10).flz(); } + { const a: number = new BitSet(10).flz(1); } + { const a: number = new BitSet(10).nextSetBit(1); } + { const a: number = new BitSet(10).nextUnsetBit(1); } + { const a: number = new BitSet(10).previousSetBit(1); } + { const a: number = new BitSet(10).previousUnsetBit(1); } + { const a: number = new BitSet(10).readUInt(); } + { const a: number = new BitSet(10).readUInt(1); } + { const a: number = new BitSet(10).readUInt(1, 2); } + { new BitSet(10).writeUInt(1); } + { new BitSet(10).writeUInt(1, 2); } + { new BitSet(10).writeUInt(1, 2, 3); } + { const a: BitSet = BitSet.fromLong(new adone.math.Long(10, 20)); } +} diff --git a/types/adone/test/glosses/math/decimal.ts b/types/adone/test/glosses/math/decimal.ts new file mode 100644 index 0000000000..7c5f450c35 --- /dev/null +++ b/types/adone/test/glosses/math/decimal.ts @@ -0,0 +1,445 @@ +namespace mathTests.decimalTest { + const { + math: { + Decimal + } + } = adone; + + type Decimal = adone.math.Decimal; + + new Decimal(0); + new Decimal("0"); + new Decimal(new Decimal(0)); + + new Decimal(0).e.toExponential(); + new Decimal(0).d[0].toExponential(); + new Decimal(0).s.toExponential(); + + const d = new Decimal(0); + + { const a: Decimal = d.abs(); } + { const a: Decimal = d.absoluteValue(); } + + { const a: Decimal = d.ceil(); } + + { const a: number = d.comparedTo(1); } + { const a: number = d.comparedTo("1"); } + { const a: number = d.comparedTo(d); } + { const a: number = d.cmp(1); } + { const a: number = d.cmp("1"); } + { const a: number = d.cmp(d); } + + { const a: Decimal = d.cos(); } + { const a: Decimal = d.cosine(); } + + { const a: Decimal = d.cubeRoot(); } + { const a: Decimal = d.cbrt(); } + + { const a: number = d.decimalPlaces(); } + { const a: number = d.dp(); } + + { const a: Decimal = d.dividedBy(1); } + { const a: Decimal = d.dividedBy("1"); } + { const a: Decimal = d.dividedBy(d); } + { const a: Decimal = d.div(1); } + { const a: Decimal = d.div("1"); } + { const a: Decimal = d.div(d); } + + { const a: Decimal = d.dividedToIntegerBy(1); } + { const a: Decimal = d.dividedToIntegerBy("1"); } + { const a: Decimal = d.dividedToIntegerBy(d); } + { const a: Decimal = d.divToInt(1); } + { const a: Decimal = d.divToInt("1"); } + { const a: Decimal = d.divToInt(d); } + + { const a: boolean = d.equals(1); } + { const a: boolean = d.equals("1"); } + { const a: boolean = d.equals(d); } + { const a: boolean = d.eq(1); } + { const a: boolean = d.eq("1"); } + { const a: boolean = d.eq(d); } + + { const a: Decimal = d.floor(); } + + { const a: boolean = d.greaterThan(1); } + { const a: boolean = d.greaterThan("1"); } + { const a: boolean = d.greaterThan(d); } + { const a: boolean = d.gt(1); } + { const a: boolean = d.gt("1"); } + { const a: boolean = d.gt(d); } + + { const a: boolean = d.greaterThanOrEqualTo(1); } + { const a: boolean = d.greaterThanOrEqualTo("1"); } + { const a: boolean = d.greaterThanOrEqualTo(d); } + { const a: boolean = d.gte(1); } + { const a: boolean = d.gte("1"); } + { const a: boolean = d.gte(d); } + + { const a: Decimal = d.hyperbolicCosine(); } + { const a: Decimal = d.cosh(); } + + { const a: Decimal = d.hyperbolicSine(); } + { const a: Decimal = d.sinh(); } + + { const a: Decimal = d.hyperbolicTangent(); } + { const a: Decimal = d.tanh(); } + + { const a: Decimal = d.inverseCosine(); } + { const a: Decimal = d.acos(); } + + { const a: Decimal = d.inverseHyperbolicCosine(); } + { const a: Decimal = d.acosh(); } + + { const a: Decimal = d.inverseHyperbolicSine(); } + { const a: Decimal = d.asinh(); } + + { const a: Decimal = d.inverseHyperbolicTangent(); } + { const a: Decimal = d.atanh(); } + + { const a: Decimal = d.inverseSine(); } + { const a: Decimal = d.asin(); } + + { const a: Decimal = d.inverseTangent(); } + { const a: Decimal = d.atan(); } + + { const a: boolean = d.isFinite(); } + + { const a: boolean = d.isInteger(); } + { const a: boolean = d.isInt(); } + + { const a: boolean = d.isNaN(); } + + { const a: boolean = d.isNegative(); } + { const a: boolean = d.isNeg(); } + + { const a: boolean = d.isPositive(); } + { const a: boolean = d.isPos(); } + + { const a: boolean = d.isZero(); } + + { const a: boolean = d.lessThan(1); } + { const a: boolean = d.lessThan("1"); } + { const a: boolean = d.lessThan(d); } + { const a: boolean = d.lt(1); } + { const a: boolean = d.lt("1"); } + { const a: boolean = d.lt(d); } + + { const a: boolean = d.lessThanOrEqualTo(1); } + { const a: boolean = d.lessThanOrEqualTo("1"); } + { const a: boolean = d.lessThanOrEqualTo(d); } + { const a: boolean = d.lte(1); } + { const a: boolean = d.lte("1"); } + { const a: boolean = d.lte(d); } + + { const a: Decimal = d.logarithm(); } + { const a: Decimal = d.logarithm(1); } + { const a: Decimal = d.logarithm("1"); } + { const a: Decimal = d.logarithm(d); } + { const a: Decimal = d.log(); } + { const a: Decimal = d.log(1); } + { const a: Decimal = d.log("1"); } + { const a: Decimal = d.log(d); } + + { const a: Decimal = d.minus(1); } + { const a: Decimal = d.minus("1"); } + { const a: Decimal = d.minus(d); } + { const a: Decimal = d.sub(1); } + { const a: Decimal = d.sub("1"); } + { const a: Decimal = d.sub(d); } + + { const a: Decimal = d.modulo(1); } + { const a: Decimal = d.modulo("1"); } + { const a: Decimal = d.modulo(d); } + { const a: Decimal = d.mod(1); } + { const a: Decimal = d.mod("1"); } + { const a: Decimal = d.mod(d); } + + { const a: Decimal = d.naturalExponential(); } + { const a: Decimal = d.exp(); } + + { const a: Decimal = d.naturalLogarithm(); } + { const a: Decimal = d.ln(); } + + { const a: Decimal = d.negated(); } + { const a: Decimal = d.neg(); } + + { const a: Decimal = d.plus(1); } + { const a: Decimal = d.plus("1"); } + { const a: Decimal = d.plus(d); } + { const a: Decimal = d.add(1); } + { const a: Decimal = d.add("1"); } + { const a: Decimal = d.add(d); } + + { const a: number = d.precision(); } + { const a: number = d.precision(true); } + { const a: number = d.sd(); } + { const a: number = d.sd(true); } + + { const a: Decimal = d.round(); } + + { const a: Decimal = d.sine(); } + { const a: Decimal = d.sin(); } + + { const a: Decimal = d.squareRoot(); } + { const a: Decimal = d.sqrt(); } + + { const a: Decimal = d.tangent(); } + { const a: Decimal = d.tan(); } + + { const a: Decimal = d.times(1); } + { const a: Decimal = d.times("1"); } + { const a: Decimal = d.times(d); } + { const a: Decimal = d.mul(1); } + { const a: Decimal = d.mul("1"); } + { const a: Decimal = d.mul(d); } + + { const a: string = d.toBinary(); } + { const a: string = d.toBinary(1); } + { const a: string = d.toBinary(1, 1); } + + { const a: Decimal = d.toDecimalPlaces(); } + { const a: Decimal = d.toDecimalPlaces(1); } + { const a: Decimal = d.toDecimalPlaces(1, 1); } + { const a: Decimal = d.toDP(); } + { const a: Decimal = d.toDP(1); } + { const a: Decimal = d.toDP(1, 1); } + + { const a: string = d.toExponential(); } + { const a: string = d.toExponential(1); } + { const a: string = d.toExponential(1, 1); } + + { const a: string = d.toFixed(); } + { const a: string = d.toFixed(1); } + { const a: string = d.toFixed(1, 1); } + + { const a: Decimal[] = d.toFraction(); } + { const a: Decimal[] = d.toFraction(1); } + { const a: Decimal[] = d.toFraction("1"); } + { const a: Decimal[] = d.toFraction(d); } + + { const a: string = d.toHexadecimal(); } + { const a: string = d.toHexadecimal(1); } + { const a: string = d.toHexadecimal(1, 1); } + { const a: string = d.toHex(); } + { const a: string = d.toHex(1); } + { const a: string = d.toHex(1, 1); } + + { const a: string = d.toJSON(); } + + { const a: Decimal = d.toNearest(); } + { const a: Decimal = d.toNearest(1); } + { const a: Decimal = d.toNearest("1"); } + { const a: Decimal = d.toNearest(d); } + { const a: Decimal = d.toNearest(d, 1); } + + { const a: number = d.toNumber(); } + + { const a: string = d.toOctal(); } + { const a: string = d.toOctal(1); } + { const a: string = d.toOctal(1, 1); } + + { const a: Decimal = d.toPower(1); } + { const a: Decimal = d.toPower("1"); } + { const a: Decimal = d.toPower(d); } + { const a: Decimal = d.pow(1); } + { const a: Decimal = d.pow("1"); } + { const a: Decimal = d.pow(d); } + + { const a: string = d.toPrecision(); } + { const a: string = d.toPrecision(1); } + { const a: string = d.toPrecision(1, 1); } + + { const a: Decimal = d.toSignificantDigits(); } + { const a: Decimal = d.toSignificantDigits(1); } + { const a: Decimal = d.toSignificantDigits(1, 1); } + { const a: Decimal = d.toSD(); } + { const a: Decimal = d.toSD(1); } + { const a: Decimal = d.toSD(1, 1); } + + { const a: string = d.toString(); } + + { const a: Decimal = d.truncated(); } + { const a: Decimal = d.trunc(); } + + { const a: string = d.valueOf(); } + + { const a: Decimal = Decimal.abs(1); } + { const a: Decimal = Decimal.abs("1"); } + { const a: Decimal = Decimal.abs(d); } + + { const a: Decimal = Decimal.acos(1); } + { const a: Decimal = Decimal.acos("1"); } + { const a: Decimal = Decimal.acos(d); } + + { const a: Decimal = Decimal.acosh(1); } + { const a: Decimal = Decimal.acosh("1"); } + { const a: Decimal = Decimal.acosh(d); } + + { const a: Decimal = Decimal.asin(1); } + { const a: Decimal = Decimal.asin("1"); } + { const a: Decimal = Decimal.asin(d); } + + { const a: Decimal = Decimal.asinh(1); } + { const a: Decimal = Decimal.asinh("1"); } + { const a: Decimal = Decimal.asinh(d); } + + { const a: Decimal = Decimal.atan(1); } + { const a: Decimal = Decimal.atan("1"); } + { const a: Decimal = Decimal.atan(d); } + + { const a: Decimal = Decimal.atan2(1, 1); } + { const a: Decimal = Decimal.atan2("1", "1"); } + { const a: Decimal = Decimal.atan2(d, d); } + + { const a: Decimal = Decimal.cbrt(1); } + { const a: Decimal = Decimal.cbrt("1"); } + { const a: Decimal = Decimal.cbrt(d); } + + { const a: typeof Decimal = Decimal.clone({}); } + { const a: typeof Decimal = Decimal.clone({ crypto: true }); } + { const a: typeof Decimal = Decimal.clone({ defaults: true }); } + { const a: typeof Decimal = Decimal.clone({ maxE: 1 }); } + { const a: typeof Decimal = Decimal.clone({ minE: 1 }); } + { const a: typeof Decimal = Decimal.clone({ modulo: 1 }); } + { const a: typeof Decimal = Decimal.clone({ precision: 1 }); } + { const a: typeof Decimal = Decimal.clone({ rounding: 1 }); } + { const a: typeof Decimal = Decimal.clone({ toExpNeg: 1 }); } + { const a: typeof Decimal = Decimal.clone({ toExpPos: 1 }); } + { const a: typeof Decimal = Decimal.clone({}); } + + { const a: typeof Decimal = Decimal.config({ crypto: true }); } + { const a: typeof Decimal = Decimal.config({ defaults: true }); } + { const a: typeof Decimal = Decimal.config({ maxE: 1 }); } + { const a: typeof Decimal = Decimal.config({ minE: 1 }); } + { const a: typeof Decimal = Decimal.config({ modulo: 1 }); } + { const a: typeof Decimal = Decimal.config({ precision: 1 }); } + { const a: typeof Decimal = Decimal.config({ rounding: 1 }); } + { const a: typeof Decimal = Decimal.config({ toExpNeg: 1 }); } + { const a: typeof Decimal = Decimal.config({ toExpPos: 1 }); } + + { const a: typeof Decimal = Decimal.set({ crypto: true }); } + { const a: typeof Decimal = Decimal.set({ defaults: true }); } + { const a: typeof Decimal = Decimal.set({ maxE: 1 }); } + { const a: typeof Decimal = Decimal.set({ minE: 1 }); } + { const a: typeof Decimal = Decimal.set({ modulo: 1 }); } + { const a: typeof Decimal = Decimal.set({ precision: 1 }); } + { const a: typeof Decimal = Decimal.set({ rounding: 1 }); } + { const a: typeof Decimal = Decimal.set({ toExpNeg: 1 }); } + { const a: typeof Decimal = Decimal.set({ toExpPos: 1 }); } + + { const a: Decimal = Decimal.cos(1); } + { const a: Decimal = Decimal.cos("1"); } + { const a: Decimal = Decimal.cos(d); } + + { const a: Decimal = Decimal.div(1, 1); } + { const a: Decimal = Decimal.div("1", "1"); } + { const a: Decimal = Decimal.div(d, d); } + + { const a: Decimal = Decimal.exp(1); } + { const a: Decimal = Decimal.exp("1"); } + { const a: Decimal = Decimal.exp(d); } + + { const a: Decimal = Decimal.floor(1); } + { const a: Decimal = Decimal.floor("1"); } + { const a: Decimal = Decimal.floor(d); } + + { const a: Decimal = Decimal.hypot(1); } + { const a: Decimal = Decimal.hypot("1"); } + { const a: Decimal = Decimal.hypot(d); } + { const a: Decimal = Decimal.hypot(1, 1); } + { const a: Decimal = Decimal.hypot("1", "1"); } + { const a: Decimal = Decimal.hypot(d, d); } + { const a: Decimal = Decimal.hypot(1, 1, 1); } + { const a: Decimal = Decimal.hypot("1", "1", "1"); } + { const a: Decimal = Decimal.hypot(d, d, d); } + { const a: Decimal = Decimal.hypot(1, 1, 1, 1, 1, 1, 1, 1, 1, d, 1, 1, 1, "1", d); } + + { const a: boolean = Decimal.isDecimal(d); } + + { const a: Decimal = Decimal.ln(1); } + { const a: Decimal = Decimal.ln("1"); } + { const a: Decimal = Decimal.ln(d); } + + { const a: Decimal = Decimal.log(1); } + { const a: Decimal = Decimal.log("1"); } + { const a: Decimal = Decimal.log(d); } + { const a: Decimal = Decimal.log(1, 2); } + { const a: Decimal = Decimal.log("1", 2); } + { const a: Decimal = Decimal.log(d, 2); } + + { const a: Decimal = Decimal.log2(1); } + { const a: Decimal = Decimal.log2("1"); } + { const a: Decimal = Decimal.log2(d); } + + { const a: Decimal = Decimal.log10(1); } + { const a: Decimal = Decimal.log10("1"); } + { const a: Decimal = Decimal.log10(d); } + + { const a: Decimal = Decimal.min(1, "1", 1, d); } + + { const a: Decimal = Decimal.max(1, "1", 1, d); } + + { const a: Decimal = Decimal.mul(1, 1); } + { const a: Decimal = Decimal.mul("1", "1"); } + { const a: Decimal = Decimal.mul(d, d); } + + { const a: Decimal = Decimal.pow(1, 1); } + { const a: Decimal = Decimal.pow("1", "1"); } + { const a: Decimal = Decimal.pow(d, d); } + + { const a: Decimal = Decimal.random(); } + { const a: Decimal = Decimal.random(1); } + + { const a: Decimal = Decimal.round(1); } + { const a: Decimal = Decimal.round("1"); } + { const a: Decimal = Decimal.round(d); } + + { const a: Decimal = Decimal.sign(1); } + { const a: Decimal = Decimal.sign("1"); } + { const a: Decimal = Decimal.sign(d); } + + { const a: Decimal = Decimal.sin(1); } + { const a: Decimal = Decimal.sin("1"); } + { const a: Decimal = Decimal.sin(d); } + + { const a: Decimal = Decimal.sinh(1); } + { const a: Decimal = Decimal.sinh("1"); } + { const a: Decimal = Decimal.sinh(d); } + + { const a: Decimal = Decimal.sqrt(1); } + { const a: Decimal = Decimal.sqrt("1"); } + { const a: Decimal = Decimal.sqrt(d); } + + { const a: Decimal = Decimal.sub(1, 1); } + { const a: Decimal = Decimal.sub("1", "1"); } + { const a: Decimal = Decimal.sub(d, d); } + + { const a: Decimal = Decimal.tan(1); } + { const a: Decimal = Decimal.tan("1"); } + { const a: Decimal = Decimal.tan(d); } + + { const a: Decimal = Decimal.tanh(1); } + { const a: Decimal = Decimal.tanh("1"); } + { const a: Decimal = Decimal.tanh(d); } + + { const a: Decimal = Decimal.trunc(1); } + { const a: Decimal = Decimal.trunc("1"); } + { const a: Decimal = Decimal.trunc(d); } + + { const a: number = Decimal.precision; } + { const a: number = Decimal.rounding; } + { const a: number = Decimal.toExpNeg; } + { const a: number = Decimal.minE; } + { const a: boolean = Decimal.crypto; } + { const a: number = Decimal.modulo; } + { const a: number = Decimal.ROUND_UP; } + { const a: number = Decimal.ROUND_DOWN; } + { const a: number = Decimal.ROUND_CEIL; } + { const a: number = Decimal.ROUND_FLOOR; } + { const a: number = Decimal.ROUND_HALF_UP; } + { const a: number = Decimal.ROUND_HALF_DOWN; } + { const a: number = Decimal.ROUND_HALF_EVEN; } + { const a: number = Decimal.ROUND_HALF_CEIL; } + { const a: number = Decimal.ROUND_HALF_FLOOR; } + { const a: number = Decimal.EUCLID; } +} diff --git a/types/adone/test/glosses/math/index.ts b/types/adone/test/glosses/math/index.ts index 928977fad9..d85c08bdef 100644 --- a/types/adone/test/glosses/math/index.ts +++ b/types/adone/test/glosses/math/index.ts @@ -1,469 +1,7 @@ namespace mathTests { - const { math } = adone; - - namespace LongTests { - new math.Long(); - new math.Long(0); - new math.Long(0, 0); - new math.Long(0, 0, true); - - namespace toInt { - const a: number = new math.Long().toInt(); - } - - namespace toNumber { - const a: number = new math.Long().toNumber(); - } - - namespace toString { - const a: string = new math.Long().toString(); - const b: string = new math.Long().toString(16); - } - - namespace getHighBits { - const a: number = new math.Long().getHighBits(); - } - - namespace getLowBits { - const a: number = new math.Long().getLowBits(); - } - - namespace getLowBitsUnsigned { - const a: number = new math.Long().getLowBitsUnsigned(); - } - - namespace getHighBitsUnsigned { - const a: number = new math.Long().getHighBitsUnsigned(); - } - - namespace getNumBitsAbs { - const a: number = new math.Long().getNumBitsAbs(); - } - - namespace isZero { - const a: boolean = new math.Long().isZero(); - } - - namespace isNegative { - const a: boolean = new math.Long().isNegative(); - } - - namespace isPositive { - const a: boolean = new math.Long().isPositive(); - } - - namespace isOdd { - const a: boolean = new math.Long().isOdd(); - } - - namespace isEven { - const a: boolean = new math.Long().isEven(); - } - - namespace equals { - const a = new math.Long(); - const b: boolean = a.equals(new math.Long()); - const c: boolean = a.equals(1); - const d: boolean = a.equals("1"); - const e: boolean = a.equals({ low: 0, high: 0 }); - } - - namespace lessThan { - const a = new math.Long(); - const b: boolean = a.lessThan(new math.Long()); - const c: boolean = a.lessThan(1); - const d: boolean = a.lessThan("1"); - const e: boolean = a.lessThan({ low: 0, high: 0 }); - } - - namespace lessThanOrEqual { - const a = new math.Long(); - const b: boolean = a.lessThanOrEqual(new math.Long()); - const c: boolean = a.lessThanOrEqual(1); - const d: boolean = a.lessThanOrEqual("1"); - const e: boolean = a.lessThanOrEqual({ low: 0, high: 0 }); - } - - namespace greaterThan { - const a = new math.Long(); - const b: boolean = a.greaterThan(new math.Long()); - const c: boolean = a.greaterThan(1); - const d: boolean = a.greaterThan("1"); - const e: boolean = a.greaterThan({ low: 0, high: 0 }); - } - - namespace greaterThanOrEqual { - const a = new math.Long(); - const b: boolean = a.greaterThanOrEqual(new math.Long()); - const c: boolean = a.greaterThanOrEqual(1); - const d: boolean = a.greaterThanOrEqual("1"); - const e: boolean = a.greaterThanOrEqual({ low: 0, high: 0 }); - } - - namespace compareTests { - const a = new math.Long(); - const b: number = a.compare(new math.Long()); - const c: number = a.compare(1); - const d: number = a.compare("1"); - const e: number = a.compare({ low: 0, high: 0 }); - } - - namespace negate { - const a: adone.math.Long = new math.Long().negate(); - } - - namespace add { - const a = new math.Long(); - const b: adone.math.Long = a.add(new math.Long()); - const c: adone.math.Long = a.add(1); - const d: adone.math.Long = a.add("1"); - const e: adone.math.Long = a.add({ low: 0, high: 0 }); - } - - namespace sub { - const a = new math.Long(); - const b: adone.math.Long = a.sub(new math.Long()); - const c: adone.math.Long = a.sub(1); - const d: adone.math.Long = a.sub("1"); - const e: adone.math.Long = a.sub({ low: 0, high: 0 }); - } - - namespace mul { - const a = new math.Long(); - const b: adone.math.Long = a.mul(new math.Long()); - const c: adone.math.Long = a.mul(1); - const d: adone.math.Long = a.mul("1"); - const e: adone.math.Long = a.mul({ low: 0, high: 0 }); - } - - namespace div { - const a = new math.Long(); - const b: adone.math.Long = a.div(new math.Long()); - const c: adone.math.Long = a.div(1); - const d: adone.math.Long = a.div("1"); - const e: adone.math.Long = a.div({ low: 0, high: 0 }); - } - - namespace mod { - const a = new math.Long(); - const b: adone.math.Long = a.mod(new math.Long()); - const c: adone.math.Long = a.mod(1); - const d: adone.math.Long = a.mod("1"); - const e: adone.math.Long = a.mod({ low: 0, high: 0 }); - } - - namespace not { - const a: adone.math.Long = new math.Long().not(); - } - - namespace and { - const a = new math.Long(); - const b: adone.math.Long = a.and(new math.Long()); - const c: adone.math.Long = a.and(1); - const d: adone.math.Long = a.and("1"); - const e: adone.math.Long = a.and({ low: 0, high: 0 }); - } - - namespace or { - const a = new math.Long(); - const b: adone.math.Long = a.or(new math.Long()); - const c: adone.math.Long = a.or(1); - const d: adone.math.Long = a.or("1"); - const e: adone.math.Long = a.or({ low: 0, high: 0 }); - } - - namespace xor { - const a = new math.Long(); - const b: adone.math.Long = a.xor(new math.Long()); - const c: adone.math.Long = a.xor(1); - const d: adone.math.Long = a.xor("1"); - const e: adone.math.Long = a.xor({ low: 0, high: 0 }); - } - - namespace shl { - const a = new math.Long(); - const b: adone.math.Long = a.shl(new math.Long()); - const c: adone.math.Long = a.shl(1); - } - - namespace shr { - const a = new math.Long(); - const b: adone.math.Long = a.shr(new math.Long()); - const c: adone.math.Long = a.shr(1); - } - - namespace shru { - const a = new math.Long(); - const b: adone.math.Long = a.shr(new math.Long()); - const c: adone.math.Long = a.shr(1); - } - - namespace toSigned { - const a: adone.math.Long = new math.Long().toSigned(); - } - - namespace toUnsigned { - const a: adone.math.Long = new math.Long().toUnsigned(); - } - - namespace toBytes { - const a: number[] = new math.Long().toBytes(); - } - - namespace toBytesLE { - const a: number[] = new math.Long().toBytesLE(); - } - - namespace static { - namespace fromInt { - const a: adone.math.Long = math.Long.fromInt(123); - const b: adone.math.Long = math.Long.fromInt(123, true); - } - - namespace fromNumber { - const a: adone.math.Long = math.Long.fromNumber(123); - const b: adone.math.Long = math.Long.fromNumber(123, true); - } - - namespace fromBits { - const a: adone.math.Long = math.Long.fromBits(0, 0); - const b: adone.math.Long = math.Long.fromBits(123, 0, true); - } - - namespace fromString { - const a: adone.math.Long = math.Long.fromString("123"); - const b: adone.math.Long = math.Long.fromString("123", true); - const c: adone.math.Long = math.Long.fromString("123", 16); - const d: adone.math.Long = math.Long.fromString("123", true, 16); - } - - namespace fromValue { - const a: adone.math.Long = math.Long.fromValue(new math.Long()); - const b: adone.math.Long = math.Long.fromValue(1); - const c: adone.math.Long = math.Long.fromValue("1"); - const e: adone.math.Long = math.Long.fromValue({ low: 0, high: 0 }); - } - - namespace constants { - const a: adone.math.Long = math.Long.MIN_VALUE; - const b: adone.math.Long = math.Long.MAX_VALUE; - const c: adone.math.Long = math.Long.MAX_UNSIGNED_VALUE; - const d: adone.math.Long = math.Long.ZERO; - const e: adone.math.Long = math.Long.UZERO; - const f: adone.math.Long = math.Long.ONE; - const g: adone.math.Long = math.Long.UONE; - const h: adone.math.Long = math.Long.NEG_ONE; - } - } - } - - namespace BigNumberTests { - const { BigNumber } = math; - type BigNumber = adone.math.BigNumber; - - new BigNumber(10); - new BigNumber("10"); - new BigNumber(new BigNumber(10)); - new BigNumber("10", 2); - - { const a: string = new BigNumber(1).toString(); } - { const a: string = new BigNumber(1).toString(2); } - - { const a: number = new BigNumber(1).toNumber(); } - - { const a: Buffer = new BigNumber(1).toBuffer(); } - { const a: Buffer = new BigNumber(1).toBuffer({}); } - { const a: Buffer = new BigNumber(1).toBuffer({ endian: 1 }); } - { const a: Buffer = new BigNumber(1).toBuffer({ endian: -1 }); } - { const a: Buffer = new BigNumber(1).toBuffer({ endian: "big" }); } - { const a: Buffer = new BigNumber(1).toBuffer({ endian: "little" }); } - { const a: Buffer = new BigNumber(1).toBuffer({ size: 1 }); } - { const a: Buffer = new BigNumber(1).toBuffer({ size: "auto" }); } - - { const a: BigNumber = new BigNumber(10).add(1); } - { const a: BigNumber = new BigNumber(10).add("1"); } - { const a: BigNumber = new BigNumber(10).add(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).sub(1); } - { const a: BigNumber = new BigNumber(10).sub("1"); } - { const a: BigNumber = new BigNumber(10).sub(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).mul(1); } - { const a: BigNumber = new BigNumber(10).mul("1"); } - { const a: BigNumber = new BigNumber(10).mul(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).div(1); } - { const a: BigNumber = new BigNumber(10).div("1"); } - { const a: BigNumber = new BigNumber(10).div(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).abs(); } - - { const a: BigNumber = new BigNumber(10).neg(); } - - { const a: number = new BigNumber(10).cmp(1); } - { const a: number = new BigNumber(10).cmp("1"); } - { const a: number = new BigNumber(10).cmp(new BigNumber(1)); } - - { const a: boolean = new BigNumber(10).gt(1); } - { const a: boolean = new BigNumber(10).gt("1"); } - { const a: boolean = new BigNumber(10).gt(new BigNumber(10)); } - - { const a: boolean = new BigNumber(10).ge(1); } - { const a: boolean = new BigNumber(10).ge("1"); } - { const a: boolean = new BigNumber(10).ge(new BigNumber(10)); } - - { const a: boolean = new BigNumber(10).eq(1); } - { const a: boolean = new BigNumber(10).eq("1"); } - { const a: boolean = new BigNumber(10).eq(new BigNumber(10)); } - - { const a: boolean = new BigNumber(10).lt(1); } - { const a: boolean = new BigNumber(10).lt("1"); } - { const a: boolean = new BigNumber(10).lt(new BigNumber(10)); } - - { const a: boolean = new BigNumber(10).le(1); } - { const a: boolean = new BigNumber(10).le("1"); } - { const a: boolean = new BigNumber(10).le(new BigNumber(10)); } - - { const a: BigNumber = new BigNumber(10).and(1); } - { const a: BigNumber = new BigNumber(10).and("1"); } - { const a: BigNumber = new BigNumber(10).and(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).or(1); } - { const a: BigNumber = new BigNumber(10).or("1"); } - { const a: BigNumber = new BigNumber(10).or(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).xor(1); } - { const a: BigNumber = new BigNumber(10).xor("1"); } - { const a: BigNumber = new BigNumber(10).xor(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).mod(1); } - { const a: BigNumber = new BigNumber(10).mod("1"); } - { const a: BigNumber = new BigNumber(10).mod(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).pow(1); } - { const a: BigNumber = new BigNumber(10).pow("1"); } - { const a: BigNumber = new BigNumber(10).pow(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).powm(1, 1); } - { const a: BigNumber = new BigNumber(10).powm("1", 1); } - { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), 1); } - { const a: BigNumber = new BigNumber(10).powm(1, "1"); } - { const a: BigNumber = new BigNumber(10).powm("1", "1"); } - { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), "1"); } - { const a: BigNumber = new BigNumber(10).powm(1, new BigNumber(1)); } - { const a: BigNumber = new BigNumber(10).powm("1", new BigNumber(1)); } - { const a: BigNumber = new BigNumber(10).powm(new BigNumber(1), new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).invertm(1); } - { const a: BigNumber = new BigNumber(10).invertm("1"); } - { const a: BigNumber = new BigNumber(10).invertm(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).rand(); } - { const a: BigNumber = new BigNumber(10).rand(1); } - { const a: BigNumber = new BigNumber(10).rand("1"); } - { const a: BigNumber = new BigNumber(10).rand(new BigNumber(1)); } - - { const a: boolean | "maybe" = new BigNumber(10).probPrime(); } - - { const a: BigNumber = new BigNumber(10).nextPrime(); } - - { const a: BigNumber = new BigNumber(10).sqrt(); } - - { const a: BigNumber = new BigNumber(10).root(1); } - { const a: BigNumber = new BigNumber(10).root("1"); } - { const a: BigNumber = new BigNumber(10).root(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).shiftLeft(1); } - { const a: BigNumber = new BigNumber(10).shiftLeft("1"); } - { const a: BigNumber = new BigNumber(10).shiftLeft(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).shiftRight(1); } - { const a: BigNumber = new BigNumber(10).shiftRight("1"); } - { const a: BigNumber = new BigNumber(10).shiftRight(new BigNumber(1)); } - - { const a: BigNumber = new BigNumber(10).gcd(1); } - { const a: BigNumber = new BigNumber(10).gcd("1"); } - { const a: BigNumber = new BigNumber(10).gcd(new BigNumber(1)); } - - { const a: number = new BigNumber(10).jacobi(1); } - { const a: number = new BigNumber(10).jacobi("1"); } - { const a: number = new BigNumber(10).jacobi(new BigNumber(1)); } - - { const a: number = new BigNumber(10).bitLength(); } - - { const a: boolean = new BigNumber(10).isBitSet(10); } - - { const a: BigNumber = BigNumber.prime(10); } - { const a: BigNumber = BigNumber.prime(10, true); } - - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10)); } - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: "little" }); } - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: -1 }); } - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: 1 }); } - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { endian: "big" }); } - { const a: BigNumber = BigNumber.fromBuffer(Buffer.alloc(10), { size: "auto" }); } - - { const a: BigNumber = BigNumber.ONE; } - { const a: BigNumber = BigNumber.ZERO; } - } - - namespace bitSetTests { - const { BitSet } = math; - type BitSet = adone.math.BitSet; - - new BitSet(10); - new BitSet(new BitSet(10).dehydrate()); - - { const a: boolean = new BitSet(10).get(0); } - { const a: boolean = new BitSet(10).set(0); } - { const a: boolean = new BitSet(10).setRange(0, 10); } - { const a: boolean = new BitSet(10).unset(0); } - { const a: boolean = new BitSet(10).unsetRange(0, 10); } - { const a: boolean = new BitSet(10).toggle(0); } - { const a: boolean = new BitSet(10).toggleRange(0, 10); } - { const a: boolean = new BitSet(10).clear(); } - { const a: BitSet = new BitSet(10).clone(); } - { const a: string = new BitSet(10).dehydrate(); } - - { const a: BitSet = new BitSet(10).and(1); } - { const a: BitSet = new BitSet(10).and(new BitSet(10)); } - - { const a: BitSet = new BitSet(10).or(1); } - { const a: BitSet = new BitSet(10).or(new BitSet(10)); } - - { const a: BitSet = new BitSet(10).xor(1); } - { const a: BitSet = new BitSet(10).xor(new BitSet(10)); } - - new BitSet(10).forEach((x: number) => {}); - new BitSet(10).forEach((x: number) => false); - - { const a: BitSet = new BitSet(10).circularShift(10); } - { const a: number = new BitSet(10).getCardinality(); } - { const a: number[] = new BitSet(10).getIndices(); } - { const a: boolean = new BitSet(10).isSubsetOf(new BitSet(10)); } - { const a: boolean = new BitSet(10).isEmpty(); } - { const a: boolean = new BitSet(10).isEqual(new BitSet(10)); } - { const a: string = new BitSet(10).toString(); } - { const a: number = new BitSet(10).ffs(); } - { const a: number = new BitSet(10).ffs(1); } - { const a: number = new BitSet(10).ffz(); } - { const a: number = new BitSet(10).ffz(1); } - { const a: number = new BitSet(10).fls(); } - { const a: number = new BitSet(10).fls(1); } - { const a: number = new BitSet(10).flz(); } - { const a: number = new BitSet(10).flz(1); } - { const a: number = new BitSet(10).nextSetBit(1); } - { const a: number = new BitSet(10).nextUnsetBit(1); } - { const a: number = new BitSet(10).previousSetBit(1); } - { const a: number = new BitSet(10).previousUnsetBit(1); } - { const a: number = new BitSet(10).readUInt(); } - { const a: number = new BitSet(10).readUInt(1); } - { const a: number = new BitSet(10).readUInt(1, 2); } - { new BitSet(10).writeUInt(1); } - { new BitSet(10).writeUInt(1, 2); } - { new BitSet(10).writeUInt(1, 2, 3); } - { const a: BitSet = BitSet.fromLong(new adone.math.Long(10, 20)); } - } + const { + math + } = adone; namespace randomTests { const { random } = math; @@ -471,4 +9,22 @@ namespace mathTests { random(100); random(0, 10); } + + namespace maxTests { + const { max } = math; + max([]); + { const a: number = max([1, 2, 3]); } + { const a: string = max(["1", "2", "3"]); } + { const a: string = max(["1", "2", "3"], (a) => a.length); } + { const a: number = max([1, 2, 3], (a) => a.toExponential()); } + } + + namespace minTests { + const { min } = math; + min([]); + { const a: number = min([1, 2, 3]); } + { const a: string = min(["1", "2", "3"]); } + { const a: string = min(["1", "2", "3"], (a) => a.length); } + { const a: number = min([1, 2, 3], (a) => a.toExponential()); } + } } diff --git a/types/adone/test/glosses/math/long.ts b/types/adone/test/glosses/math/long.ts new file mode 100644 index 0000000000..f0dfa0b7ec --- /dev/null +++ b/types/adone/test/glosses/math/long.ts @@ -0,0 +1,261 @@ +namespace mathTests.longTests { + const { + math: { + Long + } + } = adone; + + new Long(); + new Long(0); + new Long(0, 0); + new Long(0, 0, true); + + namespace toInt { + const a: number = new Long().toInt(); + } + + namespace toNumber { + const a: number = new Long().toNumber(); + } + + namespace toString { + const a: string = new Long().toString(); + const b: string = new Long().toString(16); + } + + namespace getHighBits { + const a: number = new Long().getHighBits(); + } + + namespace getLowBits { + const a: number = new Long().getLowBits(); + } + + namespace getLowBitsUnsigned { + const a: number = new Long().getLowBitsUnsigned(); + } + + namespace getHighBitsUnsigned { + const a: number = new Long().getHighBitsUnsigned(); + } + + namespace getNumBitsAbs { + const a: number = new Long().getNumBitsAbs(); + } + + namespace isZero { + const a: boolean = new Long().isZero(); + } + + namespace isNegative { + const a: boolean = new Long().isNegative(); + } + + namespace isPositive { + const a: boolean = new Long().isPositive(); + } + + namespace isOdd { + const a: boolean = new Long().isOdd(); + } + + namespace isEven { + const a: boolean = new Long().isEven(); + } + + namespace equals { + const a = new Long(); + const b: boolean = a.equals(new Long()); + const c: boolean = a.equals(1); + const d: boolean = a.equals("1"); + const e: boolean = a.equals({ low: 0, high: 0 }); + } + + namespace lessThan { + const a = new Long(); + const b: boolean = a.lessThan(new Long()); + const c: boolean = a.lessThan(1); + const d: boolean = a.lessThan("1"); + const e: boolean = a.lessThan({ low: 0, high: 0 }); + } + + namespace lessThanOrEqual { + const a = new Long(); + const b: boolean = a.lessThanOrEqual(new Long()); + const c: boolean = a.lessThanOrEqual(1); + const d: boolean = a.lessThanOrEqual("1"); + const e: boolean = a.lessThanOrEqual({ low: 0, high: 0 }); + } + + namespace greaterThan { + const a = new Long(); + const b: boolean = a.greaterThan(new Long()); + const c: boolean = a.greaterThan(1); + const d: boolean = a.greaterThan("1"); + const e: boolean = a.greaterThan({ low: 0, high: 0 }); + } + + namespace greaterThanOrEqual { + const a = new Long(); + const b: boolean = a.greaterThanOrEqual(new Long()); + const c: boolean = a.greaterThanOrEqual(1); + const d: boolean = a.greaterThanOrEqual("1"); + const e: boolean = a.greaterThanOrEqual({ low: 0, high: 0 }); + } + + namespace compareTests { + const a = new Long(); + const b: number = a.compare(new Long()); + const c: number = a.compare(1); + const d: number = a.compare("1"); + const e: number = a.compare({ low: 0, high: 0 }); + } + + namespace negate { + const a: adone.math.Long = new Long().negate(); + } + + namespace add { + const a = new Long(); + const b: adone.math.Long = a.add(new Long()); + const c: adone.math.Long = a.add(1); + const d: adone.math.Long = a.add("1"); + const e: adone.math.Long = a.add({ low: 0, high: 0 }); + } + + namespace sub { + const a = new Long(); + const b: adone.math.Long = a.sub(new Long()); + const c: adone.math.Long = a.sub(1); + const d: adone.math.Long = a.sub("1"); + const e: adone.math.Long = a.sub({ low: 0, high: 0 }); + } + + namespace mul { + const a = new Long(); + const b: adone.math.Long = a.mul(new Long()); + const c: adone.math.Long = a.mul(1); + const d: adone.math.Long = a.mul("1"); + const e: adone.math.Long = a.mul({ low: 0, high: 0 }); + } + + namespace div { + const a = new Long(); + const b: adone.math.Long = a.div(new Long()); + const c: adone.math.Long = a.div(1); + const d: adone.math.Long = a.div("1"); + const e: adone.math.Long = a.div({ low: 0, high: 0 }); + } + + namespace mod { + const a = new Long(); + const b: adone.math.Long = a.mod(new Long()); + const c: adone.math.Long = a.mod(1); + const d: adone.math.Long = a.mod("1"); + const e: adone.math.Long = a.mod({ low: 0, high: 0 }); + } + + namespace not { + const a: adone.math.Long = new Long().not(); + } + + namespace and { + const a = new Long(); + const b: adone.math.Long = a.and(new Long()); + const c: adone.math.Long = a.and(1); + const d: adone.math.Long = a.and("1"); + const e: adone.math.Long = a.and({ low: 0, high: 0 }); + } + + namespace or { + const a = new Long(); + const b: adone.math.Long = a.or(new Long()); + const c: adone.math.Long = a.or(1); + const d: adone.math.Long = a.or("1"); + const e: adone.math.Long = a.or({ low: 0, high: 0 }); + } + + namespace xor { + const a = new Long(); + const b: adone.math.Long = a.xor(new Long()); + const c: adone.math.Long = a.xor(1); + const d: adone.math.Long = a.xor("1"); + const e: adone.math.Long = a.xor({ low: 0, high: 0 }); + } + + namespace shl { + const a = new Long(); + const b: adone.math.Long = a.shl(new Long()); + const c: adone.math.Long = a.shl(1); + } + + namespace shr { + const a = new Long(); + const b: adone.math.Long = a.shr(new Long()); + const c: adone.math.Long = a.shr(1); + } + + namespace shru { + const a = new Long(); + const b: adone.math.Long = a.shr(new Long()); + const c: adone.math.Long = a.shr(1); + } + + namespace toSigned { + const a: adone.math.Long = new Long().toSigned(); + } + + namespace toUnsigned { + const a: adone.math.Long = new Long().toUnsigned(); + } + + namespace toBytes { + const a: number[] = new Long().toBytes(); + } + + namespace toBytesLE { + const a: number[] = new Long().toBytesLE(); + } + + namespace static { + namespace fromInt { + const a: adone.math.Long = Long.fromInt(123); + const b: adone.math.Long = Long.fromInt(123, true); + } + + namespace fromNumber { + const a: adone.math.Long = Long.fromNumber(123); + const b: adone.math.Long = Long.fromNumber(123, true); + } + + namespace fromBits { + const a: adone.math.Long = Long.fromBits(0, 0); + const b: adone.math.Long = Long.fromBits(123, 0, true); + } + + namespace fromString { + const a: adone.math.Long = Long.fromString("123"); + const b: adone.math.Long = Long.fromString("123", true); + const c: adone.math.Long = Long.fromString("123", 16); + const d: adone.math.Long = Long.fromString("123", true, 16); + } + + namespace fromValue { + const a: adone.math.Long = Long.fromValue(new Long()); + const b: adone.math.Long = Long.fromValue(1); + const c: adone.math.Long = Long.fromValue("1"); + const e: adone.math.Long = Long.fromValue({ low: 0, high: 0 }); + } + + namespace constants { + const a: adone.math.Long = Long.MIN_VALUE; + const b: adone.math.Long = Long.MAX_VALUE; + const c: adone.math.Long = Long.MAX_UNSIGNED_VALUE; + const d: adone.math.Long = Long.ZERO; + const e: adone.math.Long = Long.UZERO; + const f: adone.math.Long = Long.ONE; + const g: adone.math.Long = Long.UONE; + const h: adone.math.Long = Long.NEG_ONE; + } + } +} diff --git a/types/adone/test/glosses/regex.ts b/types/adone/test/glosses/regex.ts index 7aab1e0d8d..2acf6cc24e 100644 --- a/types/adone/test/glosses/regex.ts +++ b/types/adone/test/glosses/regex.ts @@ -7,7 +7,11 @@ namespace adoneTests.regex { regex.filename().test("a"); regex.idn().test("a"); regex.ip4().test("a"); + regex.ip4({ exact: true }).test("a"); regex.ip6().test("a"); + regex.ip6({ exact: true }).test("a"); + regex.ip().test("a"); + regex.ip({ exact: true }).test("a"); regex.protocol().test("a"); regex.punycode().test("a"); regex.shebang().test("a"); diff --git a/types/adone/test/index.ts b/types/adone/test/index.ts index aec454539b..c97886c1e0 100644 --- a/types/adone/test/index.ts +++ b/types/adone/test/index.ts @@ -65,4 +65,9 @@ namespace AdoneRootTests { const b = new adone.benchmark.Benchmark.Suite(); b.add(() => {}).add("", () => {}).run(); } + + namespace asyncTests { + adone.async.all([], () => {}); + adone.async.forEach([], () => {}); + } } diff --git a/types/adone/tsconfig.json b/types/adone/tsconfig.json index 6a1af264a3..7194901d7a 100644 --- a/types/adone/tsconfig.json +++ b/types/adone/tsconfig.json @@ -22,7 +22,9 @@ "files": [ "adone-tests.ts", "adone.d.ts", + "async.d.ts", "benchmark.d.ts", + "glosses/app.d.ts", "glosses/archives.d.ts", "glosses/assertion.d.ts", "glosses/collections/array_set.d.ts", @@ -44,7 +46,7 @@ "glosses/collections/refcounted_cache.d.ts", "glosses/collections/set.d.ts", "glosses/collections/stack.d.ts", - "glosses/collections/timedout_map.d.ts", + "glosses/collections/time_map.d.ts", "glosses/compressors.d.ts", "glosses/crypto/asn1.d.ts", "glosses/crypto/ed25519.d.ts", @@ -58,7 +60,11 @@ "glosses/fast.d.ts", "glosses/fs.d.ts", "glosses/is.d.ts", + "glosses/math/bignumber.d.ts", + "glosses/math/bitset.d.ts", + "glosses/math/decimal.d.ts", "glosses/math/index.d.ts", + "glosses/math/long.d.ts", "glosses/math/matrix.d.ts", "glosses/math/simd.d.ts", "glosses/meta.d.ts", @@ -90,7 +96,7 @@ "glosses/utils.d.ts", "glosses/vault.d.ts", "index.d.ts", - "test/glosses/application.ts", + "test/glosses/app.ts", "test/glosses/archives.ts", "test/glosses/assertion.ts", "test/glosses/collections/array_set.ts", @@ -111,7 +117,7 @@ "test/glosses/collections/refcounted_cache.ts", "test/glosses/collections/set.ts", "test/glosses/collections/stack.ts", - "test/glosses/collections/timedout_map.ts", + "test/glosses/collections/time_map.ts", "test/glosses/compressors.ts", "test/glosses/crypto/asn1.ts", "test/glosses/crypto/ed25519.ts", @@ -124,7 +130,11 @@ "test/glosses/fast.ts", "test/glosses/fs.ts", "test/glosses/is.ts", + "test/glosses/math/bignumber.ts", + "test/glosses/math/bitset.ts", + "test/glosses/math/decimal.ts", "test/glosses/math/index.ts", + "test/glosses/math/long.ts", "test/glosses/math/matrix.ts", "test/glosses/math/simd.ts", "test/glosses/meta.ts", diff --git a/types/aframe/aframe-tests.ts b/types/aframe/aframe-tests.ts index 5af66a09d1..5e2bd23e36 100644 --- a/types/aframe/aframe-tests.ts +++ b/types/aframe/aframe-tests.ts @@ -21,9 +21,9 @@ type MyEntity = AFrame.Entity<{ material: THREE.Material; sound: { pause(): void }; }>; -const camera = document.querySelector('a-entity[camera]').components.camera; -const material = document.querySelector('a-entity[material]').components.material; -document.querySelector('a-entity[sound]').components.sound.pause(); +const camera = (document.querySelector('a-entity[camera]') as MyEntity).components.camera; +const material = (document.querySelector('a-entity[material]') as MyEntity).components.material; +(document.querySelector('a-entity[sound]') as MyEntity).components.sound.pause(); entity.getDOMAttribute('geometry').primitive; @@ -38,21 +38,82 @@ entity.addEventListener('child-detached', (event) => { }); // Components -const Component = AFRAME.registerComponent('test', {}); + +interface TestComponent extends AFrame.Component { + multiply: (f: number) => number; + + data: { + myProperty: any[], + string: string, + num: number + }; + + system: TestSystem; +} + +const Component = AFRAME.registerComponent('test-component', { + schema: { + myProperty: { + default: [], + parse() { return [true]; }, + }, + string: { type: 'string' }, + num: 0 + }, + init() { + this.data.num = 0; + }, + update() {}, + tick() {}, + remove() {}, + pause() {}, + play() {}, + + multiply(this: TestComponent, f: number) { + // Reference to system because both were registered with the same name. + return f * this.data.num * this.system.data.counter; + } +}); // Scene const scene = document.querySelector('a-scene'); scene.hasLoaded; // System -const system = scene.systems['systemName']; + +interface TestSystem extends AFrame.System { + data: { + counter: number; + }; +} + +const testSystem: AFrame.SystemDefinition = { + schema: { + counter: 0 + }, + + init() { + this.data.counter = 1; + } +}; + +AFRAME.registerSystem('test-component', testSystem); // Register Custom Geometry -AFRAME.registerGeometry('a-test-geometry', { + +interface TestGeometry extends AFrame.Geometry { + schema: AFrame.MultiPropertySchema<{ + groupIndex: number; + }>; +} + +AFRAME.registerGeometry('a-test-geometry', { schema: { groupIndex: { default: 0 } }, init(data) { this.geometry = new THREE.Geometry(); + const temp = data.groupIndex; + temp; } }); diff --git a/types/aframe/index.d.ts b/types/aframe/index.d.ts index 0da1ed0ef5..b405de0273 100644 --- a/types/aframe/index.d.ts +++ b/types/aframe/index.d.ts @@ -2,6 +2,7 @@ // Project: https://aframe.io/ // Definitions by: Paul Shannon // Roberto Ritger +// Trygve Wastvedt // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -19,7 +20,7 @@ declare var hasNativeWebVRImplementation: boolean; interface Document { createElement(tagName: string): AFrame.Entity; querySelector(selectors: 'a-scene'): AFrame.Scene; - querySelector>(selectors: string): T; + querySelector(selectors: string): AFrame.Entity; querySelectorAll(selectors: string): NodeListOf | Element>; } @@ -36,15 +37,15 @@ declare namespace AFrame { components: { [ key: string ]: ComponentDescriptor }; geometries: { [ key: string ]: GeometryDescriptor }; primitives: { [ key: string ]: Entity }; - registerComponent(name: string, component: ComponentDefinition): ComponentConstructor; + registerComponent(name: string, component: ComponentDefinition): ComponentConstructor; registerElement(name: string, element: ANode): void; - registerGeometry(name: string, geometry: GeometryDefinition): Geometry; + registerGeometry(name: string, geometry: GeometryDefinition): GeometryConstructor; registerPrimitive(name: string, primitive: PrimitiveDefinition): void; - registerShader(name: string, shader: any): void; - registerSystem(name: string, definition: SystemDefinition): void; + registerShader(name: string, shader: T): ShaderConstructor; + registerSystem(name: string, definition: SystemDefinition): SystemConstructor; schema: SchemaUtils; shaders: { [ key: string ]: ShaderDescriptor }; - systems: { [key: string]: System }; + systems: { [key: string]: SystemConstructor }; THREE: typeof THREE; TWEEN: typeof TWEEN; utils: Utils; @@ -89,54 +90,39 @@ declare namespace AFrame { tick(): void; } - interface Component { + interface Component { attrName?: string; - data?: any; + data: T; dependencies?: string[]; el: Entity; id: string; multiple?: boolean; name: string; - schema: Schema; + schema: Schema; + system: S | undefined; - init(data?: any): void; - pause(): void; - play(): void; - remove(): void; - tick?(time: number, timeDelta: number): void; - update(oldData: any): void; - updateSchema?(): void; + init(this: this, data?: T): void; + pause(this: this): void; + play(this: this): void; + remove(this: this): void; + tick?(this: this, time: number, timeDelta: number): void; + update(this: this, oldData: T): void; + updateSchema?(this: this): void; - extendSchema(update: Schema): void; - flushToDOM(): void; + extendSchema(this: this, update: Schema): void; + flushToDOM(this: this): void; } - interface ComponentConstructor { - new (el: Entity, name: string, id: string): Component; + interface ComponentConstructor { + new (el: Entity, attrValue: string, id: string): T; } - interface ComponentDefinition { - dependencies?: string[]; - el?: Entity; - id?: string; - multiple?: boolean; - schema?: Schema; + type ComponentDefinition = Partial; - init?(data?: any): void; - pause?(): void; - play?(): void; - remove?(): void; - tick?(time: number, timeDelta: number): void; - update?(oldData: any): void; - updateSchema?(): void; - - [ key: string ]: any; - } - - interface ComponentDescriptor { - Component: Component; - dependencies: string[] | null; - multiple: boolean | null; + interface ComponentDescriptor { + Component: ComponentConstructor; + dependencies: string[] | undefined; + multiple: boolean | undefined; // internal APIs2 // parse @@ -144,7 +130,6 @@ declare namespace AFrame { // schema // stringify // type - [ key: string ]: any; } interface Coordinate { @@ -153,8 +138,14 @@ declare namespace AFrame { z: number; } + interface DefaultComponents { + position: Component; + rotation: Component; + scale: Component; + } + interface Entity> extends ANode { - components: C; + components: C & DefaultComponents; isPlaying: boolean; object3D: THREE.Object3D; object3DMap: ObjectMap; @@ -165,8 +156,8 @@ declare namespace AFrame { /** * @deprecated since 0.4.0 */ - getComputedAttribute(attr: string): T; - getDOMAttribute(attr: string): T; + getComputedAttribute(attr: string): Component; + getDOMAttribute(attr: string): any; getObject3D(type: string): THREE.Object3D; getOrCreateObject3D(type: string, construct: any): THREE.Object3D; is(stateName: string): boolean; @@ -179,7 +170,6 @@ declare namespace AFrame { // getAttribute specific usages getAttribute(type: string): any; - getAttribute(attr: string): T; getAttribute(type: 'position' | 'rotation' | 'scale'): Coordinate; // setAttribute specific usages @@ -192,12 +182,18 @@ declare namespace AFrame { addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void; } - type DetailEvent = Event & { detail: D }; + type DetailEvent = Event & { + detail: D; + target: EventTarget & Entity; + }; interface EntityEventMap { 'child-attached': DetailEvent<{ el: Element | Entity }>; 'child-detached': DetailEvent<{ el: Element | Entity }>; - 'componentchanged': DetailEvent<{ name: string }>; + 'componentchanged': DetailEvent<{ + name: string, + id: string + }>; 'componentremoved': DetailEvent<{ name: string, id: string, @@ -215,23 +211,28 @@ declare namespace AFrame { interface Geometry { name: string; geometry: THREE.Geometry; - schema: Schema; - update(data: object): void; - [ key: string ]: any; + schema: Schema; + + init(this: this, data: { [P in keyof this['schema']]: any }): void; + // Would like the above to be: + // init?(this: this, data?: { [P in keyof T['schema']]: T['schema'][P]['default'] } ): void; + // I think this is prevented by the following issue: https://github.com/Microsoft/TypeScript/issues/21760. } - interface GeometryDefinition extends ComponentDefinition { - geometry?: THREE.Geometry; + interface GeometryConstructor { + new (): T; } - interface GeometryDescriptor { - Geometry: Geometry; + type GeometryDefinition = Partial; + + interface GeometryDescriptor { + Geometry: GeometryConstructor; schema: Schema; } - interface MultiPropertySchema { - [ key: string ]: SinglePropertySchema; - } + type MultiPropertySchema = { + [P in keyof T]: SinglePropertySchema | T[P]; + }; interface PrimitiveDefinition { defaultComponents?: any; // TODO cleanup type @@ -240,8 +241,9 @@ declare namespace AFrame { transforms?: any; // TODO cleanup type } - type PropertyTypes = 'array' | 'boolean' | 'color' | 'int' | 'number' | 'selector' | - 'selectorAll' | 'src' | 'string' | 'vec2' | 'vec3' | 'vec4'; + type PropertyTypes = 'array' | 'asset' | 'audio' | 'boolean' | 'color' | + 'int' | 'map' | 'model' | 'number' | 'selector' | 'selectorAll' | + 'string' | 'vec2' | 'vec3' | 'vec4'; type SceneEvents = 'enter-vr' | 'exit-vr' | 'loaded' | 'renderstart'; @@ -265,7 +267,7 @@ declare namespace AFrame { addEventListener(type: SceneEvents, listener: EventListener, useCapture?: boolean): void; } - type Schema = SinglePropertySchema | MultiPropertySchema; + type Schema = SinglePropertySchema | MultiPropertySchema; interface SchemaUtils { isSingleProperty(schema: Schema): boolean; @@ -274,11 +276,25 @@ declare namespace AFrame { interface Shader { name: string; - schema: Schema; + data: { [key: string]: any }; + schema: Schema; + material: THREE.Material; + vertexShader: string; + fragmentShader: string; + + init(this: this, data?: this['data']): void; + tick?(this: this, time: number, timeDelta: number): void; + update(this: this, oldData: this['data']): void; } - interface ShaderDescriptor { - Shader: Shader; + interface ShaderConstructor { + new (): T; + } + + type ShaderDefinition = Partial; + + interface ShaderDescriptor { + Shader: ShaderConstructor; schema: Schema; } @@ -287,27 +303,23 @@ declare namespace AFrame { 'default'?: T; parse?(value: string): T; stringify?(value: T): string; - [ key: string ]: any; } interface System { - data: any; - schema: Schema; - init(): void; - pause(): void; - play(): void; - tick?(): void; + data: { [key: string]: any }; + schema: Schema; + init(this: this): void; + pause(this: this): void; + play(this: this): void; + tick?(this: this, t: number, dt: number): void; } - interface SystemDefinition { - schema?: Schema; - init?(): void; - pause?(): void; - play?(): void; - tick?(): void; - [ key: string ]: any; + interface SystemConstructor { + new (scene: Scene): T; } + type SystemDefinition = Partial; + interface Utils { coordinates: { isCoordinate(value: string): boolean; @@ -326,5 +338,8 @@ declare namespace AFrame { diff(a: object, b: object): object; extend(target: object, ... source: object[]): object; extendDeep(target: object, ... source: object[]): object; + + throttle(tickFunction: () => void, minimumInterval: number, optionalContext?: {}): (t: number, dt: number) => void; + throttleTick(tickFunction: (t: number, dt: number) => void, minimumInterval: number, optionalContext?: {}): (t: number, dt: number) => void; } } diff --git a/types/aframe/tslint.json b/types/aframe/tslint.json index 71ee04c4e1..495d29983d 100644 --- a/types/aframe/tslint.json +++ b/types/aframe/tslint.json @@ -1,6 +1,5 @@ { "extends": "dtslint/dt.json", "rules": { - "no-unnecessary-generics": false } } diff --git a/types/agenda/agenda-tests.ts b/types/agenda/agenda-tests.ts index bbf945bd62..a7031d2ef8 100644 --- a/types/agenda/agenda-tests.ts +++ b/types/agenda/agenda-tests.ts @@ -5,8 +5,8 @@ var mongoConnectionString = "mongodb://127.0.0.1/agenda"; var agenda = new Agenda({ db: { address: mongoConnectionString } }); -agenda.define('delete old users', (job, done) => { - +agenda.define<{ foo: Error }>('delete old users', (job, done) => { + done(job.attrs.data.foo) }); agenda.on('ready', () => { @@ -62,7 +62,7 @@ agenda.schedule('tomorrow at noon', ['printAnalyticsReport', 'sendNotifications' agenda.now('do the hokey pokey'); -var job = agenda.create('printAnalyticsReport', { userCount: 100 }); +var job = agenda.create<{ userCount: number }>('printAnalyticsReport', { userCount: 100 }); job.save(function(err) { console.log("Job successfully saved"); }); diff --git a/types/agenda/index.d.ts b/types/agenda/index.d.ts index 12b0b76c38..b29158983d 100644 --- a/types/agenda/index.d.ts +++ b/types/agenda/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for Agenda v1.0.0 -// Project: https://github.com/rschmukler/agenda +// Type definitions for Agenda v1.0.3 +// Project: https://github.com/agenda/agenda // Definitions by: Meir Gottlieb +// Jeff Principe // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -89,14 +90,14 @@ declare class Agenda extends EventEmitter { * @param name The name of the job. * @param data Data to associated with the job. */ - create(name: string, data?: any): Agenda.Job; + create(name: string, data?: T): Agenda.Job; /** * Find all Jobs matching `query` and pass same back in cb(). * @param query * @param cb */ - jobs(query: any, cb: ResultCallback): void; + jobs(query: any, cb: ResultCallback[]>): void; /** * Removes all jobs in the database without defined behaviors. Useful if you change a definition name and want @@ -113,8 +114,8 @@ declare class Agenda extends EventEmitter { * @param options The options for the job. * @param handler The handler to execute. */ - define(name: string, handler: (job: Agenda.Job, done: (err?: Error) => void) => void): void; - define(name: string, options: Agenda.JobOptions, handler: (job: Agenda.Job, done: (err?: Error) => void) => void): void; + define(name: string, handler: (job: Agenda.Job, done: (err?: Error) => void) => void): void; + define(name: string, options: Agenda.JobOptions, handler: (job: Agenda.Job, done: (err?: Error) => void) => void): void; /** * Runs job name at the given interval. Optionally, data and options can be passed in. @@ -124,8 +125,8 @@ declare class Agenda extends EventEmitter { * @param options An optional argument that will be passed to job.repeatEvery. * @param cb An optional callback function which will be called when the job has been persisted in the database. */ - every(interval: number | string, names: string, data?: any, options?: any, cb?: ResultCallback): Agenda.Job; - every(interval: number | string, names: string[], data?: any, options?: any, cb?: ResultCallback): Agenda.Job[]; + every(interval: number | string, names: string, data?: T, options?: any, cb?: ResultCallback>): Agenda.Job; + every(interval: number | string, names: string[], data?: T, options?: any, cb?: ResultCallback[]>): Agenda.Job[]; /** * Schedules a job to run name once at a given time. @@ -134,8 +135,8 @@ declare class Agenda extends EventEmitter { * @param data An optional argument that will be passed to the processing function under job.attrs.data. * @param cb An optional callback function which will be called when the job has been persisted in the database. */ - schedule(when: Date | string, names: string, data?: any, cb?: ResultCallback): Agenda.Job; - schedule(when: Date | string, names: string[], data?: any, cb?: ResultCallback): Agenda.Job[]; + schedule(when: Date | string, names: string, data?: T, cb?: ResultCallback>): Agenda.Job; + schedule(when: Date | string, names: string[], data?: T, cb?: ResultCallback[]>): Agenda.Job[]; /** * Schedules a job to run name once immediately. @@ -143,7 +144,7 @@ declare class Agenda extends EventEmitter { * @param data An optional argument that will be passed to the processing function under job.attrs.data. * @param cb An optional callback function which will be called when the job has been persisted in the database. */ - now(name: string, data?: any, cb?: ResultCallback): Agenda.Job; + now(name: string, data?: T, cb?: ResultCallback>): Agenda.Job; /** * Cancels any jobs matching the passed mongodb-native query, and removes them from the database. @@ -242,10 +243,14 @@ declare namespace Agenda { } } + interface JobAttributesData { + [key: string]: any; + } + /** * The database record associated with a job. */ - interface JobAttributes { + interface JobAttributes { /** * The record identity. */ @@ -264,7 +269,7 @@ declare namespace Agenda { /** * The job details. */ - data: { [name: string]: any }; + data: T; /** * The priority of the job. @@ -330,12 +335,12 @@ declare namespace Agenda { /** * A scheduled job. */ - interface Job { + interface Job { /** * The database record associated with the job. */ - attrs: JobAttributes; + attrs: JobAttributes; /** * The agenda that created the job. @@ -348,54 +353,54 @@ declare namespace Agenda { * @param options An optional argument that can include a timezone field. The timezone should be a string as * accepted by moment-timezone and is considered when using an interval in the cron string format. */ - repeatEvery(interval: string | number, options?: { timezone?: string }): Job + repeatEvery(interval: string | number, options?: { timezone?: string }): Job /** * Specifies a time when the job should repeat. [Possible values](https://github.com/matthewmueller/date#examples). * @param time */ - repeatAt(time: string): Job + repeatAt(time: string): Job /** * Disables the job. */ - disable(): Job; + disable(): Job; /** * Enables the job. */ - enable(): Job; + enable(): Job; /** * Ensure that only one instance of this job exists with the specified properties * @param value The properties associated with the job that must be unqiue. * @param opts */ - unique(value: any, opts?: { insertOnly?: boolean }): Job; + unique(value: any, opts?: { insertOnly?: boolean }): Job; /** * Specifies the next time at which the job should run. * @param time The next time at which the job should run. */ - schedule(time: string | Date): Job; + schedule(time: string | Date): Job; /** * Specifies the priority weighting of the job. * @param value The priority of the job (lowest|low|normal|high|highest|number). */ - priority(value: string | number): Job; + priority(value: string | number): Job; /** * Sets job.attrs.failedAt to now, and sets job.attrs.failReason to reason. * @param reason A message or Error object that indicates why the job failed. */ - fail(reason: string | Error): Job; + fail(reason: string | Error): Job; /** * Runs the given job and calls callback(err, job) upon completion. Normally you never need to call this manually * @param cb Called when the job is completed. */ - run(cb?: ResultCallback): Job; + run(cb?: ResultCallback>): Job; /** * Returns true if the job is running; otherwise, returns false. @@ -406,7 +411,7 @@ declare namespace Agenda { * Saves the job into the database. * @param cb Called when the job is saved. */ - save(cb?: ResultCallback): Job; + save(cb?: ResultCallback>): Job; /** * Removes the job from the database and cancels the job. @@ -424,7 +429,7 @@ declare namespace Agenda { /** * Calculates next time the job should run */ - computeNextRunAt(): Job; + computeNextRunAt(): Job; } interface JobOptions { diff --git a/types/algoliasearch/algoliasearch-tests.ts b/types/algoliasearch/algoliasearch-tests.ts index 0814b0fc03..2898f889fc 100644 --- a/types/algoliasearch/algoliasearch-tests.ts +++ b/types/algoliasearch/algoliasearch-tests.ts @@ -2,16 +2,16 @@ import * as algoliasearch from 'algoliasearch'; import { ClientOptions, SynonymOption, - AlgoliaApiKeyOptions, + ApiKeyOptions, SearchSynonymOptions, - AlgoliaResponse, - AlgoliaSecuredApiOptions, - AlgoliaIndexSettings, - AlgoliaQueryParameters, - AlgoliaIndex, + SecuredApiOptions, + Index, + Response, + IndexSettings, + QueryParameters, } from 'algoliasearch'; -let _algoliaResponse: AlgoliaResponse = { +let _algoliaResponse: Response = { hits: [{}, {}], page: 0, nbHits: 12, @@ -33,7 +33,7 @@ let _synonymOption: SynonymOption = { replaceExistingSynonyms: false, }; -let _algoliaApiKeyOptions: AlgoliaApiKeyOptions = { +let _algoliaApiKeyOptions: ApiKeyOptions = { validity: 0, maxQueriesPerIPPerHour: 0, indexes: [''], @@ -48,14 +48,14 @@ let _searchSynonymOptions: SearchSynonymOptions = { hitsPerPage: 0, }; -let _algoliaSecuredApiOptions: AlgoliaSecuredApiOptions = { +let _algoliaSecuredApiOptions: SecuredApiOptions = { filters: '', validUntil: 0, restrictIndices: '', userToken: '', }; -let _algoliaIndexSettings: AlgoliaIndexSettings = { +let _algoliaIndexSettings: IndexSettings = { attributesToIndex: [''], attributesForFaceting: [''], unretrievableAttributes: [''], @@ -63,7 +63,7 @@ let _algoliaIndexSettings: AlgoliaIndexSettings = { ranking: [''], customRanking: [''], replicas: [''], - maxValuesPerFacet: '', + maxValuesPerFacet: 100, attributesToHighlight: [''], attributesToSnippet: [''], highlightPreTag: '', @@ -96,13 +96,13 @@ let _algoliaIndexSettings: AlgoliaIndexSettings = { placeholders: '', }; -let _algoliaQueryParameters: AlgoliaQueryParameters = { +let _algoliaQueryParameters: QueryParameters = { query: '', filters: '', attributesToRetrieve: [''], restrictSearchableAttributes: [''], facets: '', - maxValuesPerFacet: '', + maxValuesPerFacet: 2, attributesToHighlight: [''], attributesToSnippet: [''], highlightPreTag: '', @@ -147,7 +147,20 @@ let _algoliaQueryParameters: AlgoliaQueryParameters = { minProximity: 0, }; -let index: AlgoliaIndex = algoliasearch('', '').initIndex(''); +let index: Index = algoliasearch('', '').initIndex(''); let search = index.search({ query: '' }); + index.search({ query: '' }, (err, res) => {}); + +// partialUpdateObject +index.partialUpdateObject({}, () => {}); +index.partialUpdateObject({}, false, () => {}); +index.partialUpdateObject({}).then(() => {}); +index.partialUpdateObject({}, false).then(() => {}); + +// partialUpdateObjects +index.partialUpdateObjects([{}], () => {}); +index.partialUpdateObjects([{}], false, () => {}); +index.partialUpdateObjects([{}]).then(() => {}); +index.partialUpdateObjects([{}], false).then(() => {}); diff --git a/types/algoliasearch/index.d.ts b/types/algoliasearch/index.d.ts index 5c7026d70e..87c1f79a0e 100644 --- a/types/algoliasearch/index.d.ts +++ b/types/algoliasearch/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for algoliasearch-client-js 3.24.8 +// Type definitions for algoliasearch-client-js 3.27.0 // Project: https://github.com/algolia/algoliasearch-client-js // Definitions by: Baptiste Coquelle // Haroen Viaene @@ -7,87 +7,44 @@ // TypeScript Version: 2.2 declare namespace algoliasearch { - interface AlgoliaResponse { - /** - * Contains all the hits matching the query - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - hits: any[]; - /** - * Current page - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - page: number; - /** - * Number of total hits matching the query - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - nbHits: number; - /** - * Number of pages - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - nbPages: number; - /** - * Number of hits per pages - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - hitsPerPage: number; - /** - * Engine processing time (excluding network transfer) - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - processingTimeMS: number; - /** - * Query used to perform the search - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - query: string; - /** - * GET parameters used to perform the search - * https://github.com/algolia/algoliasearch-client-js#response-format - */ - params: string; - } - interface AlgoliaMultiResponse { - results: AlgoliaResponse[]; - } - /* - Interface for the algolia client object - */ - interface AlgoliaClient { + /** + * Interface for the algolia client object + */ + interface Client { /** * Initialization of the index - * @param name: index name - * return algolia index object * https://github.com/algolia/algoliasearch-client-js#init-index---initindex */ - initIndex(name: string): AlgoliaIndex; + initIndex(indexName: string): Index; /** * Query on multiple index - * @param queries index name, query and query parameters - * @param cb callback(err, res) * https://github.com/algolia/algoliasearch-client-js#multiple-queries---multiplequeries */ search( queries: { indexName: string; query: string; - params: AlgoliaQueryParameters; + params: QueryParameters; }[], - cb: (err: Error, res: AlgoliaMultiResponse) => void + cb: (err: Error, res: MultiResponse) => void ): void; /** * Query on multiple index - * @param queries index name, query and query parameters - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#multiple-queries---multiplequeries */ - search(queries: { - indexName: string; - query: string; - params: AlgoliaQueryParameters; - }[]): Promise; + search( + queries: { + indexName: string; + query: string; + params: QueryParameters; + }[] + ): Promise; + /** + * Query for facet values of a specific facet + */ + searchForFacetValues( + queries: [{ indexName: string; params: SearchForFacetValues.Parameters }] + ): Promise; /** * clear browser cache * https://github.com/algolia/algoliasearch-client-js#cache @@ -107,336 +64,255 @@ declare namespace algoliasearch { */ getExtraHeader(name: string): string; /** - * remove an extra header for all upcoming requests + * Remove an extra header for all upcoming requests */ unsetExtraHeader(name: string): void; /** * List all your indices along with their associated information (number of entries, disk size, etc.) - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#list-indices---listindexes */ listIndexes(cb: (err: Error, res: any) => void): void; /** * List all your indices along with their associated information (number of entries, disk size, etc.) - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#list-indices---listindexes */ listIndexes(): Promise; /** * Delete a specific index - * @param name - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-index---deleteindex */ - deleteIndex(name: string, cb: (err: Error, res: any) => void): void; + deleteIndex(name: string, cb: (err: Error, res: Task) => void): void; /** * Delete a specific index - * @param name - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-index---deleteindex */ - deleteIndex(name: string): Promise; + deleteIndex(name: string): Promise; /** * Copy an index from a specific index to a new one - * @param from origin index - * @param to destination index - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#copy-index---copyindex */ copyIndex( from: string, to: string, - cb: (err: Error, res: any) => void + scope: ('settings' | 'synonyms' | 'rules')[], + cb: (err: Error, res: Task) => void ): void; /** * Copy an index from a specific index to a new one - * @param from origin index - * @param to destination index - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#copy-index---copyindex */ - copyIndex(from: string, to: string): Promise; + copyIndex( + from: string, + to: string, + scope: ('settings' | 'synonyms' | 'rules')[] + ): Promise; /** * Move index to a new one (and will overwrite the original one) - * @param from origin index - * @param to destination index - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#move-index---moveindex */ moveIndex( from: string, to: string, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Move index to a new one (and will overwrite the original one) - * @param from origin index - * @param to destination index - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#move-index---moveindex */ - moveIndex(from: string, to: string): Promise; + moveIndex(from: string, to: string): Promise; /** * Generate a public API key - * @param key api key - * @param filters * https://github.com/algolia/algoliasearch-client-js#generate-key---generatesecuredapikey */ - generateSecuredApiKey( - key: string, - filters: AlgoliaSecuredApiOptions - ): string; + generateSecuredApiKey(key: string, filters: SecuredApiOptions): string; /** * Perform multiple operations with one API call to reduce latency - * @param action - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#custom-batch---batch */ - batch(action: AlgoliaAction[], cb: (err: Error, res: any) => void): void; + batch(action: Action[], cb: (err: Error, res: Task) => void): void; /** * Perform multiple operations with one API call to reduce latency - * @param action - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#custom-batch---batch */ - batch(action: AlgoliaAction[]): Promise; + batch(action: Action[]): Promise; /** * Lists global API Keys - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ listApiKeys(cb: (err: Error, res: any) => void): void; /** * Lists global API Keys - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ listApiKeys(): Promise; /** * Add global API Keys - * @param scopes - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ - addApiKey(scopes: string[], cb: (err: Error, res: any) => void): void; + addApiKey(scopes: string[], cb: (err: Error, res: Task) => void): void; /** * Add global API Key - * @param scopes - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ addApiKey( scopes: string[], - options: AlgoliaApiKeyOptions, - cb: (err: Error, res: any) => void + options: ApiKeyOptions, + cb: (err: Error, res: Task) => void ): void; /** * Add global API Keys - * @param scopes - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ - addApiKey(scopes: string[], options?: AlgoliaApiKeyOptions): Promise; + addApiKey(scopes: string[], options?: ApiKeyOptions): Promise; /** * Update global API key - * @param key - * @param scopes - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Update global API key - * @param key - * @param scopes - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - options: AlgoliaApiKeyOptions, - cb: (err: Error, res: any) => void + options: ApiKeyOptions, + cb: (err: Error, res: Task) => void ): void; /** * Update global API key - * @param key - * @param scopes - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - options?: AlgoliaApiKeyOptions - ): Promise; + options?: ApiKeyOptions + ): Promise; /** * Gets the rights of a global key - * @param key - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ getApiKey(key: string, cb: (err: Error, res: any) => void): void; /** * Gets the rights of a global key - * @param key - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ getApiKey(key: string): Promise; /** * Deletes a global key - * @param key - * @param cb(err,res) * https://github.com/algolia/algoliasearch-client-js#delete-user-key---deleteapikey */ - deleteApiKey(key: string, cb: (err: Error, res: any) => void): void; + deleteApiKey(key: string, cb: (err: Error, res: Task) => void): void; /** * Deletes a global key - * @param key - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-user-key---deleteapikey */ - deleteApiKey(key: string): Promise; + deleteApiKey(key: string): Promise; /** * Get 1000 last events - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#get-logs---getlogs */ - getLogs(options: LogsOptions, cb: (err: Error, res: any) => void): void; + getLogs( + options: LogsOptions, + cb: (err: Error, res: { logs: Log[] }) => void + ): void; /** * Get 1000 last events - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#get-logs---getlogs */ - getLogs(options: LogsOptions): Promise; + getLogs(options: LogsOptions): Promise<{ logs: Log[] }>; } /** * Interface for the index algolia object */ - interface AlgoliaIndex { + interface Index { /** * Gets a specific object - * @param objectID - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects */ - getObject(objectID: string, cb: (err: Error, res: any) => void): void; + getObject(objectID: string, cb: (err: Error, res: {}) => void): void; /** * Gets specific attributes from an object - * @param objectID - * @param attributes - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects */ getObject( objectID: string, attributes: string[], - cb: (err: Error, res: any) => void + cb: (err: Error, res: {}) => void ): void; /** * Gets a list of objects - * @param objectIDs - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects */ - getObjects(objectIDs: string[], cb: (err: Error, res: any) => void): void; + getObjects( + objectIDs: string[], + cb: (err: Error, res: { results: {}[] }) => void + ): void; /** * Add a specific object - * @param object without objectID - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-objects---addobjects */ - addObject(object: {}, cb: (err: Error, res: any) => void): void; + addObject(object: {}, cb: (err: Error, res: Task) => void): void; /** * Add a list of objects - * @param object with objectID - * @param objectID - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-objects---addobjects */ addObject( object: {}, objectID: string, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Add list of objects - * @param objects - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-objects---addobjects */ - addObjects(objects: {}[], cb: (err: Error, res: any) => void): void; + addObjects(objects: {}[], cb: (err: Error, res: Task) => void): void; /** * Add or replace a specific object - * @param object - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - saveObject(object: {}, cb: (err: Error, res: any) => void): void; + saveObject(object: {}, cb: (err: Error, res: Task) => void): void; /** * Add or replace several objects - * @param objects - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - saveObjects(objects: object[], cb: (err: Error, res: any) => void): void; + saveObjects(objects: object[], cb: (err: Error, res: Task) => void): void; /** * Update parameters of a specific object - * @param object - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - partialUpdateObject(object: {}, cb: (err: Error, res: any) => void): void; + partialUpdateObject(object: {}, cb: (err: Error, res: Task) => void): void; + partialUpdateObject(object: {}, createIfNotExists: boolean, cb: (err: Error, res: Task) => void): void; /** * Update parameters of a list of objects - * @param objects - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - partialUpdateObjects( - objects: {}[], - cb: (err: Error, res: any) => void - ): void; + partialUpdateObjects(objects: {}[], cb: (err: Error, res: Task) => void): void; + partialUpdateObjects(objects: {}[], createIfNotExists: boolean, cb: (err: Error, res: Task) => void): void; /** * Delete a specific object - * @param objectID - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-objects---deleteobjects */ - deleteObject(objectID: string, cb: (err: Error, res: any) => void): void; + deleteObject(objectID: string, cb: (err: Error, res: Task) => void): void; /** * Delete a list of objects - * @param objectIDs - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-objects---deleteobjects */ deleteObjects( objectIDs: string[], - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Delete objects that matches the query - * @param query - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-by-query---deletebyquery */ deleteByQuery(query: string, cb: (err: Error, res: any) => void): void; /** * Delete objects that matches the query - * @param query - * @param params of the object - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-by-query---deletebyquery */ deleteByQuery( @@ -446,34 +322,26 @@ declare namespace algoliasearch { ): void; /** * Delete objects that matches the query - * @param query - * @param params of the object - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-by-query---deleteby */ - deleteBy(params: {}, cb: (err: Error, res: any) => void): void; + deleteBy(params: {}, cb: (err: Error, res: Task) => void): void; /** * Wait for an indexing task to be compete - * @param taskID - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#wait-for-operations---waittask */ waitTask(taskID: number, cb: (err: Error, res: any) => void): void; /** * Get an index settings - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#get-settings---getsettings */ - getSettings(cb: (err: Error, res: any) => void): void; + getSettings(cb: (err: Error, res: IndexSettings) => void): void; /** * Set an index settings - * @param settings - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#set-settings---setsettings */ setSettings( - settings: AlgoliaIndexSettings, - cb: (err: Error, res: any) => void + settings: IndexSettings, + cb: (err: Error, res: Task) => void ): void; /** * Clear cache of an index @@ -482,66 +350,53 @@ declare namespace algoliasearch { clearCache(): void; /** * Clear an index content - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#clear-index---clearindex */ - clearIndex(cb: (err: Error, res: any) => void): void; + clearIndex(cb: (err: Error, res: Task) => void): void; /** * Save a synonym object - * @param synonym - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#save-synonym---savesynonym */ saveSynonym( - synonym: AlgoliaSynonym, + synonym: Synonym, options: SynonymOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Save a synonym object - * @param synonyms - * @param options - * @param cb(err, res) */ batchSynonyms( - synonyms: AlgoliaSynonym[], + synonyms: Synonym[], options: SynonymOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Delete a specific synonym - * @param identifier - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#batch-synonyms---batchsynonyms */ deleteSynonym( identifier: string, options: SynonymOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Clear all synonyms of an index - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#clear-all-synonyms---clearsynonyms */ clearSynonyms( options: SynonymOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Get a specific synonym - * @param identifier - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#get-synonym---getsynonym */ - getSynonym(identifier: string, cb: (err: Error, res: any) => void): void; + getSynonym( + identifier: string, + cb: (err: Error, res: Synonym) => void + ): void; /** * Search a synonyms - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#search-synonyms---searchsynonyms */ searchSynonyms( @@ -550,57 +405,42 @@ declare namespace algoliasearch { ): void; /** * Save a rule object - * @param rule - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#save-rule---saverule */ saveRule( - rule: AlgoliaRule, + rule: Rule, options: RuleOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Save a rule object - * @param rules - * @param options - * @param cb(err, res) */ batchRules( - rules: AlgoliaRule[], + rules: Rule[], options: RuleOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Delete a specific rule - * @param identifier - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#batch-rules---batchrules */ deleteRule( identifier: string, options: RuleOption, - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Clear all rules of an index - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#clear-all-rules---clearrules */ - clearRules(options: RuleOption, cb: (err: Error, res: any) => void): void; + clearRules(options: RuleOption, cb: (err: Error, res: Task) => void): void; /** * Get a specific rule - * @param identifier - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#get-rule---getrule */ - getRule(identifier: string, cb: (err: Error, res: any) => void): void; + getRule(identifier: string, cb: (err: Error, res: Rule) => void): void; /** * Search a rules - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#search-rules---searchrules */ searchRules( @@ -609,412 +449,286 @@ declare namespace algoliasearch { ): void; /** * List index user keys - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#list-api-keys---listapikeys */ listApiKeys(cb: (err: Error, res: any) => void): void; /** * Add key for this index - * @param scopes - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ - addApiKey(scopes: string[], cb: (err: Error, res: any) => void): void; + addApiKey(scopes: string[], cb: (err: Error, res: Task) => void): void; /** * Add key for this index - * @param scopes - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ addApiKey( scopes: string[], - options: AlgoliaApiKeyOptions, - cb: (err: Error, res: any) => void + options: ApiKeyOptions, + cb: (err: Error, res: Task) => void ): void; /** * Update a key for this index - * @param key - * @param scopes - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - cb: (err: Error, res: any) => void + cb: (err: Error, res: Task) => void ): void; /** * Update a key for this index - * @param key - * @param scopes - * @param options - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - options: AlgoliaApiKeyOptions, - cb: (err: Error, res: any) => void + options: ApiKeyOptions, + cb: (err: Error, res: Task) => void ): void; /** * Gets the rights of an index specific key - * @param key - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#get-key-permissions---getapikeyacl */ getApiKey(key: string, cb: (err: Error, res: any) => void): void; /** * Deletes an index specific key - * @param key - * @param cb(err, res) * https://github.com/algolia/algoliasearch-client-js#delete-user-key---deleteapikey */ - deleteApiKey(key: string, cb: (err: Error, res: any) => void): void; + deleteApiKey(key: string, cb: (err: Error, res: Task) => void): void; /** * Gets specific attributes from an object - * @param objectID - * @param attributes - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects */ - getObject(objectID: string, attributes?: string[]): Promise; + getObject(objectID: string, attributes?: string[]): Promise<{}>; /** * Gets a list of objects - * @param objectIDs - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects */ - getObjects(objectIDs: string[]): Promise; + getObjects(objectIDs: string[]): Promise<{ results: {}[] }>; /** * Add a list of objects - * @param object with objectID - * @param objectID - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#add-objects---addobjects */ - addObject(object: {}, objectID?: string): Promise; + addObject(object: {}, objectID?: string): Promise; /** * Add list of objects - * @param objects - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#add-objects---addobjects */ - addObjects(objects: {}[]): Promise; + addObjects(objects: {}[]): Promise; /** * Add or replace a specific object - * @param object - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - saveObject(object: {}): Promise; + saveObject(object: {}): Promise; /** * Add or replace several objects - * @param objects - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - saveObjects(objects: object[]): Promise; + saveObjects(objects: object[]): Promise; /** * Update parameters of a specific object - * @param object - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - partialUpdateObject(object: {}): Promise; + partialUpdateObject(object: {}): Promise; + partialUpdateObject(object: {}, createIfNotExists: boolean): Promise; /** * Update parameters of a list of objects - * @param objects - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-objects---saveobjects */ - partialUpdateObjects(objects: {}[]): Promise; + partialUpdateObjects(objects: {}[]): Promise; + partialUpdateObjects(objects: {}[], createIfNotExists?: boolean): Promise; /** * Delete a specific object - * @param objectID - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-objects---deleteobjects */ - deleteObject(objectID: string): Promise; + deleteObject(objectID: string): Promise; /** * Delete a list of objects - * @param objectIDs - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-objects---deleteobjects */ - deleteObjects(objectIDs: string[]): Promise; + deleteObjects(objectIDs: string[]): Promise; /** * Delete objects that matches the query - * @param query - * @param params of the object - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-by-query---deletebyquery */ deleteByQuery(query: string, params?: {}): Promise; /** * Delete objects that matches the query - * @param params of the search - * return {Promise} * https://www.algolia.com/doc/api-reference/api-methods/delete-by-query/ */ - deleteBy(params: {}): Promise; + deleteBy(params: {}): Promise; /** * Wait for an indexing task to be compete - * @param taskID - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#wait-for-operations---waittask */ waitTask(taskID: number): Promise; /** * Get an index settings - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#get-settings---getsettings */ - getSettings(): Promise; + getSettings(): Promise; /** * Set an index settings - * @param settings - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#set-settings---setsettings */ - setSettings(settings: AlgoliaIndexSettings): Promise; + setSettings(settings: IndexSettings): Promise; /** * Search in an index - * @param params query parameter - * return {Promise} - * @param err() error callback * https://github.com/algolia/algoliasearch-client-js#search-in-an-index---search */ - search(params: AlgoliaQueryParameters): Promise; + search(params: QueryParameters): Promise; /** * Search in an index - * @param params query parameter - * @param cb(err, res) - * @param err() error callback * https://github.com/algolia/algoliasearch-client-js#search-in-an-index---search */ search( - params: AlgoliaQueryParameters, - cb: (err: Error, res: AlgoliaResponse) => void + params: QueryParameters, + cb: (err: Error, res: Response) => void ): void; /** * Search in an index - * @param params query parameter - * return {Promise} - * @param err() error callback - * https://www.algolia.com/doc/api-reference/api-methods/search-for-facet-values/ - */ - searchForFacetValues({ - facetName, - facetQuery, - ...qp, - }: { - facetName: string; - facetQuery: string; - } & AlgoliaQueryParameters): Promise; - /** - * Search in an index - * @param params query parameter - * @param cb(err, res) - * @param err() error callback * https://www.algolia.com/doc/api-reference/api-methods/search-for-facet-values/ */ searchForFacetValues( - { - facetName, - facetQuery, - ...qp, - }: { - facetName: string; - facetQuery: string; - } & AlgoliaQueryParameters, - cb: (err: Error, res: any) => void + options: SearchForFacetValues.Parameters + ): Promise; + /** + * Search in an index + * https://www.algolia.com/doc/api-reference/api-methods/search-for-facet-values/ + */ + searchForFacetValues( + options: SearchForFacetValues.Parameters, + cb: (err: Error, res: SearchForFacetValues.Response) => void ): void; /** * Browse an index - * @param query - * @param cb(err, content) * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ - browse(query: string, cb: (err: Error, res: any) => void): void; + browse(query: string, cb: (err: Error, res: BrowseResponse) => void): void; /** * Browse an index - * @param query - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ - browse(query: string): Promise; + browse(query: string): Promise; /** * Browse an index from a cursor - * @param cursor - * @param cb(err, content) * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ - browseFrom(cursor: string, cb: (err: Error, res: any) => void): void; + browseFrom( + cursor: string, + cb: (err: Error, res: BrowseResponse) => void + ): void; /** * Browse an index from a cursor - * @param cursor - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ - browseFrom(cursor: string): Promise; + browseFrom(cursor: string): Promise; /** * Browse an entire index - * return Promise * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse */ - browseAll(): Promise; + browseAll(): Promise; /** * Clear an index content - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#clear-index---clearindex */ - clearIndex(): Promise; + clearIndex(): Promise; /** * Save a synonym object - * @param synonym - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#save-synonym---savesynonym */ - saveSynonym(synonym: AlgoliaSynonym, options: SynonymOption): Promise; + saveSynonym(synonym: Synonym, options: SynonymOption): Promise; /** * Save a synonym object - * @param synonyms - * @param options - * return {Promise} */ - batchSynonyms( - synonyms: AlgoliaSynonym[], - options: SynonymOption - ): Promise; + batchSynonyms(synonyms: Synonym[], options: SynonymOption): Promise; /** * Delete a specific synonym - * @param identifier - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#batch-synonyms---batchsynonyms */ - deleteSynonym(identifier: string, options: SynonymOption): Promise; + deleteSynonym(objectID: string, options: SynonymOption): Promise; /** * Clear all synonyms of an index - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#clear-all-synonyms---clearsynonyms */ - clearSynonyms(options: SynonymOption): Promise; + clearSynonyms(options: SynonymOption): Promise; /** * Get a specific synonym - * @param identifier - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#get-synonym---getsynonym */ - getSynonym(identifier: string): Promise; + getSynonym(objectID: string): Promise; /** * Search a synonyms - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#search-synonyms---searchsynonyms */ searchSynonyms(options: SearchSynonymOptions): Promise; /** * Save a rule object - * @param rule - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#save-rule---saverule */ - saveRule(rule: AlgoliaRule, options: RuleOption): Promise; + saveRule(rule: Rule, options: RuleOption): Promise; /** * Save a rule object - * @param rules - * @param options - * return {Promise} */ - batchRules(rules: AlgoliaRule[], options: RuleOption): Promise; + batchRules(rules: Rule[], options: RuleOption): Promise; /** * Delete a specific rule - * @param identifier - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#batch-rules---batchrules */ - deleteRule(identifier: string, options: RuleOption): Promise; + deleteRule(identifier: string, options: RuleOption): Promise; /** * Clear all query rules of an index - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#clear-all-rules---clearrules */ - clearRules(options: RuleOption): Promise; + clearRules(options: RuleOption): Promise; /** * Get a specific query rule - * @param identifier - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#get-rule---getrule */ - getRule(identifier: string): Promise; + getRule(identifier: string): Promise; /** * Search for query rules - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#search-rules---searchrules */ searchRules(options: SearchRuleOptions): Promise; /** * List index user keys - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#list-api-keys---listapikeys */ listApiKeys(): Promise; /** * Add key for this index - * @param scopes - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ - addApiKey(scopes: string[], options?: AlgoliaApiKeyOptions): Promise; + addApiKey(scopes: string[], options?: ApiKeyOptions): Promise; /** * Update a key for this index - * @param key - * @param scopes - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ - updateApiKey(key: string, scopes: string[]): Promise; + updateApiKey(key: string, scopes: string[]): Promise; /** * Update a key for this index - * @param key - * @param scopes - * @param options - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#update-user-key---updateapikey */ updateApiKey( key: string, scopes: string[], - options: AlgoliaApiKeyOptions - ): Promise; + options: ApiKeyOptions + ): Promise; /** * Gets the rights of an index specific key - * @param key - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#get-key-permissions---getapikeyacl */ getApiKey(key: string): Promise; /** * Deletes an index specific key - * @param key - * return {Promise} * https://github.com/algolia/algoliasearch-client-js#delete-user-key---deleteapikey */ - deleteApiKey(key: string): Promise; + deleteApiKey(key: string): Promise; } - /* -Interface describing available options when initializing a client -*/ + /** + * Interface describing available options when initializing a client + */ interface ClientOptions { /** * Timeout for requests to our servers, in milliseconds @@ -1029,20 +743,20 @@ Interface describing available options when initializing a client */ protocol?: string; /** - * (node only) httpAgent instance to use when communicating with Algolia servers. + * (node only) httpAgent instance to use when communicating with servers. * https://github.com/algolia/algoliasearch-client-js#client-options */ httpAgent?: any; /** - * read: array of read hosts to use to call Algolia servers, computed automatically - * write: array of read hosts to use to call Algolia servers, computed automatically + * read: array of read hosts to use to call servers, computed automatically + * write: array of read hosts to use to call servers, computed automatically * https://github.com/algolia/algoliasearch-client-js#client-options */ hosts?: { read?: string[]; write?: string[] }; } - /* -Interface describing options available for gettings the logs -*/ + /** + * Interface describing options available for gettings the logs + */ interface LogsOptions { /** * Specify the first entry to retrieve (0-based, 0 is the most recent log entry). @@ -1071,11 +785,15 @@ Interface describing options available for gettings the logs * https://github.com/algolia/algoliasearch-client-js#get-logs---getlogs */ type?: string; + /** + * The index to request logs from + */ + indexName?: string; } /** * Describe the action object used for batch operation */ - interface AlgoliaAction { + interface Action { /** * Type of the batch action * https://github.com/algolia/algoliasearch-client-js#custom-batch---batch @@ -1102,7 +820,7 @@ Interface describing options available for gettings the logs /** * Describes the option used when creating user key */ - interface AlgoliaApiKeyOptions { + interface ApiKeyOptions { /** * Add a validity period. The key will be valid for a specific period of time (in seconds). * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey @@ -1132,7 +850,7 @@ Interface describing options available for gettings the logs * Specify the list of query parameters * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey */ - queryParameters?: AlgoliaQueryParameters; + queryParameters?: QueryParameters; /** * Specify a description to describe where the key is used. * https://github.com/algolia/algoliasearch-client-js#add-user-key---addapikey @@ -1225,9 +943,9 @@ Interface describing options available for gettings the logs */ hitsPerPage?: number; } - interface AlgoliaBrowseResponse { + interface BrowseResponse { cursor?: string; - hits: any[]; + hits: {}[]; params: string; query: string; processingTimeMS: number; @@ -1235,7 +953,7 @@ Interface describing options available for gettings the logs /** * Describes a synonym object */ - interface AlgoliaSynonym { + interface Synonym { /** * ObjectID of the synonym * https://github.com/algolia/algoliasearch-client-js#save-synonym---savesynonym @@ -1255,7 +973,7 @@ Interface describing options available for gettings the logs /** * Describes a query rule object */ - interface AlgoliaRule { + interface Rule { /** * ObjectID of the synonym * https://github.com/algolia/algoliasearch-client-js#save-synonym---savesynonym @@ -1341,7 +1059,7 @@ Interface describing options available for gettings the logs /** * Describes the options used when generating new api keys */ - interface AlgoliaSecuredApiOptions { + interface SecuredApiOptions { /** * Filter the query with numeric, facet or/and tag filters * default: "" @@ -1364,266 +1082,7 @@ Interface describing options available for gettings the logs */ userToken?: string; } - - /** - * Describes the settings available for configure your index - */ - interface AlgoliaIndexSettings { - /** - * The list of attributes you want index - * default: * - * https://github.com/algolia/algoliasearch-client-js#attributestoindex - */ - attributesToIndex?: string[]; - /** - * The list of attributes you want to use for faceting - * default: null - * https://github.com/algolia/algoliasearch-client-js#attributesforfaceting - */ - attributesForFaceting?: string[]; - /** - * The list of attributes that cannot be retrieved at query time - * default: null - * https://github.com/algolia/algoliasearch-client-js#unretrievableattributes - */ - unretrievableAttributes?: string[]; - /** - * List of attributes you want to use for textual search - * default: [] - * https://github.com/algolia/algoliasearch-client-js#searchableattributes - */ - searchableAttributes?: string[]; - /** - * A string that contains the list of attributes you want to retrieve in order to minimize the size of the JSON answer - * default: * - * https://github.com/algolia/algoliasearch-client-js#attributestoretrieve - */ - attributesToRetrieve?: string[]; - /** - * Controls the way results are sorted - * default: ['typo', 'geo', 'words', 'filters', 'proximity', 'attribute', 'exact', 'custom'] - * https://github.com/algolia/algoliasearch-client-js#ranking - */ - ranking?: string[]; - /** - * Lets you specify part of the ranking - * default: [] - * https://github.com/algolia/algoliasearch-client-js#customranking - */ - customRanking?: string[]; - /** - * The list of indices on which you want to replicate all write operations - * default: [] - * https://github.com/algolia/algoliasearch-client-js#replicas - */ - replicas?: string[]; - /** - * Limit the number of facet values returned for each facet - * default: "" - * https://github.com/algolia/algoliasearch-client-js#maxvaluesperfacet - */ - maxValuesPerFacet?: string; - /** - * Default list of attributes to highlight. If set to null, all indexed attributes are highlighted. - * default: null - * https://github.com/algolia/algoliasearch-client-js#attributestohighlight - */ - attributesToHighlight?: string[]; - /** - * Default list of attributes to snippet alongside the number of words to return - * default: null - * https://github.com/algolia/algoliasearch-client-js#attributestosnippet - */ - attributesToSnippet?: string[]; - /** - * Specify the string that is inserted before the highlighted parts in the query result - * default: - * https://github.com/algolia/algoliasearch-client-js#highlightpretag - */ - highlightPreTag?: string; - /** - * Specify the string that is inserted after the highlighted parts in the query result - * default: - * https://github.com/algolia/algoliasearch-client-js#highlightposttag - */ - highlightPostTag?: string; - /** - * String used as an ellipsis indicator when a snippet is truncated. - * default: … - * https://github.com/algolia/algoliasearch-client-js#snippetellipsistext - */ - snippetEllipsisText?: string; - /** - * If set to true, restrict arrays in highlights and snippets to items that matched the query at least partially else return all array items in highlights and snippets - * default: false - * https://github.com/algolia/algoliasearch-client-js#restricthighlightandsnippetarrays - */ - restrictHighlightAndSnippetArrays?: boolean; - /** - * Pagination parameter used to select the number of hits per page - * default: 20 - * https://github.com/algolia/algoliasearch-client-js#hitsperpage - */ - hitsPerPage?: number; - /** - * The minimum number of characters needed to accept one typo - * default: 4 - * https://github.com/algolia/algoliasearch-client-js#minwordsizefor1typo - */ - minWordSizefor1Typo?: number; - /** - * The minimum number of characters needed to accept two typos. - * default: 8 - * https://github.com/algolia/algoliasearch-client-js#highlightposttag - */ - minWordSizefor2Typos?: number; - /** - * This option allows you to control the number of typos allowed in the result set - * default: true - * 'true' The typo tolerance is enabled and all matching hits are retrieved (default behavior). - * 'false' The typo tolerance is disabled. All results with typos will be hidden. - * 'min' Only keep results with the minimum number of typos. For example, if one result matches without typos, then all results with typos will be hidden. - * 'strict' Hits matching with 2 typos are not retrieved if there are some matching without typos. - * https://github.com/algolia/algoliasearch-client-js#typotolerance - */ - typoTolerance?: any; - /** - * If set to false, disables typo tolerance on numeric tokens (numbers). - * default: true - * https://github.com/algolia/algoliasearch-client-js#allowtyposonnumerictokens - */ - allowTyposOnNumericTokens?: boolean; - /** - * If set to true, plural won't be considered as a typo - * default: false - * https://github.com/algolia/algoliasearch-client-js#ignoreplurals - */ - ignorePlurals?: boolean; - /** - * List of attributes on which you want to disable typo tolerance - * default: "" - * https://github.com/algolia/algoliasearch-client-js#disabletypotoleranceonattributes - */ - disableTypoToleranceOnAttributes?: string; - /** - * Specify the separators (punctuation characters) to index. - * default: "" - * https://github.com/algolia/algoliasearch-client-js#separatorstoindex - */ - separatorsToIndex?: string; - /** - * Selects how the query words are interpreted - * default: 'prefixLast' - * 'prefixAll' All query words are interpreted as prefixes. This option is not recommended. - * 'prefixLast' Only the last word is interpreted as a prefix (default behavior). - * 'prefixNone' No query word is interpreted as a prefix. This option is not recommended. - * https://github.com/algolia/algoliasearch-client-js#querytype - */ - queryType?: any; - /** - * This option is used to select a strategy in order to avoid having an empty result page - * default: 'none' - * 'lastWords' When a query does not return any results, the last word will be added as optional - * 'firstWords' When a query does not return any results, the first word will be added as optional - * 'allOptional' When a query does not return any results, a second trial will be made with all words as optional - * 'none' No specific processing is done when a query does not return any results - * https://github.com/algolia/algoliasearch-client-js#removewordsifnoresults - */ - removeWordsIfNoResults?: string; - /** - * Enables the advanced query syntax - * default: false - * https://github.com/algolia/algoliasearch-client-js#advancedsyntax - */ - advancedSyntax?: boolean; - /** - * A string that contains the comma separated list of words that should be considered as optional when found in the query - * default: [] - * https://github.com/algolia/algoliasearch-client-js#optionalwords - */ - optionalWords?: string[]; - /** - * Remove stop words from the query before executing it - * default: false - * true|false: enable or disable stop words for all 41 supported languages; or - * a list of language ISO codes (as a comma-separated string) for which stop words should be enable - * https://github.com/algolia/algoliasearch-client-js#removestopwords - */ - removeStopWords?: string[]; - /** - * List of attributes on which you want to disable prefix matching - * default: [] - * https://github.com/algolia/algoliasearch-client-js#disableprefixonattributes - */ - disablePrefixOnAttributes?: string[]; - /** - * List of attributes on which you want to disable the computation of exact criteria - * default: [] - * https://github.com/algolia/algoliasearch-client-js#disableexactonattributes - */ - disableExactOnAttributes?: string[]; - /** - * This parameter control how the exact ranking criterion is computed when the query contains one word - * default: attribute - * 'none': no exact on single word query - * 'word': exact set to 1 if the query word is found in the record - * 'attribute': exact set to 1 if there is an attribute containing a string equals to the query - * https://github.com/algolia/algoliasearch-client-js#exactonsinglewordquery - */ - exactOnSingleWordQuery?: string; - /** - * Specify the list of approximation that should be considered as an exact match in the ranking formula - * default: ['ignorePlurals', 'singleWordSynonym'] - * 'ignorePlurals': alternative words added by the ignorePlurals feature - * 'singleWordSynonym': single-word synonym (For example "NY" = "NYC") - * 'multiWordsSynonym': multiple-words synonym - * https://github.com/algolia/algoliasearch-client-js#alternativesasexact - */ - alternativesAsExact?: any; - /** - * The name of the attribute used for the Distinct feature - * default: null - * https://github.com/algolia/algoliasearch-client-js#attributefordistinct - */ - attributeForDistinct?: string; - /** - * If set to 1, enables the distinct feature, disabled by default, if the attributeForDistinct index setting is set. - * https://github.com/algolia/algoliasearch-client-js#distinct - */ - distinct?: any; - /** - * All numerical attributes are automatically indexed as numerical filters - * default '' - * https://github.com/algolia/algoliasearch-client-js#numericattributestoindex - */ - numericAttributesToIndex?: string[]; - /** - * Allows compression of big integer arrays. - * default: false - * https://github.com/algolia/algoliasearch-client-js#allowcompressionofintegerarray - */ - allowCompressionOfIntegerArray?: boolean; - /** - * Specify alternative corrections that you want to consider. - * default: [] - * https://github.com/algolia/algoliasearch-client-js#altcorrections - */ - altCorrections?: {}[]; - /** - * Configure the precision of the proximity ranking criterion - * default: 1 - * https://github.com/algolia/algoliasearch-client-js#minproximity - */ - minProximity?: number; - /** - * This is an advanced use-case to define a token substitutable by a list of words without having the original token searchable - * default: '' - * https://github.com/algolia/algoliasearch-client-js#placeholders - */ - placeholders?: any; - } - - interface AlgoliaQueryParameters { + interface QueryParameters { /** * Query string used to perform the search * default: '' @@ -1659,7 +1118,7 @@ Interface describing options available for gettings the logs * default: "" * https://github.com/algolia/algoliasearch-client-js#maxvaluesperfacet */ - maxValuesPerFacet?: string; + maxValuesPerFacet?: number; /** * Default list of attributes to highlight. If set to null, all indexed attributes are highlighted. * default: null @@ -1931,6 +1390,408 @@ Interface describing options available for gettings the logs * https://github.com/algolia/algoliasearch-client-js#minproximity */ minProximity?: number; + + nbShards?: number; + userData?: string | object; + } + + interface AlgoliaResponse { + /** + * Contains all the hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hits: any[]; + /** + * Current page + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + page: number; + /** + * Number of total hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbHits: number; + /** + * Number of pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbPage: number; + /** + * Number of hits per pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hitsPerPage: number; + /** + * Engine processing time (excluding network transfer) + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + processingTimeMS: number; + /** + * Query used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + query: string; + /** + * GET parameters used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + params: string; + facets: { + [facetName: string]: { [facetValue: string]: number }; + }; + } + + namespace SearchForFacetValues { + interface Parameters extends QueryParameters { + /** + * The facet to search in + */ + facetName: string; + /** + * The query for the search in this facet + */ + facetQuery: string; + } + + interface Response { + facetHits: { value: string; highlighted: string; count: number }[]; + exhaustiveFacetsCount: boolean; + processingTimeMS: number; + } + } + + interface Log { + timestamp: string; + method: string; + answer_code: number; + query_body: string; + answer: string; + url: string; + ip: string; + query_headers: string; + sha1: string; + nb_api_calls: string; + index: string; + query_params: string; + query_nb_hits: string; + processing_time_ms: string; + exhaustive_faceting?: false; + exhaustive_nb_hits?: false; + } + + interface Task { + taskID: number; + } + + interface IndexSettings { + /** + * The list of attributes you want index + * default: * + * https://github.com/algolia/algoliasearch-client-js#attributestoindex + */ + attributesToIndex?: string[]; + /** + * The list of attributes you want to use for faceting + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributesforfaceting + */ + attributesForFaceting?: string[]; + /** + * The list of attributes that cannot be retrieved at query time + * default: null + * https://github.com/algolia/algoliasearch-client-js#unretrievableattributes + */ + unretrievableAttributes?: string[]; + /** + * List of attributes you want to use for textual search + * default: [] + * https://github.com/algolia/algoliasearch-client-js#searchableattributes + */ + searchableAttributes?: string[]; + /** + * A string that contains the list of attributes you want to retrieve in order to minimize the size of the JSON answer + * default: * + * https://github.com/algolia/algoliasearch-client-js#attributestoretrieve + */ + attributesToRetrieve?: string[]; + /** + * Controls the way results are sorted + * default: ['typo', 'geo', 'words', 'filters', 'proximity', 'attribute', 'exact', 'custom'] + * https://github.com/algolia/algoliasearch-client-js#ranking + */ + ranking?: string[]; + /** + * Lets you specify part of the ranking + * default: [] + * https://github.com/algolia/algoliasearch-client-js#customranking + */ + customRanking?: string[]; + /** + * The list of indices on which you want to replicate all write operations + * default: [] + * https://github.com/algolia/algoliasearch-client-js#replicas + */ + replicas?: string[]; + /** + * Limit the number of facet values returned for each facet + * default: "" + * https://github.com/algolia/algoliasearch-client-js#maxvaluesperfacet + */ + maxValuesPerFacet?: number; + /** + * Default list of attributes to highlight. If set to null, all indexed attributes are highlighted. + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributestohighlight + */ + attributesToHighlight?: string[]; + /** + * Default list of attributes to snippet alongside the number of words to return + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributestosnippet + */ + attributesToSnippet?: string[]; + /** + * Specify the string that is inserted before the highlighted parts in the query result + * default: + * https://github.com/algolia/algoliasearch-client-js#highlightpretag + */ + highlightPreTag?: string; + /** + * Specify the string that is inserted after the highlighted parts in the query result + * default: + * https://github.com/algolia/algoliasearch-client-js#highlightposttag + */ + highlightPostTag?: string; + /** + * String used as an ellipsis indicator when a snippet is truncated. + * default: … + * https://github.com/algolia/algoliasearch-client-js#snippetellipsistext + */ + snippetEllipsisText?: string; + /** + * If set to true, restrict arrays in highlights and snippets to items that matched the query at least partially else return all array items in highlights and snippets + * default: false + * https://github.com/algolia/algoliasearch-client-js#restricthighlightandsnippetarrays + */ + restrictHighlightAndSnippetArrays?: boolean; + /** + * Pagination parameter used to select the number of hits per page + * default: 20 + * https://github.com/algolia/algoliasearch-client-js#hitsperpage + */ + hitsPerPage?: number; + /** + * The minimum number of characters needed to accept one typo + * default: 4 + * https://github.com/algolia/algoliasearch-client-js#minwordsizefor1typo + */ + minWordSizefor1Typo?: number; + /** + * The minimum number of characters needed to accept two typos. + * default: 8 + * https://github.com/algolia/algoliasearch-client-js#highlightposttag + */ + minWordSizefor2Typos?: number; + /** + * This option allows you to control the number of typos allowed in the result set + * default: true + * 'true' The typo tolerance is enabled and all matching hits are retrieved (default behavior). + * 'false' The typo tolerance is disabled. All results with typos will be hidden. + * 'min' Only keep results with the minimum number of typos. For example, if one result matches without typos, then all results with typos will be hidden. + * 'strict' Hits matching with 2 typos are not retrieved if there are some matching without typos. + * https://github.com/algolia/algoliasearch-client-js#typotolerance + */ + typoTolerance?: any; + /** + * If set to false, disables typo tolerance on numeric tokens (numbers). + * default: true + * https://github.com/algolia/algoliasearch-client-js#allowtyposonnumerictokens + */ + allowTyposOnNumericTokens?: boolean; + /** + * If set to true, plural won't be considered as a typo + * default: false + * https://github.com/algolia/algoliasearch-client-js#ignoreplurals + */ + ignorePlurals?: boolean; + /** + * List of attributes on which you want to disable typo tolerance + * default: "" + * https://github.com/algolia/algoliasearch-client-js#disabletypotoleranceonattributes + */ + disableTypoToleranceOnAttributes?: string; + /** + * Specify the separators (punctuation characters) to index. + * default: "" + * https://github.com/algolia/algoliasearch-client-js#separatorstoindex + */ + separatorsToIndex?: string; + /** + * Selects how the query words are interpreted + * default: 'prefixLast' + * 'prefixAll' All query words are interpreted as prefixes. This option is not recommended. + * 'prefixLast' Only the last word is interpreted as a prefix (default behavior). + * 'prefixNone' No query word is interpreted as a prefix. This option is not recommended. + * https://github.com/algolia/algoliasearch-client-js#querytype + */ + queryType?: any; + /** + * This option is used to select a strategy in order to avoid having an empty result page + * default: 'none' + * 'lastWords' When a query does not return any results, the last word will be added as optional + * 'firstWords' When a query does not return any results, the first word will be added as optional + * 'allOptional' When a query does not return any results, a second trial will be made with all words as optional + * 'none' No specific processing is done when a query does not return any results + * https://github.com/algolia/algoliasearch-client-js#removewordsifnoresults + */ + removeWordsIfNoResults?: string; + /** + * Enables the advanced query syntax + * default: false + * https://github.com/algolia/algoliasearch-client-js#advancedsyntax + */ + advancedSyntax?: boolean; + /** + * A string that contains the comma separated list of words that should be considered as optional when found in the query + * default: [] + * https://github.com/algolia/algoliasearch-client-js#optionalwords + */ + optionalWords?: string[]; + /** + * Remove stop words from the query before executing it + * default: false + * true|false: enable or disable stop words for all 41 supported languages; or + * a list of language ISO codes (as a comma-separated string) for which stop words should be enable + * https://github.com/algolia/algoliasearch-client-js#removestopwords + */ + removeStopWords?: string[]; + /** + * List of attributes on which you want to apply word-splitting ("decompounding") for + * each of the languages supported (German, Dutch, and Finnish as of 05/2018) + * default: {de: [], nl: [], fi: []} + */ + decompoundedAttributes?: { [key in Partial<'nl' | 'de' | 'fi'>]: string[] }; + /** + * List of attributes on which you want to disable prefix matching + * default: [] + * https://github.com/algolia/algoliasearch-client-js#disableprefixonattributes + */ + disablePrefixOnAttributes?: string[]; + /** + * List of attributes on which you want to disable the computation of exact criteria + * default: [] + * https://github.com/algolia/algoliasearch-client-js#disableexactonattributes + */ + disableExactOnAttributes?: string[]; + /** + * This parameter control how the exact ranking criterion is computed when the query contains one word + * default: attribute + * 'none': no exact on single word query + * 'word': exact set to 1 if the query word is found in the record + * 'attribute': exact set to 1 if there is an attribute containing a string equals to the query + * https://github.com/algolia/algoliasearch-client-js#exactonsinglewordquery + */ + exactOnSingleWordQuery?: string; + /** + * Specify the list of approximation that should be considered as an exact match in the ranking formula + * default: ['ignorePlurals', 'singleWordSynonym'] + * 'ignorePlurals': alternative words added by the ignorePlurals feature + * 'singleWordSynonym': single-word synonym (For example "NY" = "NYC") + * 'multiWordsSynonym': multiple-words synonym + * https://github.com/algolia/algoliasearch-client-js#alternativesasexact + */ + alternativesAsExact?: any; + /** + * The name of the attribute used for the Distinct feature + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributefordistinct + */ + attributeForDistinct?: string; + /** + * If set to 1, enables the distinct feature, disabled by default, if the attributeForDistinct index setting is set. + * https://github.com/algolia/algoliasearch-client-js#distinct + */ + distinct?: any; + /** + * All numerical attributes are automatically indexed as numerical filters + * default '' + * https://github.com/algolia/algoliasearch-client-js#numericattributestoindex + */ + numericAttributesToIndex?: string[]; + /** + * Allows compression of big integer arrays. + * default: false + * https://github.com/algolia/algoliasearch-client-js#allowcompressionofintegerarray + */ + allowCompressionOfIntegerArray?: boolean; + /** + * Specify alternative corrections that you want to consider. + * default: [] + * https://github.com/algolia/algoliasearch-client-js#altcorrections + */ + altCorrections?: {}[]; + /** + * Configure the precision of the proximity ranking criterion + * default: 1 + * https://github.com/algolia/algoliasearch-client-js#minproximity + */ + minProximity?: number; + /** + * This is an advanced use-case to define a token substitutable by a list of words without having the original token searchable + * default: '' + * https://github.com/algolia/algoliasearch-client-js#placeholders + */ + placeholders?: any; + } + + interface Response { + /** + * Contains all the hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hits: any[]; + /** + * Current page + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + page: number; + /** + * Number of total hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbHits: number; + /** + * Number of pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbPages: number; + /** + * Number of hits per pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hitsPerPage: number; + /** + * Engine processing time (excluding network transfer) + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + processingTimeMS: number; + /** + * Query used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + query: string; + /** + * GET parameters used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + params: string; + facets?: { + [facetName: string]: { [facetValue: string]: number }; + }; + } + + interface MultiResponse { + results: Response[]; } } @@ -1938,5 +1799,5 @@ declare function algoliasearch( applicationId: string, apiKey: string, options?: algoliasearch.ClientOptions -): algoliasearch.AlgoliaClient; +): algoliasearch.Client; export = algoliasearch; diff --git a/types/algoliasearch/lite/index.d.ts b/types/algoliasearch/lite/index.d.ts new file mode 100644 index 0000000000..588e2ac543 --- /dev/null +++ b/types/algoliasearch/lite/index.d.ts @@ -0,0 +1,624 @@ +// Type definitions for algoliasearch-client-js 3.27.0 +// Project: https://github.com/algolia/algoliasearch-client-js +// Definitions by: Baptiste Coquelle +// Haroen Viaene +// Aurélien Hervé +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +declare namespace algoliasearch { + /* + Interface for the algolia client object + */ + interface Client { + /** + * Initialization of the index + * https://github.com/algolia/algoliasearch-client-js#init-index---initindex + */ + initIndex(indexName: string): Index; + /** + * Query on multiple index + * https://github.com/algolia/algoliasearch-client-js#multiple-queries---multiplequeries + */ + search( + queries: { + indexName: string; + query: string; + params: QueryParameters; + }[], + cb: (err: Error, res: MultiResponse) => void + ): void; + /** + * Query on multiple index + * https://github.com/algolia/algoliasearch-client-js#multiple-queries---multiplequeries + */ + search( + queries: { + indexName: string; + query: string; + params: QueryParameters; + }[] + ): Promise; + /** + * Query for facet values of a specific facet + */ + searchForFacetValues( + queries: [{ indexName: string; params: SearchForFacetValues.Parameters }] + ): Promise; + /** + * clear browser cache + * https://github.com/algolia/algoliasearch-client-js#cache + */ + clearCache(): void; + /** + * Add a header to be sent with all upcoming requests + */ + setExtraHeader(name: string, value: string): void; + /** + * Get the value of an extra header + */ + getExtraHeader(name: string): string; + /** + * remove an extra header for all upcoming requests + */ + unsetExtraHeader(name: string): void; + } + /** + * Interface for the index algolia object + */ + interface Index { + /** + * Gets a specific object + * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects + */ + getObject(objectID: string, cb: (err: Error, res: {}) => void): void; + /** + * Gets specific attributes from an object + * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects + */ + getObject( + objectID: string, + attributes: string[], + cb: (err: Error, res: {}) => void + ): void; + /** + * Gets a list of objects + * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects + */ + getObjects( + objectIDs: string[], + cb: (err: Error, res: { results: {}[] }) => void + ): void; + /** + * Gets a list of objects + * https://github.com/algolia/algoliasearch-client-js#find-by-ids---getobjects + */ + getObjects(objectIDs: string[]): Promise<{ results: {}[] }>; + /** + * Clear cache of an index + * https://github.com/algolia/algoliasearch-client-js#cache + */ + clearCache(): void; + /** + * Search in an index + * https://github.com/algolia/algoliasearch-client-js#search-in-an-index---search + */ + search( + params: QueryParameters, + cb: (err: Error, res: Response) => void + ): void; + /** + * Search in an index + * https://github.com/algolia/algoliasearch-client-js#search-in-an-index---search + */ + search(params: QueryParameters): Promise; + /** + * Search in an index + * https://www.algolia.com/doc/api-reference/api-methods/search-for-facet-values/ + */ + searchForFacetValues( + options: SearchForFacetValues.Parameters + ): Promise; + /** + * Search in an index + * https://www.algolia.com/doc/api-reference/api-methods/search-for-facet-values/ + */ + searchForFacetValues( + options: SearchForFacetValues.Parameters, + cb: (err: Error, res: SearchForFacetValues.Response) => void + ): void; + /** + * Browse an index + * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse + */ + browse(query: string, cb: (err: Error, res: BrowseResponse) => void): void; + /** + * Browse an index + * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse + */ + browse(query: string): Promise; + /** + * Browse an index from a cursor + * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse + */ + browseFrom( + cursor: string, + cb: (err: Error, res: BrowseResponse) => void + ): void; + /** + * Browse an index from a cursor + * https://github.com/algolia/algoliasearch-client-js#backup--export-an-index---browse + */ + browseFrom(cursor: string): Promise; + } + /** + * Interface describing available options when initializing a client + */ + interface ClientOptions { + /** + * Timeout for requests to our servers, in milliseconds + * default: 15s (node), 2s (browser) + * https://github.com/algolia/algoliasearch-client-js#client-options + */ + timeout?: number; + /** + * Protocol to use when communicating with algolia + * default: current protocol(browser), https(node) + * https://github.com/algolia/algoliasearch-client-js#client-options + */ + protocol?: string; + /** + * (node only) httpAgent instance to use when communicating with servers. + * https://github.com/algolia/algoliasearch-client-js#client-options + */ + httpAgent?: any; + /** + * read: array of read hosts to use to call servers, computed automatically + * write: array of read hosts to use to call servers, computed automatically + * https://github.com/algolia/algoliasearch-client-js#client-options + */ + hosts?: { read?: string[]; write?: string[] }; + } + interface BrowseResponse { + cursor?: string; + hits: {}[]; + params: string; + query: string; + processingTimeMS: number; + } + + interface QueryParameters { + /** + * Query string used to perform the search + * default: '' + * https://github.com/algolia/algoliasearch-client-js#query + */ + query?: string; + /** + * Filter the query with numeric, facet or/and tag filters + * default: "" + * https://github.com/algolia/algoliasearch-client-js#filters + */ + filters?: string; + /** + * A string that contains the list of attributes you want to retrieve in order to minimize the size of the JSON answer. + * default: * + * https://github.com/algolia/algoliasearch-client-js#attributestoretrieve + */ + attributesToRetrieve?: string[]; + /** + * List of attributes you want to use for textual search + * default: attributeToIndex + * https://github.com/algolia/algoliasearch-client-js#restrictsearchableattributes + */ + restrictSearchableAttributes?: string[]; + /** + * You can use facets to retrieve only a part of your attributes declared in attributesForFaceting attributes + * default: "" + * https://github.com/algolia/algoliasearch-client-js#facets + */ + facets?: string; + /** + * Limit the number of facet values returned for each facet. + * default: "" + * https://github.com/algolia/algoliasearch-client-js#maxvaluesperfacet + */ + maxValuesPerFacet?: number; + /** + * Default list of attributes to highlight. If set to null, all indexed attributes are highlighted. + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributestohighlight + */ + attributesToHighlight?: string[]; + /** + * Default list of attributes to snippet alongside the number of words to return + * default: null + * https://github.com/algolia/algoliasearch-client-js#attributestosnippet + */ + attributesToSnippet?: string[]; + /** + * Specify the string that is inserted before the highlighted parts in the query result + * default: + * https://github.com/algolia/algoliasearch-client-js#highlightpretag + */ + highlightPreTag?: string; + /** + * Specify the string that is inserted after the highlighted parts in the query result + * default: + * https://github.com/algolia/algoliasearch-client-js#highlightposttag + */ + highlightPostTag?: string; + /** + * String used as an ellipsis indicator when a snippet is truncated. + * default: … + * https://github.com/algolia/algoliasearch-client-js#snippetellipsistext + */ + snippetEllipsisText?: string; + /** + * If set to true, restrict arrays in highlights and snippets to items that matched the query at least partially else return all array items in highlights and snippets + * default: false + * https://github.com/algolia/algoliasearch-client-js#restricthighlightandsnippetarrays + */ + restrictHighlightAndSnippetArrays?: boolean; + /** + * Pagination parameter used to select the number of hits per page + * default: 20 + * https://github.com/algolia/algoliasearch-client-js#hitsperpage + */ + hitsPerPage?: number; + /** + * Pagination parameter used to select the page to retrieve. + * default: 0 + * https://github.com/algolia/algoliasearch-client-js#page + */ + page?: number; + /** + * Offset of the first hit to return + * default: null + * https://github.com/algolia/algoliasearch-client-js#offset + */ + offset?: number; + /** + * Number of hits to return. + * default: null + * https://github.com/algolia/algoliasearch-client-js#length + */ + length?: number; + /** + * The minimum number of characters needed to accept one typo. + * default: 4 + * https://github.com/algolia/algoliasearch-client-js#minwordsizefor1typo + */ + minWordSizefor1Typo?: number; + /** + * The minimum number of characters needed to accept two typo. + * fault: 8 + * https://github.com/algolia/algoliasearch-client-js#minwordsizefor2typos + */ + minWordSizefor2Typos?: number; + /** + * This option allows you to control the number of typos allowed in the result set: + * default: true + * 'true' The typo tolerance is enabled and all matching hits are retrieved + * 'false' The typo tolerance is disabled. All results with typos will be hidden. + * 'min' Only keep results with the minimum number of typos + * 'strict' Hits matching with 2 typos are not retrieved if there are some matching without typos. + * https://github.com/algolia/algoliasearch-client-js#minwordsizefor2typos + */ + typoTolerance?: boolean; + /** + * If set to false, disables typo tolerance on numeric tokens (numbers). + * default: + * https://github.com/algolia/algoliasearch-client-js#allowtyposonnumerictokens + */ + allowTyposOnNumericTokens?: boolean; + /** + * If set to true, plural won't be considered as a typo + * default: false + * https://github.com/algolia/algoliasearch-client-js#ignoreplurals + */ + ignorePlurals?: boolean; + /** + * List of attributes on which you want to disable typo tolerance + * default: "" + * https://github.com/algolia/algoliasearch-client-js#disabletypotoleranceonattributes + */ + disableTypoToleranceOnAttributes?: string; + /** + * Search for entries around a given location + * default: "" + * https://github.com/algolia/algoliasearch-client-js#aroundlatlng + */ + aroundLatLng?: string; + /** + * Search for entries around a given latitude/longitude automatically computed from user IP address. + * default: "" + * https://github.com/algolia/algoliasearch-client-js#aroundlatlngviaip + */ + aroundLatLngViaIP?: string; + /** + * Control the radius associated with a geo search. Defined in meters. + * default: null + * You can specify aroundRadius=all if you want to compute the geo distance without filtering in a geo area + * https://github.com/algolia/algoliasearch-client-js#aroundradius + */ + aroundRadius?: number | 'all'; + /** + * Control the precision of a geo search + * default: null + * https://github.com/algolia/algoliasearch-client-js#aroundprecision + */ + aroundPrecision?: number; + /** + * Define the minimum radius used for a geo search when aroundRadius is not set. + * default: null + * https://github.com/algolia/algoliasearch-client-js#minimumaroundradius + */ + minimumAroundRadius?: number; + /** + * Search entries inside a given area defined by the two extreme points of a rectangle + * default: null + * https://github.com/algolia/algoliasearch-client-js#insideboundingbox + */ + insideBoundingBox?: number[][]; + /** + * Selects how the query words are interpreted + * default: 'prefixLast' + * 'prefixAll' All query words are interpreted as prefixes. This option is not recommended. + * 'prefixLast' Only the last word is interpreted as a prefix (default behavior). + * 'prefixNone' No query word is interpreted as a prefix. This option is not recommended. + * https://github.com/algolia/algoliasearch-client-js#querytype + */ + queryType?: any; + /** + * Search entries inside a given area defined by a set of points + * defauly: '' + * https://github.com/algolia/algoliasearch-client-js#insidepolygon + */ + insidePolygon?: number[][]; + /** + * This option is used to select a strategy in order to avoid having an empty result page + * default: 'none' + * 'lastWords' When a query does not return any results, the last word will be added as optional + * 'firstWords' When a query does not return any results, the first word will be added as optional + * 'allOptional' When a query does not return any results, a second trial will be made with all words as optional + * 'none' No specific processing is done when a query does not return any results + * https://github.com/algolia/algoliasearch-client-js#removewordsifnoresults + */ + removeWordsIfNoResults?: string; + /** + * Enables the advanced query syntax + * default: false + * https://github.com/algolia/algoliasearch-client-js#advancedsyntax + */ + advancedSyntax?: boolean; + /** + * A string that contains the comma separated list of words that should be considered as optional when found in the query + * default: [] + * https://github.com/algolia/algoliasearch-client-js#optionalwords + */ + optionalWords?: string[]; + /** + * Remove stop words from the query before executing it + * default: false + * true|false: enable or disable stop words for all 41 supported languages; or + * a list of language ISO codes (as a comma-separated string) for which stop words should be enable + * https://github.com/algolia/algoliasearch-client-js#removestopwords + */ + removeStopWords?: string[]; + /** + * List of attributes on which you want to disable the computation of exact criteria + * default: [] + * https://github.com/algolia/algoliasearch-client-js#disableexactonattributes + */ + disableExactOnAttributes?: string[]; + /** + * This parameter control how the exact ranking criterion is computed when the query contains one word + * default: attribute + * 'none': no exact on single word query + * 'word': exact set to 1 if the query word is found in the record + * 'attribute': exact set to 1 if there is an attribute containing a string equals to the query + * https://github.com/algolia/algoliasearch-client-js#exactonsinglewordquery + */ + exactOnSingleWordQuery?: string; + /** + * Specify the list of approximation that should be considered as an exact match in the ranking formula + * default: ['ignorePlurals', 'singleWordSynonym'] + * 'ignorePlurals': alternative words added by the ignorePlurals feature + * 'singleWordSynonym': single-word synonym (For example "NY" = "NYC") + * 'multiWordsSynonym': multiple-words synonym + * https://github.com/algolia/algoliasearch-client-js#alternativesasexact + */ + alternativesAsExact?: any; + /** + * If set to 1, enables the distinct feature, disabled by default, if the attributeForDistinct index setting is set. + * https://github.com/algolia/algoliasearch-client-js#distinct + */ + distinct?: any; + /** + * If set to true, the result hits will contain ranking information in the _rankingInfo attribute. + * default: false + * https://github.com/algolia/algoliasearch-client-js#getrankinginfo + */ + getRankingInfo?: boolean; + /** + * All numerical attributes are automatically indexed as numerical filters + * default: '' + * https://github.com/algolia/algoliasearch-client-js#numericattributestoindex + */ + numericAttributesToIndex?: string[]; + /** + * @deprecated please use filters instead + * A string that contains the comma separated list of numeric filters you want to apply. + * https://github.com/algolia/algoliasearch-client-js#numericfilters-deprecated + */ + numericFilters?: string[]; + /** + * @deprecated + * Filter the query by a set of tags. + * https://github.com/algolia/algoliasearch-client-js#tagfilters-deprecated + */ + tagFilters?: string; + /** + * @deprecated + * Filter the query by a set of facets. + * https://github.com/algolia/algoliasearch-client-js#facetfilters-deprecated + */ + facetFilters?: string; + /** + * If set to false, this query will not be taken into account in the analytics feature. + * default true + * https://github.com/algolia/algoliasearch-client-js#analytics + */ + analytics?: boolean; + /** + * If set, tag your query with the specified identifiers + * default: null + * https://github.com/algolia/algoliasearch-client-js#analyticstags + */ + analyticsTags?: string[]; + /** + * If set to false, the search will not use the synonyms defined for the targeted index. + * default: true + * https://github.com/algolia/algoliasearch-client-js#synonyms + */ + synonyms?: boolean; + /** + * If set to false, words matched via synonym expansion will not be replaced by the matched synonym in the highlighted result. + * default: true + * https://github.com/algolia/algoliasearch-client-js#replacesynonymsinhighlight + */ + replaceSynonymsInHighlight?: boolean; + /** + * Configure the precision of the proximity ranking criterion + * default: 1 + * https://github.com/algolia/algoliasearch-client-js#minproximity + */ + minProximity?: number; + + nbShards?: number; + userData?: string | object; + } + + interface AlgoliaResponse { + /** + * Contains all the hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hits: any[]; + /** + * Current page + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + page: number; + /** + * Number of total hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbHits: number; + /** + * Number of pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbPage: number; + /** + * Number of hits per pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hitsPerPage: number; + /** + * Engine processing time (excluding network transfer) + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + processingTimeMS: number; + /** + * Query used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + query: string; + /** + * GET parameters used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + params: string; + facets: { + [facetName: string]: { [facetValue: string]: number }; + }; + } + + namespace SearchForFacetValues { + interface Parameters extends QueryParameters { + /** + * The facet to search in + */ + facetName: string; + /** + * The query for the search in this facet + */ + facetQuery: string; + } + + interface Response { + facetHits: { value: string; highlighted: string; count: number }[]; + exhaustiveFacetsCount: boolean; + processingTimeMS: number; + } + } + + interface Response { + /** + * Contains all the hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hits: any[]; + /** + * Current page + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + page: number; + /** + * Number of total hits matching the query + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbHits: number; + /** + * Number of pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + nbPages: number; + /** + * Number of hits per pages + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + hitsPerPage: number; + /** + * Engine processing time (excluding network transfer) + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + processingTimeMS: number; + /** + * Query used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + query: string; + /** + * GET parameters used to perform the search + * https://github.com/algolia/algoliasearch-client-js#response-format + */ + params: string; + facets?: { + [facetName: string]: { [facetValue: string]: number }; + }; + } + + interface MultiResponse { + results: Response[]; + } +} + +declare function algoliasearch( + applicationId: string, + apiKey: string, + options?: algoliasearch.ClientOptions +): algoliasearch.Client; +export = algoliasearch; diff --git a/types/algoliasearch/tsconfig.json b/types/algoliasearch/tsconfig.json index 3358732ba3..9a8a2a623c 100644 --- a/types/algoliasearch/tsconfig.json +++ b/types/algoliasearch/tsconfig.json @@ -18,6 +18,7 @@ }, "files": [ "index.d.ts", + "lite/index.d.ts", "algoliasearch-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/amazon-cognito-auth-js/index.d.ts b/types/amazon-cognito-auth-js/index.d.ts new file mode 100644 index 0000000000..d828fccfc8 --- /dev/null +++ b/types/amazon-cognito-auth-js/index.d.ts @@ -0,0 +1,577 @@ +// Type definitions for amazon-cognito-auth-js 1.2 +// Project: https://github.com/aws/amazon-cognito-auth-js +// Definitions by: Scott Escue +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/* + * Create global variable to provide access to types when used without module + * loading. + */ +export as namespace AmazonCognitoIdentity; + +// Stubs the XDomainRequest built-in from older IE browsers, does not follow the project's interface naming convention +export interface XDomainRequest { + readonly responseText: string; + timeout: number; + onprogress: () => void; + ontimeout: () => void; + onerror: () => void; + onload: () => void; + + open(method: string, url: string): void; + send(data: string): void; + abort(): void; +} + +export interface CognitoSessionData { + /** + * The session's Id token. + */ + IdToken?: CognitoIdToken; + + /** + * The session's refresh token. + */ + RefreshToken?: CognitoRefreshToken; + + /** + * The session's access token. + */ + AccessToken?: CognitoAccessToken; + + /** + * The session's token scopes. + */ + TokenScopes?: CognitoTokenScopes; + + /** + * The session's state. + */ + State?: string; +} + +export interface CognitoAuthOptions { + /** + * Required: User pool application client id. + */ + ClientId: string; + + /** + * Required: The application/user-pools Cognito web hostname,this is set at the Cognito console. + */ + AppWebDomain: string; + + /** + * Optional: The token scopes + */ + TokenScopesArray?: ReadonlyArray; + + /** + * Required: Required: The redirect Uri, which will be launched after authentication as signed in. + */ + RedirectUriSignIn: string; + + /** + * Required: The redirect Uri, which will be launched when signed out. + */ + RedirectUriSignOut: string; + + /** + * Optional: Pre-selected identity provider (this allows to automatically trigger social provider authentication flow). + */ + IdentityProvider?: string; + + /** + * Optional: UserPoolId for the configured cognito userPool. + */ + UserPoolId?: string; + + /** + * Optional: boolean flag indicating if the data collection is enabled to support cognito advanced security features. By default, this flag is set to true. + */ + AdvancedSecurityDataCollectionFlag?: boolean; +} + +export interface CognitoAuthUserHandler { + onSuccess: (authSession: CognitoAuthSession) => void; + onFailure: (err: any) => void; +} + +export interface CognitoConstants { + DOMAIN_SCHEME: string; + DOMAIN_PATH_SIGNIN: string; + DOMAIN_PATH_TOKEN: string; + DOMAIN_PATH_SIGNOUT: string; + DOMAIN_QUERY_PARAM_REDIRECT_URI: string; + DOMAIN_QUERY_PARAM_SIGNOUT_URI: string; + DOMAIN_QUERY_PARAM_RESPONSE_TYPE: string; + DOMAIN_QUERY_PARAM_IDENTITY_PROVIDER: string; + DOMAIN_QUERY_PARAM_USERCONTEXTDATA: string; + CLIENT_ID: string; + STATE: string; + SCOPE: string; + TOKEN: string; + CODE: string; + POST: string; + PARAMETERERROR: string; + SCOPETYPEERROR: string; + QUESTIONMARK: string; + POUNDSIGN: string; + COLONDOUBLESLASH: string; + SLASH: string; + AMPERSAND: string; + EQUALSIGN: string; + SPACE: string; + CONTENTTYPE: string; + CONTENTTYPEVALUE: string; + AUTHORIZATIONCODE: string; + IDTOKEN: string; + ACCESSTOKEN: string; + REFRESHTOKEN: string; + ERROR: string; + ERROR_DESCRIPTION: string; + STRINGTYPE: string; + STATELENGTH: number; + STATEORIGINSTRING: string; + WITHCREDENTIALS: string; + UNDEFINED: string; + SELF: string; + HOSTNAMEREGEX: RegExp; + QUERYPARAMETERREGEX1: RegExp; + QUERYPARAMETERREGEX2: RegExp; + HEADER: { 'Content-Type': string }; +} + +export class CognitoIdToken { + /** + * Constructs a new CognitoIdToken object + * @param IdToken The JWT Id token + */ + constructor(IdToken: string); + + /** + * @returns the record's token. + */ + getJwtToken(): string; + + /** + * Sets new value for id token. + * @param idToken The JWT Id token + */ + setJwtToken(idToken: string): void; + + /** + * @returns the token's expiration (exp member). + */ + getExpiration(): number; + + /** + * @returns the token's payload. + */ + decodePayload(): object; +} + +export class CognitoRefreshToken { + /** + * Constructs a new CognitoRefreshToken object + * @param RefreshToken The JWT refresh token. + */ + constructor(RefreshToken: string); + + /** + * @returns the record's token. + */ + getToken(): string; + + /** + * Sets new value for refresh token. + * @param refreshToken The JWT refresh token. + */ + setToken(refreshToken: string): void; +} + +export class CognitoAccessToken { + /** + * Constructs a new CognitoAccessToken object + * @param AccessToken The JWT access token. + */ + constructor(AccessToken: string); + + /** + * @returns the record's token. + */ + getJwtToken(): string; + + /** + * Sets new value for access token. + * @param accessToken The JWT access token. + */ + setJwtToken(accessToken: string): void; + + /** + * @returns the token's expiration (exp member). + */ + getExpiration(): number; + + /** + * @returns the username from payload. + */ + getUsername(): string; + + /** + * @returns the token's payload. + */ + decodePayload(): object; +} + +export class CognitoTokenScopes { + /** + * Constructs a new CognitoTokenScopes object + * @param TokenScopesArray The token scopes + */ + constructor(TokenScopesArray: ReadonlyArray); + + /** + * @returns the token scopes. + */ + getScopes(): string[]; + + /** + * Sets new value for token scopes. + * @param tokenScopes The token scopes + */ + setTokenScopes(tokenScopes: ReadonlyArray): void; +} + +export class CognitoAuthSession { + /** + * Constructs a new CognitoUserSession object + * @param sessionData The session's tokens, scopes, and state. + */ + constructor(sessionData: CognitoSessionData); + + /** + * @returns the session's Id token + */ + getIdToken(): CognitoIdToken; + + /** + * Set a new Id token + * @param IdToken The session's Id token. + */ + setIdToken(IdToken: CognitoIdToken): void; + + /** + * @returns the session's refresh token + */ + getRefreshToken(): CognitoRefreshToken; + + /** + * Set a new Refresh token + * @param RefreshToken The session's refresh token. + */ + setRefreshToken(RefreshToken: CognitoRefreshToken): void; + + /** + * @returns the session's access token + */ + getAccessToken(): CognitoAccessToken; + + /** + * Set a new Access token + * @param AccessToken The session's access token. + */ + setAccessToken(AccessToken: CognitoAccessToken): void; + + /** + * @returns the session's token scopes + */ + getTokenScopes(): CognitoTokenScopes; + + /** + * Set new token scopes + * @param tokenScopes The session's token scopes. + */ + setTokenScopes(tokenScopes: CognitoTokenScopes): void; + + /** + * @returns the session's state + */ + getState(): string; + + /** + * Set new state + * @param state The session's state. + */ + setState(State: string): void; + + /** + * Checks to see if the session is still valid based on session expiry information found + * in Access and Id Tokens and the current time + * @returns if the session is still valid + */ + isValid(): boolean; +} + +export class CognitoAuth { + /** + * Called on success or error. + */ + userhandler: CognitoAuthUserHandler; + + /** + * Constructs a new CognitoAuth object + * @param options Creation options + */ + constructor(options: CognitoAuthOptions); + + /** + * @returns the constants + */ + getCognitoConstants(): CognitoConstants; + + /** + * @returns the client id + */ + getClientId(): string; + + /** + * @returns the app web domain + */ + getAppWebDomain(): string; + + /** + * method for getting the current user of the application from the local storage + * + * @returns the user retrieved from storage + */ + getCurrentUser(): string; + + /** + * method for setting the current user's name + * @param Username the user's name + */ + setUser(Username: string): void; + + /** + * sets response type to 'code' + */ + useCodeGrantFlow(): void; + + /** + * sets response type to 'token' + */ + useImplicitFlow(): void; + + /** + * @returns the current session for this user + */ + getSignInUserSession(): CognitoAuthSession; + + /** + * @returns the user's username + */ + getUsername(): string; + + /** + * @param Username the user's username + */ + setUsername(Username: string): void; + + /** + * @returns the user's state + */ + getState(): string; + + /** + * @param State the user's state + */ + setState(State: string): void; + + /** + * This is used to get a session, either from the session object or from the local storage, or by using a refresh token + * @param RedirectUriSignIn Required: The redirect Uri, which will be launched after authentication. + * @param TokenScopesArray Required: The token scopes, it is an array of strings specifying all scopes for the tokens. + */ + getSession(): void; + + /** + * Parse the http request response and proceed according to different response types. + * @param httpRequestResponse the http request response + */ + parseCognitoWebResponse(httpRequestResponse: string): void; + + /** + * Get the query parameter map and proceed according to code response type. + * @param Query parameter map + */ + getCodeQueryParameter(map: ReadonlyMap): void; + + /** + * Get the query parameter map and proceed according to token response type. + * @param Query parameter map + */ + getTokenQueryParameter(map: ReadonlyMap): void; + + /** + * Get cached tokens and scopes and return a new session using all the cached data. + * @returns the auth session + */ + getCachedSession(): CognitoAuthSession; + + /** + * This is used to get last signed in user from local storage + * @returns the last user name + */ + getLastUser(): string; + + /** + * This is used to save the session tokens and scopes to local storage. + */ + cacheTokensScopes(): void; + + /** + * Compare two sets if they are identical. + * @param set1 one set + * @param set2 the other set + * @returns boolean value is true if two sets are identical + */ + compareSets(set1: ReadonlySet, set2: ReadonlySet): boolean; + + /** + * Get the hostname from url. + * @param url the url string + * @returns hostname string + */ + getHostName(url: string): string; + + /** + * Get http query parameters and return them as a map. + * @param url the url string + * @param splitMark query parameters split mark (prefix) + * @returns map + */ + getQueryParameters(url: string, splitMark: string): Map; + + /** + * helper function to generate a random string + * @param length the length of string + * @param chars a original string + * @returns a random value. + */ + generateRandomString(length: number, chars: string): string; + + /** + * This is used to clear the session tokens and scopes from local storage + */ + clearCachedTokensScopes(): void; + + /** + * This is used to build a user session from tokens retrieved in the authentication result + * @param refreshToken Successful auth response from server. + */ + refreshSession(refreshToken: string): void; + + /** + * Make the http POST request. + * @param header header JSON object + * @param body body JSON object + * @param url string + * @param onSuccess callback + * @param onFailure callback + */ + makePOSTRequest(header: object, body: object, url: string, + onSuccess: (responseText: string) => void, + onFailure: (responseText: string) => void): void; + + /** + * Create the XHR object + * @param method which method to call + * @param url the url string + * @returns xhr + */ + createCORSRequest(method: string, url: string): XMLHttpRequest | XDomainRequest; + + /** + * The http POST request onFailure callback. + * @param err the error object + */ + onFailure(err: any): void; + + /** + * The http POST request onSuccess callback when refreshing tokens. + * @param jsonData tokens + */ + onSuccessRefreshToken(jsonData: string): void; + + /** + * The http POST request onSuccess callback when exchanging code for tokens. + * @param jsonData tokens + */ + onSuccessExchangeForToken(jsonData: string): void; + + /** + * Launch Cognito Auth UI page. + * @param URL the url to launch + */ + launchUri(URL: string): void; + + /** + * @returns scopes string + */ + getSpaceSeperatedScopeString(): string; + + /** + * Create the FQDN(fully qualified domain name) for authorization endpoint. + * @returns url + */ + getFQDNSignIn(): string; + + /** + * Sign out the user. + */ + signOut(): void; + + /** + * Create the FQDN(fully qualified domain name) for signout endpoint. + * @returns url + */ + getFQDNSignOut(): string; + + /** + * This method returns the encoded data string used for cognito advanced security feature. + * This would be generated only when developer has included the JS used for collecting the + * data on their client. Please refer to documentation to know more about using AdvancedSecurity + * features + */ + getUserContextData(): string; + + /** + * Helper method to let the user know if he has either a valid cached session + * or a valid authenticated session from the app integration callback. + * @returns userSignedIn + */ + isUserSignedIn(): boolean; +} + +export class DateHelper { + /** + * @returns The current time in "ddd MMM D HH:mm:ss UTC YYYY" format. + */ + getNowString(): string; +} + +export class StorageHelper { + /** + * This is used to get a storage object + * @returns the storage + */ + constructor(); + + /** + * This is used to return the storage + * @returns the storage + */ + getStorage(): Storage; +} diff --git a/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-tests.ts b/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-tests.ts new file mode 100644 index 0000000000..42e58185e4 --- /dev/null +++ b/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-tests.ts @@ -0,0 +1,162 @@ +import * as lib from 'amazon-cognito-auth-js'; + +const idToken: lib.CognitoIdToken = new lib.CognitoIdToken('fak3T0ken1=='); +idToken.decodePayload(); // $ExpectType object +idToken.setJwtToken('fak3T0ken2=='); // $ExpectType void +idToken.getJwtToken(); // $ExpectType string +idToken.getExpiration(); // $ExpectType number + +const refreshToken: lib.CognitoRefreshToken = new lib.CognitoRefreshToken('refreshplease=='); +refreshToken.setToken('refreshagainplease=='); // $ExpectType void +refreshToken.getToken(); // $ExpectType string + +const accessToken: lib.CognitoAccessToken = new lib.CognitoAccessToken('fak3T0ken3=='); +accessToken.decodePayload(); // $ExpectType object +accessToken.setJwtToken('fak3T0ken4=='); // $ExpectType void +accessToken.getJwtToken(); // $ExpectType string +accessToken.getExpiration(); // $ExpectType number +accessToken.getUsername(); // $ExpectType string + +const tokenScopes: lib.CognitoTokenScopes = new lib.CognitoTokenScopes(['email', 'custom1']); +tokenScopes.setTokenScopes(['openid']); // $ExpectType void +tokenScopes.getScopes(); // $ExpectType string[] + +let sessionData: lib.CognitoSessionData = {}; +let authSession: lib.CognitoAuthSession = new lib.CognitoAuthSession(sessionData); + +sessionData = { + IdToken: idToken, + RefreshToken: refreshToken, + AccessToken: accessToken, + TokenScopes: tokenScopes, + State: '/myapp/home' +}; +authSession = new lib.CognitoAuthSession(sessionData); + +authSession.setIdToken(new lib.CognitoIdToken('fak3T0ken5==')); // $ExpectType void +authSession.setRefreshToken(new lib.CognitoRefreshToken('refreshmeyetagain==')); // $ExpectType void +authSession.setAccessToken(new lib.CognitoAccessToken('fak3T0ken6==')); // $ExpectType void +authSession.setTokenScopes(new lib.CognitoTokenScopes(['email'])); // $ExpectType void +authSession.setState('/myapp/login'); // $ExpectType void +authSession.getIdToken(); // $ExpectType CognitoIdToken +authSession.getRefreshToken(); // $ExpectType CognitoRefreshToken +authSession.getAccessToken(); // $ExpectType CognitoAccessToken +authSession.getTokenScopes(); // $ExpectType CognitoTokenScopes +authSession.getState(); // $ExpectType string + +let authOptions: lib.CognitoAuthOptions = { + ClientId: '1a2b3c4d5e6f7g', + AppWebDomain: 'myapp.auth.us-east-1.amazoncognito.com', + RedirectUriSignIn: 'https://myapp.com/login', + RedirectUriSignOut: 'https://myapp.com/logout' +}; +let auth: lib.CognitoAuth = new lib.CognitoAuth(authOptions); + +authOptions = { + ClientId: '1a2b3c4d5e6f7g', + AppWebDomain: 'myapp.auth.us-east-1.amazoncognito.com', + TokenScopesArray: ['email', 'openid'], + RedirectUriSignIn: 'https://myapp.com/login', + RedirectUriSignOut: 'https://myapp.com/logout', + IdentityProvider: 'Facebook', + UserPoolId: 'us-east-1_faKE4ReAl', + AdvancedSecurityDataCollectionFlag: true +}; +auth = new lib.CognitoAuth(authOptions); + +auth.getClientId(); // $ExpectType string +auth.getAppWebDomain(); // $ExpectType string +auth.getCurrentUser(); // $ExpectType string +auth.setUser('jane.doe'); // $ExpectType void +auth.useCodeGrantFlow(); // $ExpectType void +auth.useImplicitFlow(); // $ExpectType void +auth.getSignInUserSession(); // $ExpectType CognitoAuthSession +auth.getUsername(); // $ExpectType string +auth.setUsername('john.doe'); // $ExpectType void +auth.getState(); // $ExpectType string +auth.setState('/myhost/default.htm'); // $ExpectType void +auth.getSession(); // $ExpectType void +auth.parseCognitoWebResponse('url&stuff=true'); // $ExpectType void +auth.getCodeQueryParameter(new Map()); // $ExpectType void +auth.getTokenQueryParameter(new Map()); // $ExpectType void +auth.getCachedSession(); // $ExpectType CognitoAuthSession +auth.getLastUser(); // $ExpectType string +auth.cacheTokensScopes(); // $ExpectType void +auth.compareSets(new Set(['1']), new Set(['1'])); // $ExpectType boolean +auth.getHostName('https://site.com/page?size=10'); // $ExpectType string +auth.getQueryParameters('http://site.com?1=1&2=2', '?'); // $ExpectType Map +auth.generateRandomString(5, '159erf'); // $ExpectType string +auth.clearCachedTokensScopes(); // $ExpectType void +auth.refreshSession('refreshToken=='); // $ExpectType void +// $ExpectType void +auth.makePOSTRequest({ 'Content-Type': 'application/json' }, { pool: '2' }, + 'https://auth.com/signin', + (data) => console.log(data), + (error) => console.log(error)); +auth.createCORSRequest('POST', '/myapp/login'); // $ExpectType XMLHttpRequest | XDomainRequest +auth.onFailure('request failed'); // $ExpectType void +auth.onSuccessRefreshToken('{"name":"John", "age":31}'); // $ExpectType void +auth.onSuccessExchangeForToken('{"name":"Jane", "age":30}'); // $ExpectType void +auth.launchUri('https://auth.com/login'); // $ExpectType void +auth.getSpaceSeperatedScopeString(); // $ExpectType string +auth.getFQDNSignIn(); // $ExpectType string +auth.signOut(); // $ExpectType void +auth.getFQDNSignOut(); // $ExpectType string +auth.getUserContextData(); // $ExpectType string +auth.isUserSignedIn(); // $ExpectType boolean + +const userHandler: lib.CognitoAuthUserHandler = { + onSuccess: (authSession: lib.CognitoAuthSession) => console.log(authSession), + onFailure: (error: any) => console.log(error) +}; +auth.userhandler = userHandler; + +const constants: lib.CognitoConstants = auth.getCognitoConstants(); +constants.DOMAIN_SCHEME; // $ExpectType string +constants.DOMAIN_PATH_SIGNIN; // $ExpectType string +constants.DOMAIN_PATH_TOKEN; // $ExpectType string +constants.DOMAIN_PATH_SIGNOUT; // $ExpectType string +constants.DOMAIN_QUERY_PARAM_REDIRECT_URI; // $ExpectType string +constants.DOMAIN_QUERY_PARAM_SIGNOUT_URI; // $ExpectType string +constants.DOMAIN_QUERY_PARAM_RESPONSE_TYPE; // $ExpectType string +constants.DOMAIN_QUERY_PARAM_IDENTITY_PROVIDER; // $ExpectType string +constants.DOMAIN_QUERY_PARAM_USERCONTEXTDATA; // $ExpectType string +constants.CLIENT_ID; // $ExpectType string +constants.STATE; // $ExpectType string +constants.SCOPE; // $ExpectType string +constants.TOKEN; // $ExpectType string +constants.CODE; // $ExpectType string +constants.POST; // $ExpectType string +constants.PARAMETERERROR; // $ExpectType string +constants.SCOPETYPEERROR; // $ExpectType string +constants.QUESTIONMARK; // $ExpectType string +constants.POUNDSIGN; // $ExpectType string +constants.COLONDOUBLESLASH; // $ExpectType string +constants.SLASH; // $ExpectType string +constants.AMPERSAND; // $ExpectType string +constants.EQUALSIGN; // $ExpectType string +constants.SPACE; // $ExpectType string +constants.CONTENTTYPE; // $ExpectType string +constants.CONTENTTYPEVALUE; // $ExpectType string +constants.AUTHORIZATIONCODE; // $ExpectType string +constants.IDTOKEN; // $ExpectType string +constants.ACCESSTOKEN; // $ExpectType string +constants.REFRESHTOKEN; // $ExpectType string +constants.ERROR; // $ExpectType string +constants.ERROR_DESCRIPTION; // $ExpectType string +constants.STRINGTYPE; // $ExpectType string +constants.STATELENGTH; // $ExpectType number +constants.STATEORIGINSTRING; // $ExpectType string +constants.WITHCREDENTIALS; // $ExpectType string +constants.UNDEFINED; // $ExpectType string +constants.SELF; // $ExpectType string +constants.HOSTNAMEREGEX; // $ExpectType RegExp +constants.QUERYPARAMETERREGEX1; // $ExpectType RegExp +constants.QUERYPARAMETERREGEX2; // $ExpectType RegExp +constants.HEADER['Content-Type']; // $ExpectType string + +const dateHelper: lib.DateHelper = new lib.DateHelper(); +dateHelper.getNowString(); // $ExpectType string + +const storageHelper: lib.StorageHelper = new lib.StorageHelper(); +storageHelper.getStorage(); // $ExpectType Storage diff --git a/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-umd-tests.ts b/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-umd-tests.ts new file mode 100644 index 0000000000..1e30dbbeb8 --- /dev/null +++ b/types/amazon-cognito-auth-js/test/amazon-cognito-auth-js-umd-tests.ts @@ -0,0 +1,22 @@ +AmazonCognitoIdentity.CognitoIdToken; // $ExpectType typeof CognitoIdToken +AmazonCognitoIdentity.CognitoRefreshToken; // $ExpectType typeof CognitoRefreshToken +AmazonCognitoIdentity.CognitoAccessToken; // $ExpectType typeof CognitoAccessToken +AmazonCognitoIdentity.CognitoTokenScopes; // $ExpectType typeof CognitoTokenScopes +AmazonCognitoIdentity.CognitoAuthSession; // $ExpectType typeof CognitoAuthSession +AmazonCognitoIdentity.CognitoAuth; // $ExpectType typeof CognitoAuth +AmazonCognitoIdentity.DateHelper; // $ExpectType typeof DateHelper +AmazonCognitoIdentity.StorageHelper; // $ExpectType typeof StorageHelper + +const sessionData: AmazonCognitoIdentity.CognitoSessionData = {}; +new AmazonCognitoIdentity.CognitoAuthSession(sessionData); + +const authOptions: AmazonCognitoIdentity.CognitoAuthOptions = { + ClientId: '1a2b3c4d5e6f7g', + AppWebDomain: 'myapp.auth.us-east-1.amazoncognito.com', + RedirectUriSignIn: 'https://myapp.com/login', + RedirectUriSignOut: 'https://myapp.com/logout' +}; +const auth = new AmazonCognitoIdentity.CognitoAuth(authOptions); +auth.userhandler; // $ExpectType CognitoAuthUserHandler +auth.getCognitoConstants(); // $ExpectType CognitoConstants +auth.createCORSRequest('', ''); // $ExpectType XMLHttpRequest | XDomainRequest diff --git a/types/amazon-cognito-auth-js/tsconfig.json b/types/amazon-cognito-auth-js/tsconfig.json new file mode 100644 index 0000000000..df5a9f2d73 --- /dev/null +++ b/types/amazon-cognito-auth-js/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "dom", + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "test/amazon-cognito-auth-js-tests.ts", + "test/amazon-cognito-auth-js-umd-tests.ts" + ] +} diff --git a/types/node-common-errors/tslint.json b/types/amazon-cognito-auth-js/tslint.json similarity index 100% rename from types/node-common-errors/tslint.json rename to types/amazon-cognito-auth-js/tslint.json diff --git a/types/amp-message/amp-message-tests.ts b/types/amp-message/amp-message-tests.ts new file mode 100644 index 0000000000..003949f3b7 --- /dev/null +++ b/types/amp-message/amp-message-tests.ts @@ -0,0 +1,57 @@ +import Message = require('amp-message'); + +// $ExpectType Message +new Message(new Buffer('aaa')); + +// $ExpectType Message +new Message([new Buffer('aaa'), new Buffer('bbb')]); + +const message = new Message([new Buffer('aaa'), new Buffer('bbb')]); + +// $ExpectType string +message.inspect(); + +// $ExpectType Buffer +message.toBuffer(); + +// $ExpectType number +message.push(new Buffer('ccc')); + +// $ExpectType Buffer | undefined +message.pop(); + +// $ExpectType Buffer | undefined +message.shift(); + +// $ExpectType number +message.unshift(new Buffer('ddd')); + +// $ExpectError +new Message(); + +// $ExpectError +new Message(1); + +// $ExpectError +new Message({}); + +// $ExpectError +new Message('aaa'); + +// $ExpectError +message.push(1); + +// $ExpectError +message.push({}); + +// $ExpectError +message.push('aaa'); + +// $ExpectError +message.unshift(1); + +// $ExpectError +message.unshift({}); + +// $ExpectError +message.unshift('aaa'); diff --git a/types/amp-message/index.d.ts b/types/amp-message/index.d.ts new file mode 100644 index 0000000000..f1ca520ae7 --- /dev/null +++ b/types/amp-message/index.d.ts @@ -0,0 +1,25 @@ +// Type definitions for amp-message 0.1 +// Project: https://github.com/visionmedia/node-amp-message +// Definitions by: Vilim StubiÄan +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +declare class Message { + constructor(args: Buffer | Buffer[]); + + inspect(): string; + + toBuffer(): Buffer; + + push(...items: Buffer[]): number; + + pop(): Buffer | undefined; + + shift(): Buffer | undefined; + + unshift(...items: Buffer[]): number; +} + +export = Message; diff --git a/types/amp-message/tsconfig.json b/types/amp-message/tsconfig.json new file mode 100644 index 0000000000..7b1826a6d8 --- /dev/null +++ b/types/amp-message/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "amp-message-tests.ts" + ] +} diff --git a/types/react-native-linear-gradient/tslint.json b/types/amp-message/tslint.json similarity index 100% rename from types/react-native-linear-gradient/tslint.json rename to types/amp-message/tslint.json diff --git a/types/analytics-node/analytics-node-tests.ts b/types/analytics-node/analytics-node-tests.ts index 5dfabb426c..6740aaccff 100644 --- a/types/analytics-node/analytics-node-tests.ts +++ b/types/analytics-node/analytics-node-tests.ts @@ -4,7 +4,9 @@ var analytics: Analytics; function testConfig(): void { analytics = new Analytics('YOUR_WRITE_KEY', { flushAt: 20, - flushAfter: 10000 + flushAfter: 10000, + host: "http://example.com", + enable: true }); } diff --git a/types/analytics-node/index.d.ts b/types/analytics-node/index.d.ts index a1de134195..6834087ff7 100644 --- a/types/analytics-node/index.d.ts +++ b/types/analytics-node/index.d.ts @@ -39,7 +39,9 @@ declare namespace AnalyticsNode { export class Analytics { constructor(writeKey: string, opts?: { flushAt?: number, - flushAfter?: number + flushAfter?: number, + host?: string, + enable?: boolean }); /* The identify method lets you tie a user to their actions and record diff --git a/types/angular-material/angular-material-tests.ts b/types/angular-material/angular-material-tests.ts index ad79cff2db..f29de44222 100644 --- a/types/angular-material/angular-material-tests.ts +++ b/types/angular-material/angular-material-tests.ts @@ -8,7 +8,8 @@ myApp.config(( $mdAriaProvider: ng.material.IAriaProvider, $mdThemingProvider: ng.material.IThemingProvider, $mdIconProvider: ng.material.IIconProvider, - $mdProgressCircularProvider: ng.material.IProgressCircularProvider) => { + $mdProgressCircularProvider: ng.material.IProgressCircularProvider, + $mdDialogProvider: ng.material.IDialogProvider) => { $mdThemingProvider.alwaysWatchTheme(true); const neonRedMap: ng.material.IPalette = $mdThemingProvider.extendPalette('red', { 500: 'ff0000' @@ -56,6 +57,23 @@ myApp.config(( // Globally disables all ARIA warnings. $mdAriaProvider.disableWarnings(); + + // Add custom dialog preset + $mdDialogProvider.addPreset('testPreset', { + methods: ['entityName'], + options: () => { + return { + template: + '' + + 'This is a custom preset' + + '', + controllerAs: 'dialog', + bindToController: true, + clickOutsideToClose: true, + escapeToClose: true + }; + } + }); }); myApp.controller('BottomSheetController', ($scope: TestScope, $mdBottomSheet: ng.material.IBottomSheetService, $q: ng.IQService) => { @@ -192,6 +210,11 @@ myApp.controller('DialogController', ($scope: TestScope, $mdDialog: ng.material. onComplete: (scope, element) => { }, onRemoving: (element, removePromise) => { }, }); + + // Show custom dialog preset + $mdDialog.show( + $mdDialog['testPreset']().entityName('Product #6') + ); }); class IconDirective implements ng.IDirective { diff --git a/types/angular-material/index.d.ts b/types/angular-material/index.d.ts index d77f5ae7ce..6885916e8a 100644 --- a/types/angular-material/index.d.ts +++ b/types/angular-material/index.d.ts @@ -125,6 +125,11 @@ declare module 'angular' { } interface IDialogService { + // indexer used to call preset dialog created with $mdDialogProvider + // see: https://material.angularjs.org/latest/api/service/$mdDialog#custom-presets + // tslint:disable-next-line:ban-types + [presetName: string]: Function; + show(dialog: IDialogOptions | IAlertDialog | IConfirmDialog | IPromptDialog): IPromise; confirm(): IConfirmDialog; alert(): IAlertDialog; @@ -133,6 +138,10 @@ declare module 'angular' { cancel(response?: any): void; } + interface IDialogProvider { + addPreset(presetName: string, presetOptions: { methods?: ReadonlyArray, options: () => IDialogOptions }): IDialogProvider; + } + type IIcon = (id: string) => IPromise; // id is a unique ID or URL interface IIconProvider { @@ -223,7 +232,7 @@ declare module 'angular' { contrastDefaultColor?: string; contrastDarkColors?: string | string[]; contrastLightColors?: string | string[]; - contrastStrongLightColors?: string|string[]; + contrastStrongLightColors?: string | string[]; } interface IThemeHues { diff --git a/types/angular-meteor/index.d.ts b/types/angular-meteor/index.d.ts index c842dd2cf0..11d782ee47 100644 --- a/types/angular-meteor/index.d.ts +++ b/types/angular-meteor/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/Urigo/angular-meteor // Definitions by: Peter Grman // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.3 +// TypeScript Version: 2.8 /// @@ -101,7 +101,7 @@ declare module 'angular' { * @param [autoClientSave=true] - By default, changes in the Angular object will automatically update the Meteor object. * - However if set to false, changes in the client won't be automatically propagated back to the Meteor object. */ - object(collection: Mongo.Collection, selector: Mongo.Selector|Mongo.ObjectID|string, autoClientSave?: boolean): AngularMeteorObject; + object(collection: Mongo.Collection, selector: Mongo.Selector|Mongo.ObjectID|string, autoClientSave?: boolean): AngularMeteorObject; /** * A service which is a wrapper for Meteor.subscribe. It subscribes to a Meteor.publish method in the client and returns a AngularJS promise when ready. diff --git a/types/angular-translate/index.d.ts b/types/angular-translate/index.d.ts index 69b1f63d72..719fcb5d5c 100644 --- a/types/angular-translate/index.d.ts +++ b/types/angular-translate/index.d.ts @@ -1,11 +1,9 @@ // Type definitions for Angular Translate (pascalprecht.translate module) 2.15 // Project: https://github.com/PascalPrecht/angular-translate -// Definitions by: Michel Salib +// Definitions by: Michel Salib , Gabriel Gil // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -/// - declare var _: string; export = _; @@ -69,7 +67,7 @@ declare module 'angular' { versionInfo(): string; loaderCache(): any; isReady(): boolean; - onReady(): angular.IPromise; + onReady(fn?: () => void): angular.IPromise; resolveClientLocale(): string; getAvailableLanguageKeys(): string[]; } diff --git a/types/angular/angular-tests.ts b/types/angular/angular-tests.ts index ca9d2c7568..1dff1a0451 100644 --- a/types/angular/angular-tests.ts +++ b/types/angular/angular-tests.ts @@ -1138,7 +1138,8 @@ angular.module('multiSlotTranscludeExample', []) }; }); -angular.module('componentExample', []) +// $ExpectType IModule +const componentModule = angular.module('componentExample', []) .component('counter', { require: {ctrl: '^ctrl'}, bindings: { @@ -1160,6 +1161,16 @@ angular.module('componentExample', []) }, template: '', transclude: true + }) + .component({ + aThirdComponent: { + controller: class AThirdComponentController { + count: number; + }, + bindings: { + count: '=' + } + } }); interface ICopyExampleUser { diff --git a/types/angular/index.d.ts b/types/angular/index.d.ts index 4c896eb430..6dccefc926 100644 --- a/types/angular/index.d.ts +++ b/types/angular/index.d.ts @@ -196,6 +196,12 @@ declare namespace angular { * @param options A definition object passed into the component. */ component(name: string, options: IComponentOptions): IModule; + /** + * Use this method to register a component. + * + * @param object Object map of components where the keys are the names and the values are the component definition objects + */ + component(object: {[componentName: string]: IComponentOptions}): IModule; /** * Use this method to register work which needs to be performed on module loading. * @@ -1028,7 +1034,7 @@ declare namespace angular { all(values: [T1 | IPromise, T2 | IPromise, T3 | IPromise, T4 | IPromise ]): IPromise<[T1, T2, T3, T4]>; all(values: [T1 | IPromise, T2 | IPromise, T3 | IPromise]): IPromise<[T1, T2, T3]>; all(values: [T1 | IPromise, T2 | IPromise]): IPromise<[T1, T2]>; - all(promises: Array>): IPromise; + all(promises: Array>): IPromise; /** * Combines multiple promises into a single promise that is resolved when all of the input promises are resolved. * @@ -1273,6 +1279,7 @@ declare namespace angular { directive(object: {[directiveName: string]: Injectable>}): ICompileProvider; component(name: string, options: IComponentOptions): ICompileProvider; + component(object: {[componentName: string]: IComponentOptions}): ICompileProvider; aHrefSanitizationWhitelist(): RegExp; aHrefSanitizationWhitelist(regexp: RegExp): ICompileProvider; diff --git a/types/ansi-styles/ansi-styles-tests.ts b/types/ansi-styles/ansi-styles-tests.ts index 235f98dce1..d1d21719b4 100644 --- a/types/ansi-styles/ansi-styles-tests.ts +++ b/types/ansi-styles/ansi-styles-tests.ts @@ -1,53 +1,52 @@ +import { EscapeCode } from './escape-code'; +import AnsiStyles = require('ansi-styles'); -import ansi = require('ansi-styles'); +let ansiStyles = AnsiStyles as any, + nsNames = ['modifier', 'color', 'bgColor'], + namespaces = { + modifier: ['reset', 'bold', 'dim', 'italic', 'underline', 'inverse', 'hidden', 'strikethrough'], + color: ['black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', 'white', 'gray', + 'redBright', 'greenBright', 'yellowBright', 'blueBright', 'magentaBright', 'cyanBright', 'whiteBright'], + bgColor: ['bgBlack', 'bgRed', 'bgGreen', 'bgYellow', 'bgBlue', 'bgMagenta', 'bgCyan', + 'bgBlackBright', 'bgRedBright', 'bgGreenBright', 'bgYellowBright', 'bgBlueBright', 'bgMagentaBright', 'bgCyanBright', 'bgWhiteBright'], + } as any, + styles = [...namespaces.modifier, ...namespaces.color, ...namespaces.bgColor], + codePair = ['open', 'close'], + codeTypes = ['ansi', 'ansi256', 'ansi16m'], + colorFormats = ['ansi', 'rgb', 'hsl', 'hsv', 'hwb', 'cmyk', 'xyz', 'lab', 'lch', 'hex', 'keyword', 'ansi256', 'hcg', 'apple', 'gray'], + codesMap = 'codes'; -var styles = [ - ansi.reset, +checkStyle(ansiStyles, styles); +nsNames.forEach(ns => checkStyle(ansiStyles[ns], namespaces[ns])); - ansi.bold, - ansi.dim, - ansi.italic, - ansi.underline, - ansi.inverse, - ansi.hidden, - ansi.strikethrough, +checkIsMap(ansiStyles[codesMap], `ansiStyles.${codesMap} not a Map.`); +nsNames.forEach(ns => checkExist(ansiStyles[ns], `ansiStyles.${ns} is not exist.`)); - ansi.black, - ansi.red, - ansi.green, - ansi.yellow, - ansi.blue, - ansi.magenta, - ansi.cyan, - ansi.white, - ansi.gray, +['color', 'bgColor'].forEach(ns => checkConverter(ns, ansiStyles[ns], colorFormats)); - ansi.bgBlack, - ansi.bgRed, - ansi.bgGreen, - ansi.bgYellow, - ansi.bgBlue, - ansi.bgMagenta, - ansi.bgCyan, - ansi.bgWhite -] -for (var key in styles) { - check(key, styles[key]) +function checkStyle(namespace: any, styles: string[]) { + styles.forEach(s => checkCodePair(s, namespace[s])); +} +function checkCodePair(styleName: string, pair: any): void { + codePair.forEach(p => checkIsString(pair[p], `${styleName}.${p} is not a string.`)); } -function check(key:string, escapeCodes:ansi.EscapeCodePair): void { - if (uninitialized(escapeCodes.open)) { - throw new Error('key not found ~> ' + key + '.open') - } - if (uninitialized(escapeCodes.close)) { - throw new Error('key not found ~> ' + key + '.close') - } +function checkConverter(nsName: string, namespace: any, formats: string[]) { + formats.forEach(f => codeTypes.forEach(t => checkIsFunction(namespace[t][f], `ansiStyles.${nsName}.${t}.${f} is not a function.`))); + checkIsString(namespace.close, `${namespace}.close is not a string.`); } -function uninitialized(val:any): boolean { - return val === null || val === undefined +function checkExist(val: any, failMsg: string): void { + if (val == null) throw new Error(failMsg); +} +function checkIsString(val: any, failMsg: string): void { + if(typeof val != 'string') throw new Error(failMsg); +} +function checkIsFunction(fn: any, failMsg: string): void { + if (typeof fn != 'function') throw new Error(failMsg); +} +function checkIsMap(map: any, failMsg: string): void { + if (!(map instanceof Map)) throw new Error(failMsg); } - - diff --git a/types/ansi-styles/escape-code.d.ts b/types/ansi-styles/escape-code.d.ts new file mode 100644 index 0000000000..e9b1fe9d42 --- /dev/null +++ b/types/ansi-styles/escape-code.d.ts @@ -0,0 +1,106 @@ +import * as cssKeywords from 'color-name'; + + +export namespace EscapeCode { + export interface CodePair { + open: string; + close: string; + } + + interface Modifier { + reset: CodePair; + bold: CodePair; + dim: CodePair; + /** + * Not widely supported + */ + italic: CodePair; + underline: CodePair; + inverse: CodePair; + hidden: CodePair; + /** + * Not widely supported + */ + strikethrough: CodePair; + } + interface Color { + black: CodePair; + red: CodePair; + green: CodePair; + yellow: CodePair; + blue: CodePair; + magenta: CodePair; + cyan: CodePair; + white: CodePair; + /** + * bright black + */ + gray: CodePair; + grey: CodePair; + + redBright: CodePair; + greenBright: CodePair; + yellowBright: CodePair; + blueBright: CodePair; + magentaBright: CodePair; + cyanBright: CodePair; + whiteBright: CodePair; + } + interface BackgroundColor { + bgBlack: CodePair; + bgRed: CodePair; + bgGreen: CodePair; + bgYellow: CodePair; + bgBlue: CodePair; + bgMagenta: CodePair; + bgCyan: CodePair; + bgWhite: CodePair; + + bgBlackBright: CodePair; + bgRedBright: CodePair; + bgGreenBright: CodePair; + bgYellowBright: CodePair; + bgBlueBright: CodePair; + bgMagentaBright: CodePair; + bgCyanBright: CodePair; + bgWhiteBright: CodePair; + } + + interface Conversions { + ansi: (ansi: number) => string + rgb: (r: number, g: number, b: number) => string + hsl: (h: number, s: number, l: number) => string + hsv: (h: number, s: number, v: number) => string + hwb: (h: number, w: number, b: number) => string + cmyk: (c: number, m: number, y: number, k: number) => string + xyz: (x: number, y: number, z: number) => string + lab: (l: number, a: number, b: number) => string + lch: (l: number, c: number, h: number) => string + hex: (hex: string) => string + /** + * color keyword in css to ansi code + */ + keyword: (keyword: keyof typeof cssKeywords) => string + ansi256: (ansi256: number) => string + hcg: (h: number, c: number, g: number) => string + /** + * apple RGB to ansi code + */ + apple: (r: number, g: number, b: number) => string + gray: (grayscale: number) => string + } + interface ColorType { + /** + * 16 color ansi code + */ + ansi: Conversions + /** + * 256 color ansi code + */ + ansi256: Conversions + /** + * truecolor(16 million color) ansi code + */ + ansi16m: Conversions + } +} diff --git a/types/ansi-styles/index.d.ts b/types/ansi-styles/index.d.ts index 4522ece77a..a07ac962ab 100644 --- a/types/ansi-styles/index.d.ts +++ b/types/ansi-styles/index.d.ts @@ -1,40 +1,74 @@ -// Type definitions for ansi-styles 2.0.1 +// Type definitions for ansi-styles 3.2.1 // Project: https://github.com/sindresorhus/ansi-styles // Definitions by: bryn austin bellomy +// plylrnsdy // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +import { EscapeCode } from './escape-code'; -export interface EscapeCodePair { - open: string; - close: string; -} -export declare var reset: EscapeCodePair; +export const reset: EscapeCode.CodePair; +export const bold: EscapeCode.CodePair; +export const dim: EscapeCode.CodePair; +/** + * Not widely supported + */ +export const italic: EscapeCode.CodePair; +export const underline: EscapeCode.CodePair; +export const inverse: EscapeCode.CodePair; +export const hidden: EscapeCode.CodePair; +/** + * Not widely supported + */ +export const strikethrough: EscapeCode.CodePair; -export declare var bold: EscapeCodePair; -export declare var dim: EscapeCodePair; -export declare var italic: EscapeCodePair; -export declare var underline: EscapeCodePair; -export declare var inverse: EscapeCodePair; -export declare var hidden: EscapeCodePair; -export declare var strikethrough: EscapeCodePair; +export const black: EscapeCode.CodePair; +export const red: EscapeCode.CodePair; +export const green: EscapeCode.CodePair; +export const yellow: EscapeCode.CodePair; +export const blue: EscapeCode.CodePair; +export const magenta: EscapeCode.CodePair; +export const cyan: EscapeCode.CodePair; +export const white: EscapeCode.CodePair; +/** + * bright black + */ +export const gray: EscapeCode.CodePair; +export const grey: EscapeCode.CodePair; -export declare var black: EscapeCodePair; -export declare var red: EscapeCodePair; -export declare var green: EscapeCodePair; -export declare var yellow: EscapeCodePair; -export declare var blue: EscapeCodePair; -export declare var magenta: EscapeCodePair; -export declare var cyan: EscapeCodePair; -export declare var white: EscapeCodePair; -export declare var gray: EscapeCodePair; +export const redBright: EscapeCode.CodePair; +export const greenBright: EscapeCode.CodePair; +export const yellowBright: EscapeCode.CodePair; +export const blueBright: EscapeCode.CodePair; +export const magentaBright: EscapeCode.CodePair; +export const cyanBright: EscapeCode.CodePair; +export const whiteBright: EscapeCode.CodePair; -export declare var bgBlack: EscapeCodePair; -export declare var bgRed: EscapeCodePair; -export declare var bgGreen: EscapeCodePair; -export declare var bgYellow: EscapeCodePair; -export declare var bgBlue: EscapeCodePair; -export declare var bgMagenta: EscapeCodePair; -export declare var bgCyan: EscapeCodePair; -export declare var bgWhite: EscapeCodePair; +export const bgBlack: EscapeCode.CodePair; +export const bgRed: EscapeCode.CodePair; +export const bgGreen: EscapeCode.CodePair; +export const bgYellow: EscapeCode.CodePair; +export const bgBlue: EscapeCode.CodePair; +export const bgMagenta: EscapeCode.CodePair; +export const bgCyan: EscapeCode.CodePair; +export const bgWhite: EscapeCode.CodePair; + +export const bgBlackBright: EscapeCode.CodePair; +export const bgRedBright: EscapeCode.CodePair; +export const bgGreenBright: EscapeCode.CodePair; +export const bgYellowBright: EscapeCode.CodePair; +export const bgBlueBright: EscapeCode.CodePair; +export const bgMagentaBright: EscapeCode.CodePair; +export const bgCyanBright: EscapeCode.CodePair; +export const bgWhiteBright: EscapeCode.CodePair; + +/** + * Raw escape codes (i.e. without the CSI escape prefix \u001B[ and render mode postfix m) are available. + * + * This is a Map with the open codes as keys and close codes as values. + */ +export const codes: Map +export const modifier: EscapeCode.Modifier +export const color: EscapeCode.Color & EscapeCode.ColorType & { close: string } +export const bgColor: EscapeCode.BackgroundColor & EscapeCode.ColorType & { close: string } diff --git a/types/aphrodite/aphrodite-tests.tsx b/types/aphrodite/aphrodite-tests.tsx index 685a9a4283..feb35c8c7c 100644 --- a/types/aphrodite/aphrodite-tests.tsx +++ b/types/aphrodite/aphrodite-tests.tsx @@ -1,5 +1,5 @@ import * as React from "react"; -import { StyleSheet, css, StyleSheetServer, StyleSheetTestUtils } from "aphrodite"; +import { StyleSheet, css, StyleSheetServer, StyleSheetTestUtils, FontFamily } from "aphrodite"; const styles = StyleSheet.create({ red: { @@ -20,7 +20,7 @@ const styles = StyleSheet.create({ } }); -const coolFont = { +const coolFont: FontFamily = { fontFamily: "CoolFont", fontStyle: "normal", fontWeight: "normal", diff --git a/types/aphrodite/index.d.ts b/types/aphrodite/index.d.ts index 00d1908d9f..a82ec2f36b 100644 --- a/types/aphrodite/index.d.ts +++ b/types/aphrodite/index.d.ts @@ -4,13 +4,30 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.6 -import * as React from "react"; +import * as CSS from "csstype"; + +type BaseCSSProperties = CSS.Properties; + +type FontFamily = + | BaseCSSProperties['fontFamily'] + | CSS.FontFace; + +type Omit = Pick; + +type CSSProperties = Omit & { + fontFamily?: FontFamily | FontFamily[]; +}; + +// For pseudo selectors and media queries +interface OpenCSSProperties extends CSSProperties { + [k: string]: CSSProperties[keyof CSSProperties] | CSSProperties; +} /** * Aphrodite style declaration */ export interface StyleDeclaration { - [key: string]: React.CSSProperties; + [key: string]: OpenCSSProperties; } interface StyleSheetStatic { diff --git a/types/aphrodite/package.json b/types/aphrodite/package.json new file mode 100644 index 0000000000..e6696d08e7 --- /dev/null +++ b/types/aphrodite/package.json @@ -0,0 +1,6 @@ +{ + "private": true, + "dependencies": { + "csstype": "^2.2.0" + } +} diff --git a/types/apicache/apicache-tests.ts b/types/apicache/apicache-tests.ts new file mode 100644 index 0000000000..1f9eb98dda --- /dev/null +++ b/types/apicache/apicache-tests.ts @@ -0,0 +1,17 @@ +import { middleware, newInstance, options } from 'apicache'; + +let cache = middleware; + +options({ + statusCodes: { + exclude: [404, 429, 500], + include: [200, 304] + } +}); + +cache = newInstance({ + statusCodes: { + exclude: [404, 429, 500], + include: [200, 304] + } +}); diff --git a/types/apicache/index.d.ts b/types/apicache/index.d.ts new file mode 100644 index 0000000000..b62fd7356d --- /dev/null +++ b/types/apicache/index.d.ts @@ -0,0 +1,77 @@ +// Type definitions for apicache 1.2 +// Project: https://github.com/kwhitley/apicache +// Definitions by: Daniel Sogl +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import { RedisClient } from 'redis'; + +export const id: number; + +/** + * clears cache target (key or group), or entire cache if no value passed, returns new index. + */ +export function clear(target: string | any[]): any; + +/** used to create a new ApiCache instance with the same options as the current one */ +export function clone(): any; + +export function getDuration(duration: string): any; + +/** + * returns current cache index [of keys] + */ +export function getIndex(): any; + +/** + * the actual middleware that will be used in your routes. duration is in the following format + * "[length] [unit]", as in "10 minutes" or "1 day". A second param is a middleware toggle function, + * accepting request and response params, and must return truthy to enable cache for the request. + * Third param is the options that will override global ones and affect this middleware only. + */ +export function middleware( + duration?: string, + toggleMiddleware?: any, + localOptions?: Options +): any; + +/** + * used to create a new ApiCache instance (by default, simply requiring this library shares a common instance) + */ +export function newInstance(config: Options): any; + +/** + * getter/setter for global options. If used as a setter, this function is + * chainable, allowing you to do things such as... say... return the middleware. + */ +export function options(options: Options): any; + +export function resetIndex(): void; + +export interface Options { + /** if true, enables console output */ + debug?: boolean; + /** should be either a number (in ms) or a string, defaults to 1 hour */ + defaultDuration?: string; + /** if false, turns off caching globally (useful on dev) */ + enabled?: boolean; + /** + * if provided, uses the [node-redis](https://github.com/NodeRedis/node_redis) client instead of [memory-cache](https://github.com/ptarjan/node-cache) + */ + redisClient?: RedisClient; + /** appendKey takes the req/res objects and returns a custom value to extend the cache key */ + appendKey?: any; + /** list of headers that should never be cached */ + headerBlacklist?: string[]; + statusCodes?: { + /** list status codes to specifically exclude (e.g. [404, 403] cache all responses unless they had a 404 or 403 status) */ + exclude?: number[]; + /** list status codes to require (e.g. [200] caches ONLY responses with a success/200 code) */ + include?: number[]; + }; + /** + * 'cache-control': 'no-cache' // example of header overwrite + */ + headers?: { + [key: string]: string; + }; +} diff --git a/types/apicache/tsconfig.json b/types/apicache/tsconfig.json new file mode 100644 index 0000000000..9ae5f1f827 --- /dev/null +++ b/types/apicache/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "apicache-tests.ts"] +} diff --git a/types/apicache/tslint.json b/types/apicache/tslint.json new file mode 100644 index 0000000000..2750cc0197 --- /dev/null +++ b/types/apicache/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } \ No newline at end of file diff --git a/types/arangodb/arangodb-tests.ts b/types/arangodb/arangodb-tests.ts new file mode 100644 index 0000000000..7e0fd6383e --- /dev/null +++ b/types/arangodb/arangodb-tests.ts @@ -0,0 +1,98 @@ +import { aql, db, query } from "@arangodb"; +import { md5 } from "@arangodb/crypto"; +import { createRouter } from "@arangodb/foxx"; +import sessionsMiddleware = require("@arangodb/foxx/sessions"); +import jwtStorage = require("@arangodb/foxx/sessions/storages/jwt"); +import cookieTransport = require("@arangodb/foxx/sessions/transports/cookie"); + +console.warnStack(new Error(), "something went wrong"); + +interface User { + username: string; + password?: string; +} +const coll = module.context.collection("users")!; +coll.save({ username: "user" }); +const doc = coll.any(); +console.log(doc.username); + +const users = coll as ArangoDB.Collection; +const admin = users.firstExample({ username: "admin" })!; +users.update(admin, { password: md5("hunter2") }); +console.logLines("user", admin._key, admin.username); + +db._query(aql` + FOR u IN ${users} + RETURN u +`); + +interface Banana { + color: string; + shape: { + type: string; + coords: string[]; + }; +} + +const bananas = db._createDocumentCollection("bananas", { + waitForSync: false, + keyOptions: { + type: "autoincrement", + increment: 11, + offset: 23 + } +}) as ArangoDB.Collection; +bananas.ensureIndex({ + type: "hash", + unique: true, + fields: ["color", "shape.type"] +}); +bananas.updateByExample( + bananas.any(), + { shape: { type: "round" } }, + { mergeObjects: true } +); +bananas.ensureIndex({ + type: "geo", + fields: ["latLng"] +}); + +const router = createRouter(); +module.context.use(router); + +router.get("/", (req, res) => { + if (req.cookie("sid", { secret: "keyboardcat" })) { + res.set("content-type", "text/plain"); + res.write("Welcome back, Commander"); + } else { + res.json({ success: false }); + } +}); + +router.use((req, res, next) => { + if (req.is("json")) res.throw("too many requests"); + next(); +}); + +router.use( + sessionsMiddleware({ + storage: jwtStorage({ algorithm: "none" }), + transport: "header" + }) +); +router.use( + sessionsMiddleware({ + storage: jwtStorage({ algorithm: "HS512", secret: "tacocat" }), + transport: cookieTransport({ secret: "banana", algorithm: "sha256" }) + }) +); + +console.log( + query` + FOR u IN users + ${aql.literal( + Math.random() < 0.5 ? "FILTER u.admin" : "FILTER !u.admin" + )} + RETURN u + `.toArray() +); diff --git a/types/arangodb/index.d.ts b/types/arangodb/index.d.ts new file mode 100644 index 0000000000..5c3f56020f --- /dev/null +++ b/types/arangodb/index.d.ts @@ -0,0 +1,1896 @@ +// Type definitions for ArangoDB 3.4 +// Project: https://github.com/arangodb/arangodb +// Definitions by: Alan Plum +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +declare namespace ArangoDB { + type JwtAlgorithm = "HS512" | "HS384" | "HS256"; + type HashAlgorithm = + | "sha512" + | "sha384" + | "sha256" + | "sha224" + | "sha1" + | "md5"; + type HttpMethod = + | "HEAD" + | "GET" + | "POST" + | "PUT" + | "PATCH" + | "DELETE" + | "OPTIONS"; + type HttpStatus = + | "continue" + | "switching protocols" + | "processing" + | "ok" + | "created" + | "accepted" + | "non-authoritative information" + | "no content" + | "reset content" + | "partial content" + | "multi-status" + | "already reported" + | "im used" + | "multiple choices" + | "moved permanently" + | "found" + | "see other" + | "not modified" + | "use proxy" + | "(unused)" + | "temporary redirect" + | "permanent redirect" + | "bad request" + | "unauthorized" + | "payment required" + | "forbidden" + | "not found" + | "method not allowed" + | "not acceptable" + | "proxy authentication required" + | "request timeout" + | "conflict" + | "gone" + | "length required" + | "precondition failed" + | "payload too large" + | "uri too long" + | "unsupported media type" + | "range not satisfiable" + | "expectation failed" + | "i'm a teapot" + | "misdirected request" + | "unprocessable entity" + | "locked" + | "failed dependency" + | "unordered collection" + | "upgrade required" + | "precondition required" + | "too many requests" + | "request header fields too large" + | "unavailable for legal reasons" + | "internal server error" + | "not implemented" + | "bad gateway" + | "service unavailable" + | "gateway timeout" + | "http version not supported" + | "variant also negotiates" + | "insufficient storage" + | "loop detected" + | "bandwidth limit exceeded" + | "not extended" + | "network authentication required"; + type EdgeDirection = "any" | "inbound" | "outbound"; + type EngineType = "mmfiles" | "rocksdb"; + type IndexType = "hash" | "skiplist" | "fulltext" | "geo"; + type ViewType = "arangosearch"; + type KeyGeneratorType = "traditional" | "autoincrement"; + type ErrorName = + | "ERROR_NO_ERROR" + | "ERROR_FAILED" + | "ERROR_SYS_ERROR" + | "ERROR_OUT_OF_MEMORY" + | "ERROR_INTERNAL" + | "ERROR_ILLEGAL_NUMBER" + | "ERROR_NUMERIC_OVERFLOW" + | "ERROR_ILLEGAL_OPTION" + | "ERROR_DEAD_PID" + | "ERROR_NOT_IMPLEMENTED" + | "ERROR_BAD_PARAMETER" + | "ERROR_FORBIDDEN" + | "ERROR_OUT_OF_MEMORY_MMAP" + | "ERROR_CORRUPTED_CSV" + | "ERROR_FILE_NOT_FOUND" + | "ERROR_CANNOT_WRITE_FILE" + | "ERROR_CANNOT_OVERWRITE_FILE" + | "ERROR_TYPE_ERROR" + | "ERROR_LOCK_TIMEOUT" + | "ERROR_CANNOT_CREATE_DIRECTORY" + | "ERROR_CANNOT_CREATE_TEMP_FILE" + | "ERROR_REQUEST_CANCELED" + | "ERROR_DEBUG" + | "ERROR_IP_ADDRESS_INVALID" + | "ERROR_FILE_EXISTS" + | "ERROR_LOCKED" + | "ERROR_DEADLOCK" + | "ERROR_SHUTTING_DOWN" + | "ERROR_ONLY_ENTERPRISE" + | "ERROR_RESOURCE_LIMIT" + | "ERROR_ARANGO_ICU_ERROR" + | "ERROR_CANNOT_READ_FILE" + | "ERROR_HTTP_BAD_PARAMETER" + | "ERROR_HTTP_UNAUTHORIZED" + | "ERROR_HTTP_FORBIDDEN" + | "ERROR_HTTP_NOT_FOUND" + | "ERROR_HTTP_METHOD_NOT_ALLOWED" + | "ERROR_HTTP_NOT_ACCEPTABLE" + | "ERROR_HTTP_PRECONDITION_FAILED" + | "ERROR_HTTP_SERVER_ERROR" + | "ERROR_HTTP_SERVICE_UNAVAILABLE" + | "ERROR_HTTP_GATEWAY_TIMEOUT" + | "ERROR_HTTP_CORRUPTED_JSON" + | "ERROR_HTTP_SUPERFLUOUS_SUFFICES" + | "ERROR_ARANGO_ILLEGAL_STATE" + | "ERROR_ARANGO_DATAFILE_SEALED" + | "ERROR_ARANGO_READ_ONLY" + | "ERROR_ARANGO_DUPLICATE_IDENTIFIER" + | "ERROR_ARANGO_DATAFILE_UNREADABLE" + | "ERROR_ARANGO_DATAFILE_EMPTY" + | "ERROR_ARANGO_RECOVERY" + | "ERROR_ARANGO_DATAFILE_STATISTICS_NOT_FOUND" + | "ERROR_ARANGO_CORRUPTED_DATAFILE" + | "ERROR_ARANGO_ILLEGAL_PARAMETER_FILE" + | "ERROR_ARANGO_CORRUPTED_COLLECTION" + | "ERROR_ARANGO_MMAP_FAILED" + | "ERROR_ARANGO_FILESYSTEM_FULL" + | "ERROR_ARANGO_NO_JOURNAL" + | "ERROR_ARANGO_DATAFILE_ALREADY_EXISTS" + | "ERROR_ARANGO_DATADIR_LOCKED" + | "ERROR_ARANGO_COLLECTION_DIRECTORY_ALREADY_EXISTS" + | "ERROR_ARANGO_MSYNC_FAILED" + | "ERROR_ARANGO_DATADIR_UNLOCKABLE" + | "ERROR_ARANGO_SYNC_TIMEOUT" + | "ERROR_ARANGO_CONFLICT" + | "ERROR_ARANGO_DATADIR_INVALID" + | "ERROR_ARANGO_DOCUMENT_NOT_FOUND" + | "ERROR_ARANGO_DATA_SOURCE_NOT_FOUND" + | "ERROR_ARANGO_COLLECTION_PARAMETER_MISSING" + | "ERROR_ARANGO_DOCUMENT_HANDLE_BAD" + | "ERROR_ARANGO_MAXIMAL_SIZE_TOO_SMALL" + | "ERROR_ARANGO_DUPLICATE_NAME" + | "ERROR_ARANGO_ILLEGAL_NAME" + | "ERROR_ARANGO_NO_INDEX" + | "ERROR_ARANGO_UNIQUE_CONSTRAINT_VIOLATED" + | "ERROR_ARANGO_INDEX_NOT_FOUND" + | "ERROR_ARANGO_CROSS_COLLECTION_REQUEST" + | "ERROR_ARANGO_INDEX_HANDLE_BAD" + | "ERROR_ARANGO_DOCUMENT_TOO_LARGE" + | "ERROR_ARANGO_COLLECTION_NOT_UNLOADED" + | "ERROR_ARANGO_COLLECTION_TYPE_INVALID" + | "ERROR_ARANGO_VALIDATION_FAILED" + | "ERROR_ARANGO_ATTRIBUTE_PARSER_FAILED" + | "ERROR_ARANGO_DOCUMENT_KEY_BAD" + | "ERROR_ARANGO_DOCUMENT_KEY_UNEXPECTED" + | "ERROR_ARANGO_DATADIR_NOT_WRITABLE" + | "ERROR_ARANGO_OUT_OF_KEYS" + | "ERROR_ARANGO_DOCUMENT_KEY_MISSING" + | "ERROR_ARANGO_DOCUMENT_TYPE_INVALID" + | "ERROR_ARANGO_DATABASE_NOT_FOUND" + | "ERROR_ARANGO_DATABASE_NAME_INVALID" + | "ERROR_ARANGO_USE_SYSTEM_DATABASE" + | "ERROR_ARANGO_ENDPOINT_NOT_FOUND" + | "ERROR_ARANGO_INVALID_KEY_GENERATOR" + | "ERROR_ARANGO_INVALID_EDGE_ATTRIBUTE" + | "ERROR_ARANGO_INDEX_DOCUMENT_ATTRIBUTE_MISSING" + | "ERROR_ARANGO_INDEX_CREATION_FAILED" + | "ERROR_ARANGO_WRITE_THROTTLE_TIMEOUT" + | "ERROR_ARANGO_COLLECTION_TYPE_MISMATCH" + | "ERROR_ARANGO_COLLECTION_NOT_LOADED" + | "ERROR_ARANGO_DOCUMENT_REV_BAD" + | "ERROR_ARANGO_DATAFILE_FULL" + | "ERROR_ARANGO_EMPTY_DATADIR" + | "ERROR_ARANGO_TRY_AGAIN" + | "ERROR_ARANGO_BUSY" + | "ERROR_ARANGO_MERGE_IN_PROGRESS" + | "ERROR_ARANGO_IO_ERROR" + | "ERROR_REPLICATION_NO_RESPONSE" + | "ERROR_REPLICATION_INVALID_RESPONSE" + | "ERROR_REPLICATION_MASTER_ERROR" + | "ERROR_REPLICATION_MASTER_INCOMPATIBLE" + | "ERROR_REPLICATION_MASTER_CHANGE" + | "ERROR_REPLICATION_LOOP" + | "ERROR_REPLICATION_UNEXPECTED_MARKER" + | "ERROR_REPLICATION_INVALID_APPLIER_STATE" + | "ERROR_REPLICATION_UNEXPECTED_TRANSACTION" + | "ERROR_REPLICATION_INVALID_APPLIER_CONFIGURATION" + | "ERROR_REPLICATION_RUNNING" + | "ERROR_REPLICATION_APPLIER_STOPPED" + | "ERROR_REPLICATION_NO_START_TICK" + | "ERROR_REPLICATION_START_TICK_NOT_PRESENT" + | "ERROR_REPLICATION_WRONG_CHECKSUM" + | "ERROR_REPLICATION_SHARD_NONEMPTY" + | "ERROR_CLUSTER_NO_AGENCY" + | "ERROR_CLUSTER_NO_COORDINATOR_HEADER" + | "ERROR_CLUSTER_COULD_NOT_LOCK_PLAN" + | "ERROR_CLUSTER_COLLECTION_ID_EXISTS" + | "ERROR_CLUSTER_COULD_NOT_CREATE_COLLECTION_IN_PLAN" + | "ERROR_CLUSTER_COULD_NOT_READ_CURRENT_VERSION" + | "ERROR_CLUSTER_COULD_NOT_CREATE_COLLECTION" + | "ERROR_CLUSTER_TIMEOUT" + | "ERROR_CLUSTER_COULD_NOT_REMOVE_COLLECTION_IN_PLAN" + | "ERROR_CLUSTER_COULD_NOT_REMOVE_COLLECTION_IN_CURRENT" + | "ERROR_CLUSTER_COULD_NOT_CREATE_DATABASE_IN_PLAN" + | "ERROR_CLUSTER_COULD_NOT_CREATE_DATABASE" + | "ERROR_CLUSTER_COULD_NOT_REMOVE_DATABASE_IN_PLAN" + | "ERROR_CLUSTER_COULD_NOT_REMOVE_DATABASE_IN_CURRENT" + | "ERROR_CLUSTER_SHARD_GONE" + | "ERROR_CLUSTER_CONNECTION_LOST" + | "ERROR_CLUSTER_MUST_NOT_SPECIFY_KEY" + | "ERROR_CLUSTER_GOT_CONTRADICTING_ANSWERS" + | "ERROR_CLUSTER_NOT_ALL_SHARDING_ATTRIBUTES_GIVEN" + | "ERROR_CLUSTER_MUST_NOT_CHANGE_SHARDING_ATTRIBUTES" + | "ERROR_CLUSTER_UNSUPPORTED" + | "ERROR_CLUSTER_ONLY_ON_COORDINATOR" + | "ERROR_CLUSTER_READING_PLAN_AGENCY" + | "ERROR_CLUSTER_COULD_NOT_TRUNCATE_COLLECTION" + | "ERROR_CLUSTER_AQL_COMMUNICATION" + | "ERROR_ARANGO_DOCUMENT_NOT_FOUND_OR_SHARDING_ATTRIBUTES_CHANGED" + | "ERROR_CLUSTER_COULD_NOT_DETERMINE_ID" + | "ERROR_CLUSTER_ONLY_ON_DBSERVER" + | "ERROR_CLUSTER_BACKEND_UNAVAILABLE" + | "ERROR_CLUSTER_UNKNOWN_CALLBACK_ENDPOINT" + | "ERROR_CLUSTER_AGENCY_STRUCTURE_INVALID" + | "ERROR_CLUSTER_AQL_COLLECTION_OUT_OF_SYNC" + | "ERROR_CLUSTER_COULD_NOT_CREATE_INDEX_IN_PLAN" + | "ERROR_CLUSTER_COULD_NOT_DROP_INDEX_IN_PLAN" + | "ERROR_CLUSTER_CHAIN_OF_DISTRIBUTESHARDSLIKE" + | "ERROR_CLUSTER_MUST_NOT_DROP_COLL_OTHER_DISTRIBUTESHARDSLIKE" + | "ERROR_CLUSTER_UNKNOWN_DISTRIBUTESHARDSLIKE" + | "ERROR_CLUSTER_INSUFFICIENT_DBSERVERS" + | "ERROR_CLUSTER_COULD_NOT_DROP_FOLLOWER" + | "ERROR_CLUSTER_SHARD_LEADER_REFUSES_REPLICATION" + | "ERROR_CLUSTER_SHARD_FOLLOWER_REFUSES_OPERATION" + | "ERROR_CLUSTER_SHARD_LEADER_RESIGNED" + | "ERROR_CLUSTER_AGENCY_COMMUNICATION_FAILED" + | "ERROR_CLUSTER_DISTRIBUTE_SHARDS_LIKE_REPLICATION_FACTOR" + | "ERROR_CLUSTER_DISTRIBUTE_SHARDS_LIKE_NUMBER_OF_SHARDS" + | "ERROR_CLUSTER_LEADERSHIP_CHALLENGE_ONGOING" + | "ERROR_CLUSTER_NOT_LEADER" + | "ERROR_CLUSTER_COULD_NOT_CREATE_VIEW_IN_PLAN" + | "ERROR_QUERY_KILLED" + | "ERROR_QUERY_PARSE" + | "ERROR_QUERY_EMPTY" + | "ERROR_QUERY_SCRIPT" + | "ERROR_QUERY_NUMBER_OUT_OF_RANGE" + | "ERROR_QUERY_VARIABLE_NAME_INVALID" + | "ERROR_QUERY_VARIABLE_REDECLARED" + | "ERROR_QUERY_VARIABLE_NAME_UNKNOWN" + | "ERROR_QUERY_COLLECTION_LOCK_FAILED" + | "ERROR_QUERY_TOO_MANY_COLLECTIONS" + | "ERROR_QUERY_DOCUMENT_ATTRIBUTE_REDECLARED" + | "ERROR_QUERY_FUNCTION_NAME_UNKNOWN" + | "ERROR_QUERY_FUNCTION_ARGUMENT_NUMBER_MISMATCH" + | "ERROR_QUERY_FUNCTION_ARGUMENT_TYPE_MISMATCH" + | "ERROR_QUERY_INVALID_REGEX" + | "ERROR_QUERY_BIND_PARAMETERS_INVALID" + | "ERROR_QUERY_BIND_PARAMETER_MISSING" + | "ERROR_QUERY_BIND_PARAMETER_UNDECLARED" + | "ERROR_QUERY_BIND_PARAMETER_TYPE" + | "ERROR_QUERY_INVALID_LOGICAL_VALUE" + | "ERROR_QUERY_INVALID_ARITHMETIC_VALUE" + | "ERROR_QUERY_DIVISION_BY_ZERO" + | "ERROR_QUERY_ARRAY_EXPECTED" + | "ERROR_QUERY_FAIL_CALLED" + | "ERROR_QUERY_GEO_INDEX_MISSING" + | "ERROR_QUERY_FULLTEXT_INDEX_MISSING" + | "ERROR_QUERY_INVALID_DATE_VALUE" + | "ERROR_QUERY_MULTI_MODIFY" + | "ERROR_QUERY_INVALID_AGGREGATE_EXPRESSION" + | "ERROR_QUERY_COMPILE_TIME_OPTIONS" + | "ERROR_QUERY_EXCEPTION_OPTIONS" + | "ERROR_QUERY_COLLECTION_USED_IN_EXPRESSION" + | "ERROR_QUERY_DISALLOWED_DYNAMIC_CALL" + | "ERROR_QUERY_ACCESS_AFTER_MODIFICATION" + | "ERROR_QUERY_FUNCTION_INVALID_NAME" + | "ERROR_QUERY_FUNCTION_INVALID_CODE" + | "ERROR_QUERY_FUNCTION_NOT_FOUND" + | "ERROR_QUERY_FUNCTION_RUNTIME_ERROR" + | "ERROR_QUERY_BAD_JSON_PLAN" + | "ERROR_QUERY_NOT_FOUND" + | "ERROR_QUERY_IN_USE" + | "ERROR_QUERY_USER_ASSERT" + | "ERROR_QUERY_USER_WARN" + | "ERROR_CURSOR_NOT_FOUND" + | "ERROR_CURSOR_BUSY" + | "ERROR_TRANSACTION_INTERNAL" + | "ERROR_TRANSACTION_NESTED" + | "ERROR_TRANSACTION_UNREGISTERED_COLLECTION" + | "ERROR_TRANSACTION_DISALLOWED_OPERATION" + | "ERROR_TRANSACTION_ABORTED" + | "ERROR_USER_INVALID_NAME" + | "ERROR_USER_INVALID_PASSWORD" + | "ERROR_USER_DUPLICATE" + | "ERROR_USER_NOT_FOUND" + | "ERROR_USER_CHANGE_PASSWORD" + | "ERROR_USER_EXTERNAL" + | "ERROR_SERVICE_INVALID_NAME" + | "ERROR_SERVICE_INVALID_MOUNT" + | "ERROR_SERVICE_DOWNLOAD_FAILED" + | "ERROR_SERVICE_UPLOAD_FAILED" + | "ERROR_LDAP_CANNOT_INIT" + | "ERROR_LDAP_CANNOT_SET_OPTION" + | "ERROR_LDAP_CANNOT_BIND" + | "ERROR_LDAP_CANNOT_UNBIND" + | "ERROR_LDAP_CANNOT_SEARCH" + | "ERROR_LDAP_CANNOT_START_TLS" + | "ERROR_LDAP_FOUND_NO_OBJECTS" + | "ERROR_LDAP_NOT_ONE_USER_FOUND" + | "ERROR_LDAP_USER_NOT_IDENTIFIED" + | "ERROR_LDAP_INVALID_MODE" + | "ERROR_TASK_INVALID_ID" + | "ERROR_TASK_DUPLICATE_ID" + | "ERROR_TASK_NOT_FOUND" + | "ERROR_GRAPH_INVALID_GRAPH" + | "ERROR_GRAPH_COULD_NOT_CREATE_GRAPH" + | "ERROR_GRAPH_INVALID_VERTEX" + | "ERROR_GRAPH_COULD_NOT_CREATE_VERTEX" + | "ERROR_GRAPH_COULD_NOT_CHANGE_VERTEX" + | "ERROR_GRAPH_INVALID_EDGE" + | "ERROR_GRAPH_COULD_NOT_CREATE_EDGE" + | "ERROR_GRAPH_COULD_NOT_CHANGE_EDGE" + | "ERROR_GRAPH_TOO_MANY_ITERATIONS" + | "ERROR_GRAPH_INVALID_FILTER_RESULT" + | "ERROR_GRAPH_EMPTY" + | "ERROR_SESSION_UNKNOWN" + | "ERROR_SESSION_EXPIRED" + | "SIMPLE_CLIENT_UNKNOWN_ERROR" + | "SIMPLE_CLIENT_COULD_NOT_CONNECT" + | "SIMPLE_CLIENT_COULD_NOT_WRITE" + | "SIMPLE_CLIENT_COULD_NOT_READ" + | "COMMUNICATOR_REQUEST_ABORTED" + | "COMMUNICATOR_DISABLED" + | "ERROR_MALFORMED_MANIFEST_FILE" + | "ERROR_INVALID_SERVICE_MANIFEST" + | "ERROR_SERVICE_FILES_MISSING" + | "ERROR_SERVICE_FILES_OUTDATED" + | "ERROR_INVALID_FOXX_OPTIONS" + | "ERROR_INVALID_MOUNTPOINT" + | "ERROR_SERVICE_NOT_FOUND" + | "ERROR_SERVICE_NEEDS_CONFIGURATION" + | "ERROR_SERVICE_MOUNTPOINT_CONFLICT" + | "ERROR_SERVICE_MANIFEST_NOT_FOUND" + | "ERROR_SERVICE_OPTIONS_MALFORMED" + | "ERROR_SERVICE_SOURCE_NOT_FOUND" + | "ERROR_SERVICE_SOURCE_ERROR" + | "ERROR_SERVICE_UNKNOWN_SCRIPT" + | "ERROR_MODULE_NOT_FOUND" + | "ERROR_MODULE_SYNTAX_ERROR" + | "ERROR_MODULE_FAILURE" + | "ERROR_NO_SMART_COLLECTION" + | "ERROR_NO_SMART_GRAPH_ATTRIBUTE" + | "ERROR_CANNOT_DROP_SMART_COLLECTION" + | "ERROR_KEY_MUST_BE_PREFIXED_WITH_SMART_GRAPH_ATTRIBUTE" + | "ERROR_ILLEGAL_SMART_GRAPH_ATTRIBUTE" + | "ERROR_AGENCY_INQUIRY_SYNTAX" + | "ERROR_AGENCY_INFORM_MUST_BE_OBJECT" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_TERM" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_ID" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_ACTIVE" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_POOL" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_MIN_PING" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_MAX_PING" + | "ERROR_AGENCY_INFORM_MUST_CONTAIN_TIMEOUT_MULT" + | "ERROR_AGENCY_INQUIRE_CLIENT_ID_MUST_BE_STRING" + | "ERROR_AGENCY_CANNOT_REBUILD_DBS" + | "ERROR_SUPERVISION_GENERAL_FAILURE" + | "ERROR_DISPATCHER_IS_STOPPING" + | "ERROR_QUEUE_UNKNOWN" + | "ERROR_QUEUE_FULL"; + + // Collection + + type DocumentCollectionType = 2; + type EdgeCollectionType = 3; + type CollectionType = DocumentCollectionType | EdgeCollectionType; + + interface CollectionChecksum { + checksum: string; + revision: string; + } + + interface CollectionFigures { + alive: { + count: number; + size: number; + }; + dead: { + count: number; + size: number; + deletion: number; + }; + datafiles: { + count: number; + fileSize: number; + }; + journals: { + count: number; + fileSize: number; + }; + compactors: { + count: number; + fileSize: number; + }; + shapefiles: { + count: number; + fileSize: number; + }; + shapes: { + count: number; + size: number; + }; + attributes: { + count: number; + size: number; + }; + indexes: { + count: number; + size: number; + }; + lastTick: number; + uncollectedLogfileEntries: number; + documentReferences: number; + waitingFor: string; + compactionStatus: { + time: string; + message: string; + count: number; + filesCombined: number; + bytesRead: number; + bytesWritten: number; + }; + } + + interface CollectionPropertiesOptions { + waitForSync?: boolean; + journalSize?: number; + indexBuckets?: number; + replicationFactor?: number; + } + + interface CreateCollectionOptions { + waitForSync?: boolean; + journalSize?: number; + isVolatile?: boolean; + isSystem?: boolean; + keyOptions?: { + type?: KeyGeneratorType; + allowUserKeys?: boolean; + increment?: number; + offset?: number; + }; + numberOfShards?: number; + shardKeys?: string[]; + replicationFactor?: number; + } + + interface CollectionProperties { + waitForSync: boolean; + journalSize: number; + isSystem: boolean; + isVolatile: boolean; + keyOptions?: { + type: KeyGeneratorType; + allowUserKeys: boolean; + increment?: number; + offset?: number; + }; + indexBuckets: number; + numberOfShards?: number; + shardKeys?: string[]; + replicationFactor?: number; + } + + // Indexes + + interface IndexLike { + [key: string]: any; + id: string; + } + + interface IndexDescription { + type: IndexType; + fields: ReadonlyArray; + sparse?: boolean; + unique?: boolean; + deduplicate?: boolean; + } + + interface Index { + id: string; + type: IndexType; + fields: Array; + sparse: boolean; + unique: boolean; + deduplicate: boolean; + isNewlyCreated: boolean; + selectivityEstimate: number; + code: number; + } + + // Document + + interface ObjectWithId { + [key: string]: any; + _id: string; + } + + interface ObjectWithKey { + [key: string]: any; + _key: string; + } + + type DocumentLike = ObjectWithId | ObjectWithKey; + + type Patch = { [K in keyof T]?: T[K] | Patch }; + + interface DocumentMetadata { + _key: string; + _id: string; + _rev: string; + } + + interface UpdateMetadata extends DocumentMetadata { + _oldRev: string; + } + + type Document = { [K in keyof T]: T[K] } & + DocumentMetadata & { _from?: string; _to?: string } & { + [key: string]: any; + }; + type DocumentData = { [K in keyof T]: T[K] } & + Partial; + type Edge = Document & { + _from: string; + _to: string; + }; + + interface InsertResult extends DocumentMetadata { + new?: Document; + } + interface UpdateResult extends UpdateMetadata { + old?: Document; + new?: Document; + } + interface RemoveResult extends DocumentMetadata { + old?: Document; + } + + interface InsertOptions { + waitForSync?: boolean; + silent?: boolean; + returnNew?: boolean; + } + + interface ReplaceOptions extends InsertOptions { + overwrite?: boolean; + returnOld?: boolean; + } + + interface UpdateOptions extends ReplaceOptions { + keepNull?: boolean; + mergeObjects?: boolean; + } + + interface UpdateByExampleOptions { + keepNull?: boolean; + waitForSync?: boolean; + limit?: number; + mergeObjects?: boolean; + } + + interface RemoveOptions { + waitForSync?: boolean; + overwrite?: boolean; + returnOld?: boolean; + silent?: boolean; + } + + interface RemoveByExampleOptions { + waitForSync?: boolean; + limit?: number; + } + + interface IterateOptions { + limit?: number; + probability?: number; + } + + type DocumentIterator = ( + document: Document, + number: number + ) => void; + + interface Collection { + // Collection + checksum( + withRevisions?: boolean, + withData?: boolean + ): CollectionChecksum; + count(): number; + drop(options?: { isSystem?: boolean }): void; + figures(): CollectionFigures; + load(): void; + path(): string; + properties( + properties?: CollectionPropertiesOptions + ): CollectionProperties; + revision(): string; + rotate(): void; + toArray(): Array>; + truncate(): void; + type(): CollectionType; + unload(): void; + + // Indexes + dropIndex(index: string | IndexLike): boolean; + ensureIndex(description: IndexDescription): Index; + getIndexes(): Array>; + index(index: string | IndexLike): Index | null; + + // Document + all(): Cursor>; + any(): Document; + byExample(example: Partial>): Cursor>; + document(selector: string | DocumentLike): Document; + document( + selectors: ReadonlyArray + ): Array>; + exists(name: string): boolean; + firstExample(example: Partial>): Document | null; + insert(data: DocumentData, options?: InsertOptions): InsertResult; + insert( + array: ReadonlyArray>, + options?: InsertOptions + ): Array>; + insert( + from: string, + to: string, + data: DocumentData, + options?: InsertOptions + ): InsertResult; + edges( + vertex: string | ObjectWithId | ReadonlyArray + ): Array>; + inEdges( + vertex: string | ObjectWithId | ReadonlyArray + ): Array>; + outEdges( + vertex: string | ObjectWithId | ReadonlyArray + ): Array>; + iterate(iterator: DocumentIterator, options?: IterateOptions): void; + remove( + selector: string | DocumentLike, + options?: RemoveOptions + ): RemoveResult; + remove( + selectors: ReadonlyArray, + options?: RemoveOptions + ): RemoveResult[]; + removeByExample( + example: Partial>, + waitForSync?: boolean, + limit?: number + ): number; + removeByExample( + example: Partial>, + options?: RemoveByExampleOptions + ): number; + rename(newName: string): void; + replace( + selector: string | DocumentLike, + data: DocumentData, + options?: ReplaceOptions + ): UpdateResult; + replace( + selectors: ReadonlyArray, + data: ReadonlyArray>, + options?: ReplaceOptions + ): Array>; + replaceByExample( + example: Partial>, + newValue: DocumentData, + waitForSync?: boolean, + limit?: number + ): number; + replaceByExample( + example: Partial>, + newValue: DocumentData, + options?: { waitForSync?: boolean; limit?: number } + ): number; + save(data: DocumentData, options?: InsertOptions): InsertResult; + save( + array: ReadonlyArray>, + options?: InsertOptions + ): Array>; + save( + from: string, + to: string, + data: DocumentData, + options?: InsertOptions + ): InsertResult; + update( + selector: string | DocumentLike, + data: Patch>, + options?: UpdateOptions + ): UpdateResult; + update( + selectors: ReadonlyArray, + data: ReadonlyArray>>, + options?: UpdateOptions + ): Array>; + updateByExample( + example: Partial>, + newValue: Patch>, + keepNull?: boolean, + waitForSync?: boolean, + limit?: number + ): number; + updateByExample( + example: Partial>, + newValue: Patch>, + options?: UpdateByExampleOptions + ): number; + } + + // Database + + interface DatabaseUser { + username: string; + passwd?: string; + active?: boolean; + extra?: object; + } + + // AQL + + interface Query { + query: string; + bindVars?: object; + options?: QueryOptions; + } + + interface AqlLiteral { + toAQL: () => string; + } + + interface Cursor { + toArray(): T[]; + hasNext(): boolean; + next(): T; + count(count?: boolean): number; + getExtra(): QueryExtra; + setBatchSize(size: number): void; + getBatchSize(): number; + execute(batchSize?: number): void; + dispose(): void; + } + + interface Statement { + bind(name: string, value: any): void; + setBatchSize(size: number): void; + getBatchSize(): number; + execute(): Cursor; + } + + interface QueryOptions { + memoryLimit?: number; + failOnWarning?: boolean; + cache?: boolean; + count?: boolean; + fullCount?: boolean; + profile?: boolean; + maxWarningCount?: number; + maxNumberOfPlans?: number; + stream?: boolean; + // RocksDB + maxTransactionsSize?: number; + intermediateCommitSize?: number; + intermediateCommitCount?: number; + // enterprise + skipInaccessibleCollections?: boolean; + } + + interface QueryExtra { + stats: { + writesExecuted: number; + writesIgnored: number; + scannedFull: number; + scannedIndex: number; + filtered: number; + httpRequests: number; + fullCount: number; + executionTime: number; + }; + warnings: string[]; + } + + interface QueryAstNode { + type: string; + subNodes?: QueryAstNode[]; + [key: string]: any; + } + + interface ParsedQuery { + parsed: boolean; + collections: string[]; + parameters: string[]; + bindVars: string[]; + ast: QueryAstNode[]; + } + + // Views + + interface View { + // TODO + [key: string]: any; + } + type ViewProperties = object; // TODO + + // Global + + interface TransactionCollections { + read?: string | string[]; + write?: string | string[]; + allowImplicit?: boolean; + } + interface Transaction { + collections: TransactionCollections | string[]; + action: (params: object) => void | string; + waitForSync?: boolean; + lockTimeout?: number; + params?: object; + // RocksDB + maxTransactionsSize?: number; + intermediateCommitSize?: number; + intermediateCommitCount?: number; + } + + interface Database { + // Database + _createDatabase( + name: string, + options?: never, + users?: DatabaseUser[] + ): true; + _databases(): string[]; + _dropDatabase(name: string): true; + _useDatabase(name: string): Database; + + // Indexes + _index(index: string | IndexLike): Index | null; + _dropIndex(index: string | IndexLike): boolean; + + // Properties + _id(): string; + _isSystem(): boolean; + _name(): string; + _path(): string; + _version(): string; + + // Collection + _collection(name: string): Collection; + _collections(): Collection[]; + _create(name: string, properties?: CreateCollectionOptions): Collection; + _createDocumentCollection( + name: string, + properties?: CreateCollectionOptions + ): Collection; + _createEdgeCollection( + name: string, + properties?: CreateCollectionOptions + ): Collection; + _drop(name: string): void; + _truncate(name: string): void; + + // AQL + _createStatement(query: Query | string): Statement; + _query( + query: Query | string, + bindVars?: object, + options?: QueryOptions + ): Cursor; + _explain(query: Query | string): void; + _parse(query: string): ParsedQuery; + + // Document + _document(name: string): Document; + _exists(selector: string | ObjectWithId): DocumentMetadata; + _remove(selector: string | ObjectWithId): DocumentMetadata; + _replace( + selector: string | ObjectWithId, + data: object + ): DocumentMetadata; + _update( + selector: string | ObjectWithId, + data: object + ): DocumentMetadata; + + // Views + _view(name: string): View | null; + _views(): View[]; + _createView( + name: string, + type: ViewType, + properties: ViewProperties + ): View; + _dropView(name: string): void; + + // Global + _engine(): EngineType; + _engineStats(): { [key: string]: any }; + _executeTransaction(transaction: Transaction): void; + } +} + +declare namespace Foxx { + interface Session { + uid: string | null; + created: number; + data: any; + } + interface SessionStorage { + new?: () => Session; + fromClient: (sid: string) => Session | null; + forClient: (session: Session) => string | null; + } + interface SessionTransport { + get?: (req: Request) => string | null; + set?: (res: Response, sid: string) => void; + clear?: (res: Response) => void; + } + interface CollectionSessionStorage extends SessionStorage { + new: () => Session; + save: (session: Session) => Session; + clear: (session: Session) => boolean; + prune: () => string[]; + } + interface SessionsMiddleware extends DelegateMiddleware { + storage: SessionStorage; + transport: SessionTransport[]; + } + + type SimpleMiddleware = ( + req: Request, + res: Response, + next: NextFunction + ) => void; + interface DelegateMiddleware { + register: (endpoint: Endpoint) => SimpleMiddleware; + } + type Middleware = SimpleMiddleware | DelegateMiddleware; + type Handler = ((req: Request, res: Response) => void); + type NextFunction = () => void; + + interface ValidationResult { + value: T; + error: any; + } + + interface Schema { + isJoi: boolean; + validate(value: T): ValidationResult; + } + + interface Model { + schema: Schema; + fromClient?: (value: any) => any; + forClient?: (value: any) => any; + } + + interface DocumentationRouterOptions { + mount: string; + indexFile: string; + swaggerRoot: string; + before: (req: Request, res: Response) => void | false; + } + + interface MediaType { + type: string; + subtype: string; + suffix?: string; + parameters: { + charset: string; + }; + } + + interface TypeDefinition { + fromClient?: ( + body: string | Buffer, + req: Request, + type: MediaType + ) => any; + forClient?: ( + body: any + ) => { + data: string; + headers: { [key: string]: string | undefined }; + }; + } + + type Ranges = Array<{ + start: number; + end: number; + }> & { type: string }; + + type ConfigurationType = + | "integer" + | "boolean" + | "string" + | "number" + | "json" + | "password" + | "int" + | "bool"; + interface ConfigurationDefinition { + default?: any; + type?: ConfigurationType; + description?: string; + required: boolean; + } + interface DependencyDefinition { + name: string; + version: string; + description?: string; + required: boolean; + multiple: boolean; + } + interface AssetDefinition { + path: string; + gzip?: boolean; + type?: string; + } + + interface Manifest { + name?: string; + version?: string; + keywords?: string; + license?: string; + repository?: { type: string; url: string }; + author: string; + contributors?: any[]; + description: string; + thumbnail?: string; + engines?: { [key: string]: string | undefined }; + defaultDocument?: string; + lib: string; + main?: string; + configuration?: { [key: string]: ConfigurationDefinition }; + dependencies?: { [key: string]: DependencyDefinition }; + provides?: { [key: string]: string | undefined }; + files?: { [key: string]: AssetDefinition }; + scripts?: { [key: string]: string | undefined }; + tests?: string[]; + } + + interface Context { + argv: any[]; + basePath: string; + baseUrl: string; + collectionPrefix: string; + configuration: { [key: string]: any }; + dependencies: { [key: string]: any }; + isDevelopment: boolean; + isProduction: boolean; + manifest: Manifest; + mount: string; + collection(name: string): ArangoDB.Collection | null; + collectionName(name: string): string; + createDocumentationRouter( + opts?: + | Partial + | DocumentationRouterOptions["before"] + | DocumentationRouterOptions["swaggerRoot"] + ): Router; + file(name: string): Buffer; + file(name: string, encoding: string): string; + fileName(name: string): string; + registerType(type: string, def: TypeDefinition): void; + use( + path: string, + routerOrMiddleware: Router | Middleware, + name?: string + ): Endpoint; + use(routerOrMiddleware: Router | Middleware, name?: string): Endpoint; + } + + interface Request { + arangoUser: string | null; + arangoVersion: number; + baseUrl: string; + body: any; + context: Context; + database: string; + headers: { [key: string]: string | undefined }; + hostname: string; + method: ArangoDB.HttpMethod; + originalUrl: string; + path: string; + pathParams: { [key: string]: any }; + port: number; + protocol: string; + queryParams: { [key: string]: any }; + rawBody: Buffer; + remoteAddress: string; + remoteAddresses: string[]; + remotePort: number; + secure: boolean; + session?: Session; + sessionStorage?: SessionStorage; + suffix: string; + trustProxy: boolean; + url: string; + xhr: boolean; + accepts(types: string[]): string | false; + accepts(...types: string[]): string | false; + acceptsCharsets(charsets: string[]): string | false; + acceptsCharsets(...charsets: string[]): string | false; + acceptsEncodings(encodings: string[]): string | false; + acceptsEncodings(...encodings: string[]): string | false; + acceptsLanguages(languages: string[]): string | false; + acceptsLanguages(...languages: string[]): string | false; + cookie( + name: string, + options?: { secret?: string; algorithm?: ArangoDB.HashAlgorithm } + ): string | null; + get(name: string): string | undefined; + header(name: string): string | undefined; + is(types: string[]): string; + is(...types: string[]): string; + json(): any; + makeAbsolute( + path: string, + query?: string | { [key: string]: string | undefined } + ): string; + param(name: string): any; + range(size?: number): Ranges | number; + reverse(name: string, params?: object): string; + } + + interface Response { + body: Buffer | string; + context: Context; + headers: { [key: string]: any }; + statusCode: number; + attachment(filename?: string): this; + cookie( + name: string, + value: string, + options?: { + ttl?: number; + algorithm?: ArangoDB.HashAlgorithm; + secret?: string; + path?: string; + domain?: string; + secure?: boolean; + httpOnly?: boolean; + } + ): this; + download(path: string, filename?: string): this; + getHeader(name: string): string | undefined; + json(data: any): this; + redirect(status: number | ArangoDB.HttpStatus, path: string): this; + redirect(path: string): this; + removeHeader(name: string): this; + send(data: any, type?: string): this; + sendFile(path: string, options?: { lastModified: boolean }): this; + sendStatus(status: number | ArangoDB.HttpStatus): this; + setHeader(name: string, value: string): this; + set(name: string, value: string): this; + set(headers: { [name: string]: string }): this; + status(status: number | ArangoDB.HttpStatus): this; + throw( + status: number | ArangoDB.HttpStatus, + reason: string, + error: Error + ): never; + throw( + status: number | ArangoDB.HttpStatus, + reason: string, + options?: { cause?: Error; extra?: any } + ): never; + throw(status: number | ArangoDB.HttpStatus, error: Error): never; + throw( + status: number | ArangoDB.HttpStatus, + options?: { cause?: Error; extra?: any } + ): never; + type(type?: string): string; + vary(names: string[]): this; + vary(...names: string[]): this; + write(data: string | Buffer): this; + } + + interface Endpoint { + header(name: string, schema: Schema, description?: string): this; + header(name: string, description: string): this; + pathParam(name: string, schema: Schema, description?: string): this; + pathParam(name: string, description: string): this; + queryParam(name: string, schema: Schema, description?: string): this; + queryParam(name: string, description: string): this; + body( + schema: Schema | Model | [Model], + mimes?: string[], + description?: string + ): this; + body( + schemaOrMimes: Schema | Model | [Model] | string[], + description?: string + ): this; + body(description: string): this; + response( + status: number | ArangoDB.HttpStatus, + schema: Schema | Model | [Model], + mimes?: string[], + description?: string + ): this; + response( + status: number | ArangoDB.HttpStatus, + mimes: string[], + description?: string + ): this; + response( + status: number | ArangoDB.HttpStatus, + description: string + ): this; + summary(summary: string): this; + description(description: string): this; + deprecated(deprecated: boolean): this; + error(status: number | ArangoDB.HttpStatus, description: string): this; + tag(...tags: string[]): this; + } + + function route(handler: Handler, name?: string): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + middleware5: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + middleware5: SimpleMiddleware, + middleware6: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + middleware5: SimpleMiddleware, + middleware6: SimpleMiddleware, + middleware7: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + middleware5: SimpleMiddleware, + middleware6: SimpleMiddleware, + middleware7: SimpleMiddleware, + middleware8: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + function route( + pathOrMiddleware: string | SimpleMiddleware, + middleware1: SimpleMiddleware, + middleware2: SimpleMiddleware, + middleware3: SimpleMiddleware, + middleware4: SimpleMiddleware, + middleware5: SimpleMiddleware, + middleware6: SimpleMiddleware, + middleware7: SimpleMiddleware, + middleware8: SimpleMiddleware, + middleware9: SimpleMiddleware, + handler: Handler, + name?: string + ): Endpoint; + + interface Router { + get: typeof route; + post: typeof route; + put: typeof route; + patch: typeof route; + delete: typeof route; + all: typeof route; + use( + path: string, + routerOrMiddleware: Router | Middleware, + name?: string + ): Endpoint; + use(routerOrMiddleware: Router | Middleware, name?: string): Endpoint; + } +} + +declare module "@arangodb" { + function aql(strings: TemplateStringsArray, ...args: any[]): ArangoDB.Query; + namespace aql { + function literal(value: any): ArangoDB.AqlLiteral; + } + function query( + strings: TemplateStringsArray, + ...args: any[] + ): ArangoDB.Cursor; + function time(): number; + const db: ArangoDB.Database & { + [key: string]: ArangoDB.Collection | undefined; + }; + const errors: { + [Name in ArangoDB.ErrorName]: { code: number; message: string } + }; +} + +declare module "@arangodb/foxx/router" { + function createRouter(): Foxx.Router; + export = createRouter; +} + +declare module "@arangodb/foxx/graphql" { + import { GraphQLSchema, formatError } from "graphql"; + type GraphQLModule = object; + type GraphQLFormatErrorFunction = typeof formatError; + interface GraphQLOptions { + schema: GraphQLSchema; + context?: any; + rootValue?: object; + pretty?: boolean; + formatError?: GraphQLFormatErrorFunction; + validationRules?: any[]; + graphiql?: boolean; + graphql?: GraphQLModule; + } + function createGraphQLRouter( + options: GraphQLOptions | GraphQLSchema + ): Foxx.Router; + export = createGraphQLRouter; +} + +declare module "@arangodb/foxx/sessions" { + interface SessionsOptions { + storage: Foxx.SessionStorage | string | ArangoDB.Collection; + transport: + | Foxx.SessionTransport + | Foxx.SessionTransport[] + | "cookie" + | "header"; + autoCreate?: boolean; + } + function sessionsMiddleware( + options: SessionsOptions + ): Foxx.SessionsMiddleware; + export = sessionsMiddleware; +} + +declare module "@arangodb/foxx/sessions/storages/collection" { + interface CollectionStorageOptions { + collection: string | ArangoDB.Collection; + ttl?: number; + pruneExpired?: boolean; + autoUpdate?: boolean; + } + function collectionStorage( + options: + | CollectionStorageOptions + | CollectionStorageOptions["collection"] + ): Foxx.CollectionSessionStorage; + export = collectionStorage; +} + +declare module "@arangodb/foxx/sessions/storages/jwt" { + interface SafeJwtStorageOptions { + algorithm?: ArangoDB.JwtAlgorithm; + secret: string; + ttl?: number; + verify?: boolean; + maxExp?: number; + } + interface UnsafeJwtStorageOptions { + algorithm: "none"; + ttl?: number; + verify?: boolean; + maxExp?: number; + } + function jwtStorage( + options: + | SafeJwtStorageOptions + | UnsafeJwtStorageOptions + | SafeJwtStorageOptions["secret"] + ): Foxx.SessionStorage; + export = jwtStorage; +} + +declare module "@arangodb/foxx/sessions/transports/cookie" { + interface CookieTransportOptions { + name?: string; + ttl?: number; + algorithm?: ArangoDB.HashAlgorithm; + secret?: string; + path?: string; + domain?: string; + secure?: string; + httpOnly?: string; + } + function cookieTransport( + options?: CookieTransportOptions + ): Foxx.SessionTransport; + function cookieTransport(name: string): Foxx.SessionTransport; + export = cookieTransport; +} + +declare module "@arangodb/foxx/sessions/transports/header" { + interface HeaderTransportOptions { + name?: string; + } + function headerTransport( + options?: HeaderTransportOptions + ): Foxx.SessionTransport; + function headerTransport(name: string): Foxx.SessionTransport; + export = headerTransport; +} + +declare module "@arangodb/foxx/auth" { + interface AuthData { + method: string; + salt: string; + hash: string; + } + interface Authenticator { + create(password: string): AuthData; + verify(hash?: AuthData, password?: string): boolean; + } + interface AuthOptions { + method?: ArangoDB.HashAlgorithm; + saltLength?: number; + } + function createAuth(options?: AuthOptions): Authenticator; + export = createAuth; +} + +declare module "@arangodb/foxx/oauth1" { + interface OAuth1Options { + requestTokenEndpoint: string; + authEndpoint: string; + accessTokenEndpoint: string; + activeUserEndpoint?: string; + clientId: string; + clientSecret: string; + signatureMethod?: "HMAC-SHA1" | "PLAINTEXT"; + } + interface OAuth1Client { + fetchRequestToken( + oauth_callback: string, + qs?: { [key: string]: string | undefined } + ): any; + getAuthUrl( + oauth_token: string, + qs?: { [key: string]: string | undefined } + ): string; + exchangeRequestToken( + oauth_token: string, + oauth_verifier: string, + qs?: { [key: string]: string | undefined } + ): any; + fetchActiveUser( + oauth_token: string, + oauth_token_secret: string, + qs?: { [key: string]: string | undefined } + ): any; + createSignedRequest( + method: ArangoDB.HttpMethod, + url: string, + parameters: string | { [key: string]: string | undefined } | null, + oauth_token: string, + oauth_token_secret: string + ): { + url: string; + qs: string; + headers: { accept: "application/json"; authorization: string }; + }; + } + function createOAuth1Client(options: OAuth1Options): OAuth1Client; + export = createOAuth1Client; +} + +declare module "@arangodb/foxx/oauth2" { + interface OAuth2Options { + authEndpoint: string; + tokenEndpoint: string; + refreshEndpoint?: string; + activeUserEndpoint?: string; + clientId: string; + clientSecret: string; + } + interface OAuth2Client { + getAuthUrl( + redirect_uri: string, + options?: { response_type?: string } + ): string; + exchangeGrantToken( + code: string, + redirect_uri: string, + options?: { grant_type?: string } + ): any; + fetchActiveUser(access_token: string): any; + } + function createOAuth2Client(options: OAuth2Options): OAuth2Client; + export = createOAuth2Client; +} + +declare module "@arangodb/foxx" { + function createRouter(): Foxx.Router; +} + +declare module "@arangodb/request" { + interface Response { + rawBody: Buffer; + body: string | Buffer; + json?: any; + headers: { [key: string]: string | undefined }; + status: number; + statusCode: number; + message: string; + throw(message?: string): void | never; + } + interface RequestOptions { + qs?: object; + useQuerystring?: boolean; + headers?: { [key: string]: string | undefined }; + body?: any; + json?: boolean; + form?: any; + auth?: { username: string; password?: string } | { bearer: string }; + sslProtocol?: number; + followRedirect?: boolean; + maxRedirects?: number; + encoding?: string | null; + timeout?: number; + returnBodyOnError?: boolean; + } + function method(options: { url: string } & RequestOptions): Response; + function method(url: string, options?: RequestOptions): Response; + interface Request { + ( + options: { + url: string; + method?: ArangoDB.HttpMethod; + } & RequestOptions + ): Response; + head: typeof method; + get: typeof method; + post: typeof method; + put: typeof method; + patch: typeof method; + delete: typeof method; + } + const request: Request; + export = request; +} + +declare module "@arangodb/crypto" { + function createNonce(): string; + function checkAndMarkNonce(nonce: string): void; + function rand(): number; + function genRandomAlphaNumbers(length: number): string; + function genRandomNumbers(length: number): string; + function genRandomSalt(length: number): string; + function jwtEncode( + key: string, + message: string, + algorithm: ArangoDB.JwtAlgorithm + ): string; + function jwtEncode(key: null, message: string, algorithm: "none"): string; + function jwtDecode( + key: string | null, + token: string, + noVerify?: boolean + ): string | null; + function md5(message: string): string; + function sha1(message: string): string; + function sha224(message: string): string; + function sha256(message: string): string; + function sha384(message: string): string; + function sha512(message: string): string; + function constantEquals(a: string, b: string): boolean; + function pbkdf2( + salt: string, + password: string, + iterations: number, + keyLength: number + ): string; + function hmac( + key: string, + message: string, + algorithm: ArangoDB.HashAlgorithm + ): string; +} + +declare module "@arangodb/general-graph" { + interface EdgeDefinition { + collection: string; + from: string[]; + to: string[]; + } + interface CommonNeighbors { + left: string; + right: string; + neighbors: string[]; + } + interface CountCommonNeighbors { + [key: string]: Array<{ [key: string]: number | undefined }> | undefined; + } + interface CommonProperties { + [key: string]: + | Array<{ _id: string } & { [key: string]: any }> + | undefined; + } + interface CountCommonProperties { + [key: string]: number | undefined; + } + interface Path< + A extends object = any, + B extends object = any, + E extends object = any, + V extends object = never + > { + source: ArangoDB.Document; + destination: ArangoDB.Document; + edges: Array>; + vertice: Array>; + } + interface ShortestPath { + vertices: string[]; + edges: Array>; + distance: number; + } + interface Distance { + startVertex: string; + vertex: string; + distance: number; + } + interface Eccentricity { + [key: string]: number | undefined; + } + type Closeness = Eccentricity; + type Betweenness = Eccentricity; + type Example = Array | object | string | null; + interface ConnectingEdgesOptions { + edgeExamples?: Example; + edgeCollectionRestriction?: string[] | string; + vertex1CollectionRestriction?: string[] | string; + vertex2CollectionRestriction?: string[] | string; + } + interface NeighborsOptions { + direction?: ArangoDB.EdgeDirection; + edgeExamples?: Example; + neighborExamples?: Example; + edgeCollectionRestriction?: string[] | string; + vertexCollectionRestriction?: string[] | string; + minDepth?: number; + maxDepth?: number; + } + interface CommonPropertiesOptions { + vertex1CollectionRestriction?: string[] | string; + vertex2CollectionRestriction?: string[] | string; + ignoredProperties?: string[] | string; + } + interface PathsOptions { + direction?: ArangoDB.EdgeDirection; + followCycles?: boolean; + minLength?: number; + maxLength?: number; + } + interface ShortestPathOptions { + direction?: ArangoDB.EdgeDirection; + edgeCollectionRestriction?: string[] | string; + startVertexCollectionRestriction?: string[] | string; + endVertexCollectionRestriction?: string[] | string; + weight?: string; + defaultWeight?: number; + } + type EccentricityOptions = ShortestPathOptions; + type ClosenessOptions = ShortestPathOptions; + interface BetweennessOptions { + direction?: ArangoDB.EdgeDirection; + weight?: string; + defaultWeight?: number; + } + type RadiusOptions = BetweennessOptions; + type DiameterOptions = BetweennessOptions; + interface Graph { + _extendEdgeDefinitions(edgeDefinition: EdgeDefinition): void; + _editEdgeDefinitions(edgeDefinition: EdgeDefinition): void; + _deleteEdgeDefinition( + edgeCollectionName: string, + dropCollection?: boolean + ): void; + _addVertexCollection( + orphanCollectionName: string, + createCollection?: boolean + ): void; + _orphanCollections(): string[]; + _removeVertexCollection( + orphanCollectionName: string, + dropCollection?: boolean + ): void; + _getConnectingEdges( + vertexExample1: Example, + vertexExample2: Example, + options: ConnectingEdgesOptions + ): ArangoDB.Edge; + _fromVertex(edgeId: string): ArangoDB.Document; + _toVertex(edgeId: string): ArangoDB.Document; + _neighbors( + vertexExample: Example, + options?: NeighborsOptions + ): string[]; + _commonNeighbors( + vertex1Example: Example, + vertex2Example: Example, + vertex1Options?: NeighborsOptions, + vertex2Options?: NeighborsOptions + ): CommonNeighbors[]; + _countCommonNeighbors( + vertex1Example: Example, + vertex2Example: Example, + vertex1Options?: NeighborsOptions, + vertex2Options?: NeighborsOptions + ): CountCommonNeighbors[]; + _commonProperties( + vertexExample1: Example, + vertex2Example: Example, + options?: CommonPropertiesOptions + ): CommonProperties[]; + _countCommonProperties( + vertex1Example: Example, + vertex2Example: Example, + options?: CommonPropertiesOptions + ): CountCommonProperties[]; + _paths(options?: PathsOptions): Path[]; + _shortestPath( + startVertexExample: Example, + endVertexExample: Example, + options?: ShortestPathOptions + ): ShortestPath[]; + _distanceTo( + startVertexExample: Example, + endVertexExample: Example, + options?: ShortestPathOptions + ): Distance[]; + _absoluteEccentricity( + vertexExample: Example, + options?: EccentricityOptions + ): Eccentricity; + _eccentricity( + vertexExample: Example, + options?: EccentricityOptions + ): Eccentricity; + _absoluteCloseness( + vertexExample: Example, + options?: ClosenessOptions + ): Closeness; + _closeness( + vertexExample: Example, + options?: ClosenessOptions + ): Closeness; + _absoluteBetweenness( + vertexExample: Example, + options?: BetweennessOptions + ): Betweenness; + _betweenness( + vertexExample: Example, + options?: BetweennessOptions + ): Betweenness; + _radius(vertexExample: Example, options?: RadiusOptions): number; + _diameter(vertexExample: Example, options?: DiameterOptions): number; + } + function _create( + name: string, + edgeDefinitions?: EdgeDefinition[], + orphanCollections?: string[] + ): Graph & { + [key: string]: ArangoDB.Collection | undefined; + }; + function _list(): string[]; + function _graph( + name: string + ): Graph & { + [key: string]: ArangoDB.Collection | undefined; + }; + function _drop(name: string, dropCollections?: boolean): boolean; + function _relation( + name: string, + fromVertexCollections: string[] | string, + toVertexCollections: string[] | string + ): EdgeDefinition; + function _edgeDefinitions(...relations: EdgeDefinition[]): EdgeDefinition[]; + function _extendEdgeDefinitions( + edgeDefinitions: EdgeDefinition[], + ...relations: EdgeDefinition[] + ): EdgeDefinition[]; +} + +declare module "@arangodb/locals" { + const context: Foxx.Context; +} + +interface NodeModule { + context: Foxx.Context; +} + +interface Console { + logLines(...args: any[]): void; + errorLines(...args: any[]): void; + warnLines(...args: any[]): void; + infoLines(...args: any[]): void; + debugLines(...args: any[]): void; + errorStack(err: Error, msg?: string): void; + warnStack(err: Error, msg?: string): void; + infoStack(err: Error, msg?: string): void; + debugStack(err: Error, msg?: string): void; +} diff --git a/types/arangodb/tsconfig.json b/types/arangodb/tsconfig.json new file mode 100644 index 0000000000..f778fd7c47 --- /dev/null +++ b/types/arangodb/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "arangodb-tests.ts"] +} diff --git a/types/arangodb/tslint.json b/types/arangodb/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/arangodb/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/arcgis-js-api/index.d.ts b/types/arcgis-js-api/index.d.ts index dadb02d265..4944b00bf2 100644 --- a/types/arcgis-js-api/index.d.ts +++ b/types/arcgis-js-api/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for ArcGIS API for JavaScript 4.6 +// Type definitions for ArcGIS API for JavaScript 4.7 // Project: http://js.arcgis.com // Definitions by: Esri +// Bjorn Svensson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -163,6 +164,8 @@ declare namespace __esri { export type ElevationLayerLayerviewDestroyEventHandler = (event: ElevationLayerLayerviewDestroyEvent) => void; + export type ElevationSamplerChangedEventHandler = (event: ElevationSamplerChangedEvent) => void; + export type FeatureLayerLayerviewCreateEventHandler = (event: FeatureLayerLayerviewCreateEvent) => void; export type FeatureLayerLayerviewDestroyEventHandler = (event: FeatureLayerLayerviewDestroyEvent) => void; @@ -203,14 +206,20 @@ declare namespace __esri { export type MapNotesLayerLayerviewDestroyEventHandler = (event: MapNotesLayerLayerviewDestroyEvent) => void; + export type MapViewBlurEventHandler = (event: MapViewBlurEvent) => void; + export type MapViewClickEventHandler = (event: MapViewClickEvent) => void; export type MapViewDoubleClickEventHandler = (event: MapViewDoubleClickEvent) => void; export type MapViewDragEventHandler = (event: MapViewDragEvent) => void; + export type MapViewFocusEventHandler = (event: MapViewFocusEvent) => void; + export type MapViewHoldEventHandler = (event: MapViewHoldEvent) => void; + export type MapViewImmediateClickEventHandler = (event: MapViewImmediateClickEvent) => void; + export type MapViewKeyDownEventHandler = (event: MapViewKeyDownEvent) => void; export type MapViewKeyUpEventHandler = (event: MapViewKeyUpEvent) => void; @@ -291,7 +300,7 @@ declare namespace __esri { interface BasemapConstructor { /** - * Basemap is used for creating custom basemaps. These basemaps may be created from tiled services you publish to your own server or from tiled services published by third parties. + * Creates a new basemap object. Basemaps can be created from a [PortalItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html), from a well known [basemap ID](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html#fromId), or can be used for creating custom basemaps. These basemaps may be created from tiled services you publish to your own server, or from tiled services published by third parties. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html) */ @@ -827,6 +836,12 @@ declare namespace __esri { export interface configWorkers extends Object { + /** + * The absolute url to the AMD loader used in the worker. The default url points to the AMD loader used by the API. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#workers) + */ + loaderUrl?: any; /** * The configuration parameters for [the workers framework](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html). * @@ -837,6 +852,12 @@ declare namespace __esri { export interface configWorkersLoaderConfig extends Object { + /** + * The AMD loader loads all code relative to the baseUrl. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#workers) + */ + baseUrl?: string; /** * Determines if the specified feature capabilities are supported. * @@ -1037,7 +1058,7 @@ declare namespace __esri { export const Error: Error; - export class Evented { + interface Evented { /** * Emits an event on the instance. This method should only be used when creating subclasses of this class. * @@ -1047,7 +1068,7 @@ declare namespace __esri { * @param event The event payload. * */ - protected emit(type: string, event: any): void; + emit(type: string, event: any): void; /** * Indicates whether there is an event listener on the instance that matches the provided event name. * @@ -1069,11 +1090,96 @@ declare namespace __esri { on(type: string, listener: EventHandler): IHandle; } + interface EventedConstructor { + + + new(): Evented; + } + + export const Evented: EventedConstructor; + export type EventHandler = (event: any) => void; + interface HandleOwner extends Accessor { + /** + * Handle registry. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-HandleOwner.html#handles) + */ + handles: void; + } + + interface HandleOwnerConstructor { + + + new(properties?: HandleOwnerProperties): HandleOwner; + } + + export const HandleOwner: HandleOwnerConstructor; + + interface HandleOwnerProperties { + /** + * Handle registry. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-HandleOwner.html#handles) + */ + handles?: void; + } + + interface Handles extends Accessor { + /** + * Adds a group of handles. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#add) + * + * @param handles An array or collection handles to group. + * @param key group handle key + * + */ + add(handles: WatchHandle | WatchHandle[] | Collection, key?: any): void; + /** + * Returns true if a group exists for the provided key, false otherwise. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#has) + * + * @param key group handle key + * + */ + has(key: any): boolean; + /** + * Removes a group of handles. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#remove) + * + * @param key A group key or an array or collection of group keys to remove. + * + */ + remove(key?: any): void; + /** + * Removes all handles. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Handles.html#removeAll) + * + * + */ + removeAll(): void; + } + + interface HandlesConstructor { + + + new(properties?: HandlesProperties): Handles; + } + + export const Handles: HandlesConstructor; + + interface HandlesProperties { + + } + interface JSONSupport { /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-JSONSupport.html#toJSON) * @@ -1093,7 +1199,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-JSONSupport.html#fromJSON) * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Classification_objects/02r30000019z000000/) for examples of the structure of various input JSON objects. + * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](https://developers.arcgis.com/documentation/common-data-types/overview-of-common-data-types.htm) for examples of the structure of various input JSON objects. * */ fromJSON(json: any): any; @@ -1149,11 +1255,11 @@ declare namespace __esri { readonly loadWarnings: any[]; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `always()` may be used to execute a function if the promise is rejected or resolved. The input function will always execute no matter the response. For more information about promises, see the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page. + * **Deprecated at 4.7.** `always()` may be used to execute a function if creating an instance of the class is rejected or resolved. The input function will always execute no matter the response. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#always) * - * @param callbackOrErrback The function to execute when the promise is rejected or resolved. + * @param callbackOrErrback The function to execute when creating an instance of the class is rejected or resolved. * */ always(callbackOrErrback?: Function): IPromise; @@ -1166,7 +1272,7 @@ declare namespace __esri { */ cancelLoad(): void; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isFulfilled()` may be used to verify if the promise is fulfilled (either resolved or rejected). If it is fulfilled, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isFulfilled()` may be used to verify if creating an instance of the class is fulfilled (either resolved or rejected). If it is fulfilled, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#isFulfilled) * @@ -1174,7 +1280,7 @@ declare namespace __esri { */ isFulfilled(): boolean; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isRejected()` may be used to verify if the promise is rejected. If it is rejected, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isRejected()` may be used to verify if creating an instance of the class is rejected. If it is rejected, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#isRejected) * @@ -1182,7 +1288,7 @@ declare namespace __esri { */ isRejected(): boolean; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isResolved()` may be used to verify if the promise is resolved. If it is resolved, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isResolved()` may be used to verify if creating an instance of the class is resolved. If it is resolved, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#isResolved) * @@ -1198,36 +1304,24 @@ declare namespace __esri { */ load(): IPromise; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Use `otherwise()` to call a function once the promise is rejected. + * **Deprecated at 4.7.** Use `otherwise()` to call a function once creating an instance of the class is rejected. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#otherwise) * - * @param errback The function to execute when the promise fails. + * @param errback The function to execute when creating an instance of the class fails. * */ otherwise(errback?: Function): IPromise; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `then()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the promise resolves (when the instance of the class loads). The `errback` executes if the promise fails. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for additional details. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#then) - * - * @param callback The function to call when the promise resolves. - * @param errback The function to execute when the promise fails. - * @param progback The function to invoke when the promise emits a progress update. - * - */ - then(callback?: Function, errback?: Function, progback?: Function): IPromise; - /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `when()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the promise resolves (when the instance of the class loads). The `errback` executes if the promise fails. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for additional details. + * `when()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the instance of the class loads. The `errback` executes if the instance of the class fails to load. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Loadable.html#when) * * @param callback The function to call when the promise resolves. * @param errback The function to execute when the promise fails. - * @param progback The function to invoke when the promise emits a progress update. * */ - when(callback?: Function, errback?: Function, progback?: Function): IPromise; + when(callback?: Function, errback?: Function): IPromise; } interface LoadableConstructor { @@ -1244,16 +1338,16 @@ declare namespace __esri { interface corePromise { /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `always()` may be used to execute a function if the promise is rejected or resolved. The input function will always execute no matter the response. For more information about promises, see the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page. + * **Deprecated at 4.7.** `always()` may be used to execute a function if creating an instance of the class is rejected or resolved. The input function will always execute no matter the response. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#always) * - * @param callbackOrErrback The function to execute when the promise is rejected or resolved. + * @param callbackOrErrback The function to execute when creating an instance of the class is rejected or resolved. * */ always(callbackOrErrback?: Function): IPromise; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isFulfilled()` may be used to verify if the promise is fulfilled (either resolved or rejected). If it is fulfilled, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isFulfilled()` may be used to verify if creating an instance of the class is fulfilled (either resolved or rejected). If it is fulfilled, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#isFulfilled) * @@ -1261,7 +1355,7 @@ declare namespace __esri { */ isFulfilled(): boolean; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isRejected()` may be used to verify if the promise is rejected. If it is rejected, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isRejected()` may be used to verify if creating an instance of the class is rejected. If it is rejected, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#isRejected) * @@ -1269,7 +1363,7 @@ declare namespace __esri { */ isRejected(): boolean; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `isResolved()` may be used to verify if the promise is resolved. If it is resolved, `true` will be returned. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for more information about promises. + * `isResolved()` may be used to verify if creating an instance of the class is resolved. If it is resolved, `true` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#isResolved) * @@ -1277,36 +1371,24 @@ declare namespace __esri { */ isResolved(): boolean; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Use `otherwise()` to call a function once the promise is rejected. + * **Deprecated at 4.7.** Use `otherwise()` to call a function once creating an instance of the class is rejected. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#otherwise) * - * @param errback The function to execute when the promise fails. + * @param errback The function to execute when creating an instance of the class fails. * */ otherwise(errback?: Function): IPromise; /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `then()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the promise resolves (when the instance of the class loads). The `errback` executes if the promise fails. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for additional details. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#then) - * - * @param callback The function to call when the promise resolves. - * @param errback The function to execute when the promise fails. - * @param progback The function to invoke when the promise emits a progress update. - * - */ - then(callback?: Function, errback?: Function, progback?: Function): IPromise; - /** - * An instance of this class is a [Promise](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html). Therefore `when()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the promise resolves (when the instance of the class loads). The `errback` executes if the promise fails. See the [Working with Promises](https://developers.arcgis.com/javascript/latest/guide/working-with-promises/index.html) guide page for additional details. + * `when()` may be leveraged once an instance of the class is created. This method takes two input parameters: a `callback` function and an `errback` function. The `callback` executes when the instance of the class loads. The `errback` executes if the instance of the class fails to load. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Promise.html#when) * * @param callback The function to call when the promise resolves. * @param errback The function to execute when the promise fails. - * @param progback The function to invoke when the promise emits a progress update. * */ - when(callback?: Function, errback?: Function, progback?: Function): IPromise; + when(callback?: Function, errback?: Function): IPromise; } interface corePromiseConstructor { @@ -1404,6 +1486,120 @@ declare namespace __esri { export const requireUtils: requireUtils; + /** + * Various utilities and convenience functions for executing code at various phases of browser frames. The scheduling module allows you to register tasks that are executed in every animation frame. This can be used to synchronize updates with ongoing animations of the view, or to animate the view manually by adjusting the extent or camera in every frame. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html) + */ + interface scheduling { + /** + * Registers a frame task. An animation frame is composed of different phases to let various actors execute code before, after, or during the rendering of [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#addFrameTask) + * + * @param phases The callbacks for each phase of the frame. + * + */ + addFrameTask(phases: PhaseCallbacks): FrameTaskHandle; + /** + * Schedules the execution of a `callback` function at the next web browser tick. Unlike [addFrameTask](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#addFrameTask), a scheduled `callback` will only run once. Scheduling a task for the next execution tick can be useful when you want to throttle/accumulate functionality over a single javascript execution context. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#schedule) + * + * @param callback The function to call at the next tick. + * + */ + schedule(callback: Function): any; + } + + export const scheduling: scheduling; + + /** + * An object to remove or pause a frame task registered with [addFrameTask()](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#addFrameTask). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#FrameTaskHandle) + */ + export interface FrameTaskHandle extends Object { + /** + * Pause the execution the frame task at every frame. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#FrameTaskHandle) + * + * + */ + pause(): void; + /** + * Resumes the execution the frame task. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#FrameTaskHandle) + * + * + */ + resume(): void; + /** + * Removes the frame task. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#FrameTaskHandle) + * + * + */ + remove(): void; + } + + export type PhaseCallback = (event: PhaseEvent) => void; + + /** + * A set of [callbacks](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseCallback) that will be called at specific phases of the animation frame. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseCallbacks) + */ + export interface PhaseCallbacks extends Object { + /** + * A callback called before rendering. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseCallbacks) + */ + prepare?: PhaseCallback; + /** + * A callback to execute rendering logic. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseCallbacks) + */ + render?: PhaseCallback; + /** + * A callback to execute state update logic. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseCallbacks) + */ + update?: PhaseCallback; + } + + /** + * An object with timing information. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseEvent) + */ + export interface PhaseEvent extends Object { + /** + * The absolute time at the start of the current animation frame. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseEvent) + */ + time: number; + /** + * The elapsed time since the last animation frame. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseEvent) + */ + deltaTime: number; + /** + * The amount of time spent within the current animation frame. This can be used for budgeting (e.g. some tasks may already have run). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-scheduling.html#PhaseEvent) + */ + elapsedFrameTime: number; + } + interface urlUtils { /** @@ -1701,15 +1897,29 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html#open) * - * @param client The instance of the client which will be using the [Connection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html). * @param modulePath A fully qualified URL to a script to execute with the workers framework. + * @param options Worker options. See properties below for object specifications. + * @param options.client The objects defining the API accessible from the module. + * @param options.strategy + * Indicates how to load the module. See the table below for a list of possible values. + * + * Possible Value | Description + * ---------------|------------ + * distributed | The module is loaded in each available worker. Each call to [Connection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html#invoke) will be targeting an available worker. Use this strategy if the module doesn't maintain information between invocations (stateless). + * dedicated | The module is loaded in one worker. Each call to [Connection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html#invoke) will be targeting a same worker. Use this strategy if the module maintains information from previous invocations or communication between main and worker threads needs to be stateful. + * local | The module is loaded in the main thread. Use this strategy if when using the worker framework API while disabling the use of workers. * */ - open(client: any, modulePath: string): IPromise; + open(modulePath: string, options?: workersOpenOptions): IPromise; } export const workers: workers; + /** + * The Connection class is used to access code loaded into a separate thread via the [workers framework](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html) + */ interface Connection { /** * A convenient method that broadcasts a message to all workers. Use this method if it is mandatory that all workers need to have a piece of information which is critical for them to process additional requests. @@ -1718,10 +1928,10 @@ declare namespace __esri { * * @param methodName The name of the method to invoke on all workers. * @param data The object which contains all required parameters to be passed to the method. The data passed between the main thread and the workers framework are copied, not shared. Objects are serialized and de-serialized on both ends. - * @param buffers An array of [transferable](https://developer.mozilla.org/en-US/docs/Web/API/Transferable) buffers. Each buffer in the array should have a corresponding entry in the data object. Transferable objects are transferred from one context to another with a zero-copy operation, which results in a big performance improvement when sending large data sets. + * @param transferList An array of [Transferable](https://developer.mozilla.org/en-US/docs/Web/API/Transferable) objects. Transferable objects are transferred from one context to another with a zero-copy operation, which results in a big performance improvement when sending large data sets. * */ - broadcast(methodName: string, data?: any, buffers?: ArrayBuffer[]): IPromise; + broadcast(methodName: string, data?: any, transferList?: any[]): IPromise; /** * Closes the existing connection instance to workers. Notify all workers to destroy the connection instance and unload the connection module. * @@ -1737,25 +1947,39 @@ declare namespace __esri { * * @param methodName The name of the method to be invoked in the script. * @param data The object which contains all required parameters to be passed to the method. The data passed between the main thread and the workers framework are copied, not shared. Objects are serialized and de-serialized on both ends. - * @param buffers An array of [transferable](https://developer.mozilla.org/en-US/docs/Web/API/Transferable) buffers. Each buffer in the array should have a corresponding entry in the data object. Transferable objects are transferred from one context to another with a zero-copy operation, which results in a big performance improvement when sending large data sets. + * @param transferList An array of [Transferable](https://developer.mozilla.org/en-US/docs/Web/API/Transferable) objects. Each transferable object in the array should have a corresponding entry in the data object. Transferable objects are transferred from one context to another with a zero-copy operation, which results in a big performance improvement when sending large data sets. * */ - invoke(methodName: string, data?: any, buffers?: ArrayBuffer[]): IPromise; + invoke(methodName: string, data?: any, transferList?: any[]): IPromise; } - interface ConnectionConstructor { + export const Connection: Connection; + + + export interface workersOpenOptions extends Object { /** - * The Connection class is used to access code loaded into a separate thread via the [workers framework](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html). + * The objects defining the API accessible from the module. * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html) + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html#open) */ - - - new(client: any, id: number): Connection; + client?: any; + /** + * Indicates how to load the module. See the table below for a list of possible values. + * + * Possible Value | Description + * ---------------|------------ + * distributed | The module is loaded in each available worker. Each call to [Connection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html#invoke) will be targeting an available worker. Use this strategy if the module doesn't maintain information between invocations (stateless). + * dedicated | The module is loaded in one worker. Each call to [Connection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers-Connection.html#invoke) will be targeting a same worker. Use this strategy if the module maintains information from previous invocations or communication between main and worker threads needs to be stateful. + * local | The module is loaded in the main thread. Use this strategy if when using the worker framework API while disabling the use of workers. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-workers.html#open) + * + * @default distributed + */ + strategy?: any; } - export const Connection: ConnectionConstructor; - /** * A convenience module for importing [Geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html) classes when developing with [TypeScript](https://developers.arcgis.com/javascript/latest/guide/typescript-setup/index.html). For example, rather than importing geometries one at a time like this: * @@ -1867,6 +2091,213 @@ declare namespace __esri { radiusUnit?: string; } + /** + * Converts between [points](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) and formatted coordinates notation strings such as: + * * decimal degrees + * * degrees, minutes, and seconds + * * U.S. National Grid (USNG) + * * Military Grid Reference System (MGRS). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html) + */ + interface coordinateFormatter { + /** + * Parses coordinates in latitude/longitude notation, and returns a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) representing that location. The coordinates may use decimal degrees, degrees and decimal minutes, or degrees, minutes, and seconds format. The spatial reference provided must have an ellipsoid and datum matching those used by the source of the latitude/longitude string. If no spatial reference is provided, it is assumed the latitude/longitude coordinates are in WGS84. **Supported characters** + * + * | Symbol | Character | Name | Unicode number | HTML code | + * | --- | --- | --- | --- | --- | + * | Degree | * | Asterisk | U+002A | &#42; | + * | | ^ | Circumflex Accent | U+005E | &#94;| + * | | ~ | Tilde | U+007E | &#126; | + * | | ° | Degree Sign | U+00B0 | &#176; | + * | Minute | ' | Apostrophe | U+0027 | &#39; | + * | | ′ | Prime | U+2032 | &#8242; | + * | Second | " | Quotation Mark | U+0022 | &#34; | + * + * The latitude/longitude string may contain leading and trailing whitespace, and may also contain a space, comma, or vertical bar symbol to separate the latitude from the longitude. It may also contain the characters 'N', 'S', 'E' and 'W', or use a minus (-) symbol to indicate the hemisphere of each value. Latitude/longitude notation examples: + * * 55 56 39.123N 003 09 43.034W + * * 55°56′39″N 3°09′43″W + * * 55~56.65205', -003~09.71723' + * * 55.9442008* | -3.1619539* + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#fromLatitudeLongitude) + * + * @param coordinates The latitude/longitude notation string for the coordinates. + * @param spatialReference A spatial reference object representing a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm). If `null`, WGS84 will be used. + * + */ + fromLatitudeLongitude(coordinates: string, spatialReference?: SpatialReference): Point; + /** + * Parses coordinates in Military Grid Reference System (MGRS) notation, and returns a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) representing that location. The spatial reference provided must have an ellipsoid and datum matching those used by the source of the MGRS string. If no spatial reference is provided, it is assumed the MGRS string is referenced to WGS84. Note that the choice between zone 01 and 60 has no impact when reading from an MGRS notation string. The MGRS string can contain leading and trailing whitespace and can have whitespace between the grid zone designator, the 100km square identifier, and the numerical eastings and northings. MGRS notation examples: + * * 30UVG898998 + * * 30UVG 89885 99877 + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#fromMgrs) + * + * @param coordinates The MGRS notation string for the coordinates. + * @param spatialReference A spatial reference object representing a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) referenced by the MGRS coordinates. If `null`, WGS84 will be used. + * @param conversionMode The mode used by the given MGRS coordinates. **Known values**: automatic | new-180-in-zone-01 | new-180-in-zone-60 | old-180-in-zone-01 | old-180-in-zone-60 + * + */ + fromMgrs(coordinates: string, spatialReference: SpatialReference, conversionMode: string): Point; + /** + * Parses coordinates in United States National Grid (USNG) notation, and returns a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) representing that location. The spatial reference provided must have an ellipsoid and datum matching those used by the source of the USNG string. If no spatial reference is provided and the USNG string is suffixed with "(NAD 27)", it is assumed the USNG string is referenced to NAD 27. If no spatial reference is provided and no such suffix exists, it is assumed the USNG string is referenced to WGS84. USNG notation examples: + * * 13TFJ 23 59 + * * 13TFJ2374159574 + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#fromUsng) + * + * @param coordinates The USNG notation string for the coordinates. + * @param spatialReference A spatial reference object representing a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) that the USNG coordinates are in. If `null`, WGS84 will be used. + * + */ + fromUsng(coordinates: string, spatialReference?: SpatialReference): Point; + /** + * Parses coordinates in Universal Transverse Mercator (UTM) notation, and returns a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) representing that location. The spatial reference provided must have an ellipsoid and datum matching those used by the source of the UTM string. If no spatial reference is provided, it is assumed the UTM string is referenced to WGS84. The UTM string can contain leading and trailing whitespace and can have whitespace between the zone and latitude designator and the numerical eastings and northings. UTM notation examples: + * * 30U 489885 6199877 + * * 30U4898856199877 + * * 30N 489885 6199877 (using N/S indicator) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#fromUtm) + * + * @param coordinates The UTM notation string for the coordinates. + * @param spatialReference A spatial reference object representing a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) that the UTM coordinates are in. If `null`, WGS84 will be used. + * @param conversionMode The latitude notation scheme used by the given UTM coordinates, either a latitudinal band, or a hemisphere designator. **Known values**: latitude-band-indicators | north-south-indicators + * + */ + fromUtm(coordinates: string, spatialReference: SpatialReference, conversionMode: string): Point; + /** + * Indicates if all dependencies of this module have been loaded. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#isLoaded) + * + * + */ + isLoaded(): boolean; + /** + * Indicates if this module is supported in the current browser. The browser must support [WebAssembly](https://caniuse.com/#feat=wasm). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#isSupported) + * + * + */ + isSupported(): boolean; + /** + * Load this module's dependencies. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#load) + * + * + */ + load(): IPromise; + /** + * Returns formatted coordinates in latitude/longitude notation representing the given point's location. The latitude/longitude string will contain a space separating the latitude from the longitude value, and the characters 'N' or 'S', and 'E' and 'W', to indicate the hemisphere of each value. The string will also contain spaces separating the components (degrees, minutes, seconds) of each value. The precision of the output is controlled by both the `format` and `decimalPlaces` parameters. For example: + * + * | Decimal places | format | Example output | Angular precision | Approximate precision | + * | --- | --- | --- | --- | --- | + * | 0 | dd | 056N 0003W | 1deg | 100km | + * | 1 | dd | 55.9N 003.2W | 0.1deg | 10km | + * | 2 | dd | 55.94N 003.16W | 0.01deg | 1km | + * | 3 | dd | 55.944N 003.162W | 0.001deg | 100m | + * | 0 | ddm | 55 057N 003 010W | 1min | 2km | + * | 1 | ddm | 55 56.7N 003 09.7W | 0.1min | 200m | + * | 2 | ddm | 55 56.65N 003 09.72W | 0.01min | 20m | + * | 3 | ddm | 55 56.650N 003 09.717W | 0.001min | 2m | + * | 0 | dms | 55 56 039N 003 09 043W | 1sec | 30m | + * | 1 | dms | 55 56 39.1N 003 09 43.0W | 0.1sec| 3m | + * | 2 | dms | 55 56 39.12N 003 09 43.03W | 0.01sec | 300mm | + * | 3 | dms | 55 56 39.123N 003 09 43.034W | 0.001sec | 30mm | + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#toLatitudeLongitude) + * + * @param point The location to be represented as a formatted latitude/longitude string. The point's [spatial reference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html#spatialReference) should either be WGS84 or another [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm). + * @param format The mode to use when formatting the latitude/longitude string. **Known values**: dd | ddm | dms + * @param decimalPlaces The number of decimal places to use, it should be an integer from 0 to 16. + * + */ + toLatitudeLongitude(point: Point, format: string, decimalPlaces?: number): string; + /** + * Returns formatted coordinates in Military Grid Reference System (MGRS) notation representing the given point's location. Note that the choice between zone 01 and 60 has an impact only when generating the MGRS notation string for a point with longitude of exactly 180deg. The precision value controls the number of digits used to represent each numerical easting and northing value within the MGRS string. For example: + * + * | precision | add_spaces | Example output | Approximate precision | + * | --- | --- | --- | --- | + * | 0 | false | 30UVG | 100km | + * | 1 | false | 30UVG89 | 10km | + * | 2 | false | 30UVG8999 | 1km | + * | 3 | false | 30UVG898998 | 100m | + * | 4 | false | 30UVG89889988 | 10m | + * | 5 | false | 30UVG8988499881 | 1m | + * | 0 | true | 30U VG | 100km | + * | 1 | true | 30U VG 8 9 | 10m | + * | 2 | true | 30U VG 89 99 | 1km | + * | 3 | true | 30U VG 898 998 | 100m | + * | 4 | true | 30U VG 8988 9988 | 10m | + * | 5 | true | 30U VG 89884 99881 | 1m | + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#toMgrs) + * + * @param point The location to be represented in MGRS notation. The point's [spatial reference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html#spatialReference) should either be WGS84 or another [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) + * @param conversionMode The mode to use for the returned MGRS notation string. **Known values**: automatic | new-180-in-zone-01 | new-180-in-zone-60 | old-180-in-zone-01 | old-180-in-zone-60 + * @param precision The precision with which to represent the coordinates, it should be an integer from 0 to 8. + * @param addSpaces If `false`, the generated string will contain no spaces. If `true`, a space separates the grid zone designator, the 100km square identifier, and the numerical easting and northing values. + * + */ + toMgrs(point: Point, conversionMode: string, precision?: number, addSpaces?: boolean): string; + /** + * Returns formatted coordinates in United States National Grid (USNG) notation representing the given point's location. The precision value controls the number of digits used to represent each numerical easting and northing value within the USNG string. For example: + * + * | precision | add_spaces | Example output | Approximate precision | + * | --- | --- | --- | --- | + * | 0 | false | 13TFJ | 100km | + * | 1 | false | 13TFJ25 | 10km | + * | 2 | false | 13TFJ2359 | 1km | + * | 3 | false | 13TFJ237595 | 100m | + * | 4 | false | 13TFJ23745951 | 10m | + * | 5 | false | 13TFJ2374359512 | 1m | + * | 0 | true | 13T FJ | 100km | + * | 1 | true | 13T FJ 2 5 | 10m | + * | 2 | true | 13T FJ 23 59 | 1km | + * | 3 | true | 13T FJ 237 595 | 100m | + * | 4 | true | 13T FJ 2374 5951 | 10m | + * | 5 | true | 13T FJ 23743 59512 | 1m | + * | 4* | false | 13TFJ23795929 (NAD 27) | 10m | + * | 2* | true | 13T FJ 23 59 (NAD 27) | 1km | + * * *When the point's spatial reference is based on NAD 27.* + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#toUsng) + * + * @param point The location to be represented in USNG notation. The point's [spatial reference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html#spatialReference) should either be WGS84 or another [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm). + * @param precision The precision with which to represent the coordinates, it should be an integer from 0 to 8. + * @param addSpaces If `false`, the generated string will contain no spaces. If `true`, a space separates the grid zone designator, the 100km square identifier, and the numerical easting and northing values. + * + */ + toUsng(point: Point, precision?: number, addSpaces?: boolean): string; + /** + * Returns formatted coordinates in Universal Transverse Mercator (UTM) notation representing the given point's location. Example output for a point in the southern hemisphere: + * + * | conversionMode | add_spaces | Example output | + * | --- | --- | --- | + * | latitude-band-indicators | false | 30U4898846199881 | + * | latitude-band-indicators | true | 30U 489884 6199881 | + * | north-south-indicators | false | 30N4898846199881 | + * | north-south-indicators | true | 30N 489884 6199881 | + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-coordinateFormatter.html#toUtm) + * + * @param point The location to be represented in UTM notation. The point's [spatial reference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html#spatialReference) should either be WGS84 or another [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) + * @param conversionMode The latitude notation scheme to use in the returned UTM notation string, either a latitudinal band, or a hemisphere designator. **Known values**: latitude-band-indicators | north-south-indicators + * @param addSpaces If `false`, the generated string will contain no spaces. If `true`, a space separates the UTM zone and latitude designator and each numerical easting and northing value. + * + */ + toUtm(point: Point, conversionMode: string, addSpaces?: boolean): string; + } + + export const coordinateFormatter: coordinateFormatter; + interface Extent extends Geometry { /** * The center point of the extent in map units. @@ -2165,7 +2596,7 @@ declare namespace __esri { */ spatialReference: SpatialReference; /** - * The geometry type. **Possible Values:** point | multipoint | polyline | polygon | extent + * The geometry type. **Possible Values:** point | multipoint | polyline | polygon | extent | mesh * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html#type) */ @@ -2218,7 +2649,7 @@ declare namespace __esri { interface geometryEngine { /** - * Creates planar (or Euclidean) buffer polygons at a specified distance around the input geometries. The GeometryEngine has two methods for buffering geometries client-side: buffer and [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#geodesicBuffer). Use caution when deciding which method to use. As a general rule, use [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#geodesicBuffer) if the input geometries have a spatial reference of either WGS84 (wkid: 4326) or [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator). Only use buffer (this method) when attempting to buffer geometries with a [projected coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) other than Web Mercator. If you need to buffer geometries with a [geographic coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). + * Creates planar (or Euclidean) buffer polygons at a specified distance around the input geometries. The GeometryEngine has two methods for buffering geometries client-side: buffer and [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#geodesicBuffer). Use caution when deciding which method to use. As a general rule, use [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#geodesicBuffer) if the input geometries have a spatial reference of either WGS84 (wkid: 4326) or [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator). Only use buffer (this method) when attempting to buffer geometries with a [projected coordinate system](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) other than Web Mercator. If you need to buffer geometries with a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#buffer) * @@ -2384,7 +2815,7 @@ declare namespace __esri { */ geodesicArea(geometry: Polygon, unit: string | number): number; /** - * Creates geodesic buffer polygons at a specified distance around the input geometries. When calculating distances, this method takes the curvature of the earth into account, which provides highly accurate results when dealing with very large geometries and/or geometries that spatially vary on a global scale where one projected coordinate system could not accurately plot coordinates and measure distances for all the geometries. This method only works with WGS84 (wkid: 4326) and [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator) spatial references. In general, if your input geometries are assigned one of those two spatial references, you should always use geodesicBuffer() to obtain the most accurate results for those geometries. If needing to buffer points assigned a [projected coordinate system other than Web Mercator](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/), use [buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#buffer) instead. If the input geometries have a [geographic coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). + * Creates geodesic buffer polygons at a specified distance around the input geometries. When calculating distances, this method takes the curvature of the earth into account, which provides highly accurate results when dealing with very large geometries and/or geometries that spatially vary on a global scale where one projected coordinate system could not accurately plot coordinates and measure distances for all the geometries. This method only works with WGS84 (wkid: 4326) and [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator) spatial references. In general, if your input geometries are assigned one of those two spatial references, you should always use geodesicBuffer() to obtain the most accurate results for those geometries. If needing to buffer points assigned a [projected coordinate system other than Web Mercator](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm), use [buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#buffer) instead. If the input geometries have a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#geodesicBuffer) * @@ -2636,7 +3067,7 @@ declare namespace __esri { interface geometryEngineAsync { /** - * Creates planar (or Euclidean) buffer polygons at a specified distance around the input geometries. The GeometryEngine has two methods for buffering geometries client-side: buffer and [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#geodesicBuffer). Use caution when deciding which method to use. As a general rule, use [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#geodesicBuffer) if the input geometries have a spatial reference of either WGS84 (wkid: 4326) or [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator). Only use buffer (this method) when attempting to buffer geometries with a [projected coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) other than Web Mercator. If you need to buffer geometries with a [geographic coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). + * Creates planar (or Euclidean) buffer polygons at a specified distance around the input geometries. The GeometryEngine has two methods for buffering geometries client-side: buffer and [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#geodesicBuffer). Use caution when deciding which method to use. As a general rule, use [geodesicBuffer](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#geodesicBuffer) if the input geometries have a spatial reference of either WGS84 (wkid: 4326) or [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator). Only use buffer (this method) when attempting to buffer geometries with a [projected coordinate system](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) other than Web Mercator. If you need to buffer geometries with a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#buffer) * @@ -2802,7 +3233,7 @@ declare namespace __esri { */ geodesicArea(geometry: Polygon, unit: string | number): IPromise; /** - * Creates geodesic buffer polygons at a specified distance around the input geometries. When calculating distances, this method takes the curvature of the earth into account, which provides highly accurate results when dealing with very large geometries and/or geometries that spatially vary on a global scale where one projected coordinate system could not accurately plot coordinates and measure distances for all the geometries. This method only works with WGS84 (wkid: 4326) and [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator) spatial references. In general, if your input geometries are assigned one of those two spatial references, you should always use geodesicBuffer() to obtain the most accurate results for those geometries. If needing to buffer points assigned a [projected coordinate system other than Web Mercator](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/), use [buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#buffer) instead. If the input geometries have a [geographic coordinate system](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). + * Creates geodesic buffer polygons at a specified distance around the input geometries. When calculating distances, this method takes the curvature of the earth into account, which provides highly accurate results when dealing with very large geometries and/or geometries that spatially vary on a global scale where one projected coordinate system could not accurately plot coordinates and measure distances for all the geometries. This method only works with WGS84 (wkid: 4326) and [Web Mercator](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#isWebMercator) spatial references. In general, if your input geometries are assigned one of those two spatial references, you should always use geodesicBuffer() to obtain the most accurate results for those geometries. If needing to buffer points assigned a [projected coordinate system other than Web Mercator](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm), use [buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#buffer) instead. If the input geometries have a [geographic coordinate system](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) other than WGS84 (wkid: 4326), use [GeometryService.buffer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#buffer). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngineAsync.html#geodesicBuffer) * @@ -3085,6 +3516,538 @@ declare namespace __esri { vertCRS?: string; } + interface Mesh extends Geometry { + /** + * An array of mesh components that can be used to apply materials to different regions of the same mesh. There are three common usage patterns for components. 1. **Specify a material for the whole mesh.** In this case, use a single component with only a material (leaving faces as `null`). 2. **Reuse vertex attributes.** When modeling continuous surfaces, it can be convenient to only specify vertices once and then simply refer to them. In this case, use a single component with faces set to index the vertex attributes that form triangles. 3. **Specify multiple materials for the same mesh.** In this case, use multiple components with faces that determine to which region of the mesh the material of the component applies. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#components) + */ + components: MeshComponent[]; + /** + * For Mesh, the type is always `mesh`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#type) + */ + readonly type: "mesh"; + /** + * Object describing the attributes of each vertex of the mesh. Vertex attributes are flat numerical arrays that describe the position (mandatory), normal (used for lighting calculations and shading) and uv (used for mapping material images to the mesh surface) for each vertex. Vertex attributes can be addressed by indices specified in the components [faces](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#faces) property. If the mesh does not contain any components, or if a component does not specify any faces, then the vertex attributes are interpreted as if each consecutive vertex triple makes up a triangle. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + vertexAttributes: MeshVertexAttributes; + + /** + * Adds a component to the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#addComponent) + * + * @param component The component to add. + * + */ + addComponent(component: MeshComponent): void; + /** + * Centers the mesh at the specified location without changing its scale. The mesh will be modified in place. To modify a copy of the mesh instead, use [clone()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#clone) before calling [centerAt()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#centerAt). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#centerAt) + * + * @param location The location at which to center the mesh. + * @param params Additional parameters. + * @param params.geographic Indicates whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the offset applied to center the mesh is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * @param params.origin The origin at which to center. If not specified, the mesh will be centered at the mesh extent center. + * + */ + centerAt(location: Point, params?: MeshCenterAtParams): Mesh; + /** + * Creates a deep clone of the Mesh object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#clone) + * + * + */ + clone(): Mesh; + /** + * Offsets the mesh geometry by the specified distance in x, y, and z. The units of x, y, and z are the units of the spatial reference. When the offset is applied geographically (default for either WGS84 or WebMercator), then the offsets are interpreted in meters. The mesh will be modified in place. To modify a copy of the mesh instead, use [clone()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#clone) before calling [offset()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#offset). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#offset) + * + * @param dx The amount to offset the geometry in the x direction. + * @param dy The amount to offset the geometry in the y direction. + * @param dz The amount to offset the geometry in the z direction. + * @param params Additional parameters. + * @param params.geographic Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the offset is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * + */ + offset(dx: number, dy: number, dz: number, params?: MeshOffsetParams): Mesh; + /** + * Removes a component from the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#removeComponent) + * + * @param component The component to remove. + * + */ + removeComponent(component: MeshComponent): void; + /** + * Rotates the mesh geometry around its x, y and z axis (in that order). For each rotation angle, the rotation direction is clockwise when looking in the direction of the respective axis. The mesh will be modified in place. To modify a copy of the mesh instead, use [clone()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#clone) before calling [rotate()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#rotate). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#rotate) + * + * @param angleX The angle by which to rotate around the x-axis (in degrees). + * @param angleY The angle by which to rotate around the y-axis (in degrees). + * @param angleZ The angle by which to rotate around the z-axis (in degrees). + * @param params Additional parameters. + * @param params.geographic Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the rotation is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * @param params.origin The origin around which to rotate. If not specified, the mesh will be rotated around the mesh extent center. + * + */ + rotate(angleX: number, angleY: number, angleZ: number, params?: MeshRotateParams): Mesh; + /** + * Notifies that any cached values that depend on vertex attributes need to be recalculated. Use this method after modifying the vertex attributes in place so that values that depend on them (such as the calculation of the extent) are recalculated accordingly. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributesChanged) + * + * + */ + vertexAttributesChanged(): void; + } + + interface MeshConstructor { + /** + * A mesh is a general, client-side 3D [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html) type composed of [vertices with attributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes). The vertices include geographic position, normals that affect lighting/shading and uv coordinates that can be used to map images to the mesh. Vertices are combined into 3D primitives to render the mesh in the scene (only triangle primitives are currently supported). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html) + */ + + new(properties?: MeshProperties): Mesh; + + + /** + * Creates a mesh representing a box. The spatial reference of the resulting mesh is the same as the location where it is placed. **Box UV coordinate space** The box geometry will have UV coordinates generated according to the following scheme: + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + * + * @param location The location bottom center of the box. + * @param params Additional parameters. + * @param params.size A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * @param params.geographic Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * @param params.material The material to be used for the mesh. + * @param params.imageFace The face for generating image uv coordinates. By default, a single set of unwrapped UV coordinates are generated for all the faces. By setting the `imageFace` parameter to one of `east`, `west`, `north`, `south`, `up` or `down`, the specified face will have full sized UV coordinates while the other faces will pertain their regular unwrapped UV coordinates. This is useful for applying an image only to a single face of the box. The provided `material` parameter will be applied to the specified `imageFace`. The resulting mesh will have two components, the first contains the selected image face and the second contains the other faces of the box. + * + */ + createBox(location: Point, params?: MeshCreateBoxParams): Mesh; + /** + * Creates a mesh representing a cylinder. The spatial reference of the resulting mesh is the same as the location where it is placed. **Cylinder UV coordinate space** The cylinder geometry will have UV coordinates generated according to the following scheme (example is shown for 8 vertices cylinder): + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + * + * @param location The location of the bottom center of the cylinder. + * @param params Additional parameters. + * @param params.size A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * @param params.geographic Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * @param params.densificationFactor The additional number of subdivisions for generating the mesh representing a cylinder. A densificationFactor parameter of 0 will generate a default of 16 vertices to approximate the cylinder. A densificationFactor of 1 will generate 32 vertices, etc. The larger the densificationFactor, the better the mesh will approximate a perfect cylinder (at the cost of processing and rendering performance). + * @param params.material The material to be used for the mesh. + * + */ + createCylinder(location: Point, params?: MeshCreateCylinderParams): Mesh; + /** + * Creates a new mesh geometry from a polygon geometry. The resulting mesh contains only a position vertex attribute and a single component with faces. The default shading will be set to `flat`. The spatial reference of the resulting mesh is the same as the input polygon. The resulting mesh will not contain any uv nor normal vertex attributes. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createFromPolygon) + * + * @param polygon The input polygon. + * @param params Optional parameters. + * @param params.material The material to be used for the mesh. + * + */ + createFromPolygon(polygon: Polygon, params?: MeshCreateFromPolygonParams): Mesh; + /** + * Creates a mesh representing a plane. The spatial reference of the resulting mesh is the same as the location where it is placed. A plane consists of two triangles and may be conveniently oriented at creation time. **Plane UV coordinate space** The plane geometry will have UV coordinates generated according to the following scheme: + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + * + * @param location The location of the bottom center of the plane. + * @param params Additional parameters. + * @param params.size A uniform size value or an object containing individual values width and height. The unit of the size values is derived from the spatial reference of the provided location. + * @param params.facing Direction the plane is facing. Possible values are `east`, `west`, `north`, `south`, `up` and `down`. Defaults to `up`, + * @param params.geographic Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * @param params.material The material to be used for the mesh. + * + */ + createPlane(location: Point, params?: MeshCreatePlaneParams): Mesh; + /** + * Creates a mesh representing a sphere. The spatial reference of the resulting mesh is the same as the location where it is placed. **Sphere UV coordinate space** The sphere geometry will have UV coordinates generated according to the following scheme (example is shown for 8x8 vertices sphere): + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + * + * @param location The location of the bottom center of the sphere. + * @param params Additional parameters. + * @param params.size A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * @param params.geographic Indicates whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * @param params.densificationFactor The additional number of subdivisions for generating the mesh representing a sphere. A densificationFactor parameter of 0 will generate a default of 16-by-16 vertices to approximate the sphere. A densificationFactor of 1 will generate 32-by-32 vertices, etc. The larger the densificationFactor, the better the mesh will approximate a perfect sphere (at the cost of processing and rendering performance). + * @param params.material The material to be used for the mesh. + * + */ + createSphere(location: Point, params?: MeshCreateSphereParams): Mesh; + + fromJSON(json: any): Mesh; + } + + export const Mesh: MeshConstructor; + + interface MeshProperties extends GeometryProperties { + /** + * An array of mesh components that can be used to apply materials to different regions of the same mesh. There are three common usage patterns for components. 1. **Specify a material for the whole mesh.** In this case, use a single component with only a material (leaving faces as `null`). 2. **Reuse vertex attributes.** When modeling continuous surfaces, it can be convenient to only specify vertices once and then simply refer to them. In this case, use a single component with faces set to index the vertex attributes that form triangles. 3. **Specify multiple materials for the same mesh.** In this case, use multiple components with faces that determine to which region of the mesh the material of the component applies. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#components) + */ + components?: MeshComponentProperties[]; + /** + * Object describing the attributes of each vertex of the mesh. Vertex attributes are flat numerical arrays that describe the position (mandatory), normal (used for lighting calculations and shading) and uv (used for mapping material images to the mesh surface) for each vertex. Vertex attributes can be addressed by indices specified in the components [faces](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#faces) property. If the mesh does not contain any components, or if a component does not specify any faces, then the vertex attributes are interpreted as if each consecutive vertex triple makes up a triangle. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + vertexAttributes?: MeshVertexAttributesProperties; + } + + + export interface MeshCenterAtParams extends Object { + /** + * Indicates whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the offset applied to center the mesh is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#centerAt) + */ + geographic?: boolean; + /** + * The origin at which to center. If not specified, the mesh will be centered at the mesh extent center. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#centerAt) + */ + origin?: Point; + } + + + export interface MeshCreateBoxParams extends Object { + /** + * A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + size?: number | MeshCreateBoxParamsSize; + /** + * Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + geographic?: boolean; + /** + * The material to be used for the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + material?: MeshCreateBoxParamsMaterial; + /** + * The face for generating image uv coordinates. By default, a single set of unwrapped UV coordinates are generated for all the faces. By setting the `imageFace` parameter to one of `east`, `west`, `north`, `south`, `up` or `down`, the specified face will have full sized UV coordinates while the other faces will pertain their regular unwrapped UV coordinates. This is useful for applying an image only to a single face of the box. The provided `material` parameter will be applied to the specified `imageFace`. The resulting mesh will have two components, the first contains the selected image face and the second contains the other faces of the box. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + imageFace?: string; + } + + + export interface MeshCreateBoxParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + color?: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface MeshCreateBoxParamsSize extends Object { + /** + * The width of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + width?: number; + /** + * The depth of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + depth?: number; + /** + * The height of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createBox) + */ + height?: number; + } + + + export interface MeshCreateCylinderParams extends Object { + /** + * A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + size?: number | MeshCreateCylinderParamsSize; + /** + * Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + geographic?: boolean; + /** + * The additional number of subdivisions for generating the mesh representing a cylinder. A densificationFactor parameter of 0 will generate a default of 16 vertices to approximate the cylinder. A densificationFactor of 1 will generate 32 vertices, etc. The larger the densificationFactor, the better the mesh will approximate a perfect cylinder (at the cost of processing and rendering performance). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + densificationFactor?: number; + /** + * The material to be used for the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + material?: MeshCreateCylinderParamsMaterial; + } + + + export interface MeshCreateCylinderParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + color: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface MeshCreateCylinderParamsSize extends Object { + /** + * The width of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + width?: number; + /** + * The depth of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + depth?: number; + /** + * The height of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createCylinder) + */ + height?: number; + } + + + export interface MeshCreateFromPolygonParams extends Object { + /** + * The material to be used for the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createFromPolygon) + */ + material?: MeshCreateFromPolygonParamsMaterial; + } + + + export interface MeshCreateFromPolygonParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createFromPolygon) + */ + color?: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface MeshCreatePlaneParams extends Object { + /** + * A uniform size value or an object containing individual values width and height. The unit of the size values is derived from the spatial reference of the provided location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + size?: number | MeshCreatePlaneParamsSize; + /** + * Direction the plane is facing. Possible values are `east`, `west`, `north`, `south`, `up` and `down`. Defaults to `up`, + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + facing?: string; + /** + * Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + geographic?: boolean; + /** + * The material to be used for the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + material?: MeshCreatePlaneParamsMaterial; + } + + + export interface MeshCreatePlaneParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + color?: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface MeshCreatePlaneParamsSize extends Object { + /** + * The width of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + width?: number; + /** + * The height of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createPlane) + */ + height?: number; + } + + + export interface MeshCreateSphereParams extends Object { + /** + * A uniform size value or an object containing individual values width, height and depth. The unit of the size values is derived from the spatial reference of the provided location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + size?: number | MeshCreateSphereParamsSize; + /** + * Indicates whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the mesh is created in a Cartesian system with respect to the local coordinate system on the globe and sizes are specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + geographic?: boolean; + /** + * The additional number of subdivisions for generating the mesh representing a sphere. A densificationFactor parameter of 0 will generate a default of 16-by-16 vertices to approximate the sphere. A densificationFactor of 1 will generate 32-by-32 vertices, etc. The larger the densificationFactor, the better the mesh will approximate a perfect sphere (at the cost of processing and rendering performance). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + densificationFactor?: number; + /** + * The material to be used for the mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + material?: MeshCreateSphereParamsMaterial; + } + + + export interface MeshCreateSphereParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + color?: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface MeshCreateSphereParamsSize extends Object { + /** + * The width of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + width?: number; + /** + * The depth of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + depth?: number; + /** + * The height of the created mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#createSphere) + */ + height?: number; + } + + + export interface MeshOffsetParams extends Object { + /** + * Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the offset is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#offset) + */ + geographic?: boolean; + } + + + export interface MeshRotateParams extends Object { + /** + * Whether to georeference relative to the globe or the projected coordinate system (PCS). This parameter is only relevant for spatial references that can be used in both local and global viewing modes (currently only WebMercator). This parameter defaults to `true` for WebMercator and WGS84, and `false` for any other PCS. When true, the rotation is applied in a Cartesian system with respect to the local coordinate system on the globe and is specified in meters. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#rotate) + */ + geographic?: boolean; + /** + * The origin around which to rotate. If not specified, the mesh will be rotated around the mesh extent center. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#rotate) + */ + origin?: Point; + } + + + export interface MeshVertexAttributesProperties extends Object { + /** + * A flat array of vertex positions. Vertex positions have x, y and z coordinates and they should be in the spatial reference system of the geometry. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + position?: Float64Array | number[] | Float32Array; + /** + * A flat array of vertex uv coordinates (2 elements per vertex). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + uv?: Float32Array | number[] | Float64Array; + /** + * A flat array of the vertex normals (3 elements per vertex). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + normal?: Float32Array | number[] | Uint32Array; + } + + export interface MeshVertexAttributes extends AnonymousAccessor { + /** + * A flat array of vertex positions. Vertex positions have x, y and z coordinates and they should be in the spatial reference system of the geometry. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + position: Float64Array; + /** + * A flat array of vertex uv coordinates (2 elements per vertex). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + uv?: Float32Array; + /** + * A flat array of the vertex normals (3 elements per vertex). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) + */ + normal?: Float32Array; + } + interface Multipoint extends Geometry { /** * An array of points. @@ -3620,6 +4583,80 @@ declare namespace __esri { paths?: number[][][]; } + /** + * A client-side projection engine for converting geometries from one [SpatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html) to another. When projecting geometries the starting spatial reference must be specified on the input geometry. You can specify a specific geographic (datum) transformation for the [project](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#project) operation, or accept the default transformation if one is needed. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html) + */ + interface projection { + /** + * Returns the default geographic transformation used to convert the geometry from the input spatial reference to the output spatial reference. The default transformation is used when [projecting geometries](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#project) where the datum transformation is required but not specified in the `geographicTransformation` parameter. + * > **Known Limitations** + * * This method returns equation-based geographic transformations only. + * * Geographic transformations are returned with their maximum number of [steps](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformation.html#steps). Currently, number of steps is limited to 2. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#getTransformation) + * + * @param inSpatialReference The input spatial reference from which to project geometries. This is the spatial reference of the input geometries. + * @param outSpatialReference The spatial reference to which you are converting the geometries. + * @param extent An extent used to determine the suitability of the returned transformation. The extent will be re-projected to the `inSpatialReference` if it has a different spatial reference. + * + */ + getTransformation(inSpatialReference: SpatialReference | SpatialReferenceProperties, outSpatialReference: SpatialReference, extent?: Extent): GeographicTransformation; + /** + * Returns a list of all geographic transformations suitable to convert geometries from the input spatial reference to the specified output spatial reference. The list is ordered in descending order by suitability, with the most suitable being first in the list. + * > **Known Limitations** + * * This method returns all the suitable equation-based geographic transformations. + * * Geographic transformations are returned with their maximum number of [steps](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformation.html#steps). Currently, number of steps is limited to 2. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#getTransformations) + * + * @param inSpatialReference The spatial reference that the geometries are currently using. + * @param outSpatialReference The spatial reference to which you are converting the geometries to. + * @param extent An extent used to determine the suitability of the returned transformations. The extent will be re-projected to the input spatial reference if necessary. + * + */ + getTransformations(inSpatialReference: SpatialReference | SpatialReferenceProperties, outSpatialReference: SpatialReference, extent?: Extent): GeographicTransformation[]; + /** + * Indicates if all dependencies of this module have been loaded. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#isLoaded) + * + * + */ + isLoaded(): boolean; + /** + * Indicates if this module is supported in the browser. The browser must support [WebAssembly](https://caniuse.com/#feat=wasm). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#isSupported) + * + * + */ + isSupported(): boolean; + /** + * Loads this module's dependencies. This method must be called before [projecting](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#project) geometries. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#load) + * + * + */ + load(): IPromise; + /** + * Projects a geometry or an array of geometries to the specified output spatial reference. A default geographic transformation is used if not explicitly provided, but required. Use the [getTransformation()](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#getTransformation) method to find out which transformation is used by default for the given input and output spatial references. Note that you must [load](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#load) this module before attempting to project geometries. + * > **Known Limitations** This method uses the spatial reference of the first geometry as an input spatial reference. Therefore all geometries in the array must have the same spatial reference. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-projection.html#project) + * + * @param geometry The geometry or geometries to project. + * @param outSpatialReference The spatial reference to which you are converting the geometries' coordinates. + * @param geographicTransformation The geographic transformation used to transform the geometries. Specify this parameter to project a geometry when the default transformation is not appropriate for your requirements. + * + */ + project(geometry: Geometry | Geometry[], outSpatialReference: SpatialReference | SpatialReferenceProperties, geographicTransformation?: GeographicTransformation): Geometry | Geometry[]; + } + + export const projection: projection; + interface ScreenPoint extends Accessor { /** * X-coordinate in pixels relative to the top-left corner of the view. @@ -3701,7 +4738,7 @@ declare namespace __esri { */ readonly isWrappable: boolean; /** - * The well-known ID of a spatial reference. See [Projected Coordinate Systems](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) and [Geographic Coordinate Systems](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) for the list of supported spatial references. + * The well-known ID of a spatial reference. See [Projected Coordinate Systems](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) and [Geographic Coordinate Systems](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) for the list of supported spatial references. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#wkid) */ @@ -3758,7 +4795,7 @@ declare namespace __esri { interface SpatialReferenceProperties { /** - * The well-known ID of a spatial reference. See [Projected Coordinate Systems](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) and [Geographic Coordinate Systems](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) for the list of supported spatial references. + * The well-known ID of a spatial reference. See [Projected Coordinate Systems](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) and [Geographic Coordinate Systems](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) for the list of supported spatial references. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html#wkid) */ @@ -3771,6 +4808,123 @@ declare namespace __esri { wkt?: string; } + interface GeographicTransformation { + /** + * Geographic transformation steps. Each step represents a geographic transformation that will be used in the process of transforming coordinates from one geographic coordinate system to another. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformation.html#steps) + */ + steps: GeographicTransformationStep[]; + + /** + * Returns the inverse of the geographic transformation calling this method or `null` if the transformation is not invertible. The inverse of a transformation converts coordinates using the same method and parameters, but in the opposite direction of the original object. For example if the original object represents the `NAD_1983_HARN_To_NAD_1983_NSRS2007_1` transformation, then the inverse will transform from `NAD 83 (NSRS 2007)` to `NAD 83 (HARN)`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformation.html#getInverse) + * + * + */ + getInverse(): GeographicTransformation; + } + + interface GeographicTransformationConstructor { + /** + * Projecting your data between coordinate systems sometimes requires transforming between geographic coordinate systems. Geographic transformations are used to transform coordinates between spatial references that have different geographic coordinate systems, and thus different datums. Using the most suitable transformation ensures the best possible accuracy when converting geometries from one spatial reference to another. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformation.html) + */ + + + new(properties?: any): GeographicTransformation; + } + + export const GeographicTransformation: GeographicTransformationConstructor; + + interface GeographicTransformationStep { + /** + * Indicates with the geographic transformation is inverted. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformationStep.html#isInverse) + * + * @default false + */ + isInverse: boolean; + /** + * The well-known id (wkid) hat represents a known geographic transformation. See [Geographic datum transformations](https://developers.arcgis.com/java/10-2/guide/datum-transformations.htm#ESRI_SECTION1_7635FE2A60E6449898D5AD0ADE2CA0C3) for the list of supported equation-based geographic transformations. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformationStep.html#wkid) + */ + wkid: number; + /** + * The well-known text (wkt) that represents a known geographic transformation. See [Geographic datum transformations](https://developers.arcgis.com/java/10-2/guide/datum-transformations.htm#ESRI_SECTION1_7635FE2A60E6449898D5AD0ADE2CA0C3) for the list of supported equation-based geographic transformations. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformationStep.html#wkt) + */ + wkt: string; + + /** + * Gets the inverse of the geographic transformation step used to call this method or `null` if the transformation step is not invertible. The inverse of a transformation converts coordinates using the same method and parameters, but in the opposite direction of the original object. For example if the original object represents the `NAD_1983_HARN_To_NAD_1983_NSRS2007_1` transformation, then the inverse will transform from `NAD 83 (NSRS 2007)` to `NAD 83 (HARN)`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-GeographicTransformationStep.html#getInverse) + * + * + */ + getInverse(): GeographicTransformationStep; + } + + interface GeographicTransformationStepConstructor { + + + + new(properties?: any): GeographicTransformationStep; + } + + export const GeographicTransformationStep: GeographicTransformationStepConstructor; + + interface ImageMeshColor extends Accessor { + /** + * For ImageMeshColor the type is always `image`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html#type) + */ + readonly type: "image"; + /** + * The url to the image resource. This can either be a remote url (absolute or relative) or a data url. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html#url) + */ + url: string; + + /** + * Creates a deep clone. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html#clone) + * + * + */ + clone(): ImageMeshColor; + } + + interface ImageMeshColorConstructor { + /** + * ImageMeshColor is a type of mesh color that represents an image mapped to the mesh by its uv vertex attributes. ImageMeshColor instances can be used with the [MeshComponent.material.color](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) property. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html) + */ + + new(properties?: ImageMeshColorProperties): ImageMeshColor; + } + + export const ImageMeshColor: ImageMeshColorConstructor; + + interface ImageMeshColorProperties { + /** + * The url to the image resource. This can either be a remote url (absolute or relative) or a data url. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html#url) + */ + url?: string; + } + interface jsonUtils { /** @@ -3778,7 +4932,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-jsonUtils.html#fromJSON) * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geometry_objects/02r3000000n1000000/) for examples of the structure of various input JSON objects. + * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](https://developers.arcgis.com/documentation/common-data-types/overview-of-common-data-types.htm) for examples of the structure of various input JSON objects. * */ fromJSON(json: any): Geometry; @@ -3795,6 +4949,200 @@ declare namespace __esri { export const jsonUtils: jsonUtils; + interface MeshComponent extends Accessor { + /** + * A flat array of indices that refer to vertices in the [vertexAttributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) of the mesh to which the component belongs. Each triple of indices defines a triangle to render (i.e. the faces array must always have a length that is a multiple of 3). Note that the indices refer to **vertices** and not to the index of the first coordinate of a vertex in the [vertexAttributes.position](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) array. If faces is `null`, then all the vertices in the mesh will be rendered as triangles for this component. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#faces) + */ + faces: Uint32Array; + /** + * The material determines how the component is visualized. Materials specify a color that may either be a single color value (a [ValueMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html)) or an image ( an [ImageMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html)), which is mapped to the uv coordinate specified for each vertex in the mesh vertex attributes. The material property supports a number of convenience autocast types, including hex color strings and well known color strings (autocasts to [ValueMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html)), or strings representing urls, HTMLImageElements or HTMLCanvasElements (autocasts to [ImageMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html)). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) + */ + material: MeshComponentMaterial; + /** + * Specifies the type of normals used for lighting. This determines whether the object has a smooth or an angular appearance. The following shading types are supported: + * + * | Type | Description | + * |------|-------------| + * | source | Shading uses the normals as defined in the vertex attributes. If no normals are defined, then shading defaults back to `flat` | + * | flat | Shading uses normals created per triangle face. This type of shading is good for objects with sharp edges such as boxes. | + * | smooth | Shading uses per-vertex normals that average the normals of all the faces a vertex is a part of. This type of shading is good for meshes that approximate curved surfaces such as spheres. | + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#shading) + */ + shading: string; + + /** + * Creates a deep clone. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#clone) + * + * + */ + clone(): MeshComponent; + } + + interface MeshComponentConstructor { + /** + * The MeshComponent class is used to apply one or more materials to a single [Mesh](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html). The [faces](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#faces) property is a flat array of indices in the mesh [vertexAttributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) and defines the region of vertices in the mesh on which to apply the material. Each triple of values in the flat array of indices specifies a triangle to be rendered. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html) + */ + + new(properties?: MeshComponentProperties): MeshComponent; + } + + export const MeshComponent: MeshComponentConstructor; + + interface MeshComponentProperties { + /** + * A flat array of indices that refer to vertices in the [vertexAttributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) of the mesh to which the component belongs. Each triple of indices defines a triangle to render (i.e. the faces array must always have a length that is a multiple of 3). Note that the indices refer to **vertices** and not to the index of the first coordinate of a vertex in the [vertexAttributes.position](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Mesh.html#vertexAttributes) array. If faces is `null`, then all the vertices in the mesh will be rendered as triangles for this component. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#faces) + */ + faces?: Uint32Array | number[] | Uint16Array; + /** + * The material determines how the component is visualized. Materials specify a color that may either be a single color value (a [ValueMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html)) or an image ( an [ImageMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html)), which is mapped to the uv coordinate specified for each vertex in the mesh vertex attributes. The material property supports a number of convenience autocast types, including hex color strings and well known color strings (autocasts to [ValueMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html)), or strings representing urls, HTMLImageElements or HTMLCanvasElements (autocasts to [ImageMeshColor](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ImageMeshColor.html)). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) + */ + material?: MeshComponentMaterialProperties; + /** + * Specifies the type of normals used for lighting. This determines whether the object has a smooth or an angular appearance. The following shading types are supported: + * + * | Type | Description | + * |------|-------------| + * | source | Shading uses the normals as defined in the vertex attributes. If no normals are defined, then shading defaults back to `flat` | + * | flat | Shading uses normals created per triangle face. This type of shading is good for objects with sharp edges such as boxes. | + * | smooth | Shading uses per-vertex normals that average the normals of all the faces a vertex is a part of. This type of shading is good for meshes that approximate curved surfaces such as spheres. | + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#shading) + */ + shading?: string; + } + + + export interface MeshComponentMaterialProperties extends Object { + /** + * the material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) + */ + color?: ValueMeshColorProperties | ImageMeshColorProperties; + } + + export interface MeshComponentMaterial extends AnonymousAccessor { + /** + * the material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) + */ + color: ValueMeshColor | ImageMeshColor; + } + + + interface meshUtils { + /** + * Creates a mesh geometry by sampling elevation data from an elevation service on a regular grid. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#createFromElevation) + * + * @param source The source from which to query the elevation data. + * @param extent The extent from which to create the mesh. + * @param params Optional parameters. + * @param params.material The material. + * @param params.demResolution Controls the horizontal resolution (cell size) in meters from which elevation data is sampled (defaults to `auto`). See [ElevationLayer.queryElevation](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#queryElevation) for more details on the different settings. + * + */ + createFromElevation(source: ElevationLayer | Ground | ElevationSampler, extent: Extent, params?: meshUtilsCreateFromElevationParams): IPromise; + /** + * Georeferences vertices specified in a Cartesian coordinate system. This is useful when converting general 3D model meshes not typically georeferenced. This method operates on mesh vertex attributes and will convert positions and normals (if specified) from a local (0, 0, 0) Cartesian system to the properly georeferenced coordinates at the specified location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#georeference) + * + * @param vertexAttributes The position and normal buffers to georeference. + * @param location The location at which to georeference the position and normal buffers. + * @param params Optional parameters. + * @param params.geographic Indicates whether to georeference relative to the globe or the projected coordinate system. + * + */ + georeference(vertexAttributes: VertexAttributes, location: Point, params?: meshUtilsGeoreferenceParams): VertexAttributes; + /** + * Merges multiple meshes into a single mesh. All mesh geometries must be in the same spatial reference. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#merge) + * + * @param geometries One or more meshes. + * + */ + merge(geometries: Mesh[]): Mesh; + } + + export const meshUtils: meshUtils; + + /** + * Represents the position and normal vertex attribute buffers of a mesh. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#VertexAttributes) + */ + export interface VertexAttributes extends Object { + /** + * The position buffer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#VertexAttributes) + */ + position: Float64Array; + /** + * The normal buffer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#VertexAttributes) + */ + normal?: Float32Array; + } + + + export interface meshUtilsCreateFromElevationParams extends Object { + /** + * The material. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#createFromElevation) + */ + material?: meshUtilsCreateFromElevationParamsMaterial; + /** + * Controls the horizontal resolution (cell size) in meters from which elevation data is sampled (defaults to `auto`). See [ElevationLayer.queryElevation](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#queryElevation) for more details on the different settings. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#createFromElevation) + * + * @default auto + */ + demResolution?: number | string; + } + + + export interface meshUtilsCreateFromElevationParamsMaterial extends Object { + /** + * The material color. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#createFromElevation) + */ + color?: ValueMeshColor | ImageMeshColor | string | HTMLImageElement | HTMLCanvasElement | number[]; + } + + + export interface meshUtilsGeoreferenceParams extends Object { + /** + * Indicates whether to georeference relative to the globe or the projected coordinate system. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-meshUtils.html#georeference) + */ + geographic?: boolean; + } + interface normalizeUtils { /** @@ -3811,6 +5159,51 @@ declare namespace __esri { export const normalizeUtils: normalizeUtils; + interface ValueMeshColor extends Accessor { + /** + * For ValueMeshColor the type is always `value`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html#type) + */ + readonly type: "value"; + /** + * The color value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html#value) + */ + value: Color; + + /** + * Creates a deep clone. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html#clone) + * + * + */ + clone(): ValueMeshColor; + } + + interface ValueMeshColorConstructor { + /** + * ValueMeshColor is a type of mesh color that represents a single uniform color to be applied to a mesh component. ValueMeshColor instances can be used with the [MeshComponent.material.color](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-MeshComponent.html#material) property. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html) + */ + + new(properties?: ValueMeshColorProperties): ValueMeshColor; + } + + export const ValueMeshColor: ValueMeshColorConstructor; + + interface ValueMeshColorProperties { + /** + * The color value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-support-ValueMeshColor.html#value) + */ + value?: Color | number[] | string; + } + interface webMercatorUtils { /** @@ -4025,6 +5418,17 @@ declare namespace __esri { * */ clone(): Ground; + /** + * Creates an elevation sampler for the given extent by querying the ground layers for elevation data and caching it so values may be sampled quickly afterwards. The sampler uses the elevation data from the first layer that has data available. For getting elevation data from a specific layer use [ElevationLayer.createElevationSampler()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-Ground.html#createElevationSampler) + * + * @param extent The extent for which to create the sampler. + * @param options Additional sampler options. + * @param options.noDataValue The value to use when there is no data available. + * + */ + createElevationSampler(extent: Extent, options?: GroundCreateElevationSamplerOptions): IPromise; /** * Queries the ground layer services for elevation values for the given geometry. The returned result contains a copy of the geometry with z-values sampled from elevation data from the first layer that has data available. * @@ -4089,6 +5493,18 @@ declare namespace __esri { } + export interface GroundCreateElevationSamplerOptions extends Object { + /** + * The value to use when there is no data available. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-Ground.html#createElevationSampler) + * + * @default 0 + */ + noDataValue?: number; + } + + export interface GroundQueryElevationOptions extends Object { /** * Indicates whether to return additional sample information for each sampled coordinate. @@ -4248,7 +5664,7 @@ declare namespace __esri { dialog: any; /** - * When accessing secure resources via Oauth 2.0 from ArcGIS.com or one of its sub-domains the IdentityManager redirects the user to the ArcGIS.com or Portal for ArcGIS sign-in page. Once the user successfully logs in they are redirected back to the application. Use this method if the application needs to execute custom logic before the page is redirected. The IdentityManager calls the custom handler function with an object containing redirection properties. + * Once a user successfully logs in, they are redirected back to the application. Use this method if the application needs to execute custom logic before the page is redirected. The IdentityManager calls the custom handler function with an object containing redirection properties. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-IdentityManager.html#setOAuthRedirectionHandler) * @@ -4269,11 +5685,7 @@ declare namespace __esri { on(name: "credential-create", eventHandler: IdentityManagerCredentialCreateEventHandler): IHandle; - on(name: "credential-create", modifiers: string[], eventHandler: IdentityManagerCredentialCreateEventHandler): IHandle; - on(name: "credentials-destroy", eventHandler: IdentityManagerCredentialsDestroyEventHandler): IHandle; - - on(name: "credentials-destroy", modifiers: string[], eventHandler: IdentityManagerCredentialsDestroyEventHandler): IHandle; } interface IdentityManagerConstructor { @@ -4307,6 +5719,14 @@ declare namespace __esri { * @default 60 */ tokenValidity: number; + /** + * If your application is on the same domain as *.arcgis.com or ArcGIS Enterprise Server, the IdentityManager will redirect the user to its sign-in page. For instance, let's say an application accesses secure resources from ArcGIS.com or one of its subdomains. Once the application attempts to access this resource, the IdentityManager redirects the user to the ArcGIS.com sign-in page. Once a user successfully logs in, they are redirected back to the application. The same holds true if the application accesses secure resources from ArcGIS Enterprise as the IdentityManager will redirect the user to its sign-in page. If you do not wish for the application to automatically redirect, set this property to `false`. (Please note that this is not a common scenario. For most, using the OAuth sign-in behavior should handle most of their authentication needs.) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-IdentityManagerBase.html#useSignInPage) + * + * @default true + */ + useSignInPage: boolean; /** * Returns the [Credential](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-Credential.html) if the user has already signed in to access the given resource. If the user has not signed in, then the promise will be rejected and its error callback will be called. @@ -4457,7 +5877,7 @@ declare namespace __esri { */ setProtocolErrorHandler(handlerFunction: IdentityManagerBaseSetProtocolErrorHandlerHandlerFunction): void; /** - * When accessing secure resources from ArcGIS.com or one of its subdomains, the IdentityManager redirects the user to the ArcGIS.com sign-in page. Once the user successfully logs in they are redirected back to the application. Use this method if the application needs to execute custom logic before the page is redirected by creating a custom redirection handler. The IdentityManager calls the custom handler function with an object containing the redirection properties. + * If your application is on the same domain as *.arcgis.com or ArcGIS Enterprise Server, the IdentityManager will redirect the user to its sign-in page. For instance, let's say an application accesses secure resources from ArcGIS.com or one of its subdomains. Once the application attempts to access this resource, the IdentityManager redirects the user to the ArcGIS.com sign-in page. Once a user successfully logs in, they are redirected back to the application. The same holds true if the application accesses secure resources from ArcGIS Enterprise as the IdentityManager will redirect the user to its sign-in page. Use this method if the application needs to execute custom logic before the page is redirected by creating a custom redirection handler. The IdentityManager calls the custom handler function with an object containing the redirection properties. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-IdentityManagerBase.html#setRedirectionHandler) * @@ -4735,7 +6155,7 @@ declare namespace __esri { */ popupWindowFeatures: string; /** - * The ArcGIS for Portal URL. + * The ArcGIS Enterprise portal URL. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-OAuthInfo.html#portalUrl) * @@ -4827,7 +6247,7 @@ declare namespace __esri { */ popupWindowFeatures?: string; /** - * The ArcGIS for Portal URL. + * The ArcGIS Enterprise portal URL. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-identity-OAuthInfo.html#portalUrl) * @@ -4969,11 +6389,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: BaseDynamicLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: BaseDynamicLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: BaseDynamicLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseDynamicLayerLayerviewDestroyEventHandler): IHandle; } interface BaseDynamicLayerConstructor { @@ -5072,11 +6488,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: BaseElevationLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: BaseElevationLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: BaseElevationLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseElevationLayerLayerviewDestroyEventHandler): IHandle; } interface BaseElevationLayerConstructor { @@ -5243,11 +6655,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: BaseTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: BaseTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: BaseTileLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseTileLayerLayerviewDestroyEventHandler): IHandle; } interface BaseTileLayerConstructor { @@ -5310,6 +6718,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#copyright) */ copyright: string; + /** + * The SQL where clause used to filter features on the client. Only the features that satisfy the definition expression are displayed in the [View](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html). Setting a definition expression is useful when the dataset is large and you don't want to bring all features to the client for analysis. Definition expressions may be set when a layer is constructed prior to it loading in the view or after it has been added to the map. If the definition expression is set after the layer has been added to the map, the view will automatically refresh itself to display the features that satisfy the new definition expression. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#definitionExpression) + */ + definitionExpression: string; /** * The column delimiter. See the table below for possible values. * @@ -5430,6 +6844,15 @@ declare namespace __esri { * @default true */ screenSizePerspectiveEnabled: boolean; + /** + * The spatial reference of the layer. The default value is WGS84. This property can be set explicitly to project the longitude and latitude coordinates when the layer parses the CSV file. While not required, explicitly setting the spatial reference of the layer will improve the performance when projecting to a spatial reference other than the one used by the coordinates in the raw data. + * > **Known Limitations** The browser must support [WebAssembly](https://caniuse.com/#feat=wasm) if a spatial reference other than WGS84 or Web Mercator is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#spatialReference) + * + * @default SpatialReference.WGS84 + */ + spatialReference: SpatialReference; /** * The URL of the CSV file. * @@ -5437,14 +6860,83 @@ declare namespace __esri { */ url: string; + /** + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against the CSV data and returns the [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of features that satisfy the query. If no parameters are specified, then the extent and count of all features satisfying the layer's configuration/filters are returned. + * > **Capabilities and Limitations** The following lists capabilities with some limitations when executing a query: + * * Use [where](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#where) to query based on a SQL where clause. + * * You can perform spatial queries using the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) parameters with the following limitations: + * * The `geometry` parameter only supports [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) and [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries. + * * The only supported `spatialRelationship` is `intersects`. + * * The `distance` and `units` parameters are not supported. + * * You can query fields for statistics using onStatisticField. However, + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The `orderByField` param is not supported. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#queryExtent) + * + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. + * + */ + queryExtent(params?: Query | QueryProperties): IPromise; + /** + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against the CSV data and returns the number of features that satisfy the query. If no parameters are specified, then the total number of features satisfying the layer's configuration/filters is returned. + * > **Capabilities and Limitations** The following lists capabilities with some limitations when executing a query: + * * Use [where](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#where) to query based on a SQL where clause. + * * You can perform spatial queries using the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) parameters with the following limitations: + * * The `geometry` parameter only supports [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) and [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries. + * * The only supported `spatialRelationship` is `intersects`. + * * The `distance` and `units` parameters are not supported. + * * You can query fields for statistics using onStatisticField. However, + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The `orderByField` param is not supported. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#queryFeatureCount) + * + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. + * + */ + queryFeatureCount(params?: Query | QueryProperties): IPromise; + /** + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against the CSV data and returns a [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html), which can be accessed using the `.then()` method once the promise resolves. A [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html) contains an array of [Graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) features, which can be added to the [view's graphics](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#graphics). This array will not be populated if zero results are found. + * > **Capabilities and Limitations** The following lists capabilities with some limitations when executing a query: + * * Use [where](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#where) to query based on a SQL where clause. + * * You can perform spatial queries using the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) parameters with the following limitations: + * * The `geometry` parameter only supports [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) and [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries. + * * The only supported `spatialRelationship` is `intersects`. + * * The `distance` and `units` parameters are not supported. + * * You can query fields for statistics using onStatisticField. However, + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The `orderByField` param is not supported. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#queryFeatures) + * + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. + * + */ + queryFeatures(params?: Query | QueryProperties): IPromise; + /** + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against the CSV data and returns an array of Object IDs for features that satisfy the input query. If no parameters are specified, then the Object IDs of all features satisfying the layer's configuration/filters are returned. + * > **Capabilities and Limitations** The following lists capabilities with some limitations when executing a query: + * * Use [where](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#where) to query based on a SQL where clause. + * * You can perform spatial queries using the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) parameters with the following limitations: + * * The `geometry` parameter only supports [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) and [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries. + * * The only supported `spatialRelationship` is `intersects`. + * * The `distance` and `units` parameters are not supported. + * * You can query fields for statistics using onStatisticField. However, + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The `orderByField` param is not supported. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#queryObjectIds) + * + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. + * + */ + queryObjectIds(params?: Query | QueryProperties): IPromise; + on(name: "layerview-create", eventHandler: CSVLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: CSVLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: CSVLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: CSVLayerLayerviewDestroyEventHandler): IHandle; } interface CSVLayerConstructor { @@ -5466,6 +6958,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#copyright) */ copyright?: string; + /** + * The SQL where clause used to filter features on the client. Only the features that satisfy the definition expression are displayed in the [View](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html). Setting a definition expression is useful when the dataset is large and you don't want to bring all features to the client for analysis. Definition expressions may be set when a layer is constructed prior to it loading in the view or after it has been added to the map. If the definition expression is set after the layer has been added to the map, the view will automatically refresh itself to display the features that satisfy the new definition expression. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#definitionExpression) + */ + definitionExpression?: string; /** * The column delimiter. See the table below for possible values. * @@ -5586,6 +7084,15 @@ declare namespace __esri { * @default true */ screenSizePerspectiveEnabled?: boolean; + /** + * The spatial reference of the layer. The default value is WGS84. This property can be set explicitly to project the longitude and latitude coordinates when the layer parses the CSV file. While not required, explicitly setting the spatial reference of the layer will improve the performance when projecting to a spatial reference other than the one used by the coordinates in the raw data. + * > **Known Limitations** The browser must support [WebAssembly](https://caniuse.com/#feat=wasm) if a spatial reference other than WGS84 or Web Mercator is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#spatialReference) + * + * @default SpatialReference.WGS84 + */ + spatialReference?: SpatialReferenceProperties; /** * The URL of the CSV file. * @@ -5601,10 +7108,11 @@ declare namespace __esri { * * Mode | Description * ------|------------ - * on-the-ground | Graphics are draped on the terrain surface. This is the default value for [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) - * geometries rendered with [ObjectSymbol3DLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-ObjectSymbol3DLayer.html). - * relative-to-ground | Graphics are placed at an elevation relative to the terrain surface. The graphic's elevation is determined - * by summing up the terrain elevation and the result of `featureExpressionInfo` (if defined). This is the default value for [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometries rendered with [IconSymbol3DLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-IconSymbol3DLayer.html). absolute-height | Graphics are placed at an absolute height above sea level. This height is determined by the result of `featureExpressionInfo` (if defined). This mode doesn't take the elevation of the terrain into account. relative-to-scene | Graphics are aligned to buildings and other objects part of 3D Object [SceneLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html) or [IntegratedMeshLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-IntegratedMeshLayer.html), depending on which has higher elevation. If the graphic is not directly above a building or any other feature, it is aligned to the terrain surface elevation. If defined, the result of `featureExpressionInfo` is added to the 3D Object/terrain surface elevation. + * on-the-ground | Graphics are draped on the terrain surface. This is the default value for [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometries rendered with [ObjectSymbol3DLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-ObjectSymbol3DLayer.html). + * relative-to-ground | Graphics are placed at an elevation relative to the terrain surface. The graphic's elevation is determined by summing up the terrain elevation and the result of `featureExpressionInfo` (if defined). This is the default value for [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometries rendered with [IconSymbol3DLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-IconSymbol3DLayer.html). + * absolute-height | Graphics are placed at an absolute height above sea level. This height is determined by the result of `featureExpressionInfo` (if defined). This mode doesn't take the elevation of the terrain into account. + * relative-to-scene | Graphics are aligned to buildings and other objects part of 3D Object [SceneLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html) or [IntegratedMeshLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-IntegratedMeshLayer.html), depending on which has higher elevation. If the graphic is not directly above a building or any other feature, it is aligned to the terrain surface elevation. If defined, the result of `featureExpressionInfo` is added to the 3D Object/terrain surface elevation. + * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#elevationInfo) */ @@ -5642,7 +7150,7 @@ declare namespace __esri { export interface CSVLayerFeatureReduction extends Object { /** - * Type of the decluttering method. The only supported type at the moment is `"selection"`. In this method, some of the overlapping features are hidden such that none of the remaining features intersect on screen. Label deconfliction also respects this option and hides labels that would overlap with the features of this layer. + * Type of the decluttering method. The only supported type at the moment is `selection`. In this method, some of the overlapping features are hidden such that none of the remaining features intersect on screen. Label deconfliction also respects this option and hides labels that would overlap with the features of this layer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html#featureReduction) */ @@ -5687,7 +7195,7 @@ declare namespace __esri { * @param height The height of the view in pixels. * @param options The parameter options is an object with the following properties. * @param options.allowImageDataAccess Indicates if the access to the pixels of the image is required. - * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * @param options.pixelRatio The ratio of the resolution in physical pixels of the image to the resolution it will be displayed at. * */ @@ -5702,7 +7210,7 @@ declare namespace __esri { * @param height The height of the view in pixels. * @param options The parameter options is an object with the following properties. * @param options.pixelRatio The ratio of the resolution in physical pixels of the image to the resolution it will be displayed at. - * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * */ getImageUrl(extent: Extent, width: number, height: number, options?: DynamicLayerGetImageUrlOptions): IPromise | string; @@ -5740,7 +7248,7 @@ declare namespace __esri { */ allowImageDataAccess?: boolean; /** - * The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-DynamicLayer.html#fetchImage) */ @@ -5762,7 +7270,7 @@ declare namespace __esri { */ pixelRatio?: number; /** - * The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-DynamicLayer.html#getImageUrl) */ @@ -5777,6 +7285,18 @@ declare namespace __esri { */ url: string; + /** + * Creates an elevation sampler for the given [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) by querying the service layer for elevation data and caching it so values may be sampled quickly afterwards. The resolution of the cached data can be set using the `demResolution` option. In many cases, `auto` demResolution can be used to get high quality elevation samples without the need to know exactly where the data in the service is located. This is particularly useful for services which combine elevation data from many sources (such as the world elevation service). If more control, or higher quality samples are required, use either `finest-contiguous` or a fixed `{number}` resolution. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler) + * + * @param extent The extent for which to create the sampler. + * @param options Additional query options. See the table below. + * @param options.demResolution Controls the horizontal resolution (cell size) in meters from which elevation data is sampled (defaults to `auto`). See [ElevationLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#queryElevation) for more details. + * @param options.noDataValue The value to use when there is no data available. + * + */ + createElevationSampler(extent: Extent, options?: ElevationLayerCreateElevationSamplerOptions): IPromise; /** * Requests a tile from the service and decodes the data into a linear array of elevation values. The returned promise resolves with a plain object describing the obtained elevation data for the tile. The object has the following properties: * @@ -5809,7 +7329,7 @@ declare namespace __esri { * * demResolution | Description * -----------------------|------------- - * `auto` | Automatically chooses an appropriate resolution for each coordinate of the input geometry. The current implementation will try to use the finest available resolution given that the total required number of tile requests does not exceed a certain maximum amount (currently 100). Note that this may result in values being sampled from different resolutions. + * `auto` | Automatically chooses an appropriate resolution for each coordinate of the input geometry. The current implementation will try to use the finest available resolution given that the total required number of tile requests does not exceed a certain maximum amount (currently 20). Note that this may result in values being sampled from different resolutions. * `finest-contiguous` | Sample elevation from the finest available resolution (cell size) across the entire geometry. * `{number}` | Sample elevation from the resolution closest to the specified resolution (in meters). * @param options.returnSampleInfo Indicates whether to return additional sample information for each coordinate. @@ -5821,11 +7341,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: ElevationLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: ElevationLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: ElevationLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: ElevationLayerLayerviewDestroyEventHandler): IHandle; } interface ElevationLayerConstructor { @@ -5852,13 +7368,33 @@ declare namespace __esri { } + export interface ElevationLayerCreateElevationSamplerOptions extends Object { + /** + * Controls the horizontal resolution (cell size) in meters from which elevation data is sampled (defaults to `auto`). See [ElevationLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#queryElevation) for more details. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler) + * + * @default auto + */ + demResolution?: number | string; + /** + * The value to use when there is no data available. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler) + * + * @default 0 + */ + noDataValue?: number; + } + + export interface ElevationLayerQueryElevationOptions extends Object { /** * Controls the horizontal resolution (cell size) in meters from which elevation data is sampled (defaults to `auto`). See the table below for more details on the different settings. * * demResolution | Description * -----------------------|------------- - * `auto` | Automatically chooses an appropriate resolution for each coordinate of the input geometry. The current implementation will try to use the finest available resolution given that the total required number of tile requests does not exceed a certain maximum amount (currently 100). Note that this may result in values being sampled from different resolutions. + * `auto` | Automatically chooses an appropriate resolution for each coordinate of the input geometry. The current implementation will try to use the finest available resolution given that the total required number of tile requests does not exceed a certain maximum amount (currently 20). Note that this may result in values being sampled from different resolutions. * `finest-contiguous` | Sample elevation from the finest available resolution (cell size) across the entire geometry. * `{number}` | Sample elevation from the resolution closest to the specified resolution (in meters). * @@ -5962,6 +7498,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#displayField) */ displayField: string; + /** + * An object that allows you to create a dynamic layer with data either from map service sublayers or data from a registered workspace. See [DynamicMapLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#DynamicMapLayer) for creating dynamic layers from map service layers for on the fly rendering, labeling, and filtering (definition expressions). To create dynamic layers from other sources in registered workspaces such as tables and table joins, see [DynamicDataLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#DynamicDataLayer). If you already have a [Sublayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html) instance, you can call the [createFeatureLayer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#createFeatureLayer) method on the Sublayer to construct the layer for you. This only applies to map services with [dynamic layers](https://enterprise.arcgis.com/en/server/latest/publish-services/linux/about-dynamic-layers.htm) enabled. Therefore, the [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url) of the FeatureLayer instance must point to a map service url ending with `/dynamicLayer`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#dynamicDataSource) + */ + dynamicDataSource: DynamicMapLayer | DynamicDataLayer; /** * Specifies how graphics are placed on the vertical axis (z). This property may only be used in a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). See the [ElevationInfo sample](https://developers.arcgis.com/javascript/latest/sample-code/scene-elevationinfo/index.html) for an example of how this property may be used. * @@ -5987,7 +7529,7 @@ declare namespace __esri { */ readonly gdbVersion: string; /** - * The geometry type of features in the layer. All features must be of the same type. This property is read-only when the layer is created from a [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url). However, when creating a FeatureLayer from client-side graphics, this property must be specified in the layer's constructor along with the [source](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#source), [spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#spatialReference), [fields](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#fields), and [objectIdField](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#objectIdField) properties. **Possible Values:** point | mulitpoint | polyline | polygon | extent + * The geometry type of features in the layer. All features must be of the same type. This property is read-only when the layer is created from a [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url). However, when creating a FeatureLayer from client-side graphics, this property must be specified in the layer's constructor along with the [source](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#source), [spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#spatialReference), [fields](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#fields), and [objectIdField](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#objectIdField) properties. **Possible Values:** point | mulitpoint | polyline | polygon | extent | mesh * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#geometryType) */ @@ -6016,6 +7558,12 @@ declare namespace __esri { * @default false */ readonly hasZ: boolean; + /** + * The historic moment to query. If historicMoment is not specified, the query will apply to the current features. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#historicMoment) + */ + historicMoment: Date; /** * The label definition for this layer, specified as an array of [LabelClass](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-LabelClass.html). Use this property to specify labeling properties for the layer such as label expression, placement, and size. For labels to display in the view, the [labelsVisible](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#labelsVisible) property of this layer must be set to `true`. * > **Known Limitations** There is no support for labeling in 2D. Labeling is only supported in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Each graphic can have only one label. Multiple [Label classes](esri-layers-support-LabelClass.html) with different [where](esri-layers-support-LabelClass.html#where) clauses can be used to have different label styles on different features that belong to the same layer (for example blue labels for lakes and green labels for parks). @@ -6137,7 +7685,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#typeIdField) */ - typeIdField: string; + readonly typeIdField: string; /** * An array of subtypes defined in the feature service exposed by ArcGIS REST API. Each item includes information about the type, such as the type ID, name, and definition expression. * @@ -6145,7 +7693,7 @@ declare namespace __esri { */ types: FeatureType[]; /** - * The URL of the REST endpoint of the layer or service. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. If the url points directly to a service, then the layer must be specified in the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) property. If no [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) is given, then the first layer in the service will be loaded. + * The URL of the REST endpoint of the layer or service. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. If the url points directly to a service, then the layer must be specified in the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) property. If no [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) is given, then the first layer in the service will be loaded. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url) */ @@ -6158,7 +7706,7 @@ declare namespace __esri { readonly version: number; /** - * Applies edits to features in a feature layer. New features can be created and existing features can be updated or deleted. Feature geometries and/or attributes may be modified. Only applicable to layers in a [feature service](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Feature_Service/02r3000000z2000000/). + * Applies edits to features in a feature layer. New features can be created and existing features can be updated or deleted. Feature geometries and/or attributes may be modified. Only applicable to layers in a [feature service](https://developers.arcgis.com/rest/services-reference/feature-service.htm). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#applyEdits) * @@ -6177,6 +7725,15 @@ declare namespace __esri { * */ createQuery(): Query; + /** + * Returns a [FeatureType](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-FeatureType.html) describing the feature's type. This is applicable if the layer containing the feature has a [typeIdField](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#typeIdField). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#getFeatureType) + * + * @param feature A feature from this layer. + * + */ + getFeatureType(feature: Graphic): FeatureType; /** * Returns the [Domain](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Domain.html) associated with the given field name. The domain can be either a [CodedValueDomain](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-CodedValueDomain.html) or [RangeDomain](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RangeDomain.html). * @@ -6198,6 +7755,15 @@ declare namespace __esri { * */ queryExtent(params?: Query | QueryProperties): IPromise; + /** + * Query information about attachments associated with a specified feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatureAttachments) + * + * @param feature The feature to query. + * + */ + queryFeatureAttachments(feature: Graphic): IPromise; /** * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against the feature service and returns the number of features that satisfy the query. If no parameters are specified, then the total number of features satisfying the layer's configuration/filters is returned. * > To query for the count of features/graphics available to or visible in the [View](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html) on the client rather than making a server-side query, you must use the [FeatureLayerView.queryFeatureCount()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#queryFeatureCount) method. @@ -6232,16 +7798,12 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: FeatureLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: FeatureLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: FeatureLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: FeatureLayerLayerviewDestroyEventHandler): IHandle; } interface FeatureLayerConstructor { /** - * A FeatureLayer is a single layer that can be created from a [Map Service](http://server.arcgis.com/en/server/latest/publish-services/windows/what-is-a-map-service.htm) or [Feature Service](http://server.arcgis.com/en/server/latest/publish-services/windows/what-is-a-feature-service-.htm); ArcGIS Online or ArcGIS for Portal items; or from an array of client-side graphics. It is composed of discrete features, each of which has a [Geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html) that allows it to be rendered in either a 2D [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or 3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) as a [graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) with spatial context. Features also contain data [attributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html#attributes) that provide additional information about the real-world feature it represents; attributes may be viewed in [popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#popupTemplate) windows and used for [rendering](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) the layer. FeatureLayers may be [queried](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatures), [analyzed](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html), and [rendered](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#renderer) to visualize data in a spatial context. + * A FeatureLayer is a single layer that can be created from a [Map Service](http://server.arcgis.com/en/server/latest/publish-services/windows/what-is-a-map-service.htm) or [Feature Service](http://server.arcgis.com/en/server/latest/publish-services/windows/what-is-a-feature-service-.htm); ArcGIS Online or ArcGIS Enterprise portal items; or from an array of client-side graphics. It is composed of discrete features, each of which has a [Geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html) that allows it to be rendered in either a 2D [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or 3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) as a [graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) with spatial context. Features also contain data [attributes](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html#attributes) that provide additional information about the real-world feature it represents; attributes may be viewed in [popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#popupTemplate) windows and used for [rendering](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) the layer. FeatureLayers may be [queried](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatures), [analyzed](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html), and [rendered](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#renderer) to visualize data in a spatial context. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) */ @@ -6273,6 +7835,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#displayField) */ displayField?: string; + /** + * An object that allows you to create a dynamic layer with data either from map service sublayers or data from a registered workspace. See [DynamicMapLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#DynamicMapLayer) for creating dynamic layers from map service layers for on the fly rendering, labeling, and filtering (definition expressions). To create dynamic layers from other sources in registered workspaces such as tables and table joins, see [DynamicDataLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#DynamicDataLayer). If you already have a [Sublayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html) instance, you can call the [createFeatureLayer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#createFeatureLayer) method on the Sublayer to construct the layer for you. This only applies to map services with [dynamic layers](https://enterprise.arcgis.com/en/server/latest/publish-services/linux/about-dynamic-layers.htm) enabled. Therefore, the [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url) of the FeatureLayer instance must point to a map service url ending with `/dynamicLayer`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#dynamicDataSource) + */ + dynamicDataSource?: DynamicMapLayer | DynamicDataLayer; /** * Specifies how graphics are placed on the vertical axis (z). This property may only be used in a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). See the [ElevationInfo sample](https://developers.arcgis.com/javascript/latest/sample-code/scene-elevationinfo/index.html) for an example of how this property may be used. * @@ -6292,11 +7860,17 @@ declare namespace __esri { */ fields?: FieldProperties[]; /** - * The geometry type of features in the layer. All features must be of the same type. This property is read-only when the layer is created from a [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url). However, when creating a FeatureLayer from client-side graphics, this property must be specified in the layer's constructor along with the [source](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#source), [spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#spatialReference), [fields](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#fields), and [objectIdField](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#objectIdField) properties. **Possible Values:** point | mulitpoint | polyline | polygon | extent + * The geometry type of features in the layer. All features must be of the same type. This property is read-only when the layer is created from a [url](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url). However, when creating a FeatureLayer from client-side graphics, this property must be specified in the layer's constructor along with the [source](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#source), [spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#spatialReference), [fields](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#fields), and [objectIdField](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#objectIdField) properties. **Possible Values:** point | mulitpoint | polyline | polygon | extent | mesh * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#geometryType) */ geometryType?: string; + /** + * The historic moment to query. If historicMoment is not specified, the query will apply to the current features. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#historicMoment) + */ + historicMoment?: DateProperties; /** * The label definition for this layer, specified as an array of [LabelClass](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-LabelClass.html). Use this property to specify labeling properties for the layer such as label expression, placement, and size. For labels to display in the view, the [labelsVisible](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#labelsVisible) property of this layer must be set to `true`. * > **Known Limitations** There is no support for labeling in 2D. Labeling is only supported in 3D [SceneViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Each graphic can have only one label. Multiple [Label classes](esri-layers-support-LabelClass.html) with different [where](esri-layers-support-LabelClass.html#where) clauses can be used to have different label styles on different features that belong to the same layer (for example blue labels for lakes and green labels for parks). @@ -6407,12 +7981,6 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#templates) */ templates?: FeatureTemplateProperties[]; - /** - * The name of the field holding the type ID or subtypes for the features. See [ArcGIS Pro subtypes document](https://pro.arcgis.com/en/pro-app/help/data/geodatabases/overview/an-overview-of-subtypes.htm). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#typeIdField) - */ - typeIdField?: string; /** * An array of subtypes defined in the feature service exposed by ArcGIS REST API. Each item includes information about the type, such as the type ID, name, and definition expression. * @@ -6420,13 +7988,59 @@ declare namespace __esri { */ types?: FeatureTypeProperties[]; /** - * The URL of the REST endpoint of the layer or service. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. If the url points directly to a service, then the layer must be specified in the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) property. If no [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) is given, then the first layer in the service will be loaded. + * The URL of the REST endpoint of the layer or service. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. If the url points directly to a service, then the layer must be specified in the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) property. If no [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#layerId) is given, then the first layer in the service will be loaded. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#url) */ url?: string; } + + export interface AttachmentInfo extends Object { + /** + * The content type of the attachment. For example, `image/jpeg`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + contentType: string; + /** + * The identifier for the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + id: number; + /** + * Keywords for the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + keywords: string; + /** + * The name of the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + name: string; + /** + * The parent object id of the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + parentObjectId: number; + /** + * The size of the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + size: number; + /** + * The URL of the attachment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#AttachmentInfo) + */ + url: string; + } + /** * FeatureEditResult represents the result of adding, updating or deleting a feature. * @@ -6576,7 +8190,7 @@ declare namespace __esri { */ supportsUpdateWithoutM: boolean; /** - * Indicates if the layer supports uploading attachments by [UploadId](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Item/02r3000000vq000000/). + * Indicates if the layer supports uploading attachments by [UploadId](https://developers.arcgis.com/rest/services-reference/item.htm). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) */ @@ -6610,7 +8224,7 @@ declare namespace __esri { */ supportsEditing: boolean; /** - * Indicates if values of one or more field values in the layer can be updated. See the [Calculate REST operation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Calculate_Feature_Service_Layer/02r30000029n000000/) document for more information. + * Indicates if values of one or more field values in the layer can be updated. See the [Calculate REST operation](https://developers.arcgis.com/rest/services-reference/calculate-feature-service-layer-.htm) document for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) */ @@ -6627,6 +8241,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) */ supportsValidateSql: boolean; + /** + * Indicates if resized attachments are supported in the feature layer. This is useful for showing thumbnails in [Popups](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) + */ + supportsResizeAttachments: boolean; } @@ -6703,6 +8323,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) */ supportsStatistics: boolean; + /** + * Indicates if the layer supports historic moment query. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#capabilities) + */ + supportsHistoricMoment: boolean; } @@ -6852,11 +8478,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: GeoRSSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: GeoRSSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: GeoRSSLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: GeoRSSLayerLayerviewDestroyEventHandler): IHandle; } interface GeoRSSLayerConstructor { @@ -6983,11 +8605,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: GraphicsLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: GraphicsLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: GraphicsLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: GraphicsLayerLayerviewDestroyEventHandler): IHandle; } interface GraphicsLayerConstructor { @@ -7103,11 +8721,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: GroupLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: GroupLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: GroupLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: GroupLayerLayerviewDestroyEventHandler): IHandle; } interface GroupLayerConstructor { @@ -7194,11 +8808,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: ImageryLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: ImageryLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: ImageryLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: ImageryLayerLayerviewDestroyEventHandler): IHandle; } interface ImageryLayerConstructor { @@ -7263,11 +8873,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: IntegratedMeshLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: IntegratedMeshLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: IntegratedMeshLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: IntegratedMeshLayerLayerviewDestroyEventHandler): IHandle; } interface IntegratedMeshLayerConstructor { @@ -7355,11 +8961,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: KMLLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: KMLLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: KMLLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: KMLLayerLayerviewDestroyEventHandler): IHandle; } interface KMLLayerConstructor { @@ -7502,12 +9104,12 @@ declare namespace __esri { */ fromArcGISServerUrl(params: LayerFromArcGISServerUrlParams): IPromise; /** - * Creates a new layer instance of the appropriate layer class from an ArcGIS Online or ArcGIS for Portal [portal item](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html). If the item points to a feature service with multiple layers, then a [GroupLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GroupLayer.html) is created. If the item points to a service with a single layer, then it resolves to a layer of the same type of class as the service. See also: [isLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#isLayer) + * Creates a new layer instance of the appropriate layer class from an ArcGIS Online or ArcGIS Enterprise [portal item](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html). If the item points to a feature service with multiple layers, then a [GroupLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GroupLayer.html) is created. If the item points to a service with a single layer, then it resolves to a layer of the same type of class as the service. See also: [isLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#isLayer) * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html#fromPortalItem) * * @param params The parameters for loading the portal item. - * @param params.portalItem The object representing an ArcGIS Online or ArcGIS for Portal item from which to load the layer. + * @param params.portalItem The object representing an ArcGIS Online or ArcGIS Enterprise portal item from which to load the layer. * */ fromPortalItem(params: LayerFromPortalItemParams): IPromise; @@ -7586,7 +9188,7 @@ declare namespace __esri { export interface LayerFromPortalItemParams extends Object { /** - * The object representing an ArcGIS Online or ArcGIS for Portal item from which to load the layer. + * The object representing an ArcGIS Online or ArcGIS Enterprise portal item from which to load the layer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html#fromPortalItem) */ @@ -7597,11 +9199,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: MapImageLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: MapImageLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: MapImageLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: MapImageLayerLayerviewDestroyEventHandler): IHandle; } interface MapImageLayerConstructor { @@ -7640,11 +9238,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: MapNotesLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: MapNotesLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: MapNotesLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: MapNotesLayerLayerviewDestroyEventHandler): IHandle; } interface MapNotesLayerConstructor { @@ -7692,12 +9286,12 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISCachedService.html#fromJSON) * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Classification_objects/02r30000019z000000/) for examples of the structure of various input JSON objects. + * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](https://developers.arcgis.com/documentation/common-data-types/overview-of-common-data-types.htm) for examples of the structure of various input JSON objects. * */ fromJSON(json: any): any; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISCachedService.html#toJSON) * @@ -7803,7 +9397,7 @@ declare namespace __esri { */ findSublayerById(id: number): Sublayer; /** - * Gets the parameters of the exported image to use when calling the [export REST operation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Export_Map/02r3000000v7000000/). + * Gets the parameters of the exported image to use when calling the [export REST operation](https://developers.arcgis.com/rest/services-reference/export-map.htm). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISDynamicMapService.html#getExportImageParameters) * @@ -7811,7 +9405,7 @@ declare namespace __esri { * @param width The width of the exported image * @param height The height of the exported image * @param options The parameter options is an object with the following properties. - * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * @param options.rotation The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * */ getExportImageParameters(extent: Extent, width: number, height: number, options?: ArcGISDynamicMapServiceGetExportImageParametersOptions): any; @@ -7883,7 +9477,7 @@ declare namespace __esri { export interface ArcGISDynamicMapServiceGetExportImageParametersOptions extends Object { /** - * The rotation in degrees of the exported image. Available since ArcGIS for Server 10.3. + * The rotation in degrees of the exported image. Available since ArcGIS Server 10.3. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISDynamicMapService.html#getExportImageParameters) */ @@ -8028,7 +9622,7 @@ declare namespace __esri { */ readonly spatialReference: SpatialReference; /** - * The URL to the REST endpoint of the layer. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. + * The URL to the REST endpoint of the layer. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISImageService.html#url) */ @@ -8041,7 +9635,7 @@ declare namespace __esri { readonly version: number; /** - * Returns an image using the [export REST operation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Export_Image/02r3000000wm000000/) that displays data from an [ImageryLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryLayer.html). + * Returns an image using the [export REST operation](https://developers.arcgis.com/rest/services-reference/export-image.htm) that displays data from an [ImageryLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryLayer.html). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISImageService.html#fetchImage) * @@ -8051,23 +9645,6 @@ declare namespace __esri { * */ fetchImage(extent: Extent, width: number, height: number): IPromise; - /** - * Creates a new instance of [this class]() and initializes it with values from a JSON object generated from a product in the ArcGIS platform. The object passed into the input `json` parameter often comes from a response to a query operation in the REST API or a [toJSON()](http://pro.arcgis.com/en/pro-app/tool-reference/conversion/features-to-json.htm) method from another ArcGIS product. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for details and examples of when and how to use this function. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISImageService.html#fromJSON) - * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Classification_objects/02r30000019z000000/) for examples of the structure of various input JSON objects. - * - */ - fromJSON(json: any): any; - /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISImageService.html#toJSON) - * - * - */ - toJSON(): any; } interface ArcGISImageServiceConstructor { @@ -8212,7 +9789,7 @@ declare namespace __esri { */ renderingRule?: RasterFunctionProperties; /** - * The URL to the REST endpoint of the layer. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. + * The URL to the REST endpoint of the layer. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-ArcGISImageService.html#url) */ @@ -8301,8 +9878,7 @@ declare namespace __esri { interface RefreshableLayer { /** - * Refresh interval of the layer in minutes. Minimum refresh interval is 0.1 minute (6 seconds). Value of `0` indicates no refresh. - * > **Known Limitations** Refreshing is only supported in 2D [MapViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * Refresh interval of the layer in minutes. Minimum refresh interval is 0.1 minute (6 seconds). Value of `0` indicates no refresh. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-RefreshableLayer.html#refreshInterval) * @@ -8311,8 +9887,7 @@ declare namespace __esri { refreshInterval: number; /** - * Fetches all the data for the layer. - * > **Known Limitations** Refreshing is only supported in 2D [MapViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * Fetches all the data for the layer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-RefreshableLayer.html#refresh) * @@ -8331,8 +9906,7 @@ declare namespace __esri { interface RefreshableLayerProperties { /** - * Refresh interval of the layer in minutes. Minimum refresh interval is 0.1 minute (6 seconds). Value of `0` indicates no refresh. - * > **Known Limitations** Refreshing is only supported in 2D [MapViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * Refresh interval of the layer in minutes. Minimum refresh interval is 0.1 minute (6 seconds). Value of `0` indicates no refresh. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-RefreshableLayer.html#refreshInterval) * @@ -8418,7 +9992,7 @@ declare namespace __esri { */ readonly token: string; /** - * The URL of the REST endpoint of the layer or scene service. The URL may either point to a resource on ArcGIS Server, Portal for ArcGIS, or ArcGIS Online. The layer may be specified using the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) property when the url points directly to a service and not a specific layer. If [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) is not specified, then it will default to the first layer in the service. + * The URL of the REST endpoint of the layer or scene service. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. The layer may be specified using the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) property when the url points directly to a service and not a specific layer. If [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) is not specified, then it will default to the first layer in the service. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#url) */ @@ -8466,7 +10040,7 @@ declare namespace __esri { */ spatialReference?: SpatialReferenceProperties; /** - * The URL of the REST endpoint of the layer or scene service. The URL may either point to a resource on ArcGIS Server, Portal for ArcGIS, or ArcGIS Online. The layer may be specified using the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) property when the url points directly to a service and not a specific layer. If [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) is not specified, then it will default to the first layer in the service. + * The URL of the REST endpoint of the layer or scene service. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. The layer may be specified using the [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) property when the url points directly to a service and not a specific layer. If [layerId](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#layerId) is not specified, then it will default to the first layer in the service. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-mixins-SceneService.html#url) */ @@ -8499,19 +10073,11 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: OpenStreetMapLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: OpenStreetMapLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: OpenStreetMapLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: OpenStreetMapLayerLayerviewDestroyEventHandler): IHandle; } interface OpenStreetMapLayerConstructor { - /** - * Allows you to use [basemaps](http://wiki.openstreetmap.org/wiki/List_of_OSM-based_services) from [OpenStreetMap](http://www.openstreetmap.org/). Set the [tileservers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OpenStreetMapLayer.html#tileServers) property to change which OpenStreetMap tiles you want to use. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-OpenStreetMapLayer.html) - */ + new(properties?: OpenStreetMapLayerProperties): OpenStreetMapLayer; @@ -8569,11 +10135,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: PointCloudLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: PointCloudLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: PointCloudLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: PointCloudLayerLayerviewDestroyEventHandler): IHandle; } interface PointCloudLayerConstructor { @@ -8819,11 +10381,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: SceneLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: SceneLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: SceneLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: SceneLayerLayerviewDestroyEventHandler): IHandle; } interface SceneLayerConstructor { @@ -9030,11 +10588,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: StreamLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: StreamLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: StreamLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: StreamLayerLayerviewDestroyEventHandler): IHandle; } interface StreamLayerConstructor { @@ -9285,6 +10839,46 @@ declare namespace __esri { type?: string; } + interface ElevationSampler { + /** + * Registers an event handler on the instance. Call this method to hook an event with a listener. See the [Events summary table](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ElevationSampler.html#events-summary) for a list of listened events. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ElevationSampler.html#on) + * + * @param type The name of the event or the events to listen for. + * @param handler? The function to call when the event is fired, if modifiers were specified. + * + */ + on(type: string | string[], handler?: Function): any; + /** + * Query elevation for a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), [Polyline](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polyline.html) or [Multipoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Multipoint.html) geometry. A query will return a new geometry for which the z-values for each coordinate in the geometry are obtained from the elevation sampler. If the geometry used for the query is outside of the elevation sampler extent, then the returned geometry has `0` as z-values. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ElevationSampler.html#queryElevation) + * + * @param geometry The geometry to use for sampling elevation data. + * + */ + queryElevation(geometry: Point | Multipoint | Polyline): Point | Multipoint | Polyline; + + + on(name: "changed", eventHandler: ElevationSamplerChangedEventHandler): IHandle; + } + + interface ElevationSamplerConstructor { + /** + * A cache of elevation values created from an elevation service or the [GroundView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-GroundView.html) used for synchronously querying elevation information for geometries. This class does not have a constructor. You can create an instance of this class by using [ElevationLayer.createElevationSampler()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler) or [Ground.createElevationSampler()](https://developers.arcgis.com/javascript/latest/api-reference/esri-Ground.html#createElevationSampler) methods. The elevation sampler created from the [Ground](https://developers.arcgis.com/javascript/latest/api-reference/esri-Ground.html) will sample data from the first elevation layer that has data available. To control the layer used for elevation sampling and the sampling resolution, use [ElevationLayer.createElevationSampler()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ElevationLayer.html#createElevationSampler). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ElevationSampler.html) + */ + + new(): ElevationSampler; + } + + export const ElevationSampler: ElevationSamplerConstructor; + + export interface ElevationSamplerChangedEvent { + } + interface FeatureTemplate extends Accessor, JSONSupport { /** * Description of the feature template. @@ -9622,7 +11216,7 @@ declare namespace __esri { width: number; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ImageParameters.html#toJSON) * @@ -9840,7 +11434,11 @@ declare namespace __esri { labelExpressionInfo: LabelClassLabelExpressionInfo; /** * The position of the label. Known values are based on the feature type. This property requires a value for labels to be visible. **Known Values (Points):** above-center | above-left | above-right | below-center | below-left | below-right | center-center | center-left | center-right **Known Values (Polylines):** above-after | above-along | above-before | above-start | above-end | below-after | below-along | below-before | below-start | below-end | center-after | center-along | center-before | center-start | center-end **Known Values (Polygons):** always-horizontal - * > **Known Limitations** Currently, if the label has a [line callout](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-callouts-LineCallout3D.html) then only "above-center" is supported. + * > **Known Limitations** + * * Currently, if the label has a [line callout](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-callouts-LineCallout3D.html) then only "above-center" is supported. + * * 3D layers only support label placement for [Points](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). + * + * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-LabelClass.html#labelPlacement) */ @@ -9919,7 +11517,11 @@ declare namespace __esri { labelExpressionInfo?: LabelClassLabelExpressionInfo; /** * The position of the label. Known values are based on the feature type. This property requires a value for labels to be visible. **Known Values (Points):** above-center | above-left | above-right | below-center | below-left | below-right | center-center | center-left | center-right **Known Values (Polylines):** above-after | above-along | above-before | above-start | above-end | below-after | below-along | below-before | below-start | below-end | center-after | center-along | center-before | center-start | center-end **Known Values (Polygons):** always-horizontal - * > **Known Limitations** Currently, if the label has a [line callout](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-callouts-LineCallout3D.html) then only "above-center" is supported. + * > **Known Limitations** + * * Currently, if the label has a [line callout](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-callouts-LineCallout3D.html) then only "above-center" is supported. + * * 3D layers only support label placement for [Points](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). + * + * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-LabelClass.html#labelPlacement) */ @@ -10494,13 +12096,13 @@ declare namespace __esri { interface RasterFunction extends Accessor, JSONSupport { /** - * The arguments for the raster function. The structure depends on the function specified. See [raster functions](http://resources.arcgis.com/en/help/arcgis-rest-api/#/Raster_Function_Objects/02r3000000rv000000/) for a list of functions and their arguments. + * The arguments for the raster function. The structure depends on the function specified. See [raster functions](https://developers.arcgis.com/documentation/common-data-types/raster-function-objects.htm) for a list of functions and their arguments. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionArguments) */ functionArguments: any; /** - * The raster function name. See [raster functions](http://resources.arcgis.com/en/help/arcgis-rest-api/#/Raster_Function_Objects/02r3000000rv000000/) for a list of functions and their arguments. + * The raster function name. See [raster functions](https://developers.arcgis.com/documentation/common-data-types/raster-function-objects.htm) for a list of functions and their arguments. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionName) */ @@ -10523,7 +12125,7 @@ declare namespace __esri { interface RasterFunctionConstructor { /** - * Specifies processing to be done to the image service. See [raster functions](http://resources.arcgis.com/en/help/arcgis-rest-api/#/Raster_Function_Objects/02r3000000rv000000/) for a list of functions and their [arguments](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionArguments). The following image shows a landcover ImageryLayer rendered with two chained client-side raster functions used to reclass pixel values (Remap) and assign each pixel a new color (Colormap). + * Specifies processing to be done to the image service. See [raster functions](https://developers.arcgis.com/documentation/common-data-types/raster-function-objects.htm) for a list of functions and their [arguments](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionArguments). The following image shows a landcover ImageryLayer rendered with two chained client-side raster functions used to reclass pixel values (Remap) and assign each pixel a new color (Colormap). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html) */ @@ -10537,13 +12139,13 @@ declare namespace __esri { interface RasterFunctionProperties { /** - * The arguments for the raster function. The structure depends on the function specified. See [raster functions](http://resources.arcgis.com/en/help/arcgis-rest-api/#/Raster_Function_Objects/02r3000000rv000000/) for a list of functions and their arguments. + * The arguments for the raster function. The structure depends on the function specified. See [raster functions](https://developers.arcgis.com/documentation/common-data-types/raster-function-objects.htm) for a list of functions and their arguments. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionArguments) */ functionArguments?: any; /** - * The raster function name. See [raster functions](http://resources.arcgis.com/en/help/arcgis-rest-api/#/Raster_Function_Objects/02r3000000rv000000/) for a list of functions and their arguments. + * The raster function name. See [raster functions](https://developers.arcgis.com/documentation/common-data-types/raster-function-objects.htm) for a list of functions and their arguments. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-RasterFunction.html#functionName) */ @@ -10564,6 +12166,112 @@ declare namespace __esri { variableName?: any; } + interface Relationship extends Accessor { + /** + * The cardinality which specifies the number of objects in the origin [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) related to the number of objects in the destination [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). A relationship can have one of three cardinalities: + * * "one-to-one" + * * "one-to-many" + * * "many-to-many" + * + * + * Please see the [Desktop help](http://desktop.arcgis.com/en/arcmap/10.3/manage-data/relationships/relationship-class-properties.htm#GUID-989CB1D1-AC51-4A4C-8D9D-0AB9E647FFFD) for additional information on cardinality. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#cardinality) + * + * @default null + */ + cardinality: string; + /** + * The unique ID for the relationship. These ids for the relationships the [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) participates in are listed in the ArcGIS Services directory. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#id) + * + * @default null + */ + id: number; + /** + * The field used to establish the relate within the [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#keyField) + * + * @default null + */ + keyField: string; + /** + * The name of the relationship. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#name) + * + * @default null + */ + name: string; + /** + * The unique ID of the related [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#relatedTableId) + * + * @default null + */ + relatedTableId: number; + } + + interface RelationshipConstructor { + + + new(properties?: RelationshipProperties): Relationship; + } + + export const Relationship: RelationshipConstructor; + + interface RelationshipProperties { + /** + * The cardinality which specifies the number of objects in the origin [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) related to the number of objects in the destination [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). A relationship can have one of three cardinalities: + * * "one-to-one" + * * "one-to-many" + * * "many-to-many" + * + * + * Please see the [Desktop help](http://desktop.arcgis.com/en/arcmap/10.3/manage-data/relationships/relationship-class-properties.htm#GUID-989CB1D1-AC51-4A4C-8D9D-0AB9E647FFFD) for additional information on cardinality. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#cardinality) + * + * @default null + */ + cardinality?: string; + /** + * The unique ID for the relationship. These ids for the relationships the [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) participates in are listed in the ArcGIS Services directory. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#id) + * + * @default null + */ + id?: number; + /** + * The field used to establish the relate within the [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#keyField) + * + * @default null + */ + keyField?: string; + /** + * The name of the relationship. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#name) + * + * @default null + */ + name?: string; + /** + * The unique ID of the related [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Relationship.html#relatedTableId) + * + * @default null + */ + relatedTableId?: number; + } + interface Sublayer extends Accessor { /** * A SQL where clause used to filter features in the image. Only the features that satisfy the definition expression are displayed in the [View](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html). Definition expressions may be set when a sublayer is constructed prior to it loading in the view or after it has been added to the MapImageLayer. @@ -10648,7 +12356,17 @@ declare namespace __esri { */ opacity: number; /** - * The popup template for the sublayer. When set, the `popupTemplate` allows users to access attributes and display their values in the [view's popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#popup) when the user clicks the image. Sublayers with a [RasterDataSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#RasterDataSource) cannot be queried and therefore do not support [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). + * Indicates whether to display popups when features in the layer are clicked. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#popupEnabled) + * + * @default true + */ + popupEnabled: boolean; + /** + * The popup template for the sublayer. When set, the `popupTemplate` allows users to access attributes and display their values in the [view's popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#popup) when the user clicks the image. Sublayers with a [RasterDataSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#RasterDataSource) cannot be queried and therefore do not support [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). + * > **Known Limitations** + * * [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expressions are not supported in PopupTemplates set on MapImageLayer sublayers unless they reference ArcGIS Enterprise 10.6.1 map services (or later) created from ArcGIS Pro. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#popupTemplate) */ @@ -10657,7 +12375,7 @@ declare namespace __esri { * The renderer to apply to the sublayer. This value overrides the renderer read from the map service. * > **Known Limitations** * * [3D symbols](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3D.html) are not supported in renderers set on MapImageLayer sublayers. - * * [visual variables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-SimpleRenderer.html#visualVariables) are not supported in renderers set on MapImageLayer sublayers. + * * [Visual variables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-SimpleRenderer.html#visualVariables) and [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expressions are not supported in renderers set on MapImageLayer sublayers unless they reference ArcGIS Enterprise 10.6.1 map services (or later) created from ArcGIS Pro. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#renderer) */ @@ -10701,6 +12419,14 @@ declare namespace __esri { * */ clone(): Sublayer; + /** + * A convenient method for creating a [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) instance based on the Sublayer's configuration, including [dynamic sources](https://enterprise.arcgis.com/en/server/latest/publish-services/linux/about-dynamic-layers.htm). This allows you to take advantage of FeatureLayer capabilities not supported in Sublayer, such as the [Smart Mapping creator functions](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#createFeatureLayer) + * + * + */ + createFeatureLayer(): FeatureLayer; /** * Creates a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) object with default values representing the layer's state, including filters (definition expression) on the layer's features. * @@ -10816,7 +12542,17 @@ declare namespace __esri { */ opacity?: number; /** - * The popup template for the sublayer. When set, the `popupTemplate` allows users to access attributes and display their values in the [view's popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#popup) when the user clicks the image. Sublayers with a [RasterDataSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#RasterDataSource) cannot be queried and therefore do not support [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). + * Indicates whether to display popups when features in the layer are clicked. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#popupEnabled) + * + * @default true + */ + popupEnabled?: boolean; + /** + * The popup template for the sublayer. When set, the `popupTemplate` allows users to access attributes and display their values in the [view's popup](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#popup) when the user clicks the image. Sublayers with a [RasterDataSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#RasterDataSource) cannot be queried and therefore do not support [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). + * > **Known Limitations** + * * [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expressions are not supported in PopupTemplates set on MapImageLayer sublayers unless they reference ArcGIS Enterprise 10.6.1 map services (or later) created from ArcGIS Pro. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#popupTemplate) */ @@ -10825,7 +12561,7 @@ declare namespace __esri { * The renderer to apply to the sublayer. This value overrides the renderer read from the map service. * > **Known Limitations** * * [3D symbols](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3D.html) are not supported in renderers set on MapImageLayer sublayers. - * * [visual variables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-SimpleRenderer.html#visualVariables) are not supported in renderers set on MapImageLayer sublayers. + * * [Visual variables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-SimpleRenderer.html#visualVariables) and [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expressions are not supported in renderers set on MapImageLayer sublayers unless they reference ArcGIS Enterprise 10.6.1 map services (or later) created from ArcGIS Pro. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html#renderer) */ @@ -11801,7 +13537,7 @@ declare namespace __esri { */ tileServers: string[]; /** - * The URL of the REST endpoint of the layer. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. + * The URL of the REST endpoint of the layer. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-TileLayer.html#url) */ @@ -11835,11 +13571,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: TileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: TileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: TileLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: TileLayerLayerviewDestroyEventHandler): IHandle; } interface TileLayerConstructor { @@ -11872,7 +13604,7 @@ declare namespace __esri { */ tileServers?: string[]; /** - * The URL of the REST endpoint of the layer. The URL may either point to a resource on ArcGIS for Server, Portal for ArcGIS, or ArcGIS Online. + * The URL of the REST endpoint of the layer. The URL may either point to a resource on ArcGIS Enterprise or ArcGIS Online. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-TileLayer.html#url) */ @@ -11907,11 +13639,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: UnknownLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: UnknownLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: UnknownLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: UnknownLayerLayerviewDestroyEventHandler): IHandle; } interface UnknownLayerConstructor { @@ -11948,11 +13676,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: UnsupportedLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: UnsupportedLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: UnsupportedLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: UnsupportedLayerLayerviewDestroyEventHandler): IHandle; } interface UnsupportedLayerConstructor { @@ -12032,11 +13756,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: VectorTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: VectorTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: VectorTileLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: VectorTileLayerLayerviewDestroyEventHandler): IHandle; } interface VectorTileLayerConstructor { @@ -12165,11 +13885,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: WebTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: WebTileLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: WebTileLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: WebTileLayerLayerviewDestroyEventHandler): IHandle; } interface WebTileLayerConstructor { @@ -12367,11 +14083,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: WMSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: WMSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: WMSLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: WMSLayerLayerviewDestroyEventHandler): IHandle; } interface WMSLayerConstructor { @@ -12598,11 +14310,7 @@ declare namespace __esri { on(name: "layerview-create", eventHandler: WMTSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-create", modifiers: string[], eventHandler: WMTSLayerLayerviewCreateEventHandler): IHandle; - on(name: "layerview-destroy", eventHandler: WMTSLayerLayerviewDestroyEventHandler): IHandle; - - on(name: "layerview-destroy", modifiers: string[], eventHandler: WMTSLayerLayerviewDestroyEventHandler): IHandle; } interface WMTSLayerConstructor { @@ -12959,7 +14667,7 @@ declare namespace __esri { } /** - * It is possible to set media elements such as charts and/or images within the PopupTemplate's content. This content is set within the mediaInfos. You will need to reference a dijit stylesheet and reference its class within the `` HTML div. You can see this in the [Multiple popup elements sample](https://developers.arcgis.com/javascript/latest/sample-code/popup-multipleelements/index.html). ![popuptemplate-media-element](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popuptemplate-media-element.png) The object specification for the media popup element is provided below. + * It is possible to set media elements such as charts and/or images within the PopupTemplate's content. This content is set within the mediaInfos. ![popuptemplate-media-element](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popuptemplate-media-element.png) The object specification for the media popup element is provided below. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html#media) */ @@ -13330,6 +15038,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html#description) */ description: string; + /** + * Boolean value indicating whether to opt-in to the [Esri User Experience Improvement (EUEI) program](https://doc.arcgis.com/en/arcgis-online/reference/faq.htm#ESRI_QUESTIONANSWER_AED97F28DCD84F7682623C2FA9E5CE49). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html#eueiEnabled) + * + * @default false + */ + eueiEnabled: boolean; /** * The featured groups for the portal. Returns an array of objects that provide access to the owner and title for each featured group. Each item in this array has the following specification: * @@ -13595,7 +15311,7 @@ declare namespace __esri { interface PortalConstructor { /** - * The Portal class is part of the [ArcGIS Portal API](http://server.arcgis.com/en/portal/) which provides a way to build applications that work with content from [ArcGIS Online](http://www.arcgis.com/home/) or an [ArcGIS Portal API](http://server.arcgis.com/en/portal/). [ArcGIS Portal API](http://server.arcgis.com/en/portal/) is software from Esri that customers can deploy either on-premises or in the cloud. [ArcGIS Online](http://www.arcgis.com/home/) is Esri's Software as a Service offering that represents GIS as a Service and is implemented using the same technology as ArcGIS Portal. + * The Portal class is part of the [ArcGIS Enterprise portal](https://enterprise.arcgis.com/en/portal/) that provides a way to build applications that work with content from [ArcGIS Online](http://www.arcgis.com/home/) or an [ArcGIS Enterprise portal](https://enterprise.arcgis.com/en/portal/). [ArcGIS Enterprise](https://enterprise.arcgis.com/en/portal/) is software from Esri that customers can deploy either on-premises or in the cloud. [ArcGIS Online](http://www.arcgis.com/home/) is Esri's Software as a Service offering that represents GIS as a Service and is implemented using the same technology as ArcGIS Enterprise. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html) */ @@ -13779,6 +15495,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html#description) */ description?: string; + /** + * Boolean value indicating whether to opt-in to the [Esri User Experience Improvement (EUEI) program](https://doc.arcgis.com/en/arcgis-online/reference/faq.htm#ESRI_QUESTIONANSWER_AED97F28DCD84F7682623C2FA9E5CE49). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html#eueiEnabled) + * + * @default false + */ + eueiEnabled?: boolean; /** * The featured groups for the portal. Returns an array of objects that provide access to the owner and title for each featured group. Each item in this array has the following specification: * @@ -14138,7 +15862,7 @@ declare namespace __esri { readonly url: string; /** - * Fetches the current members of the group. This method is only available to members or administrators of the group. View the ArcGIS Portal API REST documentation for the [Group Users](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Group_Users/02r30000006p000000/) for more details. + * Fetches the current members of the group. This method is only available to members or administrators of the group. View the ArcGIS REST API documentation for the [Group Users](https://developers.arcgis.com/rest/users-groups-and-items/group-users.htm) for more details. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalGroup.html#fetchMembers) * @@ -14405,7 +16129,7 @@ declare namespace __esri { */ title: string; /** - * The GIS content type of this item. Example types include Web Map, Map Service, Shapefile, and Web Mapping Application. See the [ArcGIS REST API Items and Items Types Reference](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Items_and_item_types/02r3000000ms000000/) to get an understanding of the item type hierarchy. + * The GIS content type of this item. Example types include Web Map, Map Service, Shapefile, and Web Mapping Application. See the [ArcGIS REST API Items and Items Types Reference](https://developers.arcgis.com/rest/users-groups-and-items/items-and-item-types.htm) to get an understanding of the item type hierarchy. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#type) */ @@ -14463,7 +16187,7 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#fetchRelatedItems) * * @param params See the object specifications table below for the parameters that may be passed as properties in this object. - * @param params.relationshipType The type of relationship between the two items. See [Relationship types](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000mm000000) for a complete listing of types. + * @param params.relationshipType The type of relationship between the two items. See [Relationship types](https://developers.arcgis.com/rest/users-groups-and-items/relationship-types.htm) for a complete listing of types. * @param params.direction The direction of the relationship. Can either be `forward` (from origin to destination) or `reverse` (from destination to origin). **Possible Values:** forward | reverse * */ @@ -14631,7 +16355,7 @@ declare namespace __esri { */ title?: string; /** - * The GIS content type of this item. Example types include Web Map, Map Service, Shapefile, and Web Mapping Application. See the [ArcGIS REST API Items and Items Types Reference](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Items_and_item_types/02r3000000ms000000/) to get an understanding of the item type hierarchy. + * The GIS content type of this item. Example types include Web Map, Map Service, Shapefile, and Web Mapping Application. See the [ArcGIS REST API Items and Items Types Reference](https://developers.arcgis.com/rest/users-groups-and-items/items-and-item-types.htm) to get an understanding of the item type hierarchy. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#type) */ @@ -14653,7 +16377,7 @@ declare namespace __esri { export interface PortalItemFetchRelatedItemsParams extends Object { /** - * The type of relationship between the two items. See [Relationship types](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000mm000000) for a complete listing of types. + * The type of relationship between the two items. See [Relationship types](https://developers.arcgis.com/rest/users-groups-and-items/relationship-types.htm) for a complete listing of types. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalItem.html#fetchRelatedItems) */ @@ -14702,7 +16426,7 @@ declare namespace __esri { */ num: number; /** - * The query string used for the search. View the [ArcGIS REST API Search Reference](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000mn000000) for details on constructing a valid query. + * The query string used for the search. View the [ArcGIS REST API Search Reference](https://developers.arcgis.com/rest/users-groups-and-items/search-reference.htm) for details on constructing a valid query. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#query) */ @@ -14785,7 +16509,7 @@ declare namespace __esri { */ num?: number; /** - * The query string used for the search. View the [ArcGIS REST API Search Reference](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000mn000000) for details on constructing a valid query. + * The query string used for the search. View the [ArcGIS REST API Search Reference](https://developers.arcgis.com/rest/users-groups-and-items/search-reference.htm) for details on constructing a valid query. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-PortalQueryParams.html#query) */ @@ -15263,24 +16987,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#backgroundFillSymbol) */ - backgroundFillSymbol: FillSymbol; + backgroundFillSymbol: FillSymbol | PolygonSymbol3D; /** * Each element in the array is an object that provides information about a class break associated with the renderer. Each object has the following specification: * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#classBreakInfos) */ classBreakInfos: ClassBreaksRendererClassBreakInfos[]; - /** - * The classification method used to generate class breaks if the renderer was generated with either of the two following methods: - * * [colorRendererCreator.createClassBreaksRenderer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) - * * [sizeRendererCreator.createClassBreaksRenderer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) - * - * - * **Known Values:** equal-interval | natural-breaks | quantile | standard-deviation - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#classificationMethod) - */ - classificationMethod: string; /** * The default symbol assigned to features with a value not matched to a given break. If `null`, unmatched features will not be assigned a symbol. * > **Known Limitations** SceneLayers with a `mesh` [geometryType](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#geometryType) will display unmatching features with a generic symbol even if the `defaultSymbol` is `null`. @@ -15413,24 +17126,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#backgroundFillSymbol) */ - backgroundFillSymbol?: FillSymbolProperties; + backgroundFillSymbol?: FillSymbolProperties | PolygonSymbol3DProperties; /** * Each element in the array is an object that provides information about a class break associated with the renderer. Each object has the following specification: * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#classBreakInfos) */ classBreakInfos?: ClassBreaksRendererClassBreakInfos[]; - /** - * The classification method used to generate class breaks if the renderer was generated with either of the two following methods: - * * [colorRendererCreator.createClassBreaksRenderer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) - * * [sizeRendererCreator.createClassBreaksRenderer()](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) - * - * - * **Known Values:** equal-interval | natural-breaks | quantile | standard-deviation - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html#classificationMethod) - */ - classificationMethod?: string; /** * The default symbol assigned to features with a value not matched to a given break. If `null`, unmatched features will not be assigned a symbol. * > **Known Limitations** SceneLayers with a `mesh` [geometryType](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#geometryType) will display unmatching features with a generic symbol even if the `defaultSymbol` is `null`. @@ -16915,13 +18617,13 @@ declare namespace __esri { */ interface color { /** - * Generates a [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html) that may be applied directly to the layer used to call this method. The resulting renderer defines the symbol color of each feature based on the value of the given `field` value. A default color scheme is determined based on the given `basemap`. Depending on the `classificationMethod`, class breaks (or data ranges) are generated based on the statistics of the data. Each feature is assigned a color based on the class break in which the value of the `field` falls. In most cases you will provide a `layer`, `basemap`, `field`, and `classificationMethod` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. The other options are provided for convenience for more involved custom visualization authoring applications. + * Generates a [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html) that may be applied directly to the layer used to call this method. The resulting renderer defines the symbol color of each feature based on the value of the given `field` value. A default color scheme is determined based on the given `basemap`. Depending on the `classificationMethod`, class breaks (or data ranges) are generated based on the statistics of the data. Each feature is assigned a color based on the class break in which the value of the `field` falls. In most cases you will provide a `layer`, `basemap`, `field`, and `classificationMethod` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) * * @param params Input parameters for generating a classed color visualization based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visualization is generated. - * @param params.field The name of the field whose data will be queried for statistics and classified. + * @param params.field The name of the field whose data will be queried for statistics and classified. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @param params.normalizationType With the exception of `log` normalization, data normalization creates a ratio by dividing two values. When comparing attribute values between features, normalization minimizes the effect of varying map areas and the number of observations. For example, dividing the 18 to 30 year old population by the area of a polygon feature yields a density value that can be compared evenly with other features, regardless of their size. * Indicates how the data is normalized. The data value obtained from the `field` is normalized in one of the following ways before it is compared with the class breaks. See the table below for a list of possible values. @@ -16933,7 +18635,7 @@ declare namespace __esri { * percent-of-total | Divides the data value by the sum of all data values then multiplies by 100. Use `normalizationTotal` to define the total value by which to normalize. This value is set by default if the `normalizationTotal` is provided. * * @param params.normalizationTotal When `normalizationType` is `percent-of-total`, this property contains the total of all data values. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.classificationMethod * The classification method used for generating breaks. See the table below for a list of possible values. * @@ -16946,11 +18648,15 @@ declare namespace __esri { * @param params.standardDeviationInterval If a `standard-deviation` classification method is used, then this indicates the interval by which to generate class breaks. **Possible Values:** 1 | 0.5 | 0.33 | 0.25 * @param params.numClasses The number of class breaks to generate. This is ignored if a `standard-deviation` classification method is specified. * @param params.colorScheme In authoring apps, the user may select a pre-defined color scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This option only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to describe a field instead of using the field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.minValue A minimum value set by the user. Use this in conjunction with `maxValue` to generate class breaks between lower and upper bounds. This will be the lower bound of the lowest class break. * @param params.maxValue A maximum value set by the user. Use this in conjunction with `minValue` to generate class breaks between lower and upper bounds. This will be the upper bound of the highest class break. * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value and features that do not fall within the configured data range. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric"`, but isn't required for layers with a `mesh` geometry type. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter does not need to be specified for layers with a `mesh` geometry type. Known values are described below. * @@ -16971,15 +18677,15 @@ declare namespace __esri { */ createClassBreaksRenderer(params: colorCreateClassBreaksRendererParams): IPromise; /** - * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to the layer used to call this method. The renderer contains a continuous color visual variable that maps optimal colors based on the indicated basemap to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, `field`, and `theme` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. + * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to the layer used to call this method. The renderer contains a continuous color visual variable that maps optimal colors based on the indicated basemap to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, `field`, and `theme` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) * * @param params Input parameters for generating a continuous color visualization based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visualization is generated. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.theme * Determines which values will be emphasized in the continuous ramp and the map. Valid values are listed below. * @@ -16990,12 +18696,16 @@ declare namespace __esri { * | centered-on | Values centered around a given point (e.g. the average) are emphasized with strong colors while other values are visualized with weak colors. | ![centered-on](https://developers.arcgis.com/javascript/latest/assets/img/apiref/renderers/sm-centered-on.png) | * | extremes | High and low values are emphasized with strong colors. All others are visualized with weak colors. | ![extremes](https://developers.arcgis.com/javascript/latest/assets/img/apiref/renderers/sm-extremes.png) | * @param params.colorScheme In authoring apps, the user may select a pre-defined color scheme. Pass the scheme object to this property to avoid getting one based on a `theme` and the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned color visual variable. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned color visual variable. * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value and features that do not fall within the configured data range. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric"`, but isn't required for layers with a `mesh` geometry type. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter does not need to be specified for layers with a `mesh` geometry type. Known values are described below. * @@ -17023,7 +18733,7 @@ declare namespace __esri { * @param params Input parameters for generating a renderer based on the given field of the input layer. See the table below for details of each parameter. * @param params.layer The layer for which the visualization is generated. * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. The only field names used for this renderer type are `elevation` and `intensity`. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.size The size of each point expressed as a percentage. This value will determine point sizes scaled based on the given `density` of points. When the value is `100%`, the size of each point is set so that it minimizes the number of gaps between neighboring points. Any value above `100%` will allow for points to overlap neighboring points scaled to the given value. Values below `100%` scale point sizes smaller so there appear to be more gaps between points. * @param params.density The number of points per inch in the view. * @param params.colorScheme In authoring apps, the user may select a pre-defined color scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. @@ -17044,15 +18754,15 @@ declare namespace __esri { */ createPCTrueColorRenderer(params: colorCreatePCTrueColorRendererParams): IPromise; /** - * This method generates a color visual variable with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and colors based on the input basemap. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, `field`, and `theme`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. + * This method generates a color visual variable with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and colors based on the input basemap. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, `field`, and `theme`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. You can optionally use a `valueExpression` instead of a field to visualize features based on a numeric value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) * * @param params Input parameters for generating a color visual variable based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visual variable is generated. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.theme * Determines which values will be emphasized in the continuous ramp and the map. Valid values are listed below. * @@ -17063,11 +18773,15 @@ declare namespace __esri { * | centered-on | Values centered around a given point (e.g. the average) are emphasized with strong colors while other values are visualized with weak colors. | ![centered-on](https://developers.arcgis.com/javascript/latest/assets/img/apiref/renderers/sm-centered-on.png) | * | extremes | High and low values are emphasized with strong colors. All others are visualized with weak colors. | ![extremes](https://developers.arcgis.com/javascript/latest/assets/img/apiref/renderers/sm-extremes.png) | * @param params.colorScheme In authoring apps, the user may select a pre-defined color scheme. Pass the scheme object to this property to avoid getting one based on a `theme` and the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned color visual variable. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned color visual variable. - * @param params.view The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols, except for layers with a `mesh` geometry type. + * @param params.view When generating 3D symbols (except for layers with a `mesh` geometry type), a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.worldScale Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology, except for layers with a `mesh` geometry type. A `view` must be provided if this property is set to `true`. * */ @@ -17121,13 +18835,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and classified. + * The name of the field whose data will be queried for statistics and classified. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @@ -17155,7 +18869,7 @@ declare namespace __esri { */ normalizationTotal?: number; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) * @@ -17200,6 +18914,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) */ colorScheme?: ColorScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This option only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) + */ + sqlWhere?: string; /** * Provides options for setting a title to describe a field instead of using the field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -17227,11 +18965,11 @@ declare namespace __esri { */ defaultSymbolEnabled?: boolean; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric"`, but isn't required for layers with a `mesh` geometry type. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createClassBreaksRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter does not need to be specified for layers with a `mesh` geometry type. Known values are described below. * @@ -17281,13 +19019,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @@ -17295,7 +19033,7 @@ declare namespace __esri { */ normalizationField?: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) * @@ -17322,6 +19060,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) */ colorScheme?: ColorScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) + */ + sqlWhere?: string; /** * Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -17355,11 +19117,11 @@ declare namespace __esri { */ defaultSymbolEnabled?: boolean; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric"`, but isn't required for layers with a `mesh` geometry type. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createContinuousRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter does not need to be specified for layers with a `mesh` geometry type. Known values are described below. * @@ -17423,7 +19185,7 @@ declare namespace __esri { */ field: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createPCContinuousRenderer) * @@ -17493,13 +19255,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @@ -17507,7 +19269,7 @@ declare namespace __esri { */ normalizationField?: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) * @@ -17534,6 +19296,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) */ colorScheme?: ColorScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) + */ + sqlWhere?: string; /** * Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -17559,11 +19345,11 @@ declare namespace __esri { */ maxValue?: number; /** - * The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols, except for layers with a `mesh` geometry type. + * When generating 3D symbols (except for layers with a `mesh` geometry type), a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-color.html#createVisualVariable) */ - view?: SceneView; + view?: View; /** * Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology, except for layers with a `mesh` geometry type. A `view` must be provided if this property is set to `true`. * @@ -17741,7 +19527,7 @@ declare namespace __esri { * * @param params Input parameters for generating a location-based visualization. See the table below for details of each parameter. * @param params.layer The layer for which the visualization is generated. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.locationScheme In authoring apps, the user may select a pre-defined location scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric"`, except for layers with a `mesh` geometryType. * @param params.symbolType @@ -17774,9 +19560,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-location.html#createRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-location.html#createRenderer) * @@ -17860,18 +19646,23 @@ declare namespace __esri { */ interface opacity { /** - * This method generates an opacity visual variable with default alpha values optimally mapped to data values based on the statistics queried for the indicated field or expression. There are several ways this method may be called. The most common case is by providing a `layer` and a `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know the which alpha values to map to data values. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the stats in the `statistics` parameter to avoid making an extra call to the server. + * This method generates an opacity visual variable with default alpha values optimally mapped to data values based on the statistics queried for the indicated field or expression. There are several ways this method may be called. The most common case is by providing a `layer` and a `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know the which alpha values to map to data values. You can optionally use a `valueExpression` instead of a field to visualize features based on a numeric value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the stats in the `statistics` parameter to avoid making an extra call to the server. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) * * @param params Input parameters for generating an opacity visual variable based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visual variable is generated. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned visual variable. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned visual variable. + * @param params.view A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. * */ createVisualVariable(params: opacityCreateVisualVariableParams): IPromise; @@ -17886,19 +19677,43 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) */ normalizationField?: string; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) + */ + sqlWhere?: string; /** * Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -17923,6 +19738,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) */ maxValue?: number; + /** + * A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-opacity.html#createVisualVariable) + */ + view?: View; } @@ -17974,14 +19795,14 @@ declare namespace __esri { */ interface size { /** - * Generates a [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html) that may be applied directly to the layer used to call this method. The resulting renderer defines the symbol size of each feature based on the value of the given `field` value. A default size scheme is determined based on the given `basemap`. Depending on the `classificationMethod`, class breaks (or data ranges) are generated based on the statistics of the data. Each feature is assigned a color based on the class break in which the value of the `field` falls. In most cases you will provide a `layer`, `basemap`, `field`, and `classificationMethod` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what sizes to use in the visualization. The other options are provided for convenience for more involved custom visualization authoring applications. + * Generates a [ClassBreaksRenderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-ClassBreaksRenderer.html) that may be applied directly to the layer used to call this method. The resulting renderer defines the symbol size of each feature based on the value of the given `field` value. A default size scheme is determined based on the given `basemap`. Depending on the `classificationMethod`, class breaks (or data ranges) are generated based on the statistics of the data. Each feature is assigned a color based on the class break in which the value of the `field` falls. In most cases you will provide a `layer`, `basemap`, `field`, and `classificationMethod` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what sizes to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) * * @param params Input parameters for generating a classed size visualization based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visualization is generated. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. - * @param params.field The name of the field whose data will be queried for statistics and classified. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. + * @param params.field The name of the field whose data will be queried for statistics and classified. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @param params.normalizationType With the exception of `log` normalization, data normalization creates a ratio by dividing two values. When comparing attribute values between features, normalization minimizes the effect of varying map areas and the number of observations. For example, dividing the 18 to 30 year old population by the area of a polygon feature yields a density value that can be compared evenly with other features, regardless of their size. * Indicates how the data is normalized. The data value obtained from the `field` is normalized in one of the following ways before it is compared with the class breaks. See the table below for a list of possible values. @@ -18005,11 +19826,15 @@ declare namespace __esri { * @param params.standardDeviationInterval If a `standard-deviation` classification method is used, then this indicates the interval by which to generate class breaks. **Possible Values:** 1 | 0.5 | 0.33 | 0.25 * @param params.numClasses The number of class breaks to generate. This is ignored if a `standard-deviation` classification method is specified. * @param params.sizeScheme In authoring apps, the user may select a pre-defined size scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to describe a field instead of using the field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.minValue A minimum value set by the user. Use this in conjunction with `maxValue` to generate class breaks between lower and upper bounds. This will be the lower bound of the lowest class break. * @param params.maxValue A maximum value set by the user. Use this in conjunction with `minValue` to generate class breaks between lower and upper bounds. This will be the upper bound of the highest class break. * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value and features that do not fall within the configured data range. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -18023,22 +19848,26 @@ declare namespace __esri { */ createClassBreaksRenderer(params: sizeCreateClassBreaksRendererParams): IPromise; /** - * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to the layer used to call this method. The renderer contains a continuous size visual variable that maps marker sizes to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, and `field` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. + * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to the layer used to call this method. The renderer contains a continuous size visual variable that maps marker sizes to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, and `field` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) * * @param params Input parameters for generating size visual variables based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the renderer is generated. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.sizeScheme In authoring apps, the user may select a pre-defined size scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned size visual variable. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned size visual variable. * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value and features that do not fall within the configured data range. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -18052,21 +19881,25 @@ declare namespace __esri { */ createContinuousRenderer(params: sizeCreateContinuousRendererParams): IPromise; /** - * This method generates an array of size visual variables with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and mapped to appropriate sizes. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, and `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. The resulting array of visual variables will contain exactly one size visual variable unless the `axis` parameter is set to "height". + * This method generates an array of size visual variables with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and mapped to appropriate sizes. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, and `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. You can optionally use a `valueExpression` instead of a field to visualize features based on a numeric value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. The resulting array of visual variables will contain exactly one size visual variable unless the `axis` parameter is set to "height". * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) * * @param params Input parameters for generating size visual variables based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visual variables are generated. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.sizeScheme In authoring apps, the user may select a pre-defined size scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.legendOptions Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned size visual variable. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned size visual variable. - * @param params.view The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols. + * @param params.view When generating 3D symbols, a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.worldScale Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology. A `view` must be provided if this property is set to `true`. * @param params.axis When set to `all`, a single size variable that scales uniformly in all dimensions is generated. When set to `height`, the result contains two size visual variables: the first one sizes the height according to the field statistics, while the second defines a constant size for width and depth. **Possible Values:** all | height * @@ -18165,9 +19998,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) * @@ -18175,7 +20008,7 @@ declare namespace __esri { */ basemap?: string | Basemap; /** - * The name of the field whose data will be queried for statistics and classified. + * The name of the field whose data will be queried for statistics and classified. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) */ @@ -18244,6 +20077,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) */ sizeScheme?: PointSizeScheme | PolylineSizeScheme | PolygonSizeScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) + */ + sqlWhere?: string; /** * Provides options for setting a title to describe a field instead of using the field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -18271,11 +20128,11 @@ declare namespace __esri { */ defaultSymbolEnabled?: boolean; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createClassBreaksRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -18311,13 +20168,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * @@ -18325,7 +20182,7 @@ declare namespace __esri { */ normalizationField?: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) * @@ -18338,6 +20195,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) */ sizeScheme?: PointSizeScheme | PolylineSizeScheme | PolygonSizeScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) + */ + sqlWhere?: string; /** * Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -18371,11 +20252,11 @@ declare namespace __esri { */ defaultSymbolEnabled?: boolean; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createContinuousRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -18417,9 +20298,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) */ @@ -18431,7 +20312,7 @@ declare namespace __esri { */ normalizationField?: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) * @@ -18444,6 +20325,30 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) */ sizeScheme?: PointSizeScheme | PolylineSizeScheme | PolygonSizeScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) + */ + sqlWhere?: string; /** * Provides options for setting a title to a field when an expression is provided instead of a field name. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -18469,11 +20374,11 @@ declare namespace __esri { */ maxValue?: number; /** - * The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols. + * When generating 3D symbols, a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-size.html#createVisualVariables) */ - view?: SceneView; + view?: View; /** * Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology. A `view` must be provided if this property is set to `true`. * @@ -18572,14 +20477,14 @@ declare namespace __esri { */ createPCClassRenderer(params: typeCreatePCClassRendererParams): IPromise; /** - * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html) that supports renderers. The renderer contains unique symbols representing a string or a numeric value returned from the indicated field. In most cases you will provide a `layer`, `basemap`, and `field` to generate this renderer. This is a scenario in which the values of the field aren't well known and the user doesn't know which colors to use in the visualization. + * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html) that supports renderers. The renderer contains unique symbols representing a string or a numeric value returned from the indicated field. In most cases you will provide a `layer`, `basemap`, and `field` to generate this renderer. This is a scenario in which the values of the field aren't well known and the user doesn't know which colors to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) * * @param params Input parameters for generating symbols to represent unique types based on data returned from a given field. See the table below for details of each parameter. * @param params.layer The layer for which the renderer is generated. - * @param params.field The name of the field from which to extract unique values that will be used for the basis of the data-driven visualization. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * @param params.field The name of the field from which to extract unique values that will be used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * @param params.numTypes The number of types (or categories) displayed by the renderer. Use `-1` to display all returned types. * @param params.sortBy * Indicates how values should be sorted in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). See the table below for information about values that may be passed to this parameter. @@ -18591,9 +20496,11 @@ declare namespace __esri { * * **Known Values:** count | value * @param params.typeScheme In authoring apps, the user may select a pre-defined type scheme. Pass the scheme object to this property to avoid getting one based on the `basemap`. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number or a string. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. * @param params.legendOptions Provides options for setting a title to a field that will override the field alias defined in the service. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`, except for layers with a `mesh` geometry type. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter can be ignored for layers with a `mesh` geometry type. Known values are described below. * @@ -18722,15 +20629,15 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The name of the field from which to extract unique values that will be used for the basis of the data-driven visualization. + * The name of the field from which to extract unique values that will be used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) */ - field: string; + field?: string; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) * @@ -18767,6 +20674,18 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) */ typeScheme?: PointTypeScheme | PolylineTypeScheme | PolygonTypeScheme | MeshTypeScheme; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number or a string. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) + */ + valueExpressionTitle?: string; /** * Provides options for setting a title to a field that will override the field alias defined in the service. This title will represent the field in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html). * @@ -18780,11 +20699,11 @@ declare namespace __esri { */ defaultSymbolEnabled?: boolean; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`, except for layers with a `mesh` geometry type. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-type.html#createRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. This parameter can be ignored for layers with a `mesh` geometry type. Known values are described below. * @@ -18869,22 +20788,26 @@ declare namespace __esri { */ interface univariateColorSize { /** - * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html). The renderer contains continuous color and size visual variables that map symbols with optimal colors and sizes based on the indicated basemap to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, `field`, and `theme` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors and sizes to use in the visualization. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. + * Generates a [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html) that may be applied directly to a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html). The renderer contains continuous color and size visual variables that map symbols with optimal colors and sizes based on the indicated basemap to specific stop values based on queried statistics from the indicated field or expression. In most cases you will provide a `layer`, `basemap`, `field`, and `theme` to generate this renderer. This is a scenario in which the statistics of the data aren't well known and the user doesn't know what colors and sizes to use in the visualization. You can also use a `valueExpression` instead of a `field` to visualize features based on a value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the statistics object to the `statistics` parameter to avoid making an extra call to the server. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) * * @param params See the table below for details of each parameter that may be passed to this method. * @param params.layer The layer for which the visual variable is generated. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned visual variables. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned visual variables. * @param params.defaultSymbolEnabled Enables the `defaultSymbol` on the renderer and assigns it to features with no value and features that do not fall within the configured data range. * @param params.colorOptions Options for configuring the color portion of the visualization. * @param params.sizeOptions Options for configuring the size portion of the visualization. - * @param params.view The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * @param params.view The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.symbolType * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -18898,21 +20821,25 @@ declare namespace __esri { */ createContinuousRenderer(params: univariateColorSizeCreateContinuousRendererParams): IPromise; /** - * This method generates color and size visual variables, both based on the same given field or expression. These visual variables are generated with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and colors based on the input basemap. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, and `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` and/or a `sizeScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. The resulting array of visual variables will contain one color visual variable, and one or two size visual variables depending on the value of the `sizeOptions.axis` parameter. + * This method generates color and size visual variables, both based on the same given field or expression. These visual variables are generated with default stops that are optimally chosen based on the statistics queried for the indicated field or expression and colors based on the input basemap. There are two different ways this method may be called. The most common case is by providing a `layer`, `basemap`, and `field`. This is the scenario where the statistics of the data aren't well known and the user doesn't know what colors to use. You can optionally use a `valueExpression` instead of a field to visualize features based on a numeric value returned from a script executed at runtime. The other options are provided for convenience for more involved custom visualization authoring applications. For example, if you already generated statistics in another operation, you can pass the object in the `statistics` parameter to avoid making an extra call to the server. You can also provide a `colorScheme` and/or a `sizeScheme` if you don't want one picked for you. In this case the `basemap` and `theme` options would be ignored. The resulting array of visual variables will contain one color visual variable, and one or two size visual variables depending on the value of the `sizeOptions.axis` parameter. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) * * @param params Input parameters for generating color and size visual variables based on data returned from a given field or expression. See the table below for details of each parameter. * @param params.layer The layer for which the visual variable is generated. - * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. - * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * @param params.basemap The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. + * @param params.field The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.valueExpressionTitle Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter is only supported for service based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.statistics A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @param params.minValue A custom minimum value set by the user. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. This will be the lowest stop in the returned visual variables. * @param params.maxValue A custom maximum value set by the user. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. This will be the uppermost stop in the returned visual variables. * @param params.colorOptions Options for configuring the color portion of the visualization. * @param params.sizeOptions Options for configuring the size portion of the visualization. - * @param params.view The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols. + * @param params.view When generating 3D symbols, a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * @param params.worldScale Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology. A `view` must be provided if this property is set to `true`. * */ @@ -18972,9 +20899,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) * @@ -18982,17 +20909,41 @@ declare namespace __esri { */ basemap?: string | Basemap; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) */ normalizationField?: string; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) + */ + sqlWhere?: string; /** * A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @@ -19030,11 +20981,11 @@ declare namespace __esri { */ sizeOptions?: univariateColorSizeCreateContinuousRendererParamsSizeOptions; /** - * The SceneView instance in which the visualization will be rendered. This parameter is required if `symbolType = "3d-volumetric" or "3d-volumetric-uniform"`. + * The view instance in which the visualization will be rendered. A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) is required if `symbolType = "3d-volumetric"` or `3d-volumetric-uniform`. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createContinuousRenderer) */ - view?: SceneView; + view?: View; /** * The type of symbol to generate. This depends on the view in which you are working and the desired visualization. Known values are described below. * @@ -19126,9 +21077,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer; /** - * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) of the Esri basemap or basemap object that will be paired with the output visualization. + * The [named string](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap) or basemap object of the Esri basemap that will be paired with the output visualization. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) * @@ -19136,17 +21087,41 @@ declare namespace __esri { */ basemap?: string | Basemap; /** - * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. + * The name of the field whose data will be queried for statistics and used for the basis of the data-driven visualization. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) */ - field: string; + field?: string; /** * The name of the field to normalize the values of the given `field`. Providing a normalization field helps minimize some visualization errors and standardizes the data so all features are visualized with minimal bias due to area differences or count variation. This option is commonly used when visualizing densities. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) */ normalizationField?: string; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) + */ + valueExpression?: string; + /** + * Text describing the value returned from the `valueExpression`. This is used by the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) + */ + valueExpressionTitle?: string; + /** + * A SQL expression evaluating to a number. This parameter is only supported for service based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) + */ + sqlWhere?: string; /** * A statistics object generated from the [summaryStatistics](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html) function. If statistics for the field have already been generated, then pass the object here to avoid making a second statistics query to the server. * @@ -19178,11 +21153,11 @@ declare namespace __esri { */ sizeOptions?: univariateColorSizeCreateVisualVariablesParamsSizeOptions; /** - * The SceneView instance in which the visualization will be rendered. This property is only applicable to generating visualizations with 3D symbols. + * When generating 3D symbols, a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) instance is required. The relevant SceneView or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) is required when a `valueExpression` is specified. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-creators-univariateColorSize.html#createVisualVariables) */ - view?: SceneView; + view?: View; /** * Indicates if the size units of the symbols will be in meters. This should be `true` when generating visualizations with 3D volumetric symbology. A `view` must be provided if this property is set to `true`. * @@ -19380,7 +21355,7 @@ declare namespace __esri { */ interface classBreaks { /** - * Generates class breaks for an input field of a [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) based on a given classification method and normalization type. + * Generates class breaks for an input field (or expression) of a [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) based on a given classification method and normalization type. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) * @@ -19401,6 +21376,11 @@ declare namespace __esri { * @param params.minValue The minimum bounding value for the class breaks definition. Use this in conjunction with `maxValue` to generate class breaks between lower and upper bounds. * @param params.maxValue The maximum bounding value for the class breaks definition. Use this in conjunction with `minValue` to generate class breaks between lower and upper bounds. * @param params.numClasses Indicates the number of classes to generate for the class breaks definition. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * @param params.view A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * @param params.features A subset of features for which to generate the class breaks. * */ classBreaks(params: classBreaksClassBreaksParams): IPromise; @@ -19417,7 +21397,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) */ - layer: FeatureLayer | SceneLayer; + layer: FeatureLayer | SceneLayer | CSVLayer | PointCloudLayer; /** * The class breaks will be generated based on values of this field. If a field is provided, the values from the given field from all features will be queried in the service. * @@ -19468,6 +21448,36 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) */ numClasses?: number; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) + */ + valueExpression?: string; + /** + * A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) + */ + sqlWhere?: string; + /** + * A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) + */ + view?: View; + /** + * A subset of features for which to generate the class breaks. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-classBreaks.html#classBreaks) + */ + features?: Graphic[]; } /** @@ -19537,7 +21547,7 @@ declare namespace __esri { * * @param params See the table below for details on parameters that may be passed to this function. * @param params.layer The layer for which to generate a histogram. - * @param params.field The name of the numeric field for which the histogram will be generated. + * @param params.field The name of the numeric field for which the histogram will be generated. This property is ignored if a `valueExpression` is used. * @param params.normalizationField The field by which to normalize the values returned from the given `field`. * @param params.classificationMethod * The method for classifying the data. See the table below for a list of possible values. @@ -19552,6 +21562,11 @@ declare namespace __esri { * @param params.minValue The minimum bounding value for the histogram. Use this in conjunction with `maxValue` to generate a histogram between custom lower and upper bounds. * @param params.maxValue The maximum bounding value for the histogram. Use this in conjunction with `minValue` to generate a histogram between custom lower and upper bounds. * @param params.numBins Indicates the number of classes to generate for the histogram. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * @param params.view A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * @param params.features A subset of features for which to generate the histogram. * */ histogram(params: histogramHistogramParams): IPromise; @@ -19568,9 +21583,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) */ - layer: FeatureLayer | SceneLayer | PointCloudLayer; + layer: FeatureLayer | SceneLayer | CSVLayer | PointCloudLayer; /** - * The name of the numeric field for which the histogram will be generated. + * The name of the numeric field for which the histogram will be generated. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) */ @@ -19621,6 +21636,36 @@ declare namespace __esri { * @default 10 */ numBins?: number; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) + */ + valueExpression?: string; + /** + * A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) + */ + sqlWhere?: string; + /** + * A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) + */ + view?: View; + /** + * A subset of features for which to generate the histogram. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-histogram.html#histogram) + */ + features?: Graphic[]; } /** @@ -19678,17 +21723,21 @@ declare namespace __esri { */ interface summaryStatistics { /** - * Returns an object containing various statistics describing a set of values returned from a field in a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html). + * Returns an object containing various statistics describing a set of values returned from a field (or expression) in a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) * * @param params See the table below for details of each parameter. * @param params.layer The layer from which to generate statistics for the given `field`. - * @param params.field The name of the numeric field for which the summary statistics will be generated. + * @param params.field The name of the numeric field for which the summary statistics will be generated. This property is ignored if a `valueExpression` is used. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.sqlExpression A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.normalizationField The field by which to normalize the values returned from the given `field`. - * @param params.features If the FeatureLayer is constructed with client-side graphics or you would like to calculate statistics based on a subset of features, then pass the features in this parameter. * @param params.minValue The minimum bounding value for the statistics calculation. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. * @param params.maxValue The maximum bounding value for the statistics calculation. Use this in conjunction with `minValue` to generate statistics between lower and upper bounds. + * @param params.view A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * @param params.features A subset of features for which to calculate the statistics. * */ summaryStatistics(params: summaryStatisticsSummaryStatisticsParams): IPromise; @@ -19705,7 +21754,7 @@ declare namespace __esri { */ export interface SummaryStatisticsResult extends Object { /** - * The average of all values returned from the field. + * The average of all values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ @@ -19717,31 +21766,31 @@ declare namespace __esri { */ count: number; /** - * The maximum of all values returned from the field. + * The maximum of all values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ max: number; /** - * The minimum of all values returned from the field. + * The minimum of all values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ min: number; /** - * The standard deviation calculated from values returned from the field. + * The standard deviation calculated from values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ stddev: number; /** - * The sum of all values returned from the field. + * The sum of all values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ sum: number; /** - * The calculated variance from all values returned from the field. + * The calculated variance from all values returned from the field or expression. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#SummaryStatisticsResult) */ @@ -19755,25 +21804,37 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) */ - layer: FeatureLayer | SceneLayer | PointCloudLayer; + layer: FeatureLayer | SceneLayer | CSVLayer | PointCloudLayer; /** - * The name of the numeric field for which the summary statistics will be generated. + * The name of the numeric field for which the summary statistics will be generated. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) */ field?: string; + /** + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) + */ + valueExpression?: string; + /** + * A SQL expression evaluating to a number. This parameter only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) + */ + sqlWhere?: string; /** * The field by which to normalize the values returned from the given `field`. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) */ normalizationField?: string; - /** - * If the FeatureLayer is constructed with client-side graphics or you would like to calculate statistics based on a subset of features, then pass the features in this parameter. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) - */ - features?: Graphic[]; /** * The minimum bounding value for the statistics calculation. Use this in conjunction with `maxValue` to generate statistics between lower and upper bounds. * @@ -19786,6 +21847,18 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) */ maxValue?: number; + /** + * A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) + */ + view?: View; + /** + * A subset of features for which to calculate the statistics. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-summaryStatistics.html#summaryStatistics) + */ + features?: Graphic[]; } /** @@ -19795,15 +21868,19 @@ declare namespace __esri { */ interface uniqueValues { /** - * Returns an object containing an array of unique values queried from a given field in a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html) along with the total count of features that belong to the given category. + * Returns an object containing an array of unique values queried from a given field (or values returned from an expression) in a [Layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html) along with the total count of features that belong to the given category. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) * * @param params See the table below for details of each parameter. * @param params.layer The layer from which to query for unique values. - * @param params.field The name of the numeric or string field from which the unique values will be obtained. - * @param params.features If the `layer` is a FeatureLayer constructed with client-side graphics or you would like to calculate statistics based on a subset of features, then pass the features in this parameter. + * @param params.field The name of the numeric or string field from which the unique values will be obtained. This property is ignored if a `valueExpression` is used. + * @param params.valueExpression An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number or string. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. + * @param params.sqlExpression A SQL expression evaluating to a number or string. This parameter only applies to service-based FeatureLayers. + * @param params.sqlWhere A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. * @param params.returnAllCodedValues Indicates that all domain codes should be returned if the given field has domain values. + * @param params.view A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * @param params.features A subset of features for which to generate the unique values. * */ uniqueValues(params: uniqueValuesUniqueValuesParams): IPromise; @@ -19834,25 +21911,49 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) */ - layer: FeatureLayer | SceneLayer | PointCloudLayer; + layer: FeatureLayer | SceneLayer | CSVLayer | PointCloudLayer; /** - * The name of the numeric or string field from which the unique values will be obtained. + * The name of the numeric or string field from which the unique values will be obtained. This property is ignored if a `valueExpression` is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) */ - field: string; + field?: string; /** - * If the `layer` is a FeatureLayer constructed with client-side graphics or you would like to calculate statistics based on a subset of features, then pass the features in this parameter. + * An [Arcade](https://developers.arcgis.com/javascript/latest/guide/arcade/index.html) expression that returns a number or string. This expression can reference field values using the `$feature` global variable. This property overrides the `field` property and therefore is used instead of an input `field` value. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) */ - features?: Graphic[]; + valueExpression?: string; + /** + * A SQL expression evaluating to a number or string. This parameter only applies to service-based FeatureLayers. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) + */ + sqlExpression?: string; + /** + * A SQL where clause used to filter features for the statistics query. For example, this is useful in situations where you want to avoid dividing by zero as is the case with creating a predominance visualization. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) + */ + sqlWhere?: string; /** * Indicates that all domain codes should be returned if the given field has domain values. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) */ returnAllCodedValues?: boolean; + /** + * A [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) or [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) instance is required when a `valueExpression` is specified. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) + */ + view?: View; + /** + * A subset of features for which to generate the unique values. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-smartMapping-statistics-uniqueValues.html#uniqueValues) + */ + features?: Graphic[]; } @@ -20940,7 +23041,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-support-jsonUtils.html#fromJSON) * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Renderer_objects/02r30000019t000000/) for examples of the structure of various input JSON objects. + * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](https://developers.arcgis.com/documentation/common-data-types/renderer-objects.htm) for examples of the structure of various input JSON objects. * */ fromJSON(json: any): Renderer; @@ -20949,6 +23050,12 @@ declare namespace __esri { export const supportJsonUtils: supportJsonUtils; interface UniqueValueRenderer extends Renderer, VisualVariablesMixin { + /** + * This property is only relevant When symbolizing polygon features with marker symbols (or [IconSymbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-IconSymbol3DLayer.html)) in the [uniqueValueInfos](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#uniqueValueInfos) of this renderer. This is usually done when adding a [SizeVisualVariable](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html#SizeVisualVariable) to the [visualVariables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#visualVariables)) in a bivariate visualization (color indicates a type-based value and size indicates the value of a separate numeric field). Use this property to set a background [FillSymbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol.html) (or [PolygonSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-PolygonSymbol3D.html) if visualizing data in 3D) to visualize the boundaries of each polygon. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#backgroundFillSymbol) + */ + backgroundFillSymbol: FillSymbol | PolygonSymbol3D; /** * Label used in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) to describe features assigned the [default symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#defaultSymbol). The [default symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#defaultSymbol) is used to draw all features with unspecified, unmatched values. * @@ -21113,6 +23220,12 @@ declare namespace __esri { export const UniqueValueRenderer: UniqueValueRendererConstructor; interface UniqueValueRendererProperties extends RendererProperties, VisualVariablesMixinProperties { + /** + * This property is only relevant When symbolizing polygon features with marker symbols (or [IconSymbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-IconSymbol3DLayer.html)) in the [uniqueValueInfos](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#uniqueValueInfos) of this renderer. This is usually done when adding a [SizeVisualVariable](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html#SizeVisualVariable) to the [visualVariables](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#visualVariables)) in a bivariate visualization (color indicates a type-based value and size indicates the value of a separate numeric field). Use this property to set a background [FillSymbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol.html) (or [PolygonSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-PolygonSymbol3D.html) if visualizing data in 3D) to visualize the boundaries of each polygon. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#backgroundFillSymbol) + */ + backgroundFillSymbol?: FillSymbolProperties | PolygonSymbol3DProperties; /** * Label used in the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) to describe features assigned the [default symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#defaultSymbol). The [default symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-UniqueValueRenderer.html#defaultSymbol) is used to draw all features with unspecified, unmatched values. * @@ -21816,7 +23929,172 @@ declare namespace __esri { color?: Color; } + interface Edges3D extends Accessor, JSONSupport { + /** + * The color of the edges. This can be autocast with a named string, hex string, array of rgb or rgba values, an object with `r`, `g`, `b`, and `a` properties, or a [Color](https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html) object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#color) + * + * @default black + */ + color: Color; + /** + * A size in points by which to extend edges beyond their original end points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#extensionLength) + * + * @default "0" + */ + extensionLength: number; + /** + * The size of the edges in points. This value may be autocast with a string expressing size in points or pixels (e.g. `12px`). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#size) + * + * @default 1px + */ + size: number; + + /** + * Creates a deep clone of the edges. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#clone) + * + * + */ + clone(): Edges3D; + } + + interface Edges3DConstructor { + /** + * Edges3D is the base class for symbol classes that add edge rendering visualization to existing symbols. Edge rendering visualization is specific for 3D visualizations and can only be applied to [FillSymbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol3DLayer.html) on [MeshSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-MeshSymbol3D.html) or [ExtrudeSymbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-ExtrudeSymbol3DLayer.html) on [PolygonSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-PolygonSymbol3D.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html) + */ + + new(properties?: Edges3DProperties): Edges3D; + + fromJSON(json: any): Edges3D; + } + + export const Edges3D: Edges3DConstructor; + + interface Edges3DProperties { + /** + * The color of the edges. This can be autocast with a named string, hex string, array of rgb or rgba values, an object with `r`, `g`, `b`, and `a` properties, or a [Color](https://developers.arcgis.com/javascript/latest/api-reference/esri-Color.html) object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#color) + * + * @default black + */ + color?: Color | number[] | string; + /** + * A size in points by which to extend edges beyond their original end points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#extensionLength) + * + * @default "0" + */ + extensionLength?: number | string; + /** + * The size of the edges in points. This value may be autocast with a string expressing size in points or pixels (e.g. `12px`). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-Edges3D.html#size) + * + * @default 1px + */ + size?: number | string; + } + + interface SketchEdges3D extends Edges3D { + /** + * For SketchEdges3D the type is always `sketch`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SketchEdges3D.html#type) + */ + type: "sketch"; + + /** + * Creates a deep clone of the object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SketchEdges3D.html#clone) + * + * + */ + clone(): SketchEdges3D; + } + + interface SketchEdges3DConstructor { + /** + * SketchEdges3D is a symbol type that visualizes edges of [3D Object SceneLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html), extruded polygons or mesh geometries with a sketched line. It can be used to emphasize the form of 3D objects and to improve the three-dimensional spatial understanding. A sketched line aims to look like a hand-drawn line. In architecture this is useful for visualizing planned urban projects. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SketchEdges3D.html) + */ + + new(properties?: SketchEdges3DProperties): SketchEdges3D; + + fromJSON(json: any): SketchEdges3D; + } + + export const SketchEdges3D: SketchEdges3DConstructor; + + interface SketchEdges3DProperties extends Edges3DProperties { + /** + * For SketchEdges3D the type is always `sketch`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SketchEdges3D.html#type) + */ + type?: "sketch"; + } + + interface SolidEdges3D extends Edges3D { + /** + * For SolidEdges3D the type is always `solid`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SolidEdges3D.html#type) + */ + type: "solid"; + + /** + * Creates a deep clone of the object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SolidEdges3D.html#clone) + * + * + */ + clone(): SolidEdges3D; + } + + interface SolidEdges3DConstructor { + /** + * SolidEdges3D is a symbol type that visualizes edges of [3D Object SceneLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html), extruded polygons or mesh geometries with a solid line. It can be used to emphasize the form of 3D objects and to improve the three-dimensional spatial understanding. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SolidEdges3D.html) + */ + + new(properties?: SolidEdges3DProperties): SolidEdges3D; + + fromJSON(json: any): SolidEdges3D; + } + + export const SolidEdges3D: SolidEdges3DConstructor; + + interface SolidEdges3DProperties extends Edges3DProperties { + /** + * For SolidEdges3D the type is always `solid`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-edges-SolidEdges3D.html#type) + */ + type?: "solid"; + } + interface ExtrudeSymbol3DLayer extends Symbol3DLayer { + /** + * Sets the contour edges on polygons symbolized with ExtrudeSymbol3DLayer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-ExtrudeSymbol3DLayer.html#edges) + */ + edges: Edges3D; /** * The height of the extrusion in meters. Negative values will extrude the polygon surface downward towards or below the ground. * @@ -21857,6 +24135,12 @@ declare namespace __esri { export const ExtrudeSymbol3DLayer: ExtrudeSymbol3DLayerConstructor; interface ExtrudeSymbol3DLayerProperties extends Symbol3DLayerProperties { + /** + * Sets the contour edges on polygons symbolized with ExtrudeSymbol3DLayer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-ExtrudeSymbol3DLayer.html#edges) + */ + edges?: Edges3DProperties; /** * The height of the extrusion in meters. Negative values will extrude the polygon surface downward towards or below the ground. * @@ -21901,7 +24185,13 @@ declare namespace __esri { interface FillSymbol3DLayer extends Symbol3DLayer { /** - * The outline used to draw a line around the filled geometry. + * Sets the contour edges on 3D Objects. This is only applicable for [MeshSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-MeshSymbol3D.html). ![symbol3D-edges-solid](https://developers.arcgis.com/javascript/latest/assets/img/apiref/symbols/symbol3d-edges-solid-2.png) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol3DLayer.html#edges) + */ + edges: Edges3D; + /** + * The outline used to draw a line around the filled geometry. This property is not supported in [MeshSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-MeshSymbol3D.html) symbol layers. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol3DLayer.html#outline) */ @@ -21939,7 +24229,13 @@ declare namespace __esri { interface FillSymbol3DLayerProperties extends Symbol3DLayerProperties { /** - * The outline used to draw a line around the filled geometry. + * Sets the contour edges on 3D Objects. This is only applicable for [MeshSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-MeshSymbol3D.html). ![symbol3D-edges-solid](https://developers.arcgis.com/javascript/latest/assets/img/apiref/symbols/symbol3d-edges-solid-2.png) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol3DLayer.html#edges) + */ + edges?: Edges3DProperties; + /** + * The outline used to draw a line around the filled geometry. This property is not supported in [MeshSymbol3D](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-MeshSymbol3D.html) symbol layers. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-FillSymbol3DLayer.html#outline) */ @@ -22361,7 +24657,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-LineSymbol3DLayer.html#size) * - * @default 0.75 + * @default "1px" */ size: number; /** @@ -22401,7 +24697,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-LineSymbol3DLayer.html#size) * - * @default 0.75 + * @default "1px" */ size?: number | string; } @@ -23483,7 +25779,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-support-jsonUtils.html#fromJSON) * - * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Symbol_Objects/02r3000000n5000000/) for examples of the structure of various input JSON objects. + * @param json A JSON representation of the instance in the ArcGIS format. See the [ArcGIS REST API documentation](https://developers.arcgis.com/documentation/common-data-types/symbol-objects.htm) for examples of the structure of various input JSON objects. * */ fromJSON(json: any): Symbol; @@ -23593,7 +25889,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3D.html#styleOrigin) */ - readonly styleOrigin: Symbol3DStyleOrigin; + styleOrigin: Symbol3DStyleOrigin; /** * A Collection of [Symbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3DLayer.html) objects used to visualize the graphic or feature. Individual symbol layers may be autocast as objects and specified using the `type` property. * @@ -23617,6 +25913,12 @@ declare namespace __esri { export const Symbol3D: Symbol3DConstructor; interface Symbol3DProperties extends SymbolProperties { + /** + * The origin of the style from which the symbol was originally referenced. A reference to the style origin can be either by styleName or by styleUrl (but not both). This information is part of the WebScene persistence model and may be used to understand where a symbol was originally sourced from. It does not affect actual appearance or rendering of the symbol. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3D.html#styleOrigin) + */ + styleOrigin?: Symbol3DStyleOrigin; /** * A Collection of [Symbol3DLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol3DLayer.html) objects used to visualize the graphic or feature. Individual symbol layers may be autocast as objects and specified using the `type` property. * @@ -24376,8 +26678,8 @@ declare namespace __esri { * @param params See the object specifications table below for the structure of the `params` object. * @param params.strings An array of formatted strings as specified by `conversionType`. Example: `["01N AA 66021 00000" , "11S NT 00000 62155" , "31U BT 94071 65288"]` * @param params.sr The spatial reference or well-known ID to convert the input string coordinates to. - * @param params.conversionType The converstion type of the input strings. **Possible Values:** mrgs | usng | utm | geo-ref | gars | dms | ddm | dd - * @param params.conversionMode Conversion options for mrgs, utm and gars conversion types. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026z000000) for valid values and their descriptions. + * @param params.conversionType The conversion type of the input strings. **Possible Values:** mrgs | usng | utm | geo-ref | gars | dms | ddm | dd + * @param params.conversionMode Conversion options for mrgs, utm and gars conversion types. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/from-geocoordinatestring.htm) for valid values and their descriptions. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ @@ -24483,8 +26785,8 @@ declare namespace __esri { * @param params.sr The spatial reference (or WKID of the spatial reference) of the XY-coordinates to be converted. * @param params.coordinates An array of XY-coordinates (in JSON format) to be converted. * @param params.conversionType The conversion type of the input strings. **Possible values:** mgrs | usng | utm | geo-ref | gars | dms | ddm | dd - * @param params.conversionMode Conversion options for mgrs and utm conversion types. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026w000000) for valid conversion modes and their descriptions. - * @param params.numOfDigits The number of digits to output for each of the numerical portions in the string. The default value depends of `conversionType`. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026z000000) for default values. + * @param params.conversionMode Conversion options for mgrs and utm conversion types. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/to-geocoordinatestring.htm) for valid conversion modes and their descriptions. + * @param params.numOfDigits The number of digits to output for each of the numerical portions in the string. The default value depends of `conversionType`. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/from-geocoordinatestring.htm) for default values. * @param params.rounding If `true`, then numeric portions of the string are rounded to the nearest whole magnitude as specified by `numOfDigits`. Otherwise, numeric portions of the string are truncated. The rounding parameter applies only to conversion types `mgrs`, `usng` and `geo-ref`. * @param params.addSpaces If `true`, then spaces are added between components of the string. The `addSpaces` parameter applies only to conversion types `mgrs`, `usng` and `utm`. The default value for `mgrs` is `false` , while the default value for both `usng` and `utm` is `true`. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). @@ -24544,7 +26846,7 @@ declare namespace __esri { */ sr: SpatialReference | string; /** - * The converstion type of the input strings. **Possible Values:** mrgs | usng | utm | geo-ref | gars | dms | ddm | dd + * The conversion type of the input strings. **Possible Values:** mrgs | usng | utm | geo-ref | gars | dms | ddm | dd * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#fromGeoCoordinateString) * @@ -24552,7 +26854,7 @@ declare namespace __esri { */ conversionType?: string; /** - * Conversion options for mrgs, utm and gars conversion types. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026z000000) for valid values and their descriptions. + * Conversion options for mrgs, utm and gars conversion types. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/from-geocoordinatestring.htm) for valid values and their descriptions. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#fromGeoCoordinateString) */ @@ -24580,13 +26882,13 @@ declare namespace __esri { */ conversionType: string; /** - * Conversion options for mgrs and utm conversion types. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026w000000) for valid conversion modes and their descriptions. + * Conversion options for mgrs and utm conversion types. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/to-geocoordinatestring.htm) for valid conversion modes and their descriptions. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#toGeoCoordinateString) */ conversionMode?: string; /** - * The number of digits to output for each of the numerical portions in the string. The default value depends of `conversionType`. See the [ArcGIS REST API documentation](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r30000026z000000) for default values. + * The number of digits to output for each of the numerical portions in the string. The default value depends of `conversionType`. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/from-geocoordinatestring.htm) for default values. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html#toGeoCoordinateString) */ @@ -24847,7 +27149,7 @@ declare namespace __esri { */ countryCode: string; /** - * The spatial reference of the output geometries. If not specified, the output geometries are in the spatial reference of the input geometries when performing a reverse geocode and in the default spatial reference returned by the service if finding locations by address. If `processSpatialReference` is specified and `outSpatialReference` is not specified, the output geometries are in the spatial reference of the process spatial reference. + * The spatial reference of the output geometries. If not specified, the output geometries are in the spatial reference of the input geometries when performing a reverse geocode and in the default spatial reference returned by the service if finding locations by address. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Locator.html#outSpatialReference) */ @@ -24879,7 +27181,7 @@ declare namespace __esri { * * @param params Specify at least the address and optionally other properties. See the object specifications table below. * @param params.address visit the ArcGIS Online Geocoding Service help for more details on the World Geocoder. - * The address argument is data object that contains properties representing the various address fields accepted by the corresponding geocode service. These fields are listed in the addressFields property of the associated geocode service resource. For example, if the *addressFields* of a geocode service resource includes fields with the following names: Street, City, State and Zone, then the address argument is of the form: + * The address argument is data object that contains properties representing the various address fields accepted by the corresponding geocode service. These fields are listed in the addressFields property of the associated geocode service resource. For example, if the *addressFields* of a geocode service resource includes fields with the following names: Street, City, State and Zone, then the address argument is of the form: * ```js * { * Street: "1234 W Main St", @@ -24887,14 +27189,16 @@ declare namespace __esri { * State: "WA", * Zone: "99027" * } + * * ``` * * Locators published using ArcGIS 10 or later support a single line address field, which * can be specified using the following syntax where field_name is the name of the single * line address field. You can find this name by viewing the help or services directory for * your locator services. Common values are *SingleLine* and *SingleLineFieldName*: + * * ```js - * var address = { "field_name": "380 New York St, Redlands, CA 92373" }; + * var address = { "field_name": "380 New York St, Redlands, CA 92373" }; * ``` * The Services Directory can be used to find out the required and optional address fields * and the correct names for the input name fields. If you are using the World Geocoding Service @@ -24907,7 +27211,7 @@ declare namespace __esri { * @param params.maxLocations Maximum results to return from the query. * @param params.outFields The list of fields included in the returned result set. This list is a comma delimited list of field names. If you specify the shape field in the list of return fields, it is ignored. For non-intersection addresses you can specify the candidate fields as defined in the geocode service. For intersection addresses you can specify the intersection candidate fields. * @param params.searchExtent Defines the extent within which the geocode server will search. Requires ArcGIS Server version 10.1 or greater. - * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). + * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override `requestOptions` defined during construction). * */ addressToLocations(params: LocatorAddressToLocationsParams, requestOptions?: any): IPromise; @@ -24964,7 +27268,7 @@ declare namespace __esri { */ countryCode?: string; /** - * The spatial reference of the output geometries. If not specified, the output geometries are in the spatial reference of the input geometries when performing a reverse geocode and in the default spatial reference returned by the service if finding locations by address. If `processSpatialReference` is specified and `outSpatialReference` is not specified, the output geometries are in the spatial reference of the process spatial reference. + * The spatial reference of the output geometries. If not specified, the output geometries are in the spatial reference of the input geometries when performing a reverse geocode and in the default spatial reference returned by the service if finding locations by address. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Locator.html#outSpatialReference) */ @@ -25002,7 +27306,7 @@ declare namespace __esri { export interface LocatorAddressToLocationsParams extends Object { /** - * The address argument is data object that contains properties representing the various address fields accepted by the corresponding geocode service. These fields are listed in the addressFields property of the associated geocode service resource. For example, if the *addressFields* of a geocode service resource includes fields with the following names: Street, City, State and Zone, then the address argument is of the form: + * The address argument is data object that contains properties representing the various address fields accepted by the corresponding geocode service. These fields are listed in the addressFields property of the associated geocode service resource. For example, if the *addressFields* of a geocode service resource includes fields with the following names: Street, City, State and Zone, then the address argument is of the form: * ```js * { * Street: "1234 W Main St", @@ -25010,14 +27314,16 @@ declare namespace __esri { * State: "WA", * Zone: "99027" * } + * * ``` * * Locators published using ArcGIS 10 or later support a single line address field, which * can be specified using the following syntax where field_name is the name of the single * line address field. You can find this name by viewing the help or services directory for * your locator services. Common values are *SingleLine* and *SingleLineFieldName*: + * * ```js - * var address = { "field_name": "380 New York St, Redlands, CA 92373" }; + * var address = { "field_name": "380 New York St, Redlands, CA 92373" }; * ``` * The Services Directory can be used to find out the required and optional address fields * and the correct names for the input name fields. If you are using the World Geocoding Service @@ -25168,7 +27474,7 @@ declare namespace __esri { interface PrintTaskConstructor { /** - * The PrintTask generates a printer-ready version of the map using an [Export Web Map Task](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Export_Web_Map_Task/02r3000001m3000000/) available with ArGIS Server 10.1 and later. This class is used when you want to have more granular control over the user interface, for example, if you want to provide users the ability to define what appears on the printed page. + * The PrintTask generates a printer-ready version of the map using an [Export Web Map Task](https://developers.arcgis.com/rest/services-reference/export-web-map-task.htm) available with ArGIS Server 10.1 and later. This class is used when you want to have more granular control over the user interface, for example, if you want to provide users the ability to define what appears on the printed page. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-PrintTask.html) */ @@ -25202,21 +27508,21 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-QueryTask.html#execute) * - * @param params Specifies the attributes and spatial filter of the query. + * @param query Specifies the attributes and spatial filter of the query. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ - execute(params: Query | QueryProperties, requestOptions?: any): IPromise; + execute(query: Query | QueryProperties, requestOptions?: any): IPromise; /** * Gets a count of the number of features that satisfy the input query. Valid only for layers published using ArcGIS Server 10 SP1 or greater. Layers published with earlier versions of ArcGIS Server return an error to the `errback` param of `.then()`. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-QueryTask.html#executeForCount) * - * @param params Specifies the attributes and spatial filter of the query. + * @param query Specifies the attributes and spatial filter of the query. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ - executeForCount(params: Query | QueryProperties, requestOptions?: any): IPromise; + executeForCount(query: Query | QueryProperties, requestOptions?: any): IPromise; /** * Gets the extent of the features that satisfy the input query. The count of features that satisfy the input query is returned upon resolution as well. Valid only for [hosted feature services](http://doc.arcgis.com/en/arcgis-online/share-maps/hosted-web-layers.htm) on [arcgis.com](http://arcgis.com) and for ArcGIS Server 10.3.1 and later. * @@ -25226,27 +27532,27 @@ declare namespace __esri { * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ - executeForExtent(params: Query | QueryProperties, requestOptions?: any): IPromise; + executeForExtent(params: Query, requestOptions?: any): IPromise; /** * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against an ArcGIS Server map layer. The result is an array of the object IDs of features that satisfy the input query. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-QueryTask.html#executeForIds) * - * @param params Specifies the attributes and spatial filter of the query. + * @param query Specifies the attributes and spatial filter of the query. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ - executeForIds(params: Query | QueryProperties, requestOptions?: any): IPromise; + executeForIds(query: Query | QueryProperties, requestOptions?: any): IPromise; /** * Executes a [RelationshipQuery](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html) against an ArcGIS Server map layer (or table). If the query is successful, the result is returned as a [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html), which can be accessed using the `.then()` method. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-QueryTask.html#executeRelationshipQuery) * - * @param params Specifies the attributes and spatial filter of the query. + * @param relationshipQuery Specifies the attributes and spatial filter of the query. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ - executeRelationshipQuery(params: RelationshipQuery, requestOptions?: any): IPromise; + executeRelationshipQuery(relationshipQuery: RelationshipQuery | RelationshipQueryProperties, requestOptions?: any): IPromise; } interface QueryTaskConstructor { @@ -25438,7 +27744,7 @@ declare namespace __esri { polygons: Polygon[]; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-AreasAndLengthsParameters.html#toJSON) * @@ -25534,7 +27840,7 @@ declare namespace __esri { unit: string; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-BufferParameters.html#toJSON) * @@ -25800,7 +28106,7 @@ declare namespace __esri { */ timeOfDayUsage: string; /** - * Options for traveling to or from the facility. Default values are defined by the newtork layer. See NATravelDirection for a list of valid values. + * Options for traveling to or from the facility. Default values are defined by the network layer. See NATravelDirection for a list of valid values. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ClosestFacilityParameters.html#travelDirection) */ @@ -25815,7 +28121,7 @@ declare namespace __esri { useHierarchy: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ClosestFacilityParameters.html#toJSON) * @@ -26040,7 +28346,7 @@ declare namespace __esri { */ timeOfDayUsage?: string; /** - * Options for traveling to or from the facility. Default values are defined by the newtork layer. See NATravelDirection for a list of valid values. + * Options for traveling to or from the facility. Default values are defined by the network layer. See NATravelDirection for a list of valid values. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ClosestFacilityParameters.html#travelDirection) */ @@ -26273,7 +28579,7 @@ declare namespace __esri { where: string; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-DataLayer.html#toJSON) * @@ -26405,7 +28711,7 @@ declare namespace __esri { maxSegmentLength: number; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-DensifyParameters.html#toJSON) * @@ -26592,7 +28898,7 @@ declare namespace __esri { geometry2: Geometry[]; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-DistanceParameters.html#toJSON) * @@ -26779,7 +29085,7 @@ declare namespace __esri { searchText: string; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FindParameters.html#toJSON) * @@ -26960,7 +29266,7 @@ declare namespace __esri { maxDeviation: number; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-GeneralizeParameters.html#toJSON) * @@ -27100,6 +29406,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#maxAllowableOffset) */ maxAllowableOffset: number; + /** + * If `true`, field names will be returned instead of field aliases. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnFieldName) + * + * @default false + */ + returnFieldName: boolean; /** * If `true`, the result set includes the geometry associated with each result. * @@ -27108,6 +29422,30 @@ declare namespace __esri { * @default false */ returnGeometry: boolean; + /** + * When `true`, indicates that M values will be returned. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnM) + * + * @default false + */ + returnM: boolean; + /** + * If `true`, the values in the result will not be formatted i.e. numbers will returned as is and dates will be returned as epoch values. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnUnformattedValues) + * + * @default false + */ + returnUnformattedValues: boolean; + /** + * When `true`, indicates that M values will be returned. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnZ) + * + * @default false + */ + returnZ: boolean; /** * The spatial reference of the input and output geometries as well as of the [mapExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#mapExtent). If the spatial reference is not specified, the geometry and the extent are assumed to be in the spatial reference of the view, and the output geometries will also be in the spatial reference of the view. * @@ -27130,7 +29468,7 @@ declare namespace __esri { width: number; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#toJSON) * @@ -27209,6 +29547,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#maxAllowableOffset) */ maxAllowableOffset?: number; + /** + * If `true`, field names will be returned instead of field aliases. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnFieldName) + * + * @default false + */ + returnFieldName?: boolean; /** * If `true`, the result set includes the geometry associated with each result. * @@ -27217,6 +29563,30 @@ declare namespace __esri { * @default false */ returnGeometry?: boolean; + /** + * When `true`, indicates that M values will be returned. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnM) + * + * @default false + */ + returnM?: boolean; + /** + * If `true`, the values in the result will not be formatted i.e. numbers will returned as is and dates will be returned as epoch values. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnUnformattedValues) + * + * @default false + */ + returnUnformattedValues?: boolean; + /** + * When `true`, indicates that M values will be returned. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#returnZ) + * + * @default false + */ + returnZ?: boolean; /** * The spatial reference of the input and output geometries as well as of the [mapExtent](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-IdentifyParameters.html#mapExtent). If the spatial reference is not specified, the geometry and the extent are assumed to be in the spatial reference of the view, and the output geometries will also be in the spatial reference of the view. * @@ -27364,7 +29734,7 @@ declare namespace __esri { returnGeometry: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ImageServiceIdentifyParameters.html#toJSON) * @@ -27678,7 +30048,7 @@ declare namespace __esri { polylines: Polyline[]; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-LengthsParameters.html#toJSON) * @@ -27853,7 +30223,7 @@ declare namespace __esri { offsetUnit: string; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-OffsetParameters.html#toJSON) * @@ -28073,14 +30443,14 @@ declare namespace __esri { * Value | Description * | --- | --- * map-only | Map does not contain any layout elements. Only map image is printed. - * a3-landscape | 16.54 x 11.69 in - * a3-portrait | 11.69 x 16.54 in - * a4-landscape | 11.69 x 8.27 in - * a4-portrait | 8.27 × 11.69 in - * letter-ansi-a-landscape | 11.0 x 8.5 in - * letter-ansi-a-portrait | 8.5 x 11.0 in - * tabloid-ansi-b-landscape| 17.0 x 11.0 in - * tabloid-ansi-b-portrait | 11.0 x 17.0 in + * a3-landscape | A3 Landscape + * a3-portrait | A3 Portrait + * a4-landscape | A4 Landscape + * a4-portrait | A4 Portrait + * letter-ansi-a-landscape | Letter ANSI A Landscape + * letter-ansi-a-portrait | Letter ANSI A Portrait + * tabloid-ansi-b-landscape| Tabloid ANSI B Landscape + * tabloid-ansi-b-portrait | Tabloid ANSI B Portrait * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-PrintTemplate.html#layout) @@ -28157,14 +30527,14 @@ declare namespace __esri { * Value | Description * | --- | --- * map-only | Map does not contain any layout elements. Only map image is printed. - * a3-landscape | 16.54 x 11.69 in - * a3-portrait | 11.69 x 16.54 in - * a4-landscape | 11.69 x 8.27 in - * a4-portrait | 8.27 × 11.69 in - * letter-ansi-a-landscape | 11.0 x 8.5 in - * letter-ansi-a-portrait | 8.5 x 11.0 in - * tabloid-ansi-b-landscape| 17.0 x 11.0 in - * tabloid-ansi-b-portrait | 11.0 x 17.0 in + * a3-landscape | A3 Landscape + * a3-portrait | A3 Portrait + * a4-landscape | A4 Landscape + * a4-portrait | A4 Portrait + * letter-ansi-a-landscape | Letter ANSI A Landscape + * letter-ansi-a-portrait | Letter ANSI A Portrait + * tabloid-ansi-b-landscape| Tabloid ANSI B Landscape + * tabloid-ansi-b-portrait | Tabloid ANSI B Portrait * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-PrintTemplate.html#layout) @@ -28219,7 +30589,7 @@ declare namespace __esri { */ height?: number; /** - * Resolution in dots per inch. Default value is 96. + * Resolution in dots per inch. If modified when `layout = 'map-only'`, the `width` and `height` will also need to be modified proportional to the `dpi` change. Default value is 96. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-PrintTemplate.html#exportOptions) */ @@ -28288,7 +30658,7 @@ declare namespace __esri { */ outSR: SpatialReference; /** - * The well-known id {wkid:number} or well-known text {wkt:string} of the datum transformation to be applied to the projected geometries. See [Datum transformations](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000r8000000) for a list of valid datum transformations that may be used here. If a transformation is specified, a value must also be specified in the [transformForward](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformForward) property. + * The well-known id {wkid:number} or well-known text {wkt:string} of the datum transformation to be applied to the projected geometries. See [Datum transformations](https://developers.arcgis.com/rest/services-reference/datum-transformations.htm) for a list of valid datum transformations that may be used here. If a transformation is specified, a value must also be specified in the [transformForward](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformForward) property. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformation) */ @@ -28301,7 +30671,7 @@ declare namespace __esri { transformForward: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#toJSON) * @@ -28338,7 +30708,7 @@ declare namespace __esri { */ outSR?: SpatialReferenceProperties; /** - * The well-known id {wkid:number} or well-known text {wkt:string} of the datum transformation to be applied to the projected geometries. See [Datum transformations](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000r8000000) for a list of valid datum transformations that may be used here. If a transformation is specified, a value must also be specified in the [transformForward](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformForward) property. + * The well-known id {wkid:number} or well-known text {wkt:string} of the datum transformation to be applied to the projected geometries. See [Datum transformations](https://developers.arcgis.com/rest/services-reference/datum-transformations.htm) for a list of valid datum transformations that may be used here. If a transformation is specified, a value must also be specified in the [transformForward](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformForward) property. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformation) */ @@ -28354,7 +30724,7 @@ declare namespace __esri { export interface ProjectParametersTransformation extends Object { /** - * The well-known ID of the datum transformation to apply to the projection. [List of valid IDs for Datum transformations](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#//02r3000000r8000000). + * The well-known ID of the datum transformation to apply to the projection. [List of valid IDs for Datum transformations](https://developers.arcgis.com/rest/services-reference/datum-transformations.htm). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ProjectParameters.html#transformation) */ @@ -28369,11 +30739,23 @@ declare namespace __esri { interface Query extends Accessor, JSONSupport { /** - * Buffer distance for input geometries. The distance unit is specified by [units property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units). Query results will include features within the distance specified of the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) of the query. This parameter only applies if [supportsQueryWithDistance](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Feature_Service_Layer/02r3000000r1000000/) is `true`. + * Datum transformation used for projecting geometries in the query results when [outSpatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outSpatialReference) is different than the layer's spatial reference. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#datumTransformation) + */ + datumTransformation: number; + /** + * Buffer distance for input geometries. The distance unit is specified by [units property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units). Query results will include features within the distance specified of the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) of the query. This parameter only applies if [supportsQueryWithDistance](https://developers.arcgis.com/rest/services-reference/query-feature-service-layer-.htm) is `true`. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#distance) */ distance: number; + /** + * Specify the geodatabase version to display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#gdbVersion) + */ + gdbVersion: string; /** * The geometry to apply to the spatial filter. The spatial relationship as specified by `spatialRelationship` is applied to this geometry while performing the query. The valid geometry types are [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html), [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), [Multipoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Multipoint.html), [Polyline](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polyline.html), or [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html). * @@ -28392,6 +30774,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#groupByFieldsForStatistics) */ groupByFieldsForStatistics: string[]; + /** + * The historic moment to query. This parameter applies only if the `supportsQueryWithHistoricMoment` property of the layers being queried is set to `true`. This setting is provided in the layer resource. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#historicMoment) + */ + historicMoment: Date; /** * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. * @@ -28405,7 +30793,7 @@ declare namespace __esri { */ multipatchOption: string; /** - * Number of features to retrieve. Should be used in conjunction with [start property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start). Use this to implement paging and retrieve "pages" of results when querying. If not provided, but an instance of Query has a start property. + * Number of features to retrieve. Should be used in conjunction with [start property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start). Use this to implement paging and retrieve "pages" of results when querying. If not provided, but an instance of Query has a `start` property, then the default value of `num` is 10. If neither `num` nor `start` properties are provided, then the default value of `num` is equal to the **Max Record Count** of the service, which can be found at the REST endpoint of the FeatureLayer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) */ @@ -28440,6 +30828,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outStatistics) */ outStatistics: StatisticDefinition[]; + /** + * Filters features from the layer based on pre-authored parameterized filters. When value is not specified for any parameter in a request, the default value, that is assigned during authoring time, gets used. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#parameterValues) + */ + parameterValues: QueryParameterValues[]; /** * Specify the pixel level to be identified on the X and Y axis. Defaults to the base resolution of the dataset if not specified. Applicable only to Image Service layers. * @@ -28452,6 +30846,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#quantizationParameters) */ quantizationParameters: QueryQuantizationParameters; + /** + * Filters features from the layer that are within the specified range values. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#rangeValues) + */ + rangeValues: QueryRangeValues[]; /** * The string describes the spatial relationship to be tested when the spatial relationship is `relation`. The [Relational functions for ST_Geometry](https://desktop.arcgis.com/en/arcmap/latest/manage-data/using-sql-with-gdbs/relational-functions-for-st-geometry.htm) topic has additional details. * @@ -28527,6 +30927,14 @@ declare namespace __esri { * @default intersects */ spatialRelationship: string; + /** + * This parameter can be either standard SQL92 `standard` or it can use the native SQL of the underlying datastore `native`. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/query-feature-service-.htm) for more information. **Known Values:** none | standard | native + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#sqlFormat) + * + * @default none + */ + sqlFormat: string; /** * Zero-based index indicating where to begin retrieving features. Should be used in conjunction with [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num). Use this to implement paging and retrieve "pages" of results when querying. Features are sorted ascending by object ID by default. * @@ -28542,7 +30950,7 @@ declare namespace __esri { */ text: string; /** - * The unit for calculating the buffer distance. if unit is not specified, the unit is derived from the geometry spatial reference. If the geometry spatial reference is not specified, the unit is derived from the feature service spatial reference. This parameter only applies if [supportsQueryWithDistance](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Feature_Service_Layer/02r3000000r1000000/) is `true`. **Known Values:** feet | miles | nautical-miles | us-nautical-miles | meters | kilometers + * The unit for calculating the buffer distance. if unit is not specified, the unit is derived from the geometry spatial reference. If the geometry spatial reference is not specified, the unit is derived from the feature service spatial reference. This parameter only applies if [supportsQueryWithDistance](https://developers.arcgis.com/rest/services-reference/query-feature-service-layer-.htm) is `true`. **Known Values:** feet | miles | nautical-miles | us-nautical-miles | meters | kilometers * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units) */ @@ -28580,11 +30988,23 @@ declare namespace __esri { interface QueryProperties { /** - * Buffer distance for input geometries. The distance unit is specified by [units property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units). Query results will include features within the distance specified of the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) of the query. This parameter only applies if [supportsQueryWithDistance](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Feature_Service_Layer/02r3000000r1000000/) is `true`. + * Datum transformation used for projecting geometries in the query results when [outSpatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outSpatialReference) is different than the layer's spatial reference. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#datumTransformation) + */ + datumTransformation?: number; + /** + * Buffer distance for input geometries. The distance unit is specified by [units property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units). Query results will include features within the distance specified of the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) of the query. This parameter only applies if [supportsQueryWithDistance](https://developers.arcgis.com/rest/services-reference/query-feature-service-layer-.htm) is `true`. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#distance) */ distance?: number; + /** + * Specify the geodatabase version to display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#gdbVersion) + */ + gdbVersion?: string; /** * The geometry to apply to the spatial filter. The spatial relationship as specified by `spatialRelationship` is applied to this geometry while performing the query. The valid geometry types are [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html), [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), [Multipoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Multipoint.html), [Polyline](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polyline.html), or [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html). * @@ -28603,6 +31023,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#groupByFieldsForStatistics) */ groupByFieldsForStatistics?: string[]; + /** + * The historic moment to query. This parameter applies only if the `supportsQueryWithHistoricMoment` property of the layers being queried is set to `true`. This setting is provided in the layer resource. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#historicMoment) + */ + historicMoment?: DateProperties; /** * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. * @@ -28616,7 +31042,7 @@ declare namespace __esri { */ multipatchOption?: string; /** - * Number of features to retrieve. Should be used in conjunction with [start property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start). Use this to implement paging and retrieve "pages" of results when querying. If not provided, but an instance of Query has a start property. + * Number of features to retrieve. Should be used in conjunction with [start property](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start). Use this to implement paging and retrieve "pages" of results when querying. If not provided, but an instance of Query has a `start` property, then the default value of `num` is 10. If neither `num` nor `start` properties are provided, then the default value of `num` is equal to the **Max Record Count** of the service, which can be found at the REST endpoint of the FeatureLayer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) */ @@ -28651,6 +31077,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outStatistics) */ outStatistics?: StatisticDefinitionProperties[]; + /** + * Filters features from the layer based on pre-authored parameterized filters. When value is not specified for any parameter in a request, the default value, that is assigned during authoring time, gets used. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#parameterValues) + */ + parameterValues?: QueryParameterValues[]; /** * Specify the pixel level to be identified on the X and Y axis. Defaults to the base resolution of the dataset if not specified. Applicable only to Image Service layers. * @@ -28663,6 +31095,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#quantizationParameters) */ quantizationParameters?: QueryQuantizationParameters; + /** + * Filters features from the layer that are within the specified range values. Requires ArcGIS Server service 10.5 or greater. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#rangeValues) + */ + rangeValues?: QueryRangeValues[]; /** * The string describes the spatial relationship to be tested when the spatial relationship is `relation`. The [Relational functions for ST_Geometry](https://desktop.arcgis.com/en/arcmap/latest/manage-data/using-sql-with-gdbs/relational-functions-for-st-geometry.htm) topic has additional details. * @@ -28738,6 +31176,14 @@ declare namespace __esri { * @default intersects */ spatialRelationship?: string; + /** + * This parameter can be either standard SQL92 `standard` or it can use the native SQL of the underlying datastore `native`. See the [ArcGIS REST API documentation](https://developers.arcgis.com/rest/services-reference/query-feature-service-.htm) for more information. **Known Values:** none | standard | native + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#sqlFormat) + * + * @default none + */ + sqlFormat?: string; /** * Zero-based index indicating where to begin retrieving features. Should be used in conjunction with [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num). Use this to implement paging and retrieve "pages" of results when querying. Features are sorted ascending by object ID by default. * @@ -28753,7 +31199,7 @@ declare namespace __esri { */ text?: string; /** - * The unit for calculating the buffer distance. if unit is not specified, the unit is derived from the geometry spatial reference. If the geometry spatial reference is not specified, the unit is derived from the feature service spatial reference. This parameter only applies if [supportsQueryWithDistance](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Query_Feature_Service_Layer/02r3000000r1000000/) is `true`. **Known Values:** feet | miles | nautical-miles | us-nautical-miles | meters | kilometers + * The unit for calculating the buffer distance. if unit is not specified, the unit is derived from the geometry spatial reference. If the geometry spatial reference is not specified, the unit is derived from the feature service spatial reference. This parameter only applies if [supportsQueryWithDistance](https://developers.arcgis.com/rest/services-reference/query-feature-service-layer-.htm) is `true`. **Known Values:** feet | miles | nautical-miles | us-nautical-miles | meters | kilometers * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#units) */ @@ -28767,6 +31213,22 @@ declare namespace __esri { } + export interface QueryParameterValues extends Object { + /** + * The parameter name. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#parameterValues) + */ + name: string; + /** + * Single value or array of values. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#parameterValues) + */ + value: string | string[] | number | number[] | Date | Date[]; + } + + export interface QueryQuantizationParameters extends Object { /** * An extent defining the quantization grid bounds. Its [SpatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html) matches the input geometry spatial reference if one is specified for the query. Otherwise, the extent will be in the layer's spatial reference. @@ -28796,6 +31258,22 @@ declare namespace __esri { tolerance?: number; } + + export interface QueryRangeValues extends Object { + /** + * The range id. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#rangeValues) + */ + name: string; + /** + * Single value or value range. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#rangeValues) + */ + values: number | number[]; + } + interface RasterData extends Accessor, JSONSupport { /** * Specifies the format of the raster data, such as "jpg", "tif", etc. @@ -28891,7 +31369,7 @@ declare namespace __esri { relationParameter: string; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationParameters.html#toJSON) * @@ -28951,13 +31429,19 @@ declare namespace __esri { relationParameter?: string; } - interface RelationshipQuery extends Accessor { + interface RelationshipQuery extends Accessor, JSONSupport { /** * The definition expression to be applied to the related table or layer. Only records that fit the definition expression and are in the list of `objectIds` will be returned. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#definitionExpression) */ definitionExpression: string; + /** + * Specify the geodatabase version to display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#gdbVersion) + */ + gdbVersion: string; /** * Specify the number of decimal places for the geometries returned by the query operation. * @@ -28965,19 +31449,25 @@ declare namespace __esri { */ geometryPrecision: number; /** - * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of the `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. + * The historic moment to query. This parameter applies only if the `supportsHistoricMoment` property of the layers being queried is set to `true`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#historicMoment) + */ + historicMoment: Date; + /** + * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#maxAllowableOffset) */ maxAllowableOffset: number; /** - * A comma delimited list of `ObjectIds` for the features in the layer/table that you want to query. + * A comma delimited list of ObjectIds for the features in the layer/table being queried. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#objectIds) */ objectIds: number[]; /** - * Attribute fields to include in the [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html). Fields must exist in the map layer. You must list the actual field names rather than the alias names. Returned fields are also the actual field names. However, you are able to use the alias names when you display the results. You can set field alias names in the map document. When you specify the output fields, you should limit the fields to only those you expect to use in the query or the results. The fewer fields you include, the faster the response will be. Each query must have access to the Shape and ObjectId fields for a layer, but your list of fields does not need to include these two fields. + * Attribute fields to include in the FeatureSet. Fields must exist in the map layer. You must list actual field names rather than the alias names. You are, however, able to use the alias names when you display the results. You can set field alias names in the map document. When specifying the output fields, you should limit the fields to only those you expect to use in the query or the results. The fewer fields you include, the faster the response will be. Each query must have access to the Shape and ObjectId fields for a layer. However, your list of fields does not need to include these two fields. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#outFields) */ @@ -28998,23 +31488,27 @@ declare namespace __esri { * If `true`, each feature in the [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html) includes the geometry. Set to `false` (default) if you do not plan to include highlighted features on a map since the geometry makes up a significant portion of the response. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#returnGeometry) + * + * @default false */ returnGeometry: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Creates a deep clone of RelationshipQuery object. * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#toJSON) + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#clone) * * */ - toJSON(): any; + clone(): RelationshipQuery; } interface RelationshipQueryConstructor { new(properties?: RelationshipQueryProperties): RelationshipQuery; + + fromJSON(json: any): RelationshipQuery; } export const RelationshipQuery: RelationshipQueryConstructor; @@ -29026,6 +31520,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#definitionExpression) */ definitionExpression?: string; + /** + * Specify the geodatabase version to display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#gdbVersion) + */ + gdbVersion?: string; /** * Specify the number of decimal places for the geometries returned by the query operation. * @@ -29033,19 +31533,25 @@ declare namespace __esri { */ geometryPrecision?: number; /** - * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of the `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. + * The historic moment to query. This parameter applies only if the `supportsHistoricMoment` property of the layers being queried is set to `true`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#historicMoment) + */ + historicMoment?: DateProperties; + /** + * The maximum allowable offset used for generalizing geometries returned by the query operation. The offset is in the units of `outSpatialReference`. If `outSpatialReference` is not defined, the spatial reference of the map is used. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#maxAllowableOffset) */ maxAllowableOffset?: number; /** - * A comma delimited list of `ObjectIds` for the features in the layer/table that you want to query. + * A comma delimited list of ObjectIds for the features in the layer/table being queried. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#objectIds) */ objectIds?: number[]; /** - * Attribute fields to include in the [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html). Fields must exist in the map layer. You must list the actual field names rather than the alias names. Returned fields are also the actual field names. However, you are able to use the alias names when you display the results. You can set field alias names in the map document. When you specify the output fields, you should limit the fields to only those you expect to use in the query or the results. The fewer fields you include, the faster the response will be. Each query must have access to the Shape and ObjectId fields for a layer, but your list of fields does not need to include these two fields. + * Attribute fields to include in the FeatureSet. Fields must exist in the map layer. You must list actual field names rather than the alias names. You are, however, able to use the alias names when you display the results. You can set field alias names in the map document. When specifying the output fields, you should limit the fields to only those you expect to use in the query or the results. The fewer fields you include, the faster the response will be. Each query must have access to the Shape and ObjectId fields for a layer. However, your list of fields does not need to include these two fields. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#outFields) */ @@ -29066,6 +31572,8 @@ declare namespace __esri { * If `true`, each feature in the [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html) includes the geometry. Set to `false` (default) if you do not plan to include highlighted features on a map since the geometry makes up a significant portion of the response. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RelationshipQuery.html#returnGeometry) + * + * @default false */ returnGeometry?: boolean; } @@ -29305,7 +31813,7 @@ declare namespace __esri { useTimeWindows: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-RouteParameters.html#toJSON) * @@ -29720,7 +32228,7 @@ declare namespace __esri { * none | No lines are returned * straight | Only returns straight lines * true-shape | Return the true shape of the lines - * true-shape-with-measure | Return the true shape of the lines with their measurments + * true-shape-with-measure | Return the true shape of the lines with their measurements * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ServiceAreaParameters.html#outputLines) @@ -29886,7 +32394,7 @@ declare namespace __esri { useHierarchy: boolean; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ServiceAreaParameters.html#toJSON) * @@ -29980,7 +32488,7 @@ declare namespace __esri { * none | No lines are returned * straight | Only returns straight lines * true-shape | Return the true shape of the lines - * true-shape-with-measure | Return the true shape of the lines with their measurments + * true-shape-with-measure | Return the true shape of the lines with their measurements * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-ServiceAreaParameters.html#outputLines) @@ -30335,7 +32843,7 @@ declare namespace __esri { trimExtendTo: Polyline; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-TrimExtendParameters.html#toJSON) * @@ -31525,7 +34033,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-JobTask.html#createJobs) * - * @param params The parameters to be used for job creation, parameters defined in the job type can be overritten. The jobTypeId and user are required parameters when creating a job. + * @param params The parameters to be used for job creation, parameters defined in the job type can be overwritten. The jobTypeId and user are required parameters when creating a job. * @param requestOptions Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#esriRequest) to be used for the data request (will override requestOptions defined during construction). * */ @@ -31894,7 +34402,7 @@ declare namespace __esri { */ message: string; /** - * The name of the activity that occured. + * The name of the activity that occurred. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-JobTask.html#ActivityType) */ @@ -32220,7 +34728,7 @@ declare namespace __esri { */ parentJobId: number; /** - * The name of the geodatabase version that will be the parent version of the new job's version. By default it'll be the parent version of the data workspace. + * The name of the geodatabase version that will be the parent version of the new job's version. By default it will be the parent version of the data workspace. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-JobTask.html#JobCreationParameters) */ @@ -32392,7 +34900,7 @@ declare namespace __esri { */ parentJobId: number; /** - * The name of the geodatabase version that is the parent version of the job's version. By default it'll be the parent version of the data workspace. + * The name of the geodatabase version that is the parent version of the job's version. By default it will be the parent version of the data workspace. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-JobTask.html#JobInfo) */ @@ -33110,7 +35618,7 @@ declare namespace __esri { */ parentJobId: number; /** - * The name of the geodatabase version that will be the parent version of the new job's version. By default it'll be the parent version of the data workspace. + * The name of the geodatabase version that will be the parent version of the new job's version. By default it will be the parent version of the data workspace. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-JobTask.html#JobUpdateParameters) */ @@ -33524,7 +36032,7 @@ declare namespace __esri { */ export interface ChangeRuleMatch extends Object { /** - * The time the change occured to the data. + * The time the change occurred to the data. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-NotificationTask.html#ChangeRuleMatch) */ @@ -34520,7 +37028,7 @@ declare namespace __esri { } /** - * Step retpresents the properties of a step that is used in a job's workflow. + * Step represents the properties of a step that is used in a job's workflow. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-WorkflowTask.html#Step) */ @@ -34838,7 +37346,7 @@ declare namespace __esri { } /** - * WorkflowPathDisplayDetails represents properties of a workflow's path properties like location, destination steps, postion on the workflow canvas. + * WorkflowPathDisplayDetails represents properties of a workflow's path properties like location, destination steps, position on the workflow canvas. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-workflow-WorkflowTask.html#WorkflowPathDisplayDetails) */ @@ -34890,7 +37398,7 @@ declare namespace __esri { * * Name | Type | Description * ---------|--------|------------- - * isDefault | Boolean | Indicates whehter this is the default path(only path) from the source step. + * isDefault | Boolean | Indicates whether this is the default path(only path) from the source step. * numReturnValues | Number[] | The number of possible return values for the path. * returnValueX | Number[] | The return values associated with the path. * @@ -35297,11 +37805,11 @@ declare namespace __esri { interface Draw extends Accessor { /** - * A reference to the active draw action. An instance of the draw action is created when [create()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) method is called. + * A reference to the active [draw action](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html). An instance of the draw action is created when [create()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) method is called. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#activeAction) */ - activeAction: PointDrawAction | MultipointDrawAction | PolygonDrawAction | PolylineDrawAction; + activeAction: DrawAction; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). Set this to link the draw to a specific view. * @@ -35309,15 +37817,41 @@ declare namespace __esri { */ view: MapView; + /** + * Complete the current active drawing. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#complete) + * + * + */ + complete(): void; /** * Creates an instance of the requested draw action. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) * - * @param drawAction Name of the draw action to create. See the table below for a list of known values and type of draw action it creates. **Known Values:** point | multipoint | polyline | polygon + * @param drawAction + * Name of the [draw action](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html) to create. See the table below for a list of known values and type of draw action it creates. **Known Values:** point | multipoint | polyline | polygon | rectangle | circle | ellipse + * + * Geometry type | Draw action instance + * ------------- | -------------------- + * point | [PointDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html) + * multipoint | [MultipointDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html) + * polyline | [PolylineDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html) + * polygon | [PolygonDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html) + * rectangle, circle, ellipse | [SegmentDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-SegmentDrawAction.html) + * @param drawOptions Object of the drawing options for the geometry to be created. + * @param drawOptions.mode + * The drawing mode. The drawing mode only applies when creating `polygon` and `polyline` geometries. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. * */ - create(drawAction: string): PointDrawAction | MultipointDrawAction | PolylineDrawAction | PolygonDrawAction; + create(drawAction: string, drawOptions: DrawCreateDrawOptions): DrawAction; /** * Resets the drawing by clearing the active action. * @@ -35342,11 +37876,11 @@ declare namespace __esri { interface DrawProperties { /** - * A reference to the active draw action. An instance of the draw action is created when [create()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) method is called. + * A reference to the active [draw action](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html). An instance of the draw action is created when [create()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) method is called. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#activeAction) */ - activeAction?: PointDrawActionProperties | MultipointDrawActionProperties | PolygonDrawActionProperties | PolylineDrawActionProperties; + activeAction?: DrawActionProperties; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). Set this to link the draw to a specific view. * @@ -35355,36 +37889,96 @@ declare namespace __esri { view?: MapViewProperties; } - interface MultipointDrawAction extends Accessor, Evented { + + export interface DrawCreateDrawOptions extends Object { + /** + * The drawing mode. The drawing mode only applies when creating `polygon` and `polyline` geometries. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-Draw.html#create) + * + * @default hybrid + */ + mode?: string; + } + + interface DrawAction extends Accessor, Evented { + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#view) + */ + view: MapView; + + /** + * Indicates if the [redo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#redo) method can be called on the action instance. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#canRedo) + * + * + */ + canRedo(): boolean; + /** + * Indicates if the [undo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#undo) method can be called on the action instance. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#canUndo) + * + * + */ + canUndo(): boolean; + /** + * Incrementally redo actions recorded in the stack. Call [canRedo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#canRedo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#event:vertex-remove) events depending on the last action. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#redo) + * + * + */ + redo(): void; + /** + * Incrementally undo actions recorded in the stack. Call [canUndo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#canUndo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#event:vertex-remove) events depending on the last action. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#undo) + * + * + */ + undo(): void; + } + + interface DrawActionConstructor { + /** + * DrawAction is the base class for all draw actions. DrawActions use the view events to generate a set of coordinates to create new geometries. Each serves a different purpose, allowing you to create a different type geometry such as [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), [multipoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Multipoint.html), [polyline](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polyline.html), and [polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html) + */ + + new(properties?: DrawActionProperties): DrawAction; + } + + export const DrawAction: DrawActionConstructor; + + interface DrawActionProperties { + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-DrawAction.html#view) + */ + view?: MapViewProperties; + } + + interface MultipointDrawAction extends DrawAction { /** * Two-dimensional array of numbers representing the coordinates of each vertex that comprises the drawn geometry. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#vertices) */ readonly vertices: number[][]; - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#view) - */ - view: MapView; - /** - * Indicates if the [redo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#redo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#canRedo) - * - * - */ - canRedo(): boolean; - /** - * Indicates if the [undo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#undo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#canUndo) - * - * - */ - canUndo(): boolean; /** * Completes drawing the [multipoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Multipoint.html) geometry and fires the [draw-complete](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#event:draw-complete) event. Call this method if the drawing logic needs to be completed other than by double-clicking or pressing the "C" key. * @@ -35393,39 +37987,19 @@ declare namespace __esri { * */ complete(): void; - /** - * Incrementally redo actions recorded in the stack. Call [canRedo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#canRedo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#event:vertex-remove) event depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#redo) - * - * - */ - redo(): void; - /** - * Incrementally undo actions recorded in the stack. Call [canUndo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#canUndo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#event:vertex-remove) event depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#undo) - * - * - */ - undo(): void; on(name: "cursor-update", eventHandler: MultipointDrawActionCursorUpdateEventHandler): IHandle; - on(name: "cursor-update", modifiers: string[], eventHandler: MultipointDrawActionCursorUpdateEventHandler): IHandle; - on(name: "vertex-add", eventHandler: MultipointDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-add", modifiers: string[], eventHandler: MultipointDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-remove", eventHandler: MultipointDrawActionVertexRemoveEventHandler): IHandle; - on(name: "vertex-remove", modifiers: string[], eventHandler: MultipointDrawActionVertexRemoveEventHandler): IHandle; - on(name: "draw-complete", eventHandler: MultipointDrawActionDrawCompleteEventHandler): IHandle; - on(name: "draw-complete", modifiers: string[], eventHandler: MultipointDrawActionDrawCompleteEventHandler): IHandle; + on(name: "undo", eventHandler: MultipointDrawActionUndoEventHandler): IHandle; + + on(name: "redo", eventHandler: MultipointDrawActionRedoEventHandler): IHandle; } interface MultipointDrawActionConstructor { @@ -35436,13 +38010,8 @@ declare namespace __esri { export const MultipointDrawAction: MultipointDrawActionConstructor; - interface MultipointDrawActionProperties { - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html#view) - */ - view?: MapViewProperties; + interface MultipointDrawActionProperties extends DrawActionProperties { + } export interface MultipointDrawActionCursorUpdateEvent { @@ -35469,6 +38038,32 @@ declare namespace __esri { vertices: number[][]; } + export interface MultipointDrawActionRedoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + + export interface MultipointDrawActionUndoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + export interface MultipointDrawActionVertexAddEvent { defaultPrevented: boolean; @@ -35495,19 +38090,13 @@ declare namespace __esri { vertices: number[][]; } - interface PointDrawAction extends Accessor, Evented { + interface PointDrawAction extends DrawAction { /** * An array of x,y coordinates for the [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometry. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html#coordinates) */ - coordinates: number[]; - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html#view) - */ - view: MapView; + readonly coordinates: number[]; /** * Completes drawing the [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometry and fires the [draw-complete](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html#event:draw-complete) event. Call this method if the drawing logic needs to be completed other than by double-clicking or pressing the "C" key. @@ -35521,11 +38110,7 @@ declare namespace __esri { on(name: "cursor-update", eventHandler: PointDrawActionCursorUpdateEventHandler): IHandle; - on(name: "cursor-update", modifiers: string[], eventHandler: PointDrawActionCursorUpdateEventHandler): IHandle; - on(name: "draw-complete", eventHandler: PointDrawActionDrawCompleteEventHandler): IHandle; - - on(name: "draw-complete", modifiers: string[], eventHandler: PointDrawActionDrawCompleteEventHandler): IHandle; } interface PointDrawActionConstructor { @@ -35536,19 +38121,8 @@ declare namespace __esri { export const PointDrawAction: PointDrawActionConstructor; - interface PointDrawActionProperties { - /** - * An array of x,y coordinates for the [point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html) geometry. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html#coordinates) - */ - coordinates?: number[]; - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html#view) - */ - view?: MapViewProperties; + interface PointDrawActionProperties extends DrawActionProperties { + } export interface PointDrawActionCursorUpdateEvent { @@ -35573,36 +38147,29 @@ declare namespace __esri { type: string; } - interface PolygonDrawAction extends Accessor, Evented { + interface PolygonDrawAction extends DrawAction { + /** + * The drawing mode. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#mode) + * + * @default hybrid + */ + mode: string; /** * Two-dimensional array of numbers representing the coordinates of each vertex comprising the geometry being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#vertices) */ readonly vertices: number[][]; - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#view) - */ - view: MapView; - /** - * Indicates if the [redo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#redo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#canRedo) - * - * - */ - canRedo(): boolean; - /** - * Indicates if the [undo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#undo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#canUndo) - * - * - */ - canUndo(): boolean; /** * Completes drawing the polygon geometry and fires the [draw-complete](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#event:draw-complete) event. Call this method if the drawing logic needs to be completed other than by double-clicking or pressing the "C" key. * @@ -35611,39 +38178,19 @@ declare namespace __esri { * */ complete(): void; - /** - * Incrementally redo actions recorded in the stack. Call [canRedo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#canRedo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#event:vertex-remove) events depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#redo) - * - * - */ - redo(): void; - /** - * Incrementally undo actions recorded in the stack. Call [canUndo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#canUndo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#event:vertex-remove) events depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#undo) - * - * - */ - undo(): void; on(name: "cursor-update", eventHandler: PolygonDrawActionCursorUpdateEventHandler): IHandle; - on(name: "cursor-update", modifiers: string[], eventHandler: PolygonDrawActionCursorUpdateEventHandler): IHandle; - on(name: "vertex-add", eventHandler: PolygonDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-add", modifiers: string[], eventHandler: PolygonDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-remove", eventHandler: PolygonDrawActionVertexRemoveEventHandler): IHandle; - on(name: "vertex-remove", modifiers: string[], eventHandler: PolygonDrawActionVertexRemoveEventHandler): IHandle; - on(name: "draw-complete", eventHandler: PolygonDrawActionDrawCompleteEventHandler): IHandle; - on(name: "draw-complete", modifiers: string[], eventHandler: PolygonDrawActionDrawCompleteEventHandler): IHandle; + on(name: "undo", eventHandler: PolygonDrawActionUndoEventHandler): IHandle; + + on(name: "redo", eventHandler: PolygonDrawActionRedoEventHandler): IHandle; } interface PolygonDrawActionConstructor { @@ -35654,13 +38201,22 @@ declare namespace __esri { export const PolygonDrawAction: PolygonDrawActionConstructor; - interface PolygonDrawActionProperties { + interface PolygonDrawActionProperties extends DrawActionProperties { /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * The drawing mode. **Known Values:** * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#view) + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html#mode) + * + * @default hybrid */ - view?: MapViewProperties; + mode?: string; } export interface PolygonDrawActionCursorUpdateEvent { @@ -35687,6 +38243,32 @@ declare namespace __esri { vertices: number[][]; } + export interface PolygonDrawActionRedoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + + export interface PolygonDrawActionUndoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + export interface PolygonDrawActionVertexAddEvent { defaultPrevented: boolean; @@ -35713,36 +38295,29 @@ declare namespace __esri { vertices: number[][]; } - interface PolylineDrawAction extends Accessor, Evented { + interface PolylineDrawAction extends DrawAction { + /** + * The drawing mode. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#mode) + * + * @default hybrid + */ + mode: string; /** * Two-dimensional array of numbers representing the coordinates of each vertex that comprising the drawn geometry. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#vertices) */ readonly vertices: number[][]; - /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#view) - */ - view: MapView; - /** - * Indicates if the [redo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#redo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#canRedo) - * - * - */ - canRedo(): boolean; - /** - * Indicates if the [undo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#undo) method can be called on the action instance. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#canUndo) - * - * - */ - canUndo(): boolean; /** * Completes drawing the polyline geometry and fires the [draw-complete](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#event:draw-complete) event. Call this method if the drawing logic needs to be completed other than by double-clicking or pressing the "C" key. * @@ -35751,39 +38326,19 @@ declare namespace __esri { * */ complete(): void; - /** - * Incrementally redo actions recorded in the stack. Call [canRedo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#canRedo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#event:vertex-remove) event depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#redo) - * - * - */ - redo(): void; - /** - * Incrementally undo actions recorded in the stack. Call [canUndo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#canUndo) prior to calling this method to check if this method can be called on the action instance. Calling this method will fire the [vertex-add](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#event:vertex-add) or [vertex-remove](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#event:vertex-remove) event depending on the last action. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#undo) - * - * - */ - undo(): void; on(name: "cursor-update", eventHandler: PolylineDrawActionCursorUpdateEventHandler): IHandle; - on(name: "cursor-update", modifiers: string[], eventHandler: PolylineDrawActionCursorUpdateEventHandler): IHandle; - on(name: "vertex-add", eventHandler: PolylineDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-add", modifiers: string[], eventHandler: PolylineDrawActionVertexAddEventHandler): IHandle; - on(name: "vertex-remove", eventHandler: PolylineDrawActionVertexRemoveEventHandler): IHandle; - on(name: "vertex-remove", modifiers: string[], eventHandler: PolylineDrawActionVertexRemoveEventHandler): IHandle; - on(name: "draw-complete", eventHandler: PolylineDrawActionDrawCompleteEventHandler): IHandle; - on(name: "draw-complete", modifiers: string[], eventHandler: PolylineDrawActionDrawCompleteEventHandler): IHandle; + on(name: "undo", eventHandler: PolylineDrawActionUndoEventHandler): IHandle; + + on(name: "redo", eventHandler: PolylineDrawActionRedoEventHandler): IHandle; } interface PolylineDrawActionConstructor { @@ -35794,13 +38349,22 @@ declare namespace __esri { export const PolylineDrawAction: PolylineDrawActionConstructor; - interface PolylineDrawActionProperties { + interface PolylineDrawActionProperties extends DrawActionProperties { /** - * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * The drawing mode. **Known Values:** * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#view) + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html#mode) + * + * @default hybrid */ - view?: MapViewProperties; + mode?: string; } export interface PolylineDrawActionCursorUpdateEvent { @@ -35827,6 +38391,32 @@ declare namespace __esri { vertices: number[][]; } + export interface PolylineDrawActionRedoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + + export interface PolylineDrawActionUndoEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + export interface PolylineDrawActionVertexAddEvent { defaultPrevented: boolean; @@ -35853,6 +38443,80 @@ declare namespace __esri { vertices: number[][]; } + interface SegmentDrawAction extends DrawAction { + /** + * Two-dimensional array of numbers representing the coordinates of each vertex comprising the geometry being drawn. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-SegmentDrawAction.html#vertices) + */ + readonly vertices: number[][]; + + /** + * Completes drawing the polygon geometry and fires the [draw-complete](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-SegmentDrawAction.html#event:draw-complete) event. Call this method if the drawing logic needs to be completed other than by double-clicking or pressing the "C" key. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-SegmentDrawAction.html#complete) + * + * + */ + complete(): void; + + + on(name: "cursor-update", eventHandler: SegmentDrawActionCursorUpdateEventHandler): IHandle; + + on(name: "draw-complete", eventHandler: SegmentDrawActionDrawCompleteEventHandler): IHandle; + + on(name: "vertex-add", eventHandler: SegmentDrawActionVertexAddEventHandler): IHandle; + } + + interface SegmentDrawActionConstructor { + + + new(properties?: SegmentDrawActionProperties): SegmentDrawAction; + } + + export const SegmentDrawAction: SegmentDrawActionConstructor; + + interface SegmentDrawActionProperties extends DrawActionProperties { + + } + + export interface SegmentDrawActionCursorUpdateEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + + export interface SegmentDrawActionDrawCompleteEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertices: number[][]; + } + + export interface SegmentDrawActionVertexAddEvent { + + defaultPrevented: boolean; + + preventDefault: Function; + + type: string; + + vertexIndex: number; + + vertices: number[][]; + } + /** * map/scene on screen. The ArcGIS API for JavaScript offers a low-level interface to access the SceneView's WebGL context, and thus enables creating custom visualizations that interact with the scene the same way as built-in layers. Developers can either write WebGL code directly, or integrate with third-party WebGL libraries. * @@ -35966,7 +38630,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#ColorAndIntensity) */ - color: any; + color: ArrayLike; /** * Scalar intensity value by which the color should be scaled for compositing. * @@ -35985,26 +38649,20 @@ declare namespace __esri { * Typically called once after adding the external renderer to a view, or whenever the [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) becomes [ready](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#ready). It may be called again if the ready state cycles, for example when a different [Map](https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html) is assigned to the view. Receives a single parameter of type [RenderContext](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderContext). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#ExternalRenderer) - * - * */ - setup(): void; + setup?: RenderContextCallback; /** * Called in every frame to execute the state update and draw calls. Receives a single parameter of type [RenderContext](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderContext). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#ExternalRenderer) - * - * */ - render(): void; + render?: RenderContextCallback; /** * Called when the external renderer is removed from a view, or when the [ready](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#ready) state of the view turns false. Receives a single parameter of type [RenderContext](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderContext). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#ExternalRenderer) - * - * */ - dispose(): void; + dispose?: RenderContextCallback; } /** @@ -36018,37 +38676,37 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - viewMatrix: any; + viewMatrix: ArrayLike; /** * The inverse transpose of `viewMatrix`, used to transform normals from world space to camera space. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - viewInverseTransposeMatrix: any; + viewInverseTransposeMatrix: ArrayLike; /** * A 4x4 matrix that defines the perspective projection transformation. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - projectionMatrix: any; + projectionMatrix: ArrayLike; /** * The position of the camera in the internal Cartesian rendering coordinate system. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - eye: any; + eye: ArrayLike; /** * The camera target ("look at") position in the internal Cartesian rendering coordinate system. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - center: any; + center: ArrayLike; /** * The camera up vector. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderCamera) */ - up: any; + up: ArrayLike; /** * The distance to the near plane. * @@ -36086,7 +38744,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#RenderContext) */ - gl: any; + gl: WebGLRenderingContext; /** * The camera used to render the current frame. * @@ -36118,6 +38776,8 @@ declare namespace __esri { bindRenderTarget(): void; } + export type RenderContextCallback = (context: RenderContext) => void; + /** * Describes the lighting used by [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html), derived from its sun lighting model. It consists of a directional Lambertian (`diffuse`) and a constant (`ambient`) term, which should be treated in the sense of the [Phong Reflection Model](https://en.wikipedia.org/wiki/Phong_reflection_model). * @@ -36129,7 +38789,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-externalRenderers.html#SunLight) */ - direction: any; + direction: ArrayLike; /** * The diffuse light color and intensity. * @@ -36146,22 +38806,23 @@ declare namespace __esri { interface BreakpointsOwner { /** - * A convenience property used for defining the breakpoints on the [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) and [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view. The sizes specified here determine the values of the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) and [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties depending on the view's size. Setting up breakpoints can aid in responsive app design. It does this by watching width and height breakpoints. This is helpful as it removes the need for multiple [`@media` calls](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries). Instead of listening for the view's size and/or resizes property, you can set up a watch handler for either the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) or [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties of the view. + * A convenience property used for defining the breakpoints on the [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) and [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view. The sizes specified here determine the values of the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) and [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties depending on the view's size. Setting up breakpoints can aid in responsive app design. It does this by watching width and height breakpoints. This is helpful as it removes the need for multiple [`@media` calls](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries). Instead of listening for the view's size and/or resizes property, you can set up a watch handler for either the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) or [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties of the view. + * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) */ breakpoints: BreakpointsOwnerBreakpoints; /** - * A convenience property indicating the general size of the view's height. This value is determined based on where the view's [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. + * A convenience property indicating the general size of the view's height. This value is determined based on where the view's [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. Use the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property to override the default thresholds. * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * - * Possible Value | Description - * ---------------|------------ - * xsmall | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * small | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * medium | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * large | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * xlarge | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). + * Possible Value | Description | Default thresholds (pixels) + * ---------------|-------------|---------------------------- + * xsmall | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | < 545 + * small | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 545 - 768 + * medium | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 769 - 992 + * large | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 993 - 1200 + * xlarge | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | > 1200 * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) @@ -36181,16 +38842,16 @@ declare namespace __esri { */ readonly orientation: string; /** - * A convenience property indicating the general size of the view's width. This value is determined based on where the view's [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. + * A convenience property indicating the general size of the view's width. This value is determined based on where the view's [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. Use the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property to override the default thresholds. * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * - * Possible Value | Description - * ---------------|------------ - * xsmall | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * small | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * medium | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * large | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * xlarge | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). + * Possible Value | Description | Default thresholds (pixels) + * ---------------|-------------|------------------- + * xsmall | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | < 545 + * small | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 545 - 768 + * medium | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 769 - 992 + * large | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 993 - 1200 + * xlarge | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | > 1200 * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) @@ -36208,38 +38869,39 @@ declare namespace __esri { interface BreakpointsOwnerProperties { /** - * A convenience property used for defining the breakpoints on the [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) and [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view. The sizes specified here determine the values of the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) and [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties depending on the view's size. Setting up breakpoints can aid in responsive app design. It does this by watching width and height breakpoints. This is helpful as it removes the need for multiple [`@media` calls](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries). Instead of listening for the view's size and/or resizes property, you can set up a watch handler for either the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) or [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties of the view. + * A convenience property used for defining the breakpoints on the [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) and [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view. The sizes specified here determine the values of the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) and [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties depending on the view's size. Setting up breakpoints can aid in responsive app design. It does this by watching width and height breakpoints. This is helpful as it removes the need for multiple [`@media` calls](https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries). Instead of listening for the view's size and/or resizes property, you can set up a watch handler for either the [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) or [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) properties of the view. + * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) */ breakpoints?: BreakpointsOwnerBreakpoints; /** - * A convenience property indicating the general size of the view's height. This value is determined based on where the view's [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. + * A convenience property indicating the general size of the view's height. This value is determined based on where the view's [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. Use the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property to override the default thresholds. * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * - * Possible Value | Description - * ---------------|------------ - * xsmall | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * small | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * medium | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * large | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * xlarge | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). + * Possible Value | Description | Default thresholds (pixels) + * ---------------|-------------|---------------------------- + * xsmall | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | < 545 + * small | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 545 - 768 + * medium | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 769 - 992 + * large | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 993 - 1200 + * xlarge | The [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | > 1200 * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) */ heightBreakpoint?: string; /** - * A convenience property indicating the general size of the view's width. This value is determined based on where the view's [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. + * A convenience property indicating the general size of the view's width. This value is determined based on where the view's [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) falls in the ranges defined in the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property. See the table below for a list of possible values. Use the [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) property to override the default thresholds. * > Please refer to the [styling guide](https://developers.arcgis.com/javascript/latest/guide/styling/index.html#view-size-css-classes) for additional information on working with this. * - * Possible Value | Description - * ---------------|------------ - * xsmall | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * small | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * medium | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * large | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). - * xlarge | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). + * Possible Value | Description | Default thresholds (pixels) + * ---------------|-------------|------------------- + * xsmall | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is smaller than the value set in the `xsmall` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | < 545 + * small | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `xsmall` and `small` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 545 - 768 + * medium | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `small` and `medium` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 769 - 992 + * large | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is between the values set in the `medium` and `large` [breakpoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | 993 - 1200 + * xlarge | The [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) of the view is larger than the value set in the `large` [breakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints). | > 1200 * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) @@ -36281,6 +38943,12 @@ declare namespace __esri { * @default 1200 */ large?: number; + /** + * Sets the `xlarge` breakpoint in pixels used by [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) and [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint). If the view's [height](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#height) or [width](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#width) is greater than the value of the `large` property, then the value of [widthBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#widthBreakpoint) or [heightBreakpoint](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#heightBreakpoint) will be `xlarge`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-BreakpointsOwner.html#breakpoints) + */ + xlarge?: number; } interface DOMContainer { @@ -36289,7 +38957,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-DOMContainer.html#container) */ - container: HTMLDivElement | string; + container: HTMLDivElement; + /** + * Indicates if the browser focus is on the view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-DOMContainer.html#focused) + */ + readonly focused: boolean; /** * The height of the view in pixels read from the view container element. The view container needs to have a height greater than 0 to be displayed. * @@ -36371,53 +39045,112 @@ declare namespace __esri { ui?: DefaultUIProperties; } + interface GroundView extends Accessor { + /** + * An elevation sampler that may be used to sample and query elevation values from the ground surface that is currently being displayed. The elevation sampler is not supported for [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) and may be `null` while the ground surface display is being initialized. The resolution of the sampled values depends on the ground elevation display resolution (high resolution close to the camera, low resolution far away from the camera). Because of the dynamic nature of the display resolution, the [demResolution](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-ElevationSampler.html#demResolution) property of the returned sampler will always return `{ min: -1, max: -1 }. If higher or more consistent sample resolution is required, then consider creating a sampler at the desired resolution using ElevationLayer.createSampler or Ground.createSampler. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-GroundView.html#elevationSampler) + */ + readonly elevationSampler: ElevationSampler; + /** + * A collection containing a hierarchical list of all the created [LayerViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-LayerView.html) of the [layers](https://developers.arcgis.com/javascript/latest/api-reference/esri-Ground.html#layers) in the ground. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-GroundView.html#layerViews) + */ + readonly layerViews: Collection; + /** + * Value is `true` when any of the ground layer views are updating. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-GroundView.html#updating) + * + * @default false + */ + readonly updating: boolean; + } + + interface GroundViewConstructor { + + + new(properties?: GroundViewProperties): GroundView; + } + + export const GroundView: GroundViewConstructor; + + interface GroundViewProperties { + + } + interface CSVLayerView extends LayerView { /** * Highlights the given feature(s). - * > **Known Limitations** Currently the highlight method is only supported in a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). + * > **Known Limitations** In 2D [MapViews](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) this method is only supported for [CSVLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html) that have opted in to [WebGL rendering](esri-layers-FeatureLayer.html#webgl-rendering). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-CSVLayerView.html#highlight) * - * @param target The feature(s) to highlight. + * @param target The feature(s) to highlight. When passing a graphic or array of graphics, each feature must have a valid `objectID`. You may alternatively pass one or more objectIDs as a single number or an array. * */ - highlight(target?: Graphic | Graphic[]): any; + highlight(target?: Graphic | Graphic[] | number | number[]): any; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of features that satisfy the query. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of features that satisfy the query. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * Polyline, and Point geometries are not supported in the `geometry` query parameter. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-CSVLayerView.html#queryExtent) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the extent and count of all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryExtent(params?: Query): IPromise; + queryExtent(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the number of features that satisfy the query. If query parameters are not provided, the count of all features available for drawing is returned. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the number of features that satisfy the query. If query parameters are not provided, the count of all features available for drawing is returned. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * Polyline, and Point geometries are not supported in the `geometry` query parameter. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-CSVLayerView.html#queryFeatureCount) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the count of all features available for drawing is returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryFeatureCount(params?: Query): IPromise; + queryFeatureCount(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns an array of [Graphic[]](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html). If query parameters are not provided, all features available for drawing are returned. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns an array of [Graphic[]](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html). If query parameters are not provided, all features available for drawing are returned. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * Polyline, and Point geometries are not supported in the `geometry` query parameter. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-CSVLayerView.html#queryFeatures) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If specifying a [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) parameter, note that [extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) is the only supported geometry. If query parameters are not provided, all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryFeatures(params?: Query): IPromise; + queryFeatures(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns array of the ObjectIDs of features that satisfy the input query. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns array of the ObjectIDs of features that satisfy the input query. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * Polyline, and Point geometries are not supported in the `geometry` query parameter. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-CSVLayerView.html#queryObjectIds) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryObjectIds(params?: Query): IPromise; + queryObjectIds(params?: Query | QueryProperties): IPromise; } interface CSVLayerViewConstructor { @@ -36444,45 +39177,77 @@ declare namespace __esri { */ highlight(target?: Graphic | Graphic[] | number | number[]): any; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of features that satisfy the query. Valid only for [hosted feature services](http://doc.arcgis.com/en/arcgis-online/share-maps/hosted-web-layers.htm) on [arcgis.com](http://arcgis.com) and for ArcGIS Server 10.3.1 and later. If query parameters are not provided, the extent and count of all features available for drawing are returned. - * > To query for the extent of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryExtent()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryExtent) method. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of features that satisfy the query. Valid only for [hosted feature services](http://doc.arcgis.com/en/arcgis-online/share-maps/hosted-web-layers.htm) on [arcgis.com](http://arcgis.com) and for ArcGIS Server 10.3.1 and later. If query parameters are not provided, the extent and count of all features available for drawing are returned. To query for the extent of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryExtent()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryExtent) method. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * For spatial queries: + * * [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'` can be used to query against layers of any geometry type. + * * [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) geometries with `spatialRelationship = 'intersects'` can only be used to query against point layers. + * * Polyline, and Point geometries are not supported. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param) + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#queryExtent) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the extent and count of all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryExtent(params?: Query): IPromise; + queryExtent(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the number of features that satisfy the query. If query parameters are not provided, the count of all features available for drawing is returned. - * > To query for the count of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryFeatureCount()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatureCount) method. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns the number of features that satisfy the query. If query parameters are not provided, the count of all features available for drawing is returned. To query for the count of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryFeatureCount()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatureCount) method. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * For spatial queries: + * * [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'` can be used to query against layers of any geometry type. + * * [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) geometries with `spatialRelationship = 'intersects'` can only be used to query against point layers. + * * Polyline, and Point geometries are not supported. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param) + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#queryFeatureCount) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the count of all features available for drawing is returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryFeatureCount(params?: Query): IPromise; + queryFeatureCount(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns an array of [Graphic[]](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html). If query parameters are not provided, all features available for drawing are returned. - * > To execute a query against all the features in a Feature Service rather than only those visible in the view, you must use the [FeatureLayer.queryFeatures()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatures) method. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns an array of [Graphic[]](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html). If query parameters are not provided, all features available for drawing are returned. To execute a query against all the features in a Feature Service rather than only those in the client, you must use the [FeatureLayer.queryFeatures()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryFeatures) method. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * For spatial queries: + * * [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'` can be used to query against layers of any geometry type. + * * [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) geometries with `spatialRelationship = 'intersects'` can only be used to query against point layers. + * * Polyline, and Point geometries are not supported. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#queryFeatures) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If specifying a [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry) parameter, note that [extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) is the only supported geometry. If query parameters are not provided, all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryFeatures(params?: Query): IPromise; + queryFeatures(params?: Query | QueryProperties): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns array of the ObjectIDs of features that satisfy the input query. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. - * > To query for ObjectIDs of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryObjectIds()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryObjectIds) method. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features available for drawing in the layer view and returns array of the ObjectIDs of features that satisfy the input query. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. To query for ObjectIDs of features directly from a Feature Service rather than those visible in the view, you must use the [FeatureLayer.queryObjectIds()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#queryObjectIds) method. + * > **Known Limitations** **3D [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) limitations** Queries with `outStatistics` and any other parameter involving statistics are not supported. **SVG limitations (default)** Only the `geometry` , `objectIds`, and `spatialRelationship` properties are supported in the query object. Spatial queries only support [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'`. **WebGL limitations** + * * For spatial queries: + * * [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) geometries with `spatialRelationship = 'intersects'` can be used to query against layers of any geometry type. + * * [Polygon](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html) geometries with `spatialRelationship = 'intersects'` can only be used to query against point layers. + * * Polyline, and Point geometries are not supported. + * * SQL expressions cannot be used in `outFields` nor `onStatisticField` (in the `outStatistics` param). + * * The following Query parameters are currently not supported: + * * `orderByField` + * * `distance` and `units` * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#queryObjectIds) * - * @param params Specifies the attributes and spatial filter of the query. Only the [geometry](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#geometry), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), and [spatialRelationship](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#spatialRelationship) properties should be specified. Adding any other properties will return an error. If specifying a spatialRelationship, note that `intersects` is the only supported operation. If query parameters are not provided, the ObjectIDs of all features available for drawing are returned. + * @param params Specifies the attributes and spatial filter of the query. When no parameters are passed to this method, all features in the client are returned. To only return features visible in the view, set the `geometry` parameter in the query object to the view's extent. * */ - queryObjectIds(params?: Query): IPromise; + queryObjectIds(params?: Query | QueryProperties): IPromise; } interface FeatureLayerViewConstructor { @@ -36721,7 +39486,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-SceneLayerView.html#queryExtent) * - * @param params Specifies the attributes of the query. Only the [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds) property should be specified. Adding any other properties will return an error. If query parameters are not provided, the extent and count of all loaded features are returned. + * @param params Specifies the attributes of the query. Only the[objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) and [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start) properties should be specified. Adding any other properties will return an error. If query parameters are not provided, all loaded features are returned. * */ queryExtent(params?: Query): IPromise; @@ -36731,17 +39496,17 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-SceneLayerView.html#queryFeatureCount) * - * @param params Specifies the attributes of the query. Only the [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds) property should be specified. Adding any other properties will return an error. If query parameters are not provided, the count of all loaded features is returned. + * @param params Specifies the attributes of the query. Only the[objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) and [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start) properties should be specified. Adding any other properties will return an error. If query parameters are not provided, all loaded features are returned. * */ queryFeatureCount(params?: Query): IPromise; /** - * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features in the layer view and returns a [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html). If query parameters are not provided, all loaded features are returned. This method is not yet supported when the associated scene layer has a [geometryType](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#geometryType) of `point`. Read more about queries in the Query section of the [SceneLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html) class description. + * Executes a [Query](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) against features in the layer view and returns a [FeatureSet](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-FeatureSet.html). If query parameters are not provided, all loaded features are returned. This method is not yet supported when the associated scene layer has a [geometryType](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#geometryType) of `point`. Read more about queries in the Query section of the [SceneLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html) class description. Querying more than 10.000 features returns an error, unless num is specified in the Query. * > To execute a query against all the features in a Scene Service rather than only those loaded for the current view, you must use the [SceneLayer.queryFeatures()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-SceneLayer.html#queryFeatures) method. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-SceneLayerView.html#queryFeatures) * - * @param params Specifies the attributes of the query. Only the [outFields](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outFields) and [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds) properties should be specified. Adding any other properties will return an error. If query parameters are not provided, all loaded features are returned. + * @param params Specifies the attributes of the query. Only the [outFields](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#outFields), [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) and [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start) properties should be specified. Adding any other properties will return an error. If query parameters are not provided, all loaded features are returned. * */ queryFeatures(params?: Query): IPromise; @@ -36751,7 +39516,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-SceneLayerView.html#queryObjectIds) * - * @param params Specifies the attributes of the query. Only the [objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds) property should be specified. Adding any other properties will return an error. If query parameters are not provided, the ObjectIDs of all loaded features are returned. + * @param params Specifies the attributes of the query. Only the[objectIds](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#objectIds), [num](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#num) and [start](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html#start) properties should be specified. Adding any other properties will return an error. If query parameters are not provided, all loaded features are returned. * */ queryObjectIds(params?: Query): IPromise; @@ -36829,8 +39594,6 @@ declare namespace __esri { on(name: "data-received", eventHandler: StreamLayerViewDataReceivedEventHandler): IHandle; - - on(name: "data-received", modifiers: string[], eventHandler: StreamLayerViewDataReceivedEventHandler): IHandle; } interface StreamLayerViewConstructor { @@ -36912,7 +39675,7 @@ declare namespace __esri { extent: Extent; /** * Options for configuring the highlight. Use the highlight method on the appropriate [LayerView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-LayerView.html) to highlight a feature. - * > **Known Limitations** Only [FeatureLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) renderered with [WebGL](esri-layers-FeatureLayer.html#webgl-rendering) support highlight. See [FeatureLayerView.highlight()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#highlight) for details of how to highlight features. + * > **Known Limitations** Only [FeatureLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) rendered with [WebGL](esri-layers-FeatureLayer.html#webgl-rendering) support highlight. See [FeatureLayerView.highlight()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#highlight) for details of how to highlight features. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#highlightOptions) */ @@ -36990,10 +39753,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#hasEventListener) * - * @param type The name of the event. * */ - hasEventListener(type: string): boolean; + hasEventListener(): void; /** * Returns the topmost feature from each layer that intersects the specified screen coordinates. The following layer types will return a result if a hit is made on an intersecting feature: [GraphicsLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html), [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html), [CSVLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html), [GeoRSSLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GeoRSSLayer.html), [KMLLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-KMLLayer.html), and [StreamLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-StreamLayer.html). At 4.6 and later, a hit test will always return a result from [VectorTileLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-VectorTileLayer.html). However, the result will only indicate the ID and the name of the layer within the [vector tile style](https://doc.arcgis.com/en/arcgis-online/reference/tile-layers.htm#ESRI_SECTION1_8F68399EB47B48FF9EF46719FCC96978) that intersects the screen point. Detailed attribute and spatial information about the actual feature represented in the layer is not returned. HitTest results returned from VectorTileLayers are primarily used for [Vector tile style editor applications](https://maps.esri.com/jg/VectorBasemapStyleEditor/index.html). * @@ -37059,6 +39821,10 @@ declare namespace __esri { on(name: "double-click", modifiers: string[], eventHandler: MapViewDoubleClickEventHandler): IHandle; + on(name: "immediate-click", eventHandler: MapViewImmediateClickEventHandler): IHandle; + + on(name: "immediate-click", modifiers: string[], eventHandler: MapViewImmediateClickEventHandler): IHandle; + on(name: "hold", eventHandler: MapViewHoldEventHandler): IHandle; on(name: "hold", modifiers: string[], eventHandler: MapViewHoldEventHandler): IHandle; @@ -37098,6 +39864,14 @@ declare namespace __esri { on(name: "pointer-leave", eventHandler: MapViewPointerLeaveEventHandler): IHandle; on(name: "pointer-leave", modifiers: string[], eventHandler: MapViewPointerLeaveEventHandler): IHandle; + + on(name: "focus", eventHandler: MapViewFocusEventHandler): IHandle; + + on(name: "focus", modifiers: string[], eventHandler: MapViewFocusEventHandler): IHandle; + + on(name: "blur", eventHandler: MapViewBlurEventHandler): IHandle; + + on(name: "blur", modifiers: string[], eventHandler: MapViewBlurEventHandler): IHandle; } interface MapViewConstructor { @@ -37135,7 +39909,7 @@ declare namespace __esri { extent?: ExtentProperties; /** * Options for configuring the highlight. Use the highlight method on the appropriate [LayerView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-LayerView.html) to highlight a feature. - * > **Known Limitations** Only [FeatureLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) renderered with [WebGL](esri-layers-FeatureLayer.html#webgl-rendering) support highlight. See [FeatureLayerView.highlight()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#highlight) for details of how to highlight features. + * > **Known Limitations** Only [FeatureLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) rendered with [WebGL](esri-layers-FeatureLayer.html#webgl-rendering) support highlight. See [FeatureLayerView.highlight()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-layers-FeatureLayerView.html#highlight) for details of how to highlight features. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#highlightOptions) */ @@ -37176,10 +39950,19 @@ declare namespace __esri { zoom?: number; } + export interface MapViewBlurEvent { + + native: any; + + target: View; + } + export interface MapViewClickEvent { button: number; + buttons: number; + mapPoint: Point; native: any; @@ -37199,6 +39982,8 @@ declare namespace __esri { button: number; + buttons: number; + mapPoint: Point; native: any; @@ -37218,10 +40003,18 @@ declare namespace __esri { action: string; + angle: number; + + button: number; + + buttons: number; + native: any; origin: MapViewDragEventOrigin; + radius: number; + stopPropagation: Function; timestamp: number; @@ -37233,6 +40026,13 @@ declare namespace __esri { y: number; } + export interface MapViewFocusEvent { + + native: any; + + target: View; + } + /** * Object specification for the result of the [hitTest()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#hitTest) method. * @@ -37251,6 +40051,29 @@ declare namespace __esri { button: number; + buttons: number; + + mapPoint: Point; + + native: any; + + stopPropagation: Function; + + timestamp: number; + + type: string; + + x: number; + + y: number; + } + + export interface MapViewImmediateClickEvent { + + button: number; + + buttons: number; + mapPoint: Point; native: any; @@ -37546,6 +40369,10 @@ declare namespace __esri { export interface MapViewPointerDownEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -37565,6 +40392,10 @@ declare namespace __esri { export interface MapViewPointerEnterEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -37584,6 +40415,10 @@ declare namespace __esri { export interface MapViewPointerLeaveEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -37603,6 +40438,10 @@ declare namespace __esri { export interface MapViewPointerMoveEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -37622,6 +40461,10 @@ declare namespace __esri { export interface MapViewPointerUpEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -37661,7 +40504,7 @@ declare namespace __esri { export interface HitTestResultResults extends Object { /** - * A graphic representing a feature in the view that intersects the input screen coordinates. If the graphic comes from a layer with an applied [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html), then the [symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html#symbol) property will be empty. Other properties may be empty based on the context in which the graphic is fetched. If the result comes from a [VectorTileLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-VectorTileLayer.html) then a static graphic is returned with two `attributes`: `layerId` and `layerName`. These correspond to the name and id of the style-layer in the [vector tile style](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Vector_Tile_Style/02r3000002nv000000/). + * A graphic representing a feature in the view that intersects the input screen coordinates. If the graphic comes from a layer with an applied [Renderer](https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html), then the [symbol](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html#symbol) property will be empty. Other properties may be empty based on the context in which the graphic is fetched. If the result comes from a [VectorTileLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-VectorTileLayer.html) then a static graphic is returned with two `attributes`: `layerId` and `layerName`. These correspond to the name and id of the style-layer in the [vector tile style](https://developers.arcgis.com/rest/services-reference/vector-tile-style.htm). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#HitTestResult) */ @@ -37704,7 +40547,7 @@ declare namespace __esri { /** * Specifies various properties of the environment's visualization in the view. The SceneView will redraw automatically when any property of environment changes. * ```js - * var view = new SceneView({ + * const view = new SceneView({ * map: map, * container: "viewDiv" * }); @@ -37735,15 +40578,15 @@ declare namespace __esri { */ highlightOptions: SceneViewHighlightOptions; /** - * SceneView can draw scenes in two different quality modes: `high` and `low`. Using the `low` quality profile significantly increases performance on slower browsers and devices by reducing the visual quality in the following aspects: + * SceneView can draw scenes in three different quality modes: `high`, `medium` and `low`. The `low` quality profile significantly increases performance on slower browsers and devices by reducing the memory limit and the visual quality in the following aspects: * * Map resolution * * Scene layer detail level * * Anti-aliasing (edge smoothing) * * - * The default value is based on the detected browser: - * * `low` for Internet Explorer 11 and Safari - * * `high` for any other browser + * The high and medium quality profiles only differ in the maximum amount of memory which the view is allowed to use. A higher memory limit improves quality in complex web scenes with many layers, but can have a negative impact on drawing performance and stability. The default value is based on the detected browser: + * * `low` for Internet Explorer 11 and certain mobile devices + * * `medium` for any other browser * * * Overriding the default value is best done in the constructor (see example below). If the value is modified after construction, only a subset of the quality aspects are affected. @@ -37829,10 +40672,9 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#hasEventListener) * - * @param type The name of the event. * */ - hasEventListener(type: string): boolean; + hasEventListener(): void; /** * Returns the topmost feature from each layer that intersects the specified screen coordinates. The following layer types will return a result if a hit is made on an intersecting feature: [GraphicsLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GraphicsLayer.html), [FeatureLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html), [CSVLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-CSVLayer.html), [GeoRSSLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-GeoRSSLayer.html), [KMLLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-KMLLayer.html), and [StreamLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-StreamLayer.html). Draped graphics (i.e. graphics in layers where the [elevation mode](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html#elevationInfo) is `on-the-ground`) are currently **not** returned from this method, even when they intersect the input screen point. When the ground surface is hit, but no graphic is found, then the result of hitTest will be a single object with its mapPoint set to the point on the surface that was hit, but its graphic will be set to `null`. * @@ -37899,6 +40741,10 @@ declare namespace __esri { on(name: "double-click", modifiers: string[], eventHandler: SceneViewDoubleClickEventHandler): IHandle; + on(name: "immediate-click", eventHandler: SceneViewImmediateClickEventHandler): IHandle; + + on(name: "immediate-click", modifiers: string[], eventHandler: SceneViewImmediateClickEventHandler): IHandle; + on(name: "hold", eventHandler: SceneViewHoldEventHandler): IHandle; on(name: "hold", modifiers: string[], eventHandler: SceneViewHoldEventHandler): IHandle; @@ -37938,6 +40784,14 @@ declare namespace __esri { on(name: "pointer-leave", eventHandler: SceneViewPointerLeaveEventHandler): IHandle; on(name: "pointer-leave", modifiers: string[], eventHandler: SceneViewPointerLeaveEventHandler): IHandle; + + on(name: "focus", eventHandler: SceneViewFocusEventHandler): IHandle; + + on(name: "focus", modifiers: string[], eventHandler: SceneViewFocusEventHandler): IHandle; + + on(name: "blur", eventHandler: SceneViewBlurEventHandler): IHandle; + + on(name: "blur", modifiers: string[], eventHandler: SceneViewBlurEventHandler): IHandle; } interface SceneViewConstructor { @@ -37982,7 +40836,7 @@ declare namespace __esri { /** * Specifies various properties of the environment's visualization in the view. The SceneView will redraw automatically when any property of environment changes. * ```js - * var view = new SceneView({ + * const view = new SceneView({ * map: map, * container: "viewDiv" * }); @@ -38013,15 +40867,15 @@ declare namespace __esri { */ highlightOptions?: SceneViewHighlightOptionsProperties; /** - * SceneView can draw scenes in two different quality modes: `high` and `low`. Using the `low` quality profile significantly increases performance on slower browsers and devices by reducing the visual quality in the following aspects: + * SceneView can draw scenes in three different quality modes: `high`, `medium` and `low`. The `low` quality profile significantly increases performance on slower browsers and devices by reducing the memory limit and the visual quality in the following aspects: * * Map resolution * * Scene layer detail level * * Anti-aliasing (edge smoothing) * * - * The default value is based on the detected browser: - * * `low` for Internet Explorer 11 and Safari - * * `high` for any other browser + * The high and medium quality profiles only differ in the maximum amount of memory which the view is allowed to use. A higher memory limit improves quality in complex web scenes with many layers, but can have a negative impact on drawing performance and stability. The default value is based on the detected browser: + * * `low` for Internet Explorer 11 and certain mobile devices + * * `medium` for any other browser * * * Overriding the default value is best done in the constructor (see example below). If the value is modified after construction, only a subset of the quality aspects are affected. @@ -38064,10 +40918,19 @@ declare namespace __esri { zoom?: number; } + export interface SceneViewBlurEvent { + + native: any; + + target: View; + } + export interface SceneViewClickEvent { button: number; + buttons: number; + mapPoint: Point; native: any; @@ -38087,6 +40950,8 @@ declare namespace __esri { button: number; + buttons: number; + mapPoint: Point; native: any; @@ -38106,10 +40971,18 @@ declare namespace __esri { action: string; + angle: number; + + button: number; + + buttons: number; + native: any; origin: SceneViewDragEventOrigin; + radius: number; + stopPropagation: Function; timestamp: number; @@ -38123,6 +40996,13 @@ declare namespace __esri { export type EasingFunction = (t: number, duration: number) => number; + export interface SceneViewFocusEvent { + + native: any; + + target: View; + } + /** * Object specification for the result of the [hitTest()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#hitTest) method. * @@ -38141,6 +41021,29 @@ declare namespace __esri { button: number; + buttons: number; + + mapPoint: Point; + + native: any; + + stopPropagation: Function; + + timestamp: number; + + type: string; + + x: number; + + y: number; + } + + export interface SceneViewImmediateClickEvent { + + button: number; + + buttons: number; + mapPoint: Point; native: any; @@ -38215,6 +41118,10 @@ declare namespace __esri { export interface SceneViewPointerDownEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -38234,6 +41141,10 @@ declare namespace __esri { export interface SceneViewPointerEnterEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -38253,6 +41164,10 @@ declare namespace __esri { export interface SceneViewPointerLeaveEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -38272,6 +41187,10 @@ declare namespace __esri { export interface SceneViewPointerMoveEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -38291,6 +41210,10 @@ declare namespace __esri { export interface SceneViewPointerUpEvent { + button: number; + + buttons: number; + native: any; pointerId: number; @@ -38903,7 +41826,7 @@ declare namespace __esri { interface UI extends Accessor { /** - * The HTML Element that contains the the view. + * The HTML Element that contains the view. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-ui-UI.html#container) */ @@ -38996,7 +41919,7 @@ declare namespace __esri { interface UIProperties { /** - * The HTML Element that contains the the view. + * The HTML Element that contains the view. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-ui-UI.html#container) */ @@ -39090,6 +42013,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#graphics) */ graphics: Collection; + /** + * The view for the ground of the map. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-View.html#groundView) + */ + readonly groundView: GroundView; /** * Indication whether the view is being interacted with (for example when panning). * @@ -39133,7 +42062,7 @@ declare namespace __esri { */ readonly ready: boolean; /** - * The spatial reference of the view. This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. The spatial reference can either be set explicitly or automatically derived from the following: + * The spatial reference of the view. This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. The spatial reference can either be set explicitly or automatically derived from the following: * * In the case of a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html), if the [map](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#map) is a [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html) instance, the [WebScene.initialViewProperties.spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#initialViewProperties) is used. * * In all other cases, the spatial reference is derived from the first layer that loads in this order: * * [map.basemap.baseLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html#baseLayers) @@ -39234,7 +42163,7 @@ declare namespace __esri { */ padding?: ViewPadding; /** - * The spatial reference of the view. This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. The spatial reference can either be set explicitly or automatically derived from the following: + * The spatial reference of the view. This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. The spatial reference can either be set explicitly or automatically derived from the following: * * In the case of a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html), if the [map](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#map) is a [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html) instance, the [WebScene.initialViewProperties.spatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#initialViewProperties) is used. * * In all other cases, the spatial reference is derived from the first layer that loads in this order: * * [map.basemap.baseLayers](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html#baseLayers) @@ -39428,7 +42357,7 @@ declare namespace __esri { interface WebMapConstructor { /** - * Loads a [WebMap](https://doc.arcgis.com/en/arcgis-online/create-maps/make-your-first-map.htm) from [ArcGIS Online](https://www.arcgis.com/home/) or [Portal for ArcGIS](http://server.arcgis.com/en/portal/) into a [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). + * Loads a [WebMap](https://doc.arcgis.com/en/arcgis-online/create-maps/make-your-first-map.htm) from [ArcGIS Online](https://www.arcgis.com/home/) or [ArcGIS Enterprise portal](https://enterprise.arcgis.com/en/portal/latest/administer/windows/what-is-portal-for-arcgis-.htm) into a [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html) */ @@ -39485,7 +42414,7 @@ declare namespace __esri { interface InitialViewProperties extends Accessor, corePromise { /** - * The spatial reference of the [WebMap](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html). This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. + * The spatial reference of the [WebMap](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html). This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webmap-InitialViewProperties.html#spatialReference) */ @@ -39517,7 +42446,7 @@ declare namespace __esri { interface InitialViewPropertiesProperties { /** - * The spatial reference of the [WebMap](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html). This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. + * The spatial reference of the [WebMap](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html). This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webmap-InitialViewProperties.html#spatialReference) */ @@ -39547,6 +42476,12 @@ declare namespace __esri { } interface WebScene extends Map, corePromise { + /** + * Configuration of application and UI elements. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#applicationProperties) + */ + applicationProperties: ApplicationProperties; /** * *This property only applies to local scenes.* Represents an optional clipping area used to define the bounds or [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of a local scene. If defined, only data (including the basemap) within the area will be displayed. Set the [clippingEnabled](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#clippingEnabled) property to `true` to apply the specified clippingArea to the view. * @@ -39655,7 +42590,7 @@ declare namespace __esri { */ saveAs(portalItem: PortalItem | PortalItemProperties, options?: WebSceneSaveAsOptions): IPromise; /** - * Converts an instance of [this class]() to its ArcGIS Portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide and the [web scene specification](https://developers.arcgis.com/web-scene-specification/) for more information. + * Converts an instance of [this class]() to its ArcGIS portal JSON representation. See the [Using fromJSON()](https://developers.arcgis.com/javascript/latest/guide/using-fromjson/index.html) topic in the Guide and the [web scene specification](https://developers.arcgis.com/web-scene-specification/) for more information. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#toJSON) * @@ -39700,6 +42635,12 @@ declare namespace __esri { export const WebScene: WebSceneConstructor; interface WebSceneProperties extends MapProperties { + /** + * Configuration of application and UI elements. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#applicationProperties) + */ + applicationProperties?: ApplicationPropertiesProperties; /** * *This property only applies to local scenes.* Represents an optional clipping area used to define the bounds or [Extent](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Extent.html) of a local scene. If defined, only data (including the basemap) within the area will be displayed. Set the [clippingEnabled](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html#clippingEnabled) property to `true` to apply the specified clippingArea to the view. * @@ -39740,6 +42681,253 @@ declare namespace __esri { presentation?: PresentationProperties; } + interface ApplicationProperties extends Accessor { + /** + * View-specific properties of application and UI elements. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-ApplicationProperties.html#viewing) + */ + viewing: Viewing; + + /** + * Creates a deep clone of this object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-ApplicationProperties.html#clone) + * + * + */ + clone(): ApplicationProperties; + } + + interface ApplicationPropertiesConstructor { + + + new(properties?: ApplicationPropertiesProperties): ApplicationProperties; + } + + export const ApplicationProperties: ApplicationPropertiesConstructor; + + interface ApplicationPropertiesProperties { + /** + * View-specific properties of application and UI elements. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-ApplicationProperties.html#viewing) + */ + viewing?: ViewingProperties; + } + + interface Search extends Accessor { + /** + * Whether search functionality is enabled in the web scene. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#enabled) + */ + enabled: boolean; + /** + * The hint provided with the search dialog. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#hintText) + */ + hintText: string; + /** + * A collection of layers to be included in search. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#layers) + */ + layers: Collection; + + /** + * Creates a deep clone of this object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#clone) + * + * + */ + clone(): Search; + } + + interface SearchConstructor { + + + new(properties?: SearchProperties): Search; + } + + export const Search: SearchConstructor; + + interface SearchProperties { + /** + * Whether search functionality is enabled in the web scene. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#enabled) + */ + enabled?: boolean; + /** + * The hint provided with the search dialog. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#hintText) + */ + hintText?: string; + /** + * A collection of layers to be included in search. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Search.html#layers) + */ + layers?: CollectionProperties; + } + + interface SearchLayer extends Accessor { + /** + * The field to use for search. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#field) + */ + field: SearchLayerField; + /** + * The id of the layer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#id) + */ + id: string; + /** + * The sub layer index. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#subLayer) + */ + subLayer: number; + + /** + * Creates a deep clone of this object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#clone) + * + * + */ + clone(): SearchLayer; + } + + interface SearchLayerConstructor { + + + new(properties?: SearchLayerProperties): SearchLayer; + } + + export const SearchLayer: SearchLayerConstructor; + + interface SearchLayerProperties { + /** + * The field to use for search. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#field) + */ + field?: SearchLayerFieldProperties; + /** + * The id of the layer. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#id) + */ + id?: string; + /** + * The sub layer index. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayer.html#subLayer) + */ + subLayer?: number; + } + + interface SearchLayerField extends Accessor { + /** + * Whether or not the field is an exact match. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#exactMatch) + */ + exactMatch: boolean; + /** + * The name of the field. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#name) + */ + name: string; + /** + * The data type of the field. **Possible Values:** small-integer | integer | single | double | long | string | date | oid | geometry | blob | raster | guid | global-id | xml + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#type) + */ + type: string; + + /** + * Creates a deep clone of this object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#clone) + * + * + */ + clone(): SearchLayerField; + } + + interface SearchLayerFieldConstructor { + + + new(properties?: SearchLayerFieldProperties): SearchLayerField; + } + + export const SearchLayerField: SearchLayerFieldConstructor; + + interface SearchLayerFieldProperties { + /** + * Whether or not the field is an exact match. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#exactMatch) + */ + exactMatch?: boolean; + /** + * The name of the field. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#name) + */ + name?: string; + /** + * The data type of the field. **Possible Values:** small-integer | integer | single | double | long | string | date | oid | geometry | blob | raster | guid | global-id | xml + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-SearchLayerField.html#type) + */ + type?: string; + } + + interface Viewing extends Accessor { + /** + * An object specifying the search parameters set within the web scene. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Viewing.html#search) + */ + search: Search; + + /** + * Creates a deep clone of this object. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Viewing.html#clone) + * + * + */ + clone(): Viewing; + } + + interface ViewingConstructor { + + + new(properties?: ViewingProperties): Viewing; + } + + export const Viewing: ViewingConstructor; + + interface ViewingProperties { + /** + * An object specifying the search parameters set within the web scene. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-applicationProperties-Viewing.html#search) + */ + search?: SearchProperties; + } + interface Environment extends Accessor { /** * Settings for defining the lighting of the scene. @@ -39783,7 +42971,7 @@ declare namespace __esri { */ environment: Environment; /** - * The spatial reference of the [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html). This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. + * The spatial reference of the [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html). This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-InitialViewProperties.html#spatialReference) */ @@ -39829,7 +43017,7 @@ declare namespace __esri { */ environment?: EnvironmentProperties; /** - * The spatial reference of the [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html). This indicates the [Projected Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Projected_coordinate_systems/02r3000000vt000000/) or the [Geographic Coordinate System](http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Geographic_coordinate_systems/02r300000105000000/) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. + * The spatial reference of the [WebScene](https://developers.arcgis.com/javascript/latest/api-reference/esri-WebScene.html). This indicates the [Projected Coordinate System](https://developers.arcgis.com/rest/services-reference/projected-coordinate-systems.htm) or the [Geographic Coordinate System](https://developers.arcgis.com/rest/services-reference/geographic-coordinate-systems.htm) used to locate geographic features in the map. In a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) the following [supported coordinate systems](esri-views-SceneView.html#supported-coordinate-systems) are available. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-InitialViewProperties.html#spatialReference) */ @@ -39868,7 +43056,7 @@ declare namespace __esri { */ directShadowsEnabled: boolean; /** - * The UTC timezone offset in hours that should be displayed in the UI to represent the date. This value does not have an impact on the actual lighting of the scene. + * The UTC time zone offset in hours that should be displayed in the UI to represent the date. This value does not have an impact on the actual lighting of the scene. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-Lighting.html#displayUTCOffset) * @@ -39912,7 +43100,7 @@ declare namespace __esri { */ directShadowsEnabled?: boolean; /** - * The UTC timezone offset in hours that should be displayed in the UI to represent the date. This value does not have an impact on the actual lighting of the scene. + * The UTC time zone offset in hours that should be displayed in the UI to represent the date. This value does not have an impact on the actual lighting of the scene. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-Lighting.html#displayUTCOffset) * @@ -40112,7 +43300,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-Slide.html#description) */ - description?: SlideDescriptionProperties; + description?: SlideDescriptionProperties | string; /** * Represents settings that affect the environment in which the WebScene is displayed (such as lighting). * @@ -40130,13 +43318,13 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-Slide.html#thumbnail) */ - thumbnail?: SlideThumbnailProperties; + thumbnail?: SlideThumbnailProperties | string; /** * The title of the slide. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-webscene-Slide.html#title) */ - title?: SlideTitleProperties; + title?: SlideTitleProperties | string; /** * The viewpoint of the slide. This acts like a bookmark, saving a predefined location or point of view from which to view the scene. * @@ -40422,6 +43610,184 @@ declare namespace __esri { viewpointExcluded?: boolean; } + interface AreaMeasurement3D extends Widget { + /** + * List of unit options in the widget drop down list. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#unitOptions) + * + * @default ["metric", "imperial", "square-inches", "square-feet", "square-yards", "square-miles", "square-us-feet", "square-meters", "square-kilometers", "acres", "ares", "hectares"] + */ + unitOptions: string[]; + /** + * A reference to the [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#view) + */ + view: SceneView; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [AreaMeasurement3DViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#viewModel) + */ + viewModel: AreaMeasurement3DViewModel; + + /** + * *This method is primarily used by developers when implementing custom widgets.* It must be implemented by subclasses for rendering. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#render) + * + * + */ + render(): any; + } + + interface AreaMeasurement3DConstructor { + /** + * The AreaMeasurement3D widget calculates and displays the area and perimeter of a polygon. This widget can be used in a [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html) to measure the area and perimeter of a polygon. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html) + */ + + new(properties?: AreaMeasurement3DProperties): AreaMeasurement3D; + } + + export const AreaMeasurement3D: AreaMeasurement3DConstructor; + + interface AreaMeasurement3DProperties extends WidgetProperties { + /** + * List of unit options in the widget drop down list. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#unitOptions) + * + * @default ["metric", "imperial", "square-inches", "square-feet", "square-yards", "square-miles", "square-us-feet", "square-meters", "square-kilometers", "acres", "ares", "hectares"] + */ + unitOptions?: string[]; + /** + * A reference to the [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#view) + */ + view?: SceneViewProperties; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [AreaMeasurement3DViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D.html#viewModel) + */ + viewModel?: AreaMeasurement3DViewModel; + } + + interface AreaMeasurement3DViewModel { + /** + * The current measurement of the area. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#measurement) + */ + readonly measurement: AreaMeasurement3DViewModelMeasurement; + /** + * The view model's state. + * + * Value | Description + * ------------|------------- + * disabled | not ready yet + * ready | ready for measuring + * measuring | currently measuring + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#state) + * + * @default disabled + */ + readonly state: string; + /** + * Unit system (imperial, metric) or specific unit used for displaying the distance values. **Known Values:** imperial | metric | square-inches | square-feet | square-yards | square-miles | square-meters | square-kilometers | square-us-feet | acres | ares | hectares + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#unit) + */ + unit: string; + /** + * List of unit systems (imperial, metric) and specific units for displaying the area values. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#unitOptions) + * + * @default ["metric", "imperial", "square-inches", "square-feet", "square-yards", "square-miles", "square-us-feet", "square-meters", "square-kilometers", "acres", "ares", "hectares"] + */ + unitOptions: string[]; + /** + * The view from which the widget will operate. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#view) + */ + view: SceneView; + + /** + * Clears the current measurement. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#clearMeasurement) + * + * + */ + clearMeasurement(): void; + } + + interface AreaMeasurement3DViewModelConstructor { + + + + new(properties?: any): AreaMeasurement3DViewModel; + } + + export const AreaMeasurement3DViewModel: AreaMeasurement3DViewModelConstructor; + + + export interface AreaMeasurement3DViewModelMeasurement extends Object { + /** + * Describes the mode in which the measurement was taken. In `euclidean` mode, the area and perimeter length are computed from a flat polygon with straight segments on the perimeter in the [ECEF](https://en.wikipedia.org/wiki/ECEF) coordinate system. In `geodesic` mode, the area and perimeter length are computed from a geodesic polygon on the WGS84 ellipsoid. **Known Values:** euclidean | geodesic + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#measurement) + */ + measurementMode: string; + /** + * The area of the polygon. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#measurement) + */ + area: MeasurementValue; + /** + * The perimeter length of the polygon. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#measurement) + */ + perimeterLength: MeasurementValue; + } + + /** + * Measurement value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#MeasurementValue) + */ + export interface MeasurementValue extends Object { + /** + * Textual representation of the measured value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#MeasurementValue) + */ + text: string; + /** + * State of the measured value. + * + * Value | Description + * ------------|------------- + * available | measured value is available + * unavailable | measured value is not available due an incomplete measurement + * invalid | measured value is not available due to an invalid measurement configuration (e.g. self-intersecting polygon) + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-AreaMeasurement3D-AreaMeasurement3DViewModel.html#MeasurementValue) + */ + state: string; + } + interface Attribution extends Widget { /** * Full attribution text. @@ -40429,6 +43795,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution.html#attributionText) */ readonly attributionText: string; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution.html#iconClass) + */ + readonly iconClass: string; /** * Text used to split attribution by [layers](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-Layer.html) * @@ -40437,6 +43809,12 @@ declare namespace __esri { * @default | */ itemDelimiter: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution.html#label) + */ + readonly label: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -40497,11 +43875,11 @@ declare namespace __esri { interface AttributionViewModel { /** - * Array of attribution items. + * A collection of [AttributionItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution-AttributionViewModel.html#AttributionItem)s. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution-AttributionViewModel.html#items) */ - readonly items: AttributionItem[]; + readonly items: Collection; /** * The view model's state. **Known Values:** ready | disabled * @@ -40532,23 +43910,23 @@ declare namespace __esri { export const AttributionViewModel: AttributionViewModelConstructor; /** - * The following properties define an attribution item that contains the attribution text for a set of layers. + * The following properties define an attribution item that contains the attribution text for a layer. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution-AttributionViewModel.html#AttributionItem) */ export interface AttributionItem extends Object { /** - * The attribution text for one or more layers. + * The attribution text. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution-AttributionViewModel.html#AttributionItem) */ - text: boolean; + text: string; /** - * The associated layers that share the attribution text. + * The layer that has the attribution text. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Attribution-AttributionViewModel.html#AttributionItem) */ - layers: Layer[]; + layer: Layer; } interface BasemapGallery extends Widget { @@ -40558,6 +43936,18 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html#activeBasemap) */ activeBasemap: Basemap; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html#iconClass) + */ + iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html#label) + */ + readonly label: string; /** * The source for basemaps that the widget will display. This property can be autocast with an array or [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) of [Basemap](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html)s, a [Portal](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html) instance, or a URL to a portal instance. The default source is a [PortalBasemapsSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-support-PortalBasemapsSource.html) that points to the default portal instance set in [esriConfig.portalUrl](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#portalUrl). * @@ -40606,6 +43996,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html#activeBasemap) */ activeBasemap?: BasemapProperties; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery.html#iconClass) + */ + iconClass?: string; /** * The source for basemaps that the widget will display. This property can be autocast with an array or [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) of [Basemap](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html)s, a [Portal](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html) instance, or a URL to a portal instance. The default source is a [PortalBasemapsSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-support-PortalBasemapsSource.html) that points to the default portal instance set in [esriConfig.portalUrl](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#portalUrl). * @@ -40692,7 +44088,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-BasemapGalleryViewModel.html#items) */ - items?: CollectionProperties; + items?: CollectionProperties; /** * The source for basemaps that the widget will display. This property can be autocast with an array or [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) of [Basemap](https://developers.arcgis.com/javascript/latest/api-reference/esri-Basemap.html)s, a [Portal](https://developers.arcgis.com/javascript/latest/api-reference/esri-portal-Portal.html) instance or a URL to a portal instance. The default source is a [PortalBasemapsSource](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-support-PortalBasemapsSource.html) that points to the default portal instance set in [esriConfig.portalUrl](https://developers.arcgis.com/javascript/latest/api-reference/esri-config.html#portalUrl). * @@ -40707,8 +44103,7 @@ declare namespace __esri { view?: MapViewProperties | SceneViewProperties; } - - interface BasemapGalleryItem { + interface BasemapGalleryItem extends Accessor { /** * The item's associated basemap. * @@ -40737,7 +44132,28 @@ declare namespace __esri { view: MapView | SceneView; } - export const BasemapGalleryItem: BasemapGalleryItem; + interface BasemapGalleryItemConstructor { + + + new(properties?: BasemapGalleryItemProperties): BasemapGalleryItem; + } + + export const BasemapGalleryItem: BasemapGalleryItemConstructor; + + interface BasemapGalleryItemProperties { + /** + * The item's associated basemap. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-support-BasemapGalleryItem.html#basemap) + */ + basemap?: BasemapProperties; + /** + * The view associated with this item. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BasemapGallery-support-BasemapGalleryItem.html#view) + */ + view?: MapViewProperties | SceneViewProperties; + } interface LocalBasemapsSource extends Accessor { /** @@ -41266,6 +44682,18 @@ declare namespace __esri { } interface Compass extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Compass.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Compass.html#label) + */ + readonly label: string; /** * The view in which the Compass obtains and indicates camera [heading](https://developers.arcgis.com/javascript/latest/api-reference/esri-Camera.html#heading), using a (SceneView) or rotation (MapView). * @@ -41387,7 +44815,529 @@ declare namespace __esri { view?: MapViewProperties | SceneViewProperties; } + interface CoordinateConversion extends Widget { + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Conversion](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html) that the widget is currently displaying. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#conversions) + */ + conversions: Collection; + /** + * Describes the location of the coordinates currently displayed by the widget as a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). Setting this property will update all [conversions](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#conversions). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#currentLocation) + */ + currentLocation: Point; + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html) that the widget is capable of displaying. The default formats are `basemap`, `dd`, `ddm`, `dms`, `mgrs`, `usng`, `utm`, and `xy`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#formats) + */ + formats: Collection; + /** + * Describes the current mode of the widget. **Known Values:** live | capture + * * While in `live` mode, the widget will update as the cursor moves. + * * While in `capture` mode, the widget will update on mouse click and display a graphic marking the current location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#mode) + * + * @default live + */ + mode: string; + /** + * If this property is set to `true`, multiple conversions can be displayed. For a simpler experience with only one conversion at a time, this property can be set to `false`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#multipleConversions) + * + * @default true + */ + multipleConversions: boolean; + /** + * Determines whether the widget should expand up or down. If set to `auto` the widget will be oriented based on its position in the view. **Known Values:** auto | expand-up | expand-down + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#orientation) + * + * @default auto + */ + orientation: string; + /** + * The number of milliseconds of delay before conversion requests will be sent to the [GeometryService](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html). This only affects conversions that cannot be performed in the browser. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#requestDelay) + * + * @default 300 + */ + requestDelay: number; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#view) + */ + view: MapView | SceneView; + /** + * The view model for this widget. The view model contains the logic that controls the Coordinate Widget's behavior. See the [CoordinateConversionViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#viewModel) + */ + viewModel: CoordinateConversionViewModel; + + /** + * *This method is primarily used by developers when implementing custom widgets.* It must be implemented by subclasses for rendering. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#render) + * + * + */ + render(): any; + /** + * Attempt to convert a string into a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). The format of the string must be specified. A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) of available formats can be obtained from the [formats](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#formats) property. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#reverseConvert) + * + * @param coordinate The coordinate string. + * @param format Specifies the format of the input coordinate. + * + */ + reverseConvert(coordinate: string, format: Format): IPromise; + } + + interface CoordinateConversionConstructor { + /** + * The CoordinateConversion widget provides a way to display user cursor position either as map coordinates or as any of several popular coordinate notations. Additionally, the widget provides a way to convert user input coordinates into a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html) + */ + + new(properties?: CoordinateConversionProperties): CoordinateConversion; + } + + export const CoordinateConversion: CoordinateConversionConstructor; + + interface CoordinateConversionProperties extends WidgetProperties { + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Conversion](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html) that the widget is currently displaying. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#conversions) + */ + conversions?: CollectionProperties; + /** + * Describes the location of the coordinates currently displayed by the widget as a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). Setting this property will update all [conversions](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#conversions). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#currentLocation) + */ + currentLocation?: PointProperties; + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html) that the widget is capable of displaying. The default formats are `basemap`, `dd`, `ddm`, `dms`, `mgrs`, `usng`, `utm`, and `xy`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#formats) + */ + formats?: CollectionProperties; + /** + * Describes the current mode of the widget. **Known Values:** live | capture + * * While in `live` mode, the widget will update as the cursor moves. + * * While in `capture` mode, the widget will update on mouse click and display a graphic marking the current location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#mode) + * + * @default live + */ + mode?: string; + /** + * If this property is set to `true`, multiple conversions can be displayed. For a simpler experience with only one conversion at a time, this property can be set to `false`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#multipleConversions) + * + * @default true + */ + multipleConversions?: boolean; + /** + * Determines whether the widget should expand up or down. If set to `auto` the widget will be oriented based on its position in the view. **Known Values:** auto | expand-up | expand-down + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#orientation) + * + * @default auto + */ + orientation?: string; + /** + * The number of milliseconds of delay before conversion requests will be sent to the [GeometryService](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html). This only affects conversions that cannot be performed in the browser. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#requestDelay) + * + * @default 300 + */ + requestDelay?: number; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#view) + */ + view?: MapViewProperties | SceneViewProperties; + /** + * The view model for this widget. The view model contains the logic that controls the Coordinate Widget's behavior. See the [CoordinateConversionViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html#viewModel) + */ + viewModel?: CoordinateConversionViewModelProperties; + } + + interface CoordinateConversionViewModel extends Accessor { + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Conversion](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html) that the widget is currently displaying. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#conversions) + */ + conversions: Collection; + /** + * Describes the location of the coordinates currently displayed by the widget as a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). Setting this property will update all [conversions](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#conversions). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#currentLocation) + */ + currentLocation: Point; + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html) that the widget is capable of displaying. The default formats are `basemap`, `dd`, `ddm`, `dms`, `mgrs`, `usng`, `utm`, and `xy`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#formats) + */ + formats: Collection; + /** + * This symbol is used to visualize the location currently described by the widget when `capture` mode is active. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#locationSymbol) + */ + locationSymbol: SimpleMarkerSymbol | PictureMarkerSymbol; + /** + * Describes the current mode of the widget. **Known Values:** live | capture + * * While in `live` mode, the widget will update as the cursor moves. + * * While in `capture` mode, the widget will update on mouse click and display a graphic marking the current location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#mode) + * + * @default live + */ + mode: string; + /** + * The number of milliseconds of delay before conversion requests will be sent to the [GeometryService](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html). This only affects conversions that cannot be performed in the browser. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#requestDelay) + * + * @default 300 + */ + requestDelay: number; + /** + * The view model's state. **Known Values:** ready | loading | disabled + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#state) + * + * @default disabled + */ + readonly state: string; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#view) + */ + view: MapView | SceneView; + + /** + * Attempt to convert a point into a [Position](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#Position). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#convert) + * + * @param point The point to convert. + * @param format The format that describes how the point should be converted. + * + */ + convert(point: Point, format: Format): IPromise; + /** + * Attempt to convert a string into a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). The format of the string must be specified. A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) of available formats can be obtained from the [formats](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#formats) property. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#reverseConvert) + * + * @param coordinate The coordinate string. + * @param format Specifies the format of the input coordinate. + * + */ + reverseConvert(coordinate: string, format: Format): IPromise; + /** + * Update the input conversions based on the input point. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#updateConversions) + * + * @param location A point that will be used to update each input conversion. + * @param conversions An array of [Conversions](esri-widgets-CoordinateConversion-support-Conversion.html) to be updated. + * + */ + updateConversions(location: Point, conversions: Conversion[]): IPromise; + } + + interface CoordinateConversionViewModelConstructor { + + + new(properties?: CoordinateConversionViewModelProperties): CoordinateConversionViewModel; + } + + export const CoordinateConversionViewModel: CoordinateConversionViewModelConstructor; + + interface CoordinateConversionViewModelProperties { + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Conversion](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html) that the widget is currently displaying. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#conversions) + */ + conversions?: CollectionProperties; + /** + * Describes the location of the coordinates currently displayed by the widget as a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html). Setting this property will update all [conversions](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#conversions). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#currentLocation) + */ + currentLocation?: PointProperties; + /** + * A [Collection](https://developers.arcgis.com/javascript/latest/api-reference/esri-core-Collection.html) containing every [Format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html) that the widget is capable of displaying. The default formats are `basemap`, `dd`, `ddm`, `dms`, `mgrs`, `usng`, `utm`, and `xy`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#formats) + */ + formats?: CollectionProperties; + /** + * This symbol is used to visualize the location currently described by the widget when `capture` mode is active. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#locationSymbol) + */ + locationSymbol?: SimpleMarkerSymbolProperties | PictureMarkerSymbolProperties; + /** + * Describes the current mode of the widget. **Known Values:** live | capture + * * While in `live` mode, the widget will update as the cursor moves. + * * While in `capture` mode, the widget will update on mouse click and display a graphic marking the current location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#mode) + * + * @default live + */ + mode?: string; + /** + * The number of milliseconds of delay before conversion requests will be sent to the [GeometryService](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-GeometryService.html). This only affects conversions that cannot be performed in the browser. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#requestDelay) + * + * @default 300 + */ + requestDelay?: number; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#view) + */ + view?: MapViewProperties | SceneViewProperties; + } + + /** + * Describes a point in terms of a location, a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), and a coordinate, a string. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#Position) + */ + export interface Position extends Object { + /** + * A point geometry representing the location described by the conversion. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#Position) + */ + location: Point; + /** + * A string representing the location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-CoordinateConversionViewModel.html#Position) + */ + coordinate: string; + } + + + interface Conversion { + /** + * A formatted string based on the current [position](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#position) and display information on the [format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#format). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#displayCoordinate) + */ + readonly displayCoordinate: string; + /** + * The [Format](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html) for this conversion. The Format contains information detailing how the Conversion should be performed and how it will be displayed. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#format) + */ + format: Format; + /** + * The position property contains the location information for this conversion. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#position) + */ + position: ConversionPosition; + } + + export const Conversion: Conversion; + + /** + * Describes a point in terms of a location, a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), and a coordinate, a string. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#Position) + */ + export interface ConversionPosition extends Object { + /** + * A point geometry representing the location described by the conversion. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#Position) + */ + location: Point; + /** + * A string representing the location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Conversion.html#Position) + */ + coordinate: string; + } + + + interface Format { + /** + * Contains information that describes how this Format should be converted. This property should only be set when creating a custom Format. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#conversionInfo) + * + * @default null + */ + conversionInfo: ConversionInfo; + /** + * A array of [Coordinate Segments](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#CoordinateSegment). Each segment represents a section of the Format's coordinate. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#coordinateSegments) + * + * @default null + */ + coordinateSegments: CoordinateSegment[]; + /** + * A string that serves as a pattern describing how this Format should be displayed. The pattern should contain all of aliases specified by the Format's [coordinateSegments property](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#coordinateSegments). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#currentPattern) + * + * @default null + */ + currentPattern: string; + /** + * The default pattern describing how this Format should be displayed. See [currentPattern](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#currentPattern). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#defaultPattern) + * + * @default null + */ + defaultPattern: string; + /** + * The name of the coordinate. A [CoordinateConversion](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion.html) widget should not contain multiple Formats with the same name. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#name) + * + * @default null + */ + name: string; + } + + export const Format: Format; + + /** + * Information describing how a Format should be projected. Used to define custom Formats. 1. If the conversion can be performed synchronously, a convert function should be defined. 2. If the conversion cannot be performed synchronously, a convertDeferred function should be defined. 3. Alternatively, a [SpatialReference](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-SpatialReference.html) can be provided, and the Format will project to this Spatial Reference. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#ConversionInfo) + */ + export interface ConversionInfo extends Object { + /** + * The SpatialReference to project to. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#ConversionInfo) + */ + spatialReference?: SpatialReference; + + /** + * A function that takes a point and returns a [position](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#Position). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#ConversionInfo) + * + * + */ + convert(): void; + /** + * A function that takes a point and returns a promise that resolves into a [position](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#Position). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#ConversionInfo) + * + * + */ + convertDeferred(): void; + /** + * A function that takes a string and returns a Point. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#ConversionInfo) + * + * + */ + reverseConvert(): void; + } + + /** + * A coordinate segment represents one piece of a coordinate string. + * > A MGRS coordinate, for example `30UVG898998`, is described by four segments: 1. Alias `Z`, the gridzone: `30U` 2. Alias `S`, the 100,000 meter square designator: `VG` 3. Alias `X`, the easting (x coordinate with respect to the 10,000 meter square): `898` 4. Alias `Y`, the northing (y coordinate with respect to the 10,000 meter square): `998` + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#CoordinateSegment) + */ + export interface CoordinateSegment extends Object { + /** + * A string that provides the name for this segment of a coordinate string. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#CoordinateSegment) + */ + alias: string; + /** + * A string that describes the role of this segment. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#CoordinateSegment) + */ + description: string; + /** + * A regular expression that should extract this segment from the complete coordinate. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#CoordinateSegment) + */ + searchPattern: RegExp; + } + + /** + * Describes a point in terms of a location, a [Point](https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Point.html), and a coordinate, a string. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#Position) + */ + export interface FormatPosition extends Object { + /** + * A point geometry representing the location described by the conversion. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#Position) + */ + location: Point; + /** + * A string representing the location. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-CoordinateConversion-support-Format.html#Position) + */ + coordinate: string; + } + interface Directions extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#label) + */ + readonly label: string; /** * The maximum number of stops allowed for routing. * @@ -41411,9 +45361,11 @@ declare namespace __esri { */ routeSymbol: SimpleLineSymbol; /** - * This property controls the default properties for [Searching](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). These properties can be configured per application. + * Controls the default properties used when [searching](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). Note that the default `searchProperties` differ slightly from the [Search widget](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#searchProperties) + * + * @default null */ searchProperties: DirectionsSearchProperties; /** @@ -41497,9 +45449,11 @@ declare namespace __esri { */ routeSymbol?: SimpleLineSymbolProperties; /** - * This property controls the default properties for [Searching](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). These properties can be configured per application. + * Controls the default properties used when [searching](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). Note that the default `searchProperties` differ slightly from the [Search widget](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html). * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#searchProperties) + * + * @default null */ searchProperties?: DirectionsSearchProperties; /** @@ -41845,7 +45799,7 @@ declare namespace __esri { */ impedanceAttributeName: string; /** - * Name of the travel mode. Users of ArcGIS Online or Portal for ArcGIS can define custom travel modes inside their Organization settings. Authors of stand alone Network Analysis Services can define their own travel modes inside a network dataset. + * Name of the travel mode. Users of ArcGIS Online or ArcGIS Enterprise can define custom travel modes inside their Organization settings. Authors of stand alone Network Analysis Services can define their own travel modes inside a network dataset. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions-DirectionsViewModel.html#selectedTravelMode) */ @@ -41933,7 +45887,7 @@ declare namespace __esri { */ impedanceAttributeName?: string; /** - * Name of the travel mode. Users of ArcGIS Online or Portal for ArcGIS can define custom travel modes inside their Organization settings. Authors of stand alone Network Analysis Services can define their own travel modes inside a network dataset. + * Name of the travel mode. Users of ArcGIS Online or ArcGIS Enterprise can define custom travel modes inside their Organization settings. Authors of stand alone Network Analysis Services can define their own travel modes inside a network dataset. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions-DirectionsViewModel.html#TravelMode) */ @@ -42091,12 +46045,26 @@ declare namespace __esri { } interface DirectLineMeasurement3D extends Widget { + /** + * List of unit options in the widget drop down list. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#unitOptions) + * + * @default ["metric", "imperial", "inches", "feet", "yards", "miles", "nautical-miles", "us-feet", "meters", "kilometers"] + */ + unitOptions: string[]; /** * A reference to the [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#view) */ view: SceneView; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [DirectLineMeasurement3DViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#viewModel) + */ + viewModel: DirectLineMeasurement3DViewModel; /** * *This method is primarily used by developers when implementing custom widgets.* It must be implemented by subclasses for rendering. @@ -42121,12 +46089,142 @@ declare namespace __esri { export const DirectLineMeasurement3D: DirectLineMeasurement3DConstructor; interface DirectLineMeasurement3DProperties extends WidgetProperties { + /** + * List of unit options in the widget drop down list. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#unitOptions) + * + * @default ["metric", "imperial", "inches", "feet", "yards", "miles", "nautical-miles", "us-feet", "meters", "kilometers"] + */ + unitOptions?: string[]; /** * A reference to the [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#view) */ view?: SceneViewProperties; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [DirectLineMeasurement3DViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D.html#viewModel) + */ + viewModel?: DirectLineMeasurement3DViewModel; + } + + interface DirectLineMeasurement3DViewModel { + /** + * The current measurement calculated between the two points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#measurement) + */ + readonly measurement: DirectLineMeasurement3DViewModelMeasurement; + /** + * The view model's state. + * + * Value | Description + * ------------|------------- + * disabled | not ready yet + * ready | ready for measuring + * measuring | currently measuring + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#state) + * + * @default disabled + */ + readonly state: string; + /** + * Unit system (imperial, metric) or specific unit used for displaying the distance values. **Known Values:** imperial | metric | inches | feet | yards | miles | nautical-miles | meters | kilometers | us-feet + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#unit) + */ + unit: string; + /** + * List of unit systems (imperial, metric) and specific units for displaying the distance values. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#unitOptions) + * + * @default ["metric", "imperial", "inches", "feet", "yards", "miles", "nautical-miles", "us-feet", "meters", "kilometers"] + */ + unitOptions: string[]; + /** + * The view from which the widget will operate. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#view) + */ + view: SceneView; + + /** + * Clears the current measurement. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#clearMeasurement) + * + * + */ + clearMeasurement(): void; + } + + interface DirectLineMeasurement3DViewModelConstructor { + + + + new(properties?: any): DirectLineMeasurement3DViewModel; + } + + export const DirectLineMeasurement3DViewModel: DirectLineMeasurement3DViewModelConstructor; + + + export interface DirectLineMeasurement3DViewModelMeasurement extends Object { + /** + * Describes the mode in which the measurement was taken. In `euclidean` mode, the distances are measured as straight lines in the [ECEF](https://en.wikipedia.org/wiki/ECEF) coordinate system. In `geodesic` mode, the distances are measured as geodesic lines on the WGS84 ellipsoid. **Known Values:** euclidean | geodesic + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#measurement) + */ + measurementMode: string; + /** + * The direct distance between the two points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#measurement) + */ + directDistance: DirectLineMeasurement3DViewModelMeasurementValue; + /** + * The horizontal distance between the two points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#measurement) + */ + horizontalDistance: DirectLineMeasurement3DViewModelMeasurementValue; + /** + * The vertical distance between the two points. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#measurement) + */ + verticalDistance: DirectLineMeasurement3DViewModelMeasurementValue; + } + + /** + * Measurement value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#MeasurementValue) + */ + export interface DirectLineMeasurement3DViewModelMeasurementValue extends Object { + /** + * Textual representation of the measured value. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#MeasurementValue) + */ + text: string; + /** + * State of the measured value. + * + * Value | Description + * ------------|------------- + * available | measured value is available + * unavailable | measured value is not available due an incomplete measurement or because the value is not available for the given measurement configuration (e.g. direct distance is unavailable in `geodesic` mode) + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-DirectLineMeasurement3D-DirectLineMeasurement3DViewModel.html#MeasurementValue) + */ + state: string; } interface Expand extends Widget { @@ -42192,6 +46290,21 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Expand.html#iconNumber) */ iconNumber: number; + /** + * The mode in which the widget displays. These modes are listed below. + * + * mode | description + * ---------------|------------ + * auto | This is the default mode. It is responsive to browser size changes and will update based on whether the widget is viewed in a desktop or mobile application. + * floating | Use this mode if you wish to always display the widget as floating regardless of browser size. + * drawer | Use this mode if you wish to always display the widget in a panel regardless of browser size. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Expand.html#mode) + * + * @default "auto" + */ + mode: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -42302,6 +46415,21 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Expand.html#iconNumber) */ iconNumber?: number; + /** + * The mode in which the widget displays. These modes are listed below. + * + * mode | description + * ---------------|------------ + * auto | This is the default mode. It is responsive to browser size changes and will update based on whether the widget is viewed in a desktop or mobile application. + * floating | Use this mode if you wish to always display the widget as floating regardless of browser size. + * drawer | Use this mode if you wish to always display the widget in a panel regardless of browser size. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Expand.html#mode) + * + * @default "auto" + */ + mode?: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -42386,6 +46514,205 @@ declare namespace __esri { view?: MapViewProperties | SceneViewProperties; } + interface Feature extends Widget { + /** + * The [Graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) used to represent the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#graphic) + * + * @default null + */ + graphic: Graphic; + /** + * The title for the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#title) + * + * @default null + */ + readonly title: string; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#view) + * + * @default null + */ + view: MapView | SceneView; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [FeatureViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#viewModel) + */ + viewModel: FeatureViewModel; + + /** + * Paginates to a specified [media](esri-PopupTemplate.html#media) info object. For example, you may have [media](esri-PopupTemplate.html#media) content which contains multiple `mediaInfos`. This method allows you to specify the index of the `mediaInfos` you wish to display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#goToMedia) + * + * @param contentElementIndex The index position of the [media](esri-PopupTemplate.html#media) content element to be updated. + * @param mediaInfoIndex The index position of the [media](esri-PopupTemplate.html#media) info object you wish to display. + * + */ + goToMedia(contentElementIndex: number, mediaInfoIndex: number): void; + /** + * Paginates to the next [media](esri-PopupTemplate.html#media) info. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#nextMedia) + * + * @param contentElementIndex The index position of the [media](esri-PopupTemplate.html#media) content element. + * + */ + nextMedia(contentElementIndex: number): void; + /** + * Paginates to the previous [media](esri-PopupTemplate.html#media) info in the specified [media](esri-PopupTemplate.html#media) content element. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#previousMedia) + * + * @param contentElementIndex The index position of the [media](esri-PopupTemplate.html#media) content element. + * + */ + previousMedia(contentElementIndex: number): void; + /** + * *This method is primarily used by developers when implementing custom widgets.* It must be implemented by subclasses for rendering. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#render) + * + * + */ + render(): any; + } + + interface FeatureConstructor { + + + new(properties?: FeatureProperties): Feature; + } + + export const Feature: FeatureConstructor; + + interface FeatureProperties extends WidgetProperties { + /** + * The [Graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) used to represent the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#graphic) + * + * @default null + */ + graphic?: GraphicProperties; + /** + * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#view) + * + * @default null + */ + view?: MapViewProperties | SceneViewProperties; + /** + * The view model for this widget. This is a class that contains all the logic (properties and methods) that controls this widget's behavior. See the [FeatureViewModel](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html) class to access all properties and methods on the widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature.html#viewModel) + */ + viewModel?: FeatureViewModelProperties; + } + + interface FeatureViewModel extends Accessor { + /** + * The [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#content) of the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#content) + * + * @default null + */ + readonly content: string | any[] | HTMLElement | Widget; + /** + * The formatted attributes calculated from `fieldInfo` [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) content. They are obtained from the feature's [graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#graphic) attribute values and can be read: + * * globally using the [fieldInfos](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html#fieldInfos) property directly at the root level of the [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html), or + * * per an individual content element. This element is defined with a type of fields on the PopupTemplate's content property. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#formattedAttributes) + * + * @default null + */ + readonly formattedAttributes: FeatureViewModelFormattedAttributes; + /** + * The [Graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) used to represent the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#graphic) + * + * @default null + */ + graphic: Graphic; + /** + * The title for the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#title) + * + * @default null + */ + readonly title: string; + /** + * The view associated with the Feature instance. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#view) + * + * @default null + */ + view: MapView | SceneView; + /** + * Indicates whether the feature is currently waiting for all of its content to finish loading. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#waitingForContent) + * + * @default true + */ + readonly waitingForContent: boolean; + } + + interface FeatureViewModelConstructor { + + + new(properties?: FeatureViewModelProperties): FeatureViewModel; + } + + export const FeatureViewModel: FeatureViewModelConstructor; + + interface FeatureViewModelProperties { + /** + * The [Graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html) used to represent the feature. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#graphic) + * + * @default null + */ + graphic?: GraphicProperties; + /** + * The view associated with the Feature instance. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#view) + * + * @default null + */ + view?: MapViewProperties | SceneViewProperties; + } + + + export interface FeatureViewModelFormattedAttributes extends Object { + /** + * The formatted attributes specified at the root level of the [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) using the [PopupTemplate.fieldInfos](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html#fieldInfos) property. + * + * [Read more...](global.html) + */ + global?: any; + /** + * The formatted attributes for an individual content element. This is derived from the module:esri/PopupTemplate#fields content property of the [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) defined as type `fields`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Feature-FeatureViewModel.html#formattedAttributes) + */ + content?: any; + } + interface Fullscreen extends Widget { /** * The [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) to present in fullscreen mode. @@ -42521,6 +46848,18 @@ declare namespace __esri { } interface Home extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Home.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Home.html#label) + */ + readonly label: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -42664,13 +47003,19 @@ declare namespace __esri { interface LayerList extends Widget { /** - * **Use [listItemCreatedFunction](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#listItemCreatedFunction) instead.** Specify the function that will create actions for [ListItems](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Actions are defined with the properties listed in the [Action class](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). This function must return a two-dimensional array of [Actions](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). + * The widget's default icon font. * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#createActionsFunction) + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#iconClass) */ - createActionsFunction: Function; + readonly iconClass: string; /** - * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable propeties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#label) + */ + readonly label: string; + /** + * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable properties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#listItemCreatedFunction) */ @@ -42732,13 +47077,7 @@ declare namespace __esri { interface LayerListProperties extends WidgetProperties { /** - * **Use [listItemCreatedFunction](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#listItemCreatedFunction) instead.** Specify the function that will create actions for [ListItems](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Actions are defined with the properties listed in the [Action class](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). This function must return a two-dimensional array of [Actions](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#createActionsFunction) - */ - createActionsFunction?: Function; - /** - * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable propeties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. + * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable properties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#listItemCreatedFunction) */ @@ -42772,12 +47111,6 @@ declare namespace __esri { } interface LayerListViewModel extends Accessor { - /** - * **Use [listItemCreatedFunction](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-LayerListViewModel.html#listItemCreatedFunction) instead.** Specify the function that will create actions for [ListItems](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Actions are defined with the properties listed in the [Action class](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-LayerListViewModel.html#createActionsFunction) - */ - createActionsFunction: Function; /** * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable propeties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. * @@ -42826,12 +47159,6 @@ declare namespace __esri { export const LayerListViewModel: LayerListViewModelConstructor; interface LayerListViewModelProperties { - /** - * **Use [listItemCreatedFunction](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-LayerListViewModel.html#listItemCreatedFunction) instead.** Specify the function that will create actions for [ListItems](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Actions are defined with the properties listed in the [Action class](https://developers.arcgis.com/javascript/latest/api-reference/esri-support-Action.html). - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-LayerListViewModel.html#createActionsFunction) - */ - createActionsFunction?: Function; /** * Specifies a function that accesses each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html). Each list item can be modified according to its modifiable propeties. Actions can be added to list items using the [actionsSections](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#actionsSections) property of the ListItem. * @@ -42895,6 +47222,12 @@ declare namespace __esri { * @default false */ open: boolean; + /** + * Allows you to display custom content for each ListItem in the [LayerList](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html) widget. A common scenario for using ListItemPanel is to display a [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget within each list item. The `legend` keyword can be used in the [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#content) property of the panel to display a legend for each layer in the LayerList. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html#panel) + */ + panel: ListItemPanel; /** * The parent of this item * @@ -42965,13 +47298,103 @@ declare namespace __esri { export const ListItem: ListItemConstructor; + interface ListItemPanel { + /** + * Adds a CSS class used to style a node that represents the panel. Clicking the node will open and close the panel. Typically, an icon font is used for this property. [Esri Icon Fonts](https://developers.arcgis.com/javascript/latest/guide/esri-icon-font/index.html) are automatically made available and can be used to represent this content. To use one of these provided icon fonts, you must prefix the class name with `esri-`. For example, the default icon font is `esri-icon-layer-list`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#className) + * + * @default esri-icon-layer-list + */ + className: string; + /** + * The content displayed in the ListItem panel. This can be raw text, a [Widget](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Widget.html) instance, an HTML Element, or an array of any of those elements. If the text `legend` is used, then an instance of the [Legend](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html) widget is placed in the content. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#content) + */ + content: Widget | HTMLElement | string | any[]; + /** + * The URL or data URI of an image used to represent the panel. This property will be used as a background image for the node. If neither `image` nor `className` are specified, a default icon ![default icon](https://developers.arcgis.com/javascript/latest/assets/img/guide/whats-new/41/default-action.png) will display. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#image) + */ + image: string; + /** + * The panel's parent ListItem that represents a layer in the map. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#listItem) + */ + listItem: ListItem; + /** + * Indicates if the panel's content is open and visible to the user. This is different from the [visible](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#visible) property, which is used for toggling the visibility of the icon used to control whether the content is expanded or collapsed. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#open) + * + * @default false + */ + open: boolean; + /** + * The title of the panel. By default, this title matches the ListItem's title. Changing this value will not change the title of the ListItem in the LayerList. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#title) + */ + title: string; + /** + * Indicates if the node containing the [image](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#image) or [icon font](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#className) is visible to the user. Setting this value to `false` will prevent the user from toggling the visibility of the panel's content. Use [open](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#open) to programmatically set the visibility of the panel's content. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html#visible) + * + * @default true + */ + visible: boolean; + } + + interface ListItemPanelConstructor { + /** + * This class allows you to display custom content for each [ListItem](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItem.html) in the [LayerList](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html) widget. ListItemPanel objects typically aren't constructed. Rather, they are modified using the [listItemCreatedFunction](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html#listItemCreatedFunction) property in the [LayerList](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList.html) widget. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-LayerList-ListItemPanel.html) + */ + + + new(): ListItemPanel; + } + + export const ListItemPanel: ListItemPanelConstructor; + interface Legend extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#label) + */ + readonly label: string; /** * Specifies a subset of the layers to display in the legend. If this property is not set, all layers in the map will display in the legend. Objects in this array are defined with the properties listed below. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#layerInfos) */ layerInfos: LegendLayerInfos[]; + /** + * Indicates the style of the legend. The style determines the legend's layout and behavior. See the table below for a list of possible values. + * + * Value | Description + * ------|------------ + * classic | The legend has a portrait orientation. The user can scroll vertically when many elements are included in the legend's content. + * card | In wide views, the legend has a landscape orientation that allows users to scroll horizontally to view all legend elements. This style is responsive, making it ideal for mobile web apps. In smaller views, the legend collapses to occupy less space. One element is shown at a time in a card-style layout, which the user can navigate horizontally. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#style) + * + * @default classic + */ + style: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -43008,6 +47431,20 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#layerInfos) */ layerInfos?: LegendLayerInfos[]; + /** + * Indicates the style of the legend. The style determines the legend's layout and behavior. See the table below for a list of possible values. + * + * Value | Description + * ------|------------ + * classic | The legend has a portrait orientation. The user can scroll vertically when many elements are included in the legend's content. + * card | In wide views, the legend has a landscape orientation that allows users to scroll horizontally to view all legend elements. This style is responsive, making it ideal for mobile web apps. In smaller views, the legend collapses to occupy less space. One element is shown at a time in a card-style layout, which the user can navigate horizontally. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Legend.html#style) + * + * @default classic + */ + style?: string; /** * A reference to the [MapView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html) or [SceneView](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html). Set this to link the widget to a specific view. * @@ -43055,6 +47492,20 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#graphic) */ graphic: Graphic; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#iconClass) + */ + iconClass: string; + /** + * Indicates the scale to set on the view when navigating to the position of the geolocated result once a location is returned from the [track](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#event:track) event. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. For 2D views the value should be within the [effectiveMinScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints) and [effectiveMaxScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#scale) + * + * @default null + */ + scale: number; /** * Indicates whether the widget will automatically [rotate to user's direction](https://www.w3.org/TR/geolocation-API/#coordinates_interface). Set to `false` to disable this behavior. * @@ -43129,6 +47580,20 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#graphic) */ graphic?: GraphicProperties; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#iconClass) + */ + iconClass?: string; + /** + * Indicates the scale to set on the view when navigating to the position of the geolocated result once a location is returned from the [track](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#event:track) event. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. For 2D views the value should be within the [effectiveMinScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints) and [effectiveMaxScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Locate.html#scale) + * + * @default null + */ + scale?: number; /** * Indicates whether the widget will automatically [rotate to user's direction](https://www.w3.org/TR/geolocation-API/#coordinates_interface). Set to `false` to disable this behavior. * @@ -43188,6 +47653,18 @@ declare namespace __esri { } interface NavigationToggle extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-NavigationToggle.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-NavigationToggle.html#label) + */ + readonly label: string; /** * Sets the layout of the widget to either `horizontal` or `vertical`. See the table below for a list of possible values. * @@ -43415,7 +47892,13 @@ declare namespace __esri { */ readonly featureCount: number; /** - * An array of features associated with the popup. Each graphic in this array must have a valid [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) set. They may share the same [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) or have unique [PopupTemplates](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) depending on their attributes. The [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#content) and [title](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#title) of the poup is set based on the `content` and `title` properties of each graphic's respective [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). When more than one graphic exists in this array, the current content of the Popup is set based on the value of the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature). This value is `null` if no features are associated with the popup. + * Shows pagination for the popup if available. This allows the user to scroll through various [selected features](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#features) using either arrows ![popup-pagination-arrows](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popup-pagination-arrows.png) or a menu. ![popup-feature-menu](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popup-pagination-menu.png) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#featureNavigationEnabled) + */ + featureNavigationEnabled: boolean; + /** + * An array of features associated with the popup. Each graphic in this array must have a valid [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) set. They may share the same [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) or have unique [PopupTemplates](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) depending on their attributes. The [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#content) and [title](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#title) of the popup is set based on the `content` and `title` properties of each graphic's respective [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). When more than one graphic exists in this array, the current content of the Popup is set based on the value of the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature). This value is `null` if no features are associated with the popup. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#features) */ @@ -43452,6 +47935,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeatureIndex) */ selectedFeatureIndex: number; + /** + * Indicates whether to display a spinner at the popup location prior to its display when it has pending promises. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#spinnerEnabled) + */ + spinnerEnabled: boolean; /** * The title of the popup. This can be set generically on the popup no matter the features that are selected. If the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature) has a [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html), then the title set in the corresponding template is used here. * @@ -43633,7 +48122,13 @@ declare namespace __esri { */ dockOptions?: PopupDockOptions; /** - * An array of features associated with the popup. Each graphic in this array must have a valid [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) set. They may share the same [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) or have unique [PopupTemplates](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) depending on their attributes. The [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#content) and [title](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#title) of the poup is set based on the `content` and `title` properties of each graphic's respective [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). When more than one graphic exists in this array, the current content of the Popup is set based on the value of the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature). This value is `null` if no features are associated with the popup. + * Shows pagination for the popup if available. This allows the user to scroll through various [selected features](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#features) using either arrows ![popup-pagination-arrows](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popup-pagination-arrows.png) or a menu. ![popup-feature-menu](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/popup-pagination-menu.png) + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#featureNavigationEnabled) + */ + featureNavigationEnabled?: boolean; + /** + * An array of features associated with the popup. Each graphic in this array must have a valid [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) set. They may share the same [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) or have unique [PopupTemplates](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html) depending on their attributes. The [content](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#content) and [title](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#title) of the popup is set based on the `content` and `title` properties of each graphic's respective [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html). When more than one graphic exists in this array, the current content of the Popup is set based on the value of the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature). This value is `null` if no features are associated with the popup. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#features) */ @@ -43664,6 +48159,12 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeatureIndex) */ selectedFeatureIndex?: number; + /** + * Indicates whether to display a spinner at the popup location prior to its display when it has pending promises. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#spinnerEnabled) + */ + spinnerEnabled?: boolean; /** * The title of the popup. This can be set generically on the popup no matter the features that are selected. If the [selected feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Popup.html#selectedFeature) has a [PopupTemplate](https://developers.arcgis.com/javascript/latest/api-reference/esri-PopupTemplate.html), then the title set in the corresponding template is used here. * @@ -43836,8 +48337,6 @@ declare namespace __esri { on(name: "trigger-action", eventHandler: PopupViewModelTriggerActionEventHandler): IHandle; - - on(name: "trigger-action", modifiers: string[], eventHandler: PopupViewModelTriggerActionEventHandler): IHandle; } interface PopupViewModelConstructor { @@ -44046,6 +48545,18 @@ declare namespace __esri { } interface Print extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print.html#label) + */ + readonly label: string; /** * The URL of the REST endpoint of the Export Web Map Task. * @@ -44205,6 +48716,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#copyright) */ copyright: string; + /** + * Resolution in dots per inch. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#dpi) + * + * @default 96 + */ + dpi: string; /** * The output format for the printed map. **Known Values:** pdf | png32 | png8 | jpg | gif | eps | svg | svgz * @@ -44223,14 +48742,14 @@ declare namespace __esri { * Value | Description * | --- | --- * map-only | Map does not contain any layout elements. Only map image is printed. - * a3-landscape | 16.54 x 11.69 in - * a3-portrait | 11.69 x 16.54 in - * a4-landscape | 11.69 x 8.27 in - * a4-portrait | 8.27 × 11.69 in - * letter-ansi-a-landscape | 11.0 x 8.5 in - * letter-ansi-a-portrait | 8.5 x 11.0 in - * tabloid-ansi-b-landscape| 17.0 x 11.0 in - * tabloid-ansi-b-portrait | 11.0 x 17.0 in + * a3-landscape | A3 Landscape + * a3-portrait | A3 Portrait + * a4-landscape | A4 Landscape + * a4-portrait | A4 Portrait + * letter-ansi-a-landscape | Letter ANSI A Landscape + * letter-ansi-a-portrait | Letter ANSI A Portrait + * tabloid-ansi-b-landscape| Tabloid ANSI B Landscape + * tabloid-ansi-b-portrait | Tabloid ANSI B Portrait * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#layout) @@ -44295,6 +48814,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#copyright) */ copyright?: string; + /** + * Resolution in dots per inch. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#dpi) + * + * @default 96 + */ + dpi?: string; /** * The output format for the printed map. **Known Values:** pdf | png32 | png8 | jpg | gif | eps | svg | svgz * @@ -44313,14 +48840,14 @@ declare namespace __esri { * Value | Description * | --- | --- * map-only | Map does not contain any layout elements. Only map image is printed. - * a3-landscape | 16.54 x 11.69 in - * a3-portrait | 11.69 x 16.54 in - * a4-landscape | 11.69 x 8.27 in - * a4-portrait | 8.27 × 11.69 in - * letter-ansi-a-landscape | 11.0 x 8.5 in - * letter-ansi-a-portrait | 8.5 x 11.0 in - * tabloid-ansi-b-landscape| 17.0 x 11.0 in - * tabloid-ansi-b-portrait | 11.0 x 17.0 in + * a3-landscape | A3 Landscape + * a3-portrait | A3 Portrait + * a4-landscape | A4 Landscape + * a4-portrait | A4 Portrait + * letter-ansi-a-landscape | Letter ANSI A Landscape + * letter-ansi-a-portrait | Letter ANSI A Portrait + * tabloid-ansi-b-landscape| Tabloid ANSI B Landscape + * tabloid-ansi-b-portrait | Tabloid ANSI B Portrait * * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Print-TemplateOptions.html#layout) @@ -44461,7 +48988,7 @@ declare namespace __esri { view?: MapViewProperties; } - interface Search extends Widget { + interface widgetsSearch extends Widget { /** * The [source](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html#sources) object currently selected. Can be either a [feature layer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) or a [locator task](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Locator.html). * @@ -44498,6 +49025,18 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html#defaultSource) */ readonly defaultSource: LocatorSource | FeatureLayerSource; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html#label) + */ + readonly label: string; /** * Enables location services within the widget. ![locationEnabled](https://developers.arcgis.com/javascript/latest/assets/img/apiref/widgets/search-locationEnabled.png) * > The use of this property is only supported on secure origins. To use it, switch your application to a secure origin, such as HTTPS. Note that localhost is considered "potentially secure" and can be used for easy testing in browsers that supports [Window.isSecureContext](https://developer.mozilla.org/en-US/docs/Web/API/Window/isSecureContext#Browser_compatibility) (currently Chrome and Firefox). @@ -44691,19 +49230,19 @@ declare namespace __esri { suggest(value?: string): IPromise; } - interface SearchConstructor { + interface widgetsSearchConstructor { /** * The Search widget provides a way to perform search operations on [locator service(s)](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-Locator.html) and/or [map](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-MapImageLayer.html)/[feature](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html) service feature layer(s). If using a locator with a geocoding service, the [findAddressCandidates](https://developers.arcgis.com/rest/geocode/api-reference/geocoding-find-address-candidates.htm) operation is used, whereas [queries](https://developers.arcgis.com/javascript/latest/api-reference/esri-tasks-support-Query.html) are used on feature layers. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Search.html) */ - new(properties?: SearchProperties): Search; + new(properties?: widgetsSearchProperties): widgetsSearch; } - export const Search: SearchConstructor; + export const widgetsSearch: widgetsSearchConstructor; - interface SearchProperties extends WidgetProperties { + interface widgetsSearchProperties extends WidgetProperties { /** * The selected source's index. This value is `-1` when all sources are selected. * @@ -45031,27 +49570,15 @@ declare namespace __esri { on(name: "search-clear", eventHandler: SearchViewModelSearchClearEventHandler): IHandle; - on(name: "search-clear", modifiers: string[], eventHandler: SearchViewModelSearchClearEventHandler): IHandle; - on(name: "search-start", eventHandler: SearchViewModelSearchStartEventHandler): IHandle; - on(name: "search-start", modifiers: string[], eventHandler: SearchViewModelSearchStartEventHandler): IHandle; - on(name: "suggest-start", eventHandler: SearchViewModelSuggestStartEventHandler): IHandle; - on(name: "suggest-start", modifiers: string[], eventHandler: SearchViewModelSuggestStartEventHandler): IHandle; - on(name: "search-complete", eventHandler: SearchViewModelSearchCompleteEventHandler): IHandle; - on(name: "search-complete", modifiers: string[], eventHandler: SearchViewModelSearchCompleteEventHandler): IHandle; - on(name: "select-result", eventHandler: SearchViewModelSelectResultEventHandler): IHandle; - on(name: "select-result", modifiers: string[], eventHandler: SearchViewModelSelectResultEventHandler): IHandle; - on(name: "suggest-complete", eventHandler: SearchViewModelSuggestCompleteEventHandler): IHandle; - - on(name: "suggest-complete", modifiers: string[], eventHandler: SearchViewModelSuggestCompleteEventHandler): IHandle; } interface SearchViewModelConstructor { @@ -46538,7 +51065,7 @@ declare namespace __esri { * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#graphic) */ - graphic: Graphic; + readonly graphic: Graphic; /** * GraphicsLayer associated with the SketchViewModel. It allows you to organize where temporary graphics are placed when the drawing is completed. * @@ -46546,19 +51073,19 @@ declare namespace __esri { */ layer: GraphicsLayer; /** - * A simple marker symbol used for drawing point geometries. + * A simple marker symbol used for representing the point geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#pointSymbol) */ pointSymbol: SimpleMarkerSymbol; /** - * A simple fill symbol used for drawing polygon geometries. + * A simple fill symbol used for representing the polygon geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#polygonSymbol) */ polygonSymbol: SimpleFillSymbol; /** - * A simple line symbol used for drawing polyline geometries. + * A simple line symbol used for representing the polyline geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#polylineSymbol) */ @@ -46587,14 +51114,33 @@ declare namespace __esri { */ complete(): void; /** - * Creates an instance of the requested draw action type. **Known Values:** point | multipoint | polyline | polygon + * Creates an instance of the requested draw action type. See the table below for a list of known values and type of draw action it creates. **Known Values:** point | multipoint | polyline | polygon | rectangle | circle + * + * Geometry type | Draw action instance + * ------------- | -------------------- + * point | [PointDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PointDrawAction.html) + * multipoint | [MultipointDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-MultipointDrawAction.html) + * polyline | [PolylineDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolylineDrawAction.html) + * polygon | [PolygonDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-PolygonDrawAction.html) + * rectangle/square, circle/ellipse | [SegmentDrawAction](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-draw-SegmentDrawAction.html) + * + * **Note:** Creating circle does not work in all spatial references. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#create) * * @param drawAction Name of the draw action tool. + * @param drawOptions Object of the drawing options for the geometry to be created. + * @param drawOptions.mode + * The drawing mode. The drawing mode only applies when creating `polygon` and `polyline` geometries. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. * */ - create(drawAction: string): void; + create(drawAction: string, drawOptions: SketchViewModelCreateDrawOptions): void; /** * Resets SketchViewModel to prepare for another create operation. Reset discards the current drawing, if called mid drawing. * @@ -46603,6 +51149,15 @@ declare namespace __esri { * */ reset(): void; + /** + * Starts an update operation for the selected geometry and fires [update-start](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#event:update-start) event. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#update) + * + * @param geometry The geometry to be updated. + * + */ + update(geometry: Geometry): void; } interface SketchViewModelConstructor { @@ -46618,12 +51173,6 @@ declare namespace __esri { export const SketchViewModel: SketchViewModelConstructor; interface SketchViewModelProperties { - /** - * Graphic representing the temporary geometry that is being drawn on the view. - * - * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#graphic) - */ - graphic?: GraphicProperties; /** * GraphicsLayer associated with the SketchViewModel. It allows you to organize where temporary graphics are placed when the drawing is completed. * @@ -46631,19 +51180,19 @@ declare namespace __esri { */ layer?: GraphicsLayerProperties; /** - * A simple marker symbol used for drawing point geometries. + * A simple marker symbol used for representing the point geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#pointSymbol) */ pointSymbol?: SimpleMarkerSymbolProperties; /** - * A simple fill symbol used for drawing polygon geometries. + * A simple fill symbol used for representing the polygon geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#polygonSymbol) */ polygonSymbol?: SimpleFillSymbolProperties; /** - * A simple line symbol used for drawing polyline geometries. + * A simple line symbol used for representing the polyline geometry that is being drawn. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#polylineSymbol) */ @@ -46656,6 +51205,25 @@ declare namespace __esri { view?: MapViewProperties; } + + export interface SketchViewModelCreateDrawOptions extends Object { + /** + * The drawing mode. The drawing mode only applies when creating `polygon` and `polyline` geometries. **Known Values:** + * + * Value | Description | + * ----- | ----------- | + * hybrid | Vertices are added while the pointer is clicked or dragged. + * freehand | Vertices are added while the pointer is dragged. + * click | Vertices are added when the pointer is clicked. + * + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Sketch-SketchViewModel.html#create) + * + * @default hybrid + */ + mode?: string; + } + interface GeolocationPositioning { /** * The HTML5 Geolocation Position options for locating. Refer to [Geolocation API Specification](http://www.w3.org/TR/geolocation-API/#position-options) for details. @@ -46679,6 +51247,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-support-GeolocationPositioning.html#graphic) */ graphic: Graphic; + /** + * The scale to set on the view when navigating to the position of the geolocated result. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-support-GeolocationPositioning.html#scale) + * + * @default null + */ + scale: number; /** * The view associated with the widget. * @@ -46718,6 +51294,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-support-GeolocationPositioning.html#graphic) */ graphic?: GraphicProperties; + /** + * The scale to set on the view when navigating to the position of the geolocated result. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-support-GeolocationPositioning.html#scale) + * + * @default null + */ + scale?: number; /** * The view associated with the widget. * @@ -46736,6 +51320,16 @@ declare namespace __esri { * */ accessibleHandler(): Function; + /** + * Utility method used for creating CSS animation/transition functions. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-support-widget.html#cssTransition) + * + * @param type The animation/transition type. **Possible Values:** enter | exit + * @param className The animation/transition class name. + * + */ + cssTransition(type: string, className: string): Function; /** * Utility method used for joining CSS classes. * @@ -46810,6 +51404,26 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#graphic) */ graphic: Graphic; + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#label) + */ + readonly label: string; + /** + * Indicates the scale to set on the view when navigating to the position of the geolocated result once a location is returned from the [track](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#event:track) event. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. For 2D views the value should be within the [effectiveMinScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints) and [effectiveMaxScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#scale) + * + * @default null + */ + scale: number; /** * Indicates whether the widget is watching for new positions. * @@ -46900,6 +51514,14 @@ declare namespace __esri { * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#graphic) */ graphic?: GraphicProperties; + /** + * Indicates the scale to set on the view when navigating to the position of the geolocated result once a location is returned from the [track](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#event:track) event. If a scale value is not explicitly set, then the view will navigate to a default scale of `2500`. For 2D views the value should be within the [effectiveMinScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints) and [effectiveMaxScale](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#constraints). + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Track.html#scale) + * + * @default null + */ + scale?: number; /** * Indicates whether the widget will automatically [rotate to user's direction](https://www.w3.org/TR/geolocation-API/#coordinates_interface). Set to `false` to disable this behavior. * @@ -47181,7 +51803,7 @@ declare namespace __esri { */ max: number; /** - * The minimum of all all data values represented in the size and color visual variables. + * The minimum of all data values represented in the size and color visual variables. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-UnivariateColorSizeSlider.html#statistics) */ @@ -47214,6 +51836,22 @@ declare namespace __esri { */ id: string; + /** + * A utility method used for building the value for a widget's `class` property. This aids in simplifying CSS class setup. + * > Prior to version 4.7, there were various approaches towards setting CSS classes. These were dependant upon variables, such as whether the classes were: + * * a single static class, + * * multiple static classes, or + * * dynamic classes. + * + * + * This helper method takes all of these approaches into account and simplifies it to use one single pattern to accommodate these multiple approaches. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Widget.html#classes) + * + * @param classNames The class names. + * + */ + classes(...classNames: (string | string[] | any)[]): string; /** * Destroys the widget instance. * @@ -47256,7 +51894,7 @@ declare namespace __esri { */ scheduleRender(): void; /** - * Finalizes the creation of the widget. + * **Deprecated.** Finalizes the creation of the widget. * * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Widget.html#startup) * @@ -47360,6 +51998,18 @@ declare namespace __esri { } interface Zoom extends Widget { + /** + * The widget's default icon font. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Zoom.html#iconClass) + */ + readonly iconClass: string; + /** + * The widget's default label. + * + * [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Zoom.html#label) + */ + readonly label: string; /** * Determines the layout/orientation of the Zoom widget. **Known Values:** vertical | horizontal * @@ -47521,6 +52171,10 @@ declare namespace __esri { export type MultipointDrawActionDrawCompleteEventHandler = (event: MultipointDrawActionDrawCompleteEvent) => void; + export type MultipointDrawActionRedoEventHandler = (event: MultipointDrawActionRedoEvent) => void; + + export type MultipointDrawActionUndoEventHandler = (event: MultipointDrawActionUndoEvent) => void; + export type MultipointDrawActionVertexAddEventHandler = (event: MultipointDrawActionVertexAddEvent) => void; export type MultipointDrawActionVertexRemoveEventHandler = (event: MultipointDrawActionVertexRemoveEvent) => void; @@ -47541,6 +52195,10 @@ declare namespace __esri { export type PolygonDrawActionDrawCompleteEventHandler = (event: PolygonDrawActionDrawCompleteEvent) => void; + export type PolygonDrawActionRedoEventHandler = (event: PolygonDrawActionRedoEvent) => void; + + export type PolygonDrawActionUndoEventHandler = (event: PolygonDrawActionUndoEvent) => void; + export type PolygonDrawActionVertexAddEventHandler = (event: PolygonDrawActionVertexAddEvent) => void; export type PolygonDrawActionVertexRemoveEventHandler = (event: PolygonDrawActionVertexRemoveEvent) => void; @@ -47549,6 +52207,10 @@ declare namespace __esri { export type PolylineDrawActionDrawCompleteEventHandler = (event: PolylineDrawActionDrawCompleteEvent) => void; + export type PolylineDrawActionRedoEventHandler = (event: PolylineDrawActionRedoEvent) => void; + + export type PolylineDrawActionUndoEventHandler = (event: PolylineDrawActionUndoEvent) => void; + export type PolylineDrawActionVertexAddEventHandler = (event: PolylineDrawActionVertexAddEvent) => void; export type PolylineDrawActionVertexRemoveEventHandler = (event: PolylineDrawActionVertexRemoveEvent) => void; @@ -47559,14 +52221,20 @@ declare namespace __esri { export type SceneLayerLayerviewDestroyEventHandler = (event: SceneLayerLayerviewDestroyEvent) => void; + export type SceneViewBlurEventHandler = (event: SceneViewBlurEvent) => void; + export type SceneViewClickEventHandler = (event: SceneViewClickEvent) => void; export type SceneViewDoubleClickEventHandler = (event: SceneViewDoubleClickEvent) => void; export type SceneViewDragEventHandler = (event: SceneViewDragEvent) => void; + export type SceneViewFocusEventHandler = (event: SceneViewFocusEvent) => void; + export type SceneViewHoldEventHandler = (event: SceneViewHoldEvent) => void; + export type SceneViewImmediateClickEventHandler = (event: SceneViewImmediateClickEvent) => void; + export type SceneViewKeyDownEventHandler = (event: SceneViewKeyDownEvent) => void; export type SceneViewKeyUpEventHandler = (event: SceneViewKeyUpEvent) => void; @@ -47601,6 +52269,12 @@ declare namespace __esri { export type SearchViewModelSuggestStartEventHandler = (event: SearchViewModelSuggestStartEvent) => void; + export type SegmentDrawActionCursorUpdateEventHandler = (event: SegmentDrawActionCursorUpdateEvent) => void; + + export type SegmentDrawActionDrawCompleteEventHandler = (event: SegmentDrawActionDrawCompleteEvent) => void; + + export type SegmentDrawActionVertexAddEventHandler = (event: SegmentDrawActionVertexAddEvent) => void; + export type StreamLayerLayerviewCreateEventHandler = (event: StreamLayerLayerviewCreateEvent) => void; export type StreamLayerLayerviewDestroyEventHandler = (event: StreamLayerLayerviewDestroyEvent) => void; @@ -47696,9 +52370,14 @@ declare module "esri/core/Collection" { export = Collection; } -declare module "esri/core/workers/Connection" { - import Connection = __esri.Connection; - export = Connection; +declare module "esri/core/Handles" { + import Handles = __esri.Handles; + export = Handles; +} + +declare module "esri/core/HandleOwner" { + import HandleOwner = __esri.HandleOwner; + export = HandleOwner; } declare module "esri/geometry/Circle" { @@ -47721,6 +52400,11 @@ declare module "esri/geometry/HeightModelInfo" { export = HeightModelInfo; } +declare module "esri/geometry/Mesh" { + import Mesh = __esri.Mesh; + export = Mesh; +} + declare module "esri/geometry/Multipoint" { import Multipoint = __esri.Multipoint; export = Multipoint; @@ -47751,6 +52435,31 @@ declare module "esri/geometry/SpatialReference" { export = SpatialReference; } +declare module "esri/geometry/support/GeographicTransformation" { + import GeographicTransformation = __esri.GeographicTransformation; + export = GeographicTransformation; +} + +declare module "esri/geometry/support/GeographicTransformationStep" { + import GeographicTransformationStep = __esri.GeographicTransformationStep; + export = GeographicTransformationStep; +} + +declare module "esri/geometry/support/MeshComponent" { + import MeshComponent = __esri.MeshComponent; + export = MeshComponent; +} + +declare module "esri/geometry/support/ValueMeshColor" { + import ValueMeshColor = __esri.ValueMeshColor; + export = ValueMeshColor; +} + +declare module "esri/geometry/support/ImageMeshColor" { + import ImageMeshColor = __esri.ImageMeshColor; + export = ImageMeshColor; +} + declare module "esri/identity/Credential" { import Credential = __esri.Credential; export = Credential; @@ -47921,6 +52630,11 @@ declare module "esri/layers/support/Domain" { export = Domain; } +declare module "esri/layers/support/ElevationSampler" { + import ElevationSampler = __esri.ElevationSampler; + export = ElevationSampler; +} + declare module "esri/layers/support/Field" { import Field = __esri.Field; export = Field; @@ -47986,6 +52700,11 @@ declare module "esri/layers/support/RasterFunction" { export = RasterFunction; } +declare module "esri/layers/support/Relationship" { + import Relationship = __esri.Relationship; + export = Relationship; +} + declare module "esri/layers/support/Sublayer" { import Sublayer = __esri.Sublayer; export = Sublayer; @@ -48256,6 +52975,21 @@ declare module "esri/symbols/callouts/LineCallout3D" { export = LineCallout3D; } +declare module "esri/symbols/edges/Edges3D" { + import Edges3D = __esri.Edges3D; + export = Edges3D; +} + +declare module "esri/symbols/edges/SolidEdges3D" { + import SolidEdges3D = __esri.SolidEdges3D; + export = SolidEdges3D; +} + +declare module "esri/symbols/edges/SketchEdges3D" { + import SketchEdges3D = __esri.SketchEdges3D; + export = SketchEdges3D; +} + declare module "esri/tasks/ClosestFacilityTask" { import ClosestFacilityTask = __esri.ClosestFacilityTask; export = ClosestFacilityTask; @@ -48546,6 +53280,11 @@ declare module "esri/tasks/workflow/WorkflowTask" { export = WorkflowTask; } +declare module "esri/views/GroundView" { + import GroundView = __esri.GroundView; + export = GroundView; +} + declare module "esri/views/MapView" { import MapView = __esri.MapView; export = MapView; @@ -48621,6 +53360,11 @@ declare module "esri/views/2d/draw/Draw" { export = Draw; } +declare module "esri/views/2d/draw/DrawAction" { + import DrawAction = __esri.DrawAction; + export = DrawAction; +} + declare module "esri/views/2d/draw/PointDrawAction" { import PointDrawAction = __esri.PointDrawAction; export = PointDrawAction; @@ -48641,11 +53385,21 @@ declare module "esri/views/2d/draw/MultipointDrawAction" { export = MultipointDrawAction; } +declare module "esri/views/2d/draw/SegmentDrawAction" { + import SegmentDrawAction = __esri.SegmentDrawAction; + export = SegmentDrawAction; +} + declare module "esri/webmap/InitialViewProperties" { import InitialViewProperties = __esri.InitialViewProperties; export = InitialViewProperties; } +declare module "esri/webscene/ApplicationProperties" { + import ApplicationProperties = __esri.ApplicationProperties; + export = ApplicationProperties; +} + declare module "esri/webscene/Environment" { import Environment = __esri.Environment; export = Environment; @@ -48671,6 +53425,31 @@ declare module "esri/webscene/Slide" { export = Slide; } +declare module "esri/webscene/applicationProperties/Search" { + import Search = __esri.Search; + export = Search; +} + +declare module "esri/webscene/applicationProperties/SearchLayer" { + import SearchLayer = __esri.SearchLayer; + export = SearchLayer; +} + +declare module "esri/webscene/applicationProperties/SearchLayerField" { + import SearchLayerField = __esri.SearchLayerField; + export = SearchLayerField; +} + +declare module "esri/webscene/applicationProperties/Viewing" { + import Viewing = __esri.Viewing; + export = Viewing; +} + +declare module "esri/widgets/AreaMeasurement3D" { + import AreaMeasurement3D = __esri.AreaMeasurement3D; + export = AreaMeasurement3D; +} + declare module "esri/widgets/Attribution" { import Attribution = __esri.Attribution; export = Attribution; @@ -48691,6 +53470,11 @@ declare module "esri/widgets/ColorSlider" { export = ColorSlider; } +declare module "esri/widgets/CoordinateConversion" { + import CoordinateConversion = __esri.CoordinateConversion; + export = CoordinateConversion; +} + declare module "esri/widgets/Compass" { import Compass = __esri.Compass; export = Compass; @@ -48711,6 +53495,11 @@ declare module "esri/widgets/Expand" { export = Expand; } +declare module "esri/widgets/Feature" { + import Feature = __esri.Feature; + export = Feature; +} + declare module "esri/widgets/Fullscreen" { import Fullscreen = __esri.Fullscreen; export = Fullscreen; @@ -48757,8 +53546,8 @@ declare module "esri/widgets/ScaleBar" { } declare module "esri/widgets/Search" { - import Search = __esri.Search; - export = Search; + import widgetsSearch = __esri.widgetsSearch; + export = widgetsSearch; } declare module "esri/widgets/SizeSlider" { @@ -48786,6 +53575,11 @@ declare module "esri/widgets/Zoom" { export = Zoom; } +declare module "esri/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel" { + import AreaMeasurement3DViewModel = __esri.AreaMeasurement3DViewModel; + export = AreaMeasurement3DViewModel; +} + declare module "esri/widgets/Attribution/AttributionViewModel" { import AttributionViewModel = __esri.AttributionViewModel; export = AttributionViewModel; @@ -48796,6 +53590,11 @@ declare module "esri/widgets/BasemapGallery/BasemapGalleryViewModel" { export = BasemapGalleryViewModel; } +declare module "esri/widgets/BasemapGallery/support/BasemapGalleryItem" { + import BasemapGalleryItem = __esri.BasemapGalleryItem; + export = BasemapGalleryItem; +} + declare module "esri/widgets/BasemapGallery/support/LocalBasemapsSource" { import LocalBasemapsSource = __esri.LocalBasemapsSource; export = LocalBasemapsSource; @@ -48816,16 +53615,31 @@ declare module "esri/widgets/Compass/CompassViewModel" { export = CompassViewModel; } +declare module "esri/widgets/CoordinateConversion/CoordinateConversionViewModel" { + import CoordinateConversionViewModel = __esri.CoordinateConversionViewModel; + export = CoordinateConversionViewModel; +} + declare module "esri/widgets/Directions/DirectionsViewModel" { import DirectionsViewModel = __esri.DirectionsViewModel; export = DirectionsViewModel; } +declare module "esri/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel" { + import DirectLineMeasurement3DViewModel = __esri.DirectLineMeasurement3DViewModel; + export = DirectLineMeasurement3DViewModel; +} + declare module "esri/widgets/Expand/ExpandViewModel" { import ExpandViewModel = __esri.ExpandViewModel; export = ExpandViewModel; } +declare module "esri/widgets/Feature/FeatureViewModel" { + import FeatureViewModel = __esri.FeatureViewModel; + export = FeatureViewModel; +} + declare module "esri/widgets/Fullscreen/FullscreenViewModel" { import FullscreenViewModel = __esri.FullscreenViewModel; export = FullscreenViewModel; @@ -48846,6 +53660,11 @@ declare module "esri/widgets/LayerList/ListItem" { export = ListItem; } +declare module "esri/widgets/LayerList/ListItemPanel" { + import ListItemPanel = __esri.ListItemPanel; + export = ListItemPanel; +} + declare module "esri/widgets/Locate/LocateViewModel" { import LocateViewModel = __esri.LocateViewModel; export = LocateViewModel; @@ -49031,6 +53850,11 @@ declare module "esri/core/requireUtils" { export = requireUtils; } +declare module "esri/core/scheduling" { + import scheduling = __esri.scheduling; + export = scheduling; +} + declare module "esri/core/urlUtils" { import urlUtils = __esri.urlUtils; export = urlUtils; @@ -49046,11 +53870,21 @@ declare module "esri/core/workers" { export = workers; } +declare module "esri/core/workers/Connection" { + import Connection = __esri.Connection; + export = Connection; +} + declare module "esri/core/accessorSupport/decorators" { import decorators = __esri.decorators; export = decorators; } +declare module "esri/geometry/coordinateFormatter" { + import coordinateFormatter = __esri.coordinateFormatter; + export = coordinateFormatter; +} + declare module "esri/geometry/geometryEngine" { import geometryEngine = __esri.geometryEngine; export = geometryEngine; @@ -49061,11 +53895,21 @@ declare module "esri/geometry/geometryEngineAsync" { export = geometryEngineAsync; } +declare module "esri/geometry/projection" { + import projection = __esri.projection; + export = projection; +} + declare module "esri/geometry/support/jsonUtils" { import jsonUtils = __esri.jsonUtils; export = jsonUtils; } +declare module "esri/geometry/support/meshUtils" { + import meshUtils = __esri.meshUtils; + export = meshUtils; +} + declare module "esri/geometry/support/normalizeUtils" { import normalizeUtils = __esri.normalizeUtils; export = normalizeUtils; @@ -49171,9 +54015,14 @@ declare module "esri/widgets/support/widget" { export = widget; } -declare module "esri/widgets/BasemapGallery/support/BasemapGalleryItem" { - import BasemapGalleryItem = __esri.BasemapGalleryItem; - export = BasemapGalleryItem; +declare module "esri/widgets/CoordinateConversion/support/Format" { + import Format = __esri.Format; + export = Format; +} + +declare module "esri/widgets/CoordinateConversion/support/Conversion" { + import Conversion = __esri.Conversion; + export = Conversion; } @@ -49185,6 +54034,7 @@ declare module "esri/geometry" { export import Polyline = __esri.Polyline; export import SpatialReference = __esri.SpatialReference; export import ScreenPoint = __esri.ScreenPoint; + export import Mesh = __esri.Mesh; - export type Geometry = Extent | Multipoint | Point | Polygon | Polyline; + export type Geometry = Extent | Multipoint | Point | Polygon | Polyline | Mesh; } diff --git a/types/arcgis-js-api/v3/index.d.ts b/types/arcgis-js-api/v3/index.d.ts index 391dfb6e0a..e4161412b5 100644 --- a/types/arcgis-js-api/v3/index.d.ts +++ b/types/arcgis-js-api/v3/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for ArcGIS API for JavaScript 3.23 +// Type definitions for ArcGIS API for JavaScript 3.24 // Project: https://developers.arcgis.com/javascript/3/ // Definitions by: Esri +// Bjorn Svensson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare module "esri" { @@ -30,6 +31,7 @@ declare module "esri" { import LayerSource = require("esri/layers/LayerSource"); import GraphicsLayer = require("esri/layers/GraphicsLayer"); import SpatialReference = require("esri/SpatialReference"); + import GeographicTransformationStep = require("esri/geometry/GeographicTransformationStep"); import Layer = require("esri/layers/layer"); import SimpleFillSymbol = require("esri/symbols/SimpleFillSymbol"); import ArcGISImageServiceLayer = require("esri/layers/ArcGISImageServiceLayer"); @@ -42,6 +44,9 @@ declare module "esri" { import FillSymbol = require("esri/symbols/FillSymbol"); import PrintTemplate = require("esri/tasks/PrintTemplate"); import QueryTask = require("esri/tasks/QueryTask"); + import DataProviderGE = require("esri/dijit/geoenrichment/ReportPlayer/DataProviderGE"); + import PlayerResizeModes = require("esri/dijit/geoenrichment/ReportPlayer/PlayerResizeModes"); + import PlayerThemes = require("esri/dijit/geoenrichment/ReportPlayer/PlayerThemes"); import TextSymbol = require("esri/symbols/TextSymbol"); import StandardGeographyQueryTask = require("esri/tasks/geoenrichment/StandardGeographyQueryTask"); import WCSConnection = require("esri/layers/WCSConnection"); @@ -943,6 +948,8 @@ declare module "esri" { useMapTime?: boolean; /** Initial visibility of the layer. */ visible?: boolean; + /** Indicates if the layer will enable WebGL for rendering. */ + webglEnabled?: boolean; } export interface FeatureLayerStatisticsOptions { /** The feature layer that will be the source for calculating statistics. */ @@ -1152,6 +1159,16 @@ declare module "esri" { /** Scale to zoom to when geocoder does not return an extent. */ zoomScale?: number; } + export interface GeographicTransformationOptions { + /** Geographic transformation steps. */ + steps?: GeographicTransformationStep[]; + } + export interface GeographicTransformationStepOptions { + /** The well-known id (wkid) that represents a known geographic transformation. */ + wkid?: number; + /** The well-known text (wkt) that represents a known geographic transformation. */ + wkt?: string; + } export interface GeometryLocationProviderOptions { /** The attribute field in the graphic object that contains the JSON string representing the geometry. */ geometryField: string; @@ -1475,6 +1492,8 @@ declare module "esri" { sliderStyle?: string; /** When true, for Apple computers with a trackpad or magic mouse use, swipe pans instead of zooming. */ smartNavigation?: boolean; + /** Indicates whether to enable WebGL rendering for FeatureLayers in the map. */ + webglEnabled?: boolean; /** When true, supports continuous pan across the dateline. */ wrapAround180?: boolean; /** Initial zoom level of the map. */ @@ -1876,6 +1895,16 @@ declare module "esri" { /** Stores positions represented as numbers that fall between minimum and maximum. */ values: number[]; } + export interface ReportPlayerOptions { + /** Specifies which export options are available for the report. */ + dataProvider?: DataProviderGE; + /** Indicate whether to display the report in slide view or full screen, defaults to false which is full view. */ + isSlidesView?: boolean; + /** Specifies the resize mode of the ReportPlayer. */ + resizeMode?: PlayerResizeModes; + /** Specifies the theme of the ReportPlayer. */ + theme?: PlayerThemes; + } export interface RingBufferOptions { /** The radii to use to create ring buffers */ radii: number[]; @@ -2553,6 +2582,8 @@ declare module "esri/IdentityManagerBase" { class IdentityManagerBase { /** The suggested lifetime of the token in minutes. */ tokenValidity: number; + /** If your application is on the same domain as *.arcgis.com or ArcGIS Enterprise Server, the IdentityManager will redirect the user to its sign-in page. */ + useSignInPage: boolean; /** * Returns the credential (via Deferred) if the user has already signed in to access the given resource. * @param resUrl The resource URL. @@ -2625,7 +2656,7 @@ declare module "esri/IdentityManagerBase" { */ setProtocolErrorHandler(handlerFunction: Function): void; /** - * When accessing secure resources from ArcGIS.com or one of its sub-domains the IdentityManager redirects the user to the ArcGIS.com sign-in page. + * If your application is on the same domain as *.arcgis.com or ArcGIS Enterprise Server, the IdentityManager will redirect the user to its sign-in page. * @param handlerFunction When called, the function passed to setRedirectionHandler receives an object containing redirection properties. */ setRedirectionHandler(handlerFunction: Function): void; @@ -3736,9 +3767,11 @@ declare module "esri/dijit/ClassedColorSlider" { startup(): void; /** Fires when the ClassedColorSlider widget properties change. */ on(type: "change", listener: (event: { breakInfos: any; target: ClassedColorSlider }) => void): esri.Handle; - /** Fires when minValue or maxValue of the ClassedColorSlider changes. */ + /** Fires during slide and slide stop, and when a handle or the minValue or maxValue of the slider are updated via text box. */ + on(type: "data-change", listener: (event: { breakInfos: any[]; maxValue: number; minValue: number; target: ClassedColorSlider }) => void): esri.Handle; + /** Fires when minValue or maxValue are updated via textbox. */ on(type: "data-value-change", listener: (event: { breakInfos: any; maxValue: number; minValue: number; target: ClassedColorSlider }) => void): esri.Handle; - /** Fires when a ClassedColorSlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { breakInfos: any; target: ClassedColorSlider }) => void): esri.Handle; on(type: string, listener: (event: any) => void): esri.Handle; } @@ -3789,9 +3822,11 @@ declare module "esri/dijit/ClassedSizeSlider" { constructor(params: esri.ClassedSizeSliderOptions, srcNodeRef: Node | string); /** Fires when ClassedSizeSlider changes. */ on(type: "change", listener: (event: { breakInfos: any; target: ClassedSizeSlider }) => void): esri.Handle; - /** Fires when minValue or maxValue of the ClassedSizeSlider changes. */ + /** Fires during slide and slide stop, and when a handle or the minValue or maxValue of the slider are updated via text box. */ + on(type: "data-change", listener: (event: { breakInfos: any[]; maxValue: number; minValue: number; target: ClassedSizeSlider }) => void): esri.Handle; + /** Fires when minValue or maxValue are updated via textbox. */ on(type: "data-value-change", listener: (event: { breakInfos: any; maxValue: number; minValue: number; target: ClassedSizeSlider }) => void): esri.Handle; - /** Fires when a ClassedSizeSlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { breakInfos: any; target: ClassedSizeSlider }) => void): esri.Handle; on(type: string, listener: (event: any) => void): esri.Handle; } @@ -3850,9 +3885,11 @@ declare module "esri/dijit/ColorInfoSlider" { startup(): void; /** Fires when ColorInfoSlider changes. */ on(type: "change", listener: (event: { colorInfo: any; target: ColorInfoSlider }) => void): esri.Handle; - /** Fires when minValue or maxValue of the ColorInfoSlider changes. */ + /** Fires during slide and slide stop, and when a handle or the minValue or maxValue of the ColorInfoSlider are updated via text box. */ + on(type: "data-change", listener: (event: { colorInfo: any; maxValue: number; minValue: number; target: ColorInfoSlider }) => void): esri.Handle; + /** Fires when minValue or maxValue of the ColorInfoSlider are updated via text box. */ on(type: "data-value-change", listener: (event: { colorInfo: any; maxValue: number; minValue: number; target: ColorInfoSlider }) => void): esri.Handle; - /** Fires when a ColorInfoSlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { colorInfo: any; target: ColorInfoSlider }) => void): esri.Handle; /** Fires when the zoom state changes. */ on(type: "zoomed", listener: (event: { zoomed: boolean; target: ColorInfoSlider }) => void): esri.Handle; @@ -4069,7 +4106,7 @@ declare module "esri/dijit/ElevationProfile" { import esri = require("esri"); import Geometry = require("esri/geometry/Geometry"); - /** (Currently in beta)The Elevation Profile widget allows a user to create an elevation profile based on a polyline geometry input parameter or existing features.NOTE: Currently there is a known issue when creating an elevation profile that crosses the international dateline multiple times. */ + /** (Currently in beta)The Elevation Profile widget allows a user to create an elevation profile based on a polyline geometry input parameter or existing features. */ class ElevationProfile { /** The measurement unit of the polyline geometry. */ measureUnits: string; @@ -4452,7 +4489,7 @@ declare module "esri/dijit/HeatmapSlider" { constructor(params: esri.HeatmapSliderOptions, srcNodeRef: Node | string); /** Fires when HeatmapSlider changes. */ on(type: "change", listener: (event: { colorStops: any; target: HeatmapSlider }) => void): esri.Handle; - /** Fires when HeatmapSlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { colorStops: any; target: HeatmapSlider }) => void): esri.Handle; on(type: string, listener: (event: any) => void): esri.Handle; } @@ -5112,7 +5149,7 @@ declare module "esri/dijit/OpacitySlider" { on(type: "change", listener: (event: { opacityInfo: any; target: OpacitySlider }) => void): esri.Handle; /** Fires when minValue or maxValue of the OpacitySlider changes. */ on(type: "data-value-change", listener: (event: { maxValue: number; minValue: number; opacityInfo: any; target: OpacitySlider }) => void): esri.Handle; - /** Fires when an OpacitySlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { opacityInfo: any; target: OpacitySlider }) => void): esri.Handle; /** Fires when the zoom state changes. */ on(type: "zoomed", listener: (event: { zoomed: boolean; target: OpacitySlider }) => void): esri.Handle; @@ -5159,7 +5196,7 @@ declare module "esri/dijit/Popup" { import Graphic = require("esri/graphic"); import LineSymbol = require("esri/symbols/LineSymbol"); import Point = require("esri/geometry/Point"); - import MarkerSymbol = require("esri/symbols/MarkerSymbol"); + import SimpleMarkerSymbol = require("esri/symbols/SimpleMarkerSymbol"); /** The Popup class is an implementation of InfoWindow that inherits from InfoWindowBase to provide additional capabilities. */ class Popup extends InfoWindowBase { @@ -5194,7 +5231,7 @@ declare module "esri/dijit/Popup" { /** Specify the margin (in pixels) to leave at the top of the popup window when it is maximized. */ marginTop: number; /** Define the marker symbol used to highlight point features. */ - markerSymbol: MarkerSymbol; + markerSymbol: SimpleMarkerSymbol; /** Specify the x-offset (in pixels) used when positioning the popup. */ offsetX: number; /** Specify the y-offset (in pixels) used when positioning the popup. */ @@ -5700,9 +5737,11 @@ declare module "esri/dijit/SizeInfoSlider" { startup(): void; /** Fires when the SizeInfoSlider properties change. */ on(type: "change", listener: (event: { sizeInfo: any; target: SizeInfoSlider }) => void): esri.Handle; + /** Fires during slide and slide stop, and when a handle or the minValue or maxValue of the SizeInfoSlider are updated via text box. */ + on(type: "data-change", listener: (event: { maxValue: number; minValue: number; sizeInfo: any; target: SizeInfoSlider }) => void): esri.Handle; /** Fires when minValue or maxValue of the SizeInfoSlider changes. */ on(type: "data-value-change", listener: (event: { maxValue: number; minValue: number; sizeInfo: any; target: SizeInfoSlider }) => void): esri.Handle; - /** Fires when a SizeInfoSlider handle is moved. */ + /** Fires on slide stop and when a handle is updated via textbox. */ on(type: "handle-value-change", listener: (event: { sizeInfo: any; target: SizeInfoSlider }) => void): esri.Handle; /** Fires when the zoom state changes. */ on(type: "zoomed", listener: (event: { zoomed: boolean; target: SizeInfoSlider }) => void): esri.Handle; @@ -7454,6 +7493,94 @@ declare module "esri/dijit/geoenrichment/InfographicsOptionsItem" { export = InfographicsOptionsItem; } +declare module "esri/dijit/geoenrichment/ReportPlayer/DataProviderGE" { + import PlayerCommands = require("esri/dijit/geoenrichment/ReportPlayer/PlayerCommands"); + + /** Data Provider for the ReportPlayer which allows you to specify which export options are available when running the report. */ + class DataProviderGE { + /** + * Registers a export option which can be performed. + * @param playerCommand The export option to register to make available to the Report Player. + * @param label The display name of the export option. + */ + registerCommand(playerCommand: PlayerCommands, label?: string): void; + } + export = DataProviderGE; +} + +declare module "esri/dijit/geoenrichment/ReportPlayer/PlayerCommands" { + /** Enumerator of available export options that are available for the Report Player. */ + class PlayerCommands { + /** Generates a stand-alone HTML file which displays dynamic content, including interactive map and infographic panels for the run infographic report. */ + static DYNAMIC_HTML: any; + /** Generates a stand-alone HTML file without the dynamic interactivity of the DYNAMIC_HTML option for the run infographic report. */ + static HTML: any; + /** Generates an image of the run infographic report. */ + static IMAGE: any; + /** Generates a PDF file of the run infographic report. */ + static PDF: any; + /** Displays a print dialog for the run infographic report for printing directly from the web browser. */ + static PRINT: any; + } + export = PlayerCommands; +} + +declare module "esri/dijit/geoenrichment/ReportPlayer/PlayerResizeModes" { + /** Enumerator of available player resize mode options for the Report Player widget. */ + class PlayerResizeModes { + /** The Report Player will be auto-resizable for the pagination view, the size of the player will change to fit the content. */ + static AUTO: any; + /** The Report Player will be stretched and constrained to the browser window size. */ + static FIT_WINDOW: any; + /** The Report Player dimensions (height and width) will need to be set manually in CSS. */ + static MANUAL: any; + } + export = PlayerResizeModes; +} + +declare module "esri/dijit/geoenrichment/ReportPlayer/PlayerThemes" { + /** Enumerator of available theme options for displaying the Report Player. */ + class PlayerThemes { + /** Report Player will display in a dark theme. */ + static DARK: any; + /** Report Player will display in a light theme. */ + static LIGHT: any; + } + export = PlayerThemes; +} + +declare module "esri/dijit/geoenrichment/ReportPlayer/ReportPlayer" { + import esri = require("esri"); + import DataProviderGE = require("esri/dijit/geoenrichment/ReportPlayer/DataProviderGE"); + import PlayerResizeModes = require("esri/dijit/geoenrichment/ReportPlayer/PlayerResizeModes"); + import PlayerThemes = require("esri/dijit/geoenrichment/ReportPlayer/PlayerThemes"); + + /** The ReportPlayer widget runs infographic report templates for a provided analysis area. */ + class ReportPlayer { + /** Data Provider for the ReportPlayer which allows you to specify which export options are available when running the report. */ + dataProvider: DataProviderGE; + /** Indicate whether to display the report in slide view or full screen, defaults to false which is full view. */ + isSlidesView: boolean; + /** Specifies the resize mode of the ReportPlayer. */ + resizeModes: PlayerResizeModes; + /** Specifies the theme of the ReportPlayer. */ + theme: PlayerThemes; + /** + * Creates a new ReportPlayer dijit using the given DOM node. + * @param params Various parameters that can be used to configure the ReportPlayer. + * @param srcNode Reference or id of the HTML element where the widget should be rendered. + */ + constructor(params: esri.ReportPlayerOptions, srcNode?: Node | string); + /** + * Generates the report for the supplied parameters. + * @param dataProviderParams See the object specifications table below for the structure of the dataProviderParams object. + * @param playParams See the object specifications table below for the structure of the playParams object. + */ + playReport(dataProviderParams: any, playParams?: any): any; + } + export = ReportPlayer; +} + declare module "esri/dijit/util/busyIndicator" { /** This module provides the ability to create a busy indicator for a target. */ var busyIndicator: { @@ -7612,6 +7739,47 @@ declare module "esri/geometry/Extent" { export = Extent; } +declare module "esri/geometry/GeographicTransformation" { + import esri = require("esri"); + import GeographicTransformationStep = require("esri/geometry/GeographicTransformationStep"); + + /** Projecting your data between coordinate systems sometimes requires transforming between geographic coordinate systems. */ + class GeographicTransformation { + /** Geographic transformation steps. */ + steps: GeographicTransformationStep[]; + /** + * Creates a new GeographicTransformation object. + * @param params See options descriptions for further information. + */ + constructor(params?: esri.GeographicTransformationOptions); + /** Returns the inverse of the geographic transformation, calling this method or null if the transformation is not invertible. */ + getInverse(): GeographicTransformation; + } + export = GeographicTransformation; +} + +declare module "esri/geometry/GeographicTransformationStep" { + import esri = require("esri"); + + /** Represents a step in the process of transforming coordinates from one geographic coordinate system to another. */ + class GeographicTransformationStep { + /** Indicates whether the geographic transformation is inverted. */ + isInverse: boolean; + /** The well-known id (wkid) that represents a known geographic transformation. */ + wkid: number; + /** The well-known text (wkt) hat represents a known geographic transformation. */ + wkt: string; + /** + * Creates a new GeographicTransformationStep object. + * @param params See the params table for additional information. + */ + constructor(params?: esri.GeographicTransformationStepOptions); + /** Returns the inverse of the geographic transformation calling this method or null if the transformation is not invertible. */ + getInverse(): GeographicTransformationStep; + } + export = GeographicTransformationStep; +} + declare module "esri/geometry/Geometry" { import SpatialReference = require("esri/SpatialReference"); @@ -7987,6 +8155,77 @@ declare module "esri/geometry/ScreenPoint" { export = ScreenPoint; } +declare module "esri/geometry/coordinateFormatter" { + import SpatialReference = require("esri/SpatialReference"); + import Point = require("esri/geometry/Point"); + + /** This module converts between points and formatted coordinate notation strings such as: decimal degrees degrees, minutes, and secondsU.S. */ + var coordinateFormatter: { + /** + * Parses coordinates in latitude/longitude notation, and returns a Point representing that location. + * @param coordinates The latitude/longitude notation string for the coordinates. + * @param spatialReference A spatial reference for a geographic coordinate system that defines the datum and ellipsoid referenced by the latitude-longitude coordinates. + */ + fromLatitudeLongitude(coordinates: string, spatialReference?: SpatialReference): Point; + /** + * Parses coordinates in Military Grid Reference System (MGRS) notation, and returns a Point representing that location. + * @param coordinates The MGRS notation string for the coordinates. + * @param spatialReference A spatial reference for a geographic coordinate system that defines the datum and ellipsoid referenced by the MGRS coordinates. + * @param conversionMode The mode used by the given MGRS coordinates. + */ + fromMgrs(coordinates: string, spatialReference: SpatialReference, conversionMode: string): Point; + /** + * Parses coordinates in United States National Grid (USNG) notation, and returns a Point representing that location. + * @param coordinates The USNG notation string for the coordinates. + * @param spatialReference A spatial reference for a geographic coordinate system that defines the datum and ellipsoid referenced by the USNG coordinates. + */ + fromUsng(coordinates: string, spatialReference?: SpatialReference): Point; + /** + * Parses coordinates in Universal Transverse Mercator (UTM) notation, and returns a Point representing that location. + * @param coordinates The UTM notation string for the coordinates. + * @param spatialReference A spatial reference for a geographic coordinate system that defines the datum and ellipsoid referenced by the UTM coordinates. + * @param conversionMode The latitude notation scheme used by the given UTM coordinates, either a latitudinal band, or a hemisphere designator. + */ + fromUtm(coordinates: string, spatialReference: SpatialReference, conversionMode: string): Point; + /** Indicates if all dependencies of this module have been loaded. */ + isLoaded(): boolean; + /** Indicates if this module is supported in the current browser. */ + isSupported(): boolean; + /** Loads this module's dependencies. */ + load(): any; + /** + * Returns formatted coordinates in latitude/longitude notation representing the given point's location. + * @param point The location to be represented as a formatted latitude/longitude string. + * @param format The mode to use when formatting the latitude/longitude string. + * @param decimalPlaces The number of decimal places to use, it should be an integer from 0 to 16. + */ + toLatitudeLongitude(point: Point, format: string, decimalPlaces?: number): string; + /** + * Returns formatted coordinates in Military Grid Reference System (MGRS) notation representing the given point's location. + * @param point The location to be represented in MGRS notation. + * @param conversionMode The mode to use for the returned MGRS notation string. + * @param precision The precision with which to represent the coordinates. + * @param addSpaces Indicates whether the generated strings contain no spaces. + */ + toMgrs(point: Point, conversionMode: string, precision?: number, addSpaces?: boolean): string; + /** + * Returns formatted coordinates in United States National Grid (USNG) notation representing the given point's location. + * @param point The location to be represented in USNG notation. + * @param precision The precision with which to represent the coordinates. + * @param addSpaces Indicates whether the generated strings contain no spaces. + */ + toUsng(point: Point, precision?: number, addSpaces?: boolean): string; + /** + * Returns formatted coordinates in Universal Transverse Mercator (UTM) notation representing the given point's location. + * @param point The location to be represented in UTM notation. + * @param conversionMode The latitude notation scheme to use in the returned UTM notation string, either a latitudinal band, or a hemisphere designator. + * @param addSpaces Indicates whether the generated strings contain no spaces. + */ + toUtm(point: Point, conversionMode: string, addSpaces?: boolean): string; + }; + export = coordinateFormatter; +} + declare module "esri/geometry/geodesicUtils" { import Polygon = require("esri/geometry/Polygon"); import Geometry = require("esri/geometry/Geometry"); @@ -8562,6 +8801,45 @@ declare module "esri/geometry/normalizeUtils" { export = normalizeUtils; } +declare module "esri/geometry/projection" { + import SpatialReference = require("esri/SpatialReference"); + import Extent = require("esri/geometry/Extent"); + import GeographicTransformation = require("esri/geometry/GeographicTransformation"); + import Geometry = require("esri/geometry/Geometry"); + + /** A client-side projection engine for converting geometries from one SpatialReference to another. */ + var projection: { + /** + * Gets the default geographic transformation used to convert the geometry from the input spatial reference to the output spatial reference. + * @param inSpatialReference The input spatial reference from which to project geometries. + * @param outSpatialReference The spatial reference to which you are converting the geometries. + * @param extent An extent used to determine the suitability of the returned transformation. + */ + getTransformation(inSpatialReference: SpatialReference, outSpatialReference: SpatialReference, extent?: Extent): GeographicTransformation; + /** + * Returns a list of all geographic transformations suitable to convert geometries from the input spatial reference to the specified output spatial reference. + * @param inSpatialReference The spatial reference that the geometries are currently using. + * @param outSpatialReference The spatial reference to which you are converting the geometries to. + * @param extent An extent used to determine the suitability of the returned transformations. + */ + getTransformations(inSpatialReference: SpatialReference, outSpatialReference: SpatialReference, extent?: Extent): GeographicTransformation[]; + /** Indicates if all dependencies of this module have been loaded. */ + isLoaded(): boolean; + /** Indicates if this module is supported in the browser. */ + isSupported(): boolean; + /** Load this module's dependencies. */ + load(): any; + /** + * Projects a geometry or an array of geometries to the specified output spatial reference. + * @param geometry The geometry or geometries to project. + * @param outSpatialReference The spatial reference to which you are converting the geometries' coordinates. + * @param geographicTransformation The geographic transformation used to transform the geometries. + */ + project(geometry: Geometry | Geometry[], outSpatialReference: SpatialReference, geographicTransformation?: GeographicTransformation): Geometry | Geometry[]; + }; + export = projection; +} + declare module "esri/geometry/scaleUtils" { import Map = require("esri/map"); import Extent = require("esri/geometry/Extent"); @@ -9677,6 +9955,8 @@ declare module "esri/layers/FeatureLayer" { version: number; /** When true, the layer is visible at the current map scale. */ visibleAtMapScale: boolean; + /** Indicates if WebGL is enabled on the layer. */ + webglEnabled: boolean; /** * Creates a new instance of a feature layer object from the ArcGIS Server REST resource identified by the input URL. * @param url URL to the ArcGIS Server REST resource that represents a feature service. @@ -9773,6 +10053,10 @@ declare module "esri/layers/FeatureLayer" { * @param feature A feature from this layer. */ getType(feature: Graphic): FeatureType; + /** Indicates whether an error is thrown after the layer updates. */ + hasUpdateError(): void; + /** Indicates if the layer is rendered in WebGL. */ + hasWebGLSurface(): boolean; /** Returns true if geometryType is esriGeometryMultipatch and multipatchOption is xyFootprint. */ hasXYFootprint(): boolean; /** Returns true if the FeatureLayer is editable. */ @@ -9934,6 +10218,11 @@ declare module "esri/layers/FeatureLayer" { * @param update When false the layer will not update its content based on the map's time extent. */ setUseMapTime(update: boolean): void; + /** + * Toggles WebGL rendering on/off on the layer. + * @param enable Indicates whether to enable WebGL on the layer. + */ + setWebGLEnabled(enable: boolean): void; /** Suspends layer drawing. */ suspend(): void; /** Returns an easily serializable object representation of the layer. */ @@ -11961,6 +12250,8 @@ declare module "esri/map" { timeExtent: TimeExtent; /** Indicates whether map is visible. */ visible: boolean; + /** Indicates if WebGL is enabled for rendering FeatureLayers in the map. */ + webglEnabled: boolean; /** Current width of the map in screen pixels. */ width: number; /** @@ -12164,6 +12455,11 @@ declare module "esri/map" { * @param visible If true, map will be visible. */ setVisibility(visible: boolean): Map; + /** + * Toggles WebGL rendering on/off for all FeatureLayers in the map. + * @param enable Indicates whether to enable WebGL rendering on the FeatureLayers in the map. + */ + setWebGLEnabled(enable: boolean): void; /** * Set the map zoom level to the given value. * @param zoom A valid zoom level value. @@ -15860,6 +16156,8 @@ declare module "esri/tasks/PrintTemplate" { class PrintTemplate { /** Define the map width, height and dpi. */ exportOptions: any; + /** When true, the feature's attributes are included in feature collection layers even when they are not needed for rendering. */ + forceFeatureAttributes: boolean; /** The print output format. */ format: string; /** The text that appears on the Print widget's print button. */ diff --git a/types/arrify/arrify-tests.ts b/types/arrify/arrify-tests.ts index 319e86897a..3fee89133d 100644 --- a/types/arrify/arrify-tests.ts +++ b/types/arrify/arrify-tests.ts @@ -1,5 +1,6 @@ -import arrify = require("arrify"); +import * as arrify from 'arrify'; +/***************** arrify *****************/ arrify(null); arrify(null); @@ -12,3 +13,74 @@ arrify([2, 3]); function test(val?: string | string[]) { arrify(val); } +/***************** arrify *****************/ + +/***************** arrify *****************/ +arrify(undefined); // returns [] + +arrify(null); // returns [] + +{ + const value: number | string[] = 2018; + arrify(value); // returns [2018] +} + +{ + const value: number[] | string | string[] = ['a', 'b']; + arrify(value); // returns ['a', 'b'] +} +/***************** arrify *****************/ + +/***************** arrify *****************/ +arrify(undefined); + +arrify(null); + +{ + const value: boolean | number[] | string[] = true; + // returns [true] + arrify(value); +} + +{ + const value: boolean[] | number | string[] = ['a', 'b']; + // returns ['a', 'b'] + arrify(value); +} +/***************** arrify *****************/ + +/***************** arrify *****************/ +arrify(undefined); + +arrify(null); + +{ + const value: boolean | Date | number[] | string[] = new Date(2018); + // returns [ new Date(2018) ] + arrify(value); +} + +{ + const value: boolean[] | Date[] | number | string = [true, false]; + // returns [true, false] + arrify(value); +} +/***************** arrify *****************/ + +/***************** arrify *****************/ +arrify(undefined); + +arrify(null); + +{ + const value: boolean | Date | number[] | RegExp | string[] = /test/; + // returns [ /test/ ] + arrify(value); +} + +{ + const value: boolean[] | Date[] | number | RegExp[] | string = [/test1/, /test2/]; + // returns [/test1/, /test2/] + arrify(value); +} +/***************** arrify *****************/ diff --git a/types/arrify/index.d.ts b/types/arrify/index.d.ts index a1dda1b9ec..7c3c588ea6 100644 --- a/types/arrify/index.d.ts +++ b/types/arrify/index.d.ts @@ -14,4 +14,78 @@ * arrify([2, 3]) // returns [2, 3] */ declare function arrify(val: undefined | null | T | T[]): T[]; + +/** + * @example + * // returns [] + * arrify(undefined); + * @example + * // returns [] + * arrify(null); + * @example + * let value: number | string[] = 2018; + * // returns [2018] + * arrify(value); + * @example + * let value: number[] | string | string[] = ['a', 'b']; + * // returns ['a', 'b'] + * arrify(value); + */ +declare function arrify(val: undefined | null | T1 | T2 | T1[] | T2[]): T1[] | T2[]; + +/** + * @example + * // returns [] + * arrify(undefined); + * @example + * // returns [] + * arrify(null); + * @example + * let value: boolean | number[] | string[] = true; + * // returns [true] + * arrify(value); + * @example + * let value: boolean[] | number | string[] = ['a', 'b']; + * // returns ['a', 'b'] + * arrify(value); + */ +declare function arrify(val: undefined | null | T1 | T2 | T3 | T1[] | T2[] | T3[]): T1[] | T2[] | T3[]; + +/** + * @example + * // returns [] + * arrify(undefined); + * @example + * // returns [] + * arrify(null); + * @example + * let value: boolean | Date | number[] | string[] = new Date(2018); + * // returns [ new Date(2018) ] + * arrify(value); + * @example + * let value: boolean[] | Date[] | number | string = [true, false]; + * // returns [true, false] + * arrify(value); + */ +declare function arrify(val: undefined | null | T1 | T2 | T3 | T4 | T1[] | T2[] | T3[] | T4[]): T1[] | T2[] | T3[] | T4[]; + +/** + * @example + * // returns [] + * arrify(undefined); + * @example + * // returns [] + * arrify(null); + * @example + * let value: boolean | Date | number[] | RegExp | string[] = /test/; + * // returns [ /test/ ] + * arrify(value); + * @example + * let value: boolean[] | Date[] | number | RegExp[] | string = [/test1/, /test2/]; + * // returns [/test1/, /test2/] + * arrify(value); + */ +declare function arrify(val: undefined | null | T1 | T2 | T3 | T4 | T5 | T1[] | T2[] | T3[] | T4[] | T5[]): T1[] | T2[] | T3[] | T4[] | T5[]; + +declare namespace arrify {} export = arrify; diff --git a/types/async-retry/async-retry-tests.ts b/types/async-retry/async-retry-tests.ts index 29c90b36c8..68327b66bd 100644 --- a/types/async-retry/async-retry-tests.ts +++ b/types/async-retry/async-retry-tests.ts @@ -1,4 +1,5 @@ -import { Options, RetryFunction, retry } from 'async-retry'; +import { Options, RetryFunction } from 'async-retry'; +import retry = require("async-retry"); const o: Options = { retries: 1, diff --git a/types/async-retry/index.d.ts b/types/async-retry/index.d.ts index 38d0d8aeec..a2f65e00a4 100644 --- a/types/async-retry/index.d.ts +++ b/types/async-retry/index.d.ts @@ -1,17 +1,25 @@ -// Type definitions for async-retry 1.1 +// Type definitions for async-retry 1.2 // Project: https://github.com/zeit/async-retry#readme // Definitions by: Albert Wu +// Pablo Rodríguez // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -export function retry(fn: RetryFunction, opts: Options): Promise; +declare function AsyncRetry( + fn: AsyncRetry.RetryFunction, + opts: AsyncRetry.Options +): Promise; -export interface Options { - retries?: number; - factor?: number; - minTimeout?: number; - maxTimeout?: number; - randomize?: boolean; - onRetry?: (e: Error) => any; +declare namespace AsyncRetry { + interface Options { + retries?: number; + factor?: number; + minTimeout?: number; + maxTimeout?: number; + randomize?: boolean; + onRetry?: (e: Error) => any; + } + + type RetryFunction = (bail: (e: Error) => A, attempt: number) => A|Promise; } -export type RetryFunction = (bail: (e: Error) => A, attempt: number) => A|Promise; +export = AsyncRetry; diff --git a/types/async/index.d.ts b/types/async/index.d.ts index e2ecb522bc..961dd73ebb 100644 --- a/types/async/index.d.ts +++ b/types/async/index.d.ts @@ -168,8 +168,8 @@ export function forever(next: (next : ErrorCallback) => void, errBack: Err export function waterfall(tasks: Function[], callback?: AsyncResultCallback): void; export function compose(...fns: Function[]): Function; export function seq(...fns: Function[]): Function; -export function applyEach(fns: Function[], argsAndCallback: any[]): void; // applyEach(fns, args..., callback). TS does not support ... for a middle argument. Callback is optional. -export function applyEachSeries(fns: Function[], argsAndCallback: any[]): void; // applyEachSeries(fns, args..., callback). TS does not support ... for a middle argument. Callback is optional. +export function applyEach(fns: Function[], ...argsAndCallback: any[]): void; // applyEach(fns, args..., callback). TS does not support ... for a middle argument. Callback is optional. +export function applyEachSeries(fns: Function[], ...argsAndCallback: any[]): void; // applyEachSeries(fns, args..., callback). TS does not support ... for a middle argument. Callback is optional. export function queue(worker: AsyncWorker, concurrency?: number): AsyncQueue; export function queue(worker: AsyncResultIterator, concurrency?: number): AsyncQueue; export function priorityQueue(worker: AsyncWorker, concurrency: number): AsyncPriorityQueue; diff --git a/types/atlaskit__calendar/atlaskit__calendar-tests.tsx b/types/atlaskit__calendar/atlaskit__calendar-tests.tsx new file mode 100644 index 0000000000..3a2f9c0a71 --- /dev/null +++ b/types/atlaskit__calendar/atlaskit__calendar-tests.tsx @@ -0,0 +1,8 @@ +import Calendar from '@atlaskit/calendar'; + +import * as React from 'react'; +import { render } from 'react-dom'; + +declare const container: Element; + +render( {}} month={1} year={2000} />, container); diff --git a/types/atlaskit__calendar/index.d.ts b/types/atlaskit__calendar/index.d.ts new file mode 100644 index 0000000000..e92776c1f3 --- /dev/null +++ b/types/atlaskit__calendar/index.d.ts @@ -0,0 +1,81 @@ +// Type definitions for atlaskit__calendar 5.0 +// Project: https://bitbucket.org/atlassian/atlaskit-mk-2/src/master/ +// Definitions by: Lee Standen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { Component, HTMLAttributes, FocusEvent } from 'react'; + +export type ArrowKeys = 'left' | 'up' | 'right' | 'down'; + +export interface DateObj { + day: number; + month: number; + year: number; +} + +export interface ChangeEvent extends DateObj { + iso: string; + type: 'left' | 'up' | 'right' | 'down' | 'prev' | 'next'; +} + +export interface SelectEvent extends DateObj { + iso: string; +} + +export interface Props { + /** The number of the day currently focused. Places border around the date. 0 highlights no date. */ + day?: number; + /** Default for `day`. */ + defaultDay?: number; + /** Default for `disabled`. */ + defaultDisabled?: string[]; + /** Default for `month`. */ + defaultMonth?: number; + /** Default for `previouslySelected`. */ + defaultPreviouslySelected?: string[]; + /** Default for `selected`. */ + defaultSelected?: string[]; + /** Default for `year`. */ + defaultYear?: number; + /** + * Takes an array of dates as string in the format 'YYYY-MM-DD'. All dates provided are greyed out. + * This does not prevent these dates being selected. + */ + disabled?: string[]; + /** Props to apply to the container. */ + innerProps?: HTMLAttributes; + /** The number of the month (from 1 to 12) which the calendar should be on. */ + month?: number; + /** Function which is called when the calendar is no longer focused. */ + onBlur?: (e?: FocusEvent) => void; + /** + * Called when the calendar is navigated. This can be triggered by the keyboard, or by clicking the navigational buttons. + * The 'type' property indicates the the direction the calendar was navigated whereas the 'iso' property is a string of the format YYYY-MM-DD. + */ + onChange?: (e: ChangeEvent) => void; + /** Called when the calendar receives focus. This could be from a mouse event on the container by tabbing into it. */ + onFocus?: (e?: FocusEvent) => void; + /** + * Function called when a day is clicked on. Calls with an object that has + * a day, month and week property as numbers, representing the date just clicked. + * It also has an 'iso' property, which is a string of the selected date in the + * format YYYY-MM-DD. + */ + onSelect?: (e: SelectEvent) => void; + /** + * Takes an array of dates as string in the format 'YYYY-MM-DD'. All dates + * provided are given a background color. + */ + previouslySelected?: string[]; + /** + * Takes an array of dates as string in the format 'YYYY-MM-DD'. All dates + * provided are given a background color. + */ + selected?: string[]; + /** Value of current day, as a string in the format 'YYYY-MM-DD'. */ + today?: string; + /** Year to display the calendar for. */ + year?: number; +} +export default class Calendar extends Component {} diff --git a/types/atlaskit__calendar/tsconfig.json b/types/atlaskit__calendar/tsconfig.json new file mode 100644 index 0000000000..55dd5249f1 --- /dev/null +++ b/types/atlaskit__calendar/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6", "dom"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react", + "paths": { + "@atlaskit/calendar": ["atlaskit__calendar"] + } + }, + "files": ["index.d.ts", "atlaskit__calendar-tests.tsx"] +} diff --git a/types/atlaskit__calendar/tslint.json b/types/atlaskit__calendar/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/atlaskit__calendar/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/atlaskit__inline-edit/atlaskit__inline-edit-tests.tsx b/types/atlaskit__inline-edit/atlaskit__inline-edit-tests.tsx new file mode 100644 index 0000000000..1c8a7278b5 --- /dev/null +++ b/types/atlaskit__inline-edit/atlaskit__inline-edit-tests.tsx @@ -0,0 +1,15 @@ +import InlineEdit from '@atlaskit/inline-edit'; + +import * as React from 'react'; +import { render } from 'react-dom'; + +declare const container: Element; + +render( + Hello} + onConfirm={() => {}} + onCancel={() => {}} + />, + container, +); diff --git a/types/atlaskit__inline-edit/index.d.ts b/types/atlaskit__inline-edit/index.d.ts new file mode 100644 index 0000000000..4ee82ee4c3 --- /dev/null +++ b/types/atlaskit__inline-edit/index.d.ts @@ -0,0 +1,51 @@ +// Type definitions for @atlaskit/inline-edit 5.0 +// Project: https://bitbucket.org/atlassian/atlaskit-mk-2/ +// Definitions by: Lee Standen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { ReactElement, Component } from 'react'; +export default class InlineEdit extends Component {} +export class InlineEditStateless extends Component {} + +export interface BaseProps { + /** Label above the input. */ + label?: string; + /** Component to be shown when reading only */ + readView: ReactElement; + /** Component to be shown when editing. Should be an @atlaskit/input. */ + editView?: ReactElement; + /** Set whether the read view should fit width, most obvious when hovered. */ + isFitContainerWidthReadView?: boolean; + /** Greys out text and shows spinner. Does not disable input. */ + isWaiting?: boolean; + /** Sets yellow border with warning symbol at end of input. Removes confirm and cancel buttons. */ + isInvalid?: boolean; + /** Determine whether the label is shown. */ + isLabelHidden?: boolean; + /** Sets whether the checkmark and cross are displayed in the bottom right fo the field. */ + areActionButtonsHidden?: boolean; + /** Sets whether the confirm function is called when the input loses focus. */ + isConfirmOnBlurDisabled?: boolean; + /** Handler called when checkmark is clicked. Also by default called when the input loses focus. */ + onConfirm: () => void; + /** Handler called when the cross is clicked on. */ + onCancel: () => void; + /** html to pass down to the label htmlFor prop. */ + labelHtmlFor?: string; + /** Set whether onConfirm is called on pressing enter. */ + shouldConfirmOnEnter?: boolean; + /** Set whether default stylings should be disabled when editing. */ + disableEditViewFieldBase?: boolean; + /** Component to be shown in an @atlaskit/inline-dialog when edit view is open. */ + invalidMessage?: ReactElement; +} + +export interface StatelessProps extends BaseProps { + /** Whether the component shows the readView or the editView. */ + isEditing: boolean; + /** Handler called when the wrapper or the label are clicked. */ + onEditRequested: () => void; +} + +export type StatefulProps = BaseProps; diff --git a/types/atlaskit__inline-edit/tsconfig.json b/types/atlaskit__inline-edit/tsconfig.json new file mode 100644 index 0000000000..d2974ebb7a --- /dev/null +++ b/types/atlaskit__inline-edit/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6", "dom"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react", + "paths": { + "@atlaskit/inline-edit": ["atlaskit__inline-edit"] + } + }, + "files": ["index.d.ts", "atlaskit__inline-edit-tests.tsx"] +} diff --git a/types/atlaskit__inline-edit/tslint.json b/types/atlaskit__inline-edit/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/atlaskit__inline-edit/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/atlaskit__layer/atlaskit__layer-tests.tsx b/types/atlaskit__layer/atlaskit__layer-tests.tsx new file mode 100644 index 0000000000..d10ad57ff0 --- /dev/null +++ b/types/atlaskit__layer/atlaskit__layer-tests.tsx @@ -0,0 +1,15 @@ +import Layer from '@atlaskit/layer'; + +import * as React from 'react'; +import { render } from 'react-dom'; + +declare const container: Element; + +render( + Hello, world!} + autoFlip={false} + />, + container, +); diff --git a/types/atlaskit__layer/index.d.ts b/types/atlaskit__layer/index.d.ts new file mode 100644 index 0000000000..2f50a5abcf --- /dev/null +++ b/types/atlaskit__layer/index.d.ts @@ -0,0 +1,72 @@ +// Type definitions for @atlaskit/layer 3.1 +// Project: https://bitbucket.org/atlassian/atlaskit-mk-2/src/master/ +// Definitions by: Lee Standen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { Component, ReactNode } from 'react'; + +export default class Layer extends Component {} + +export interface Props { + /** + * Sets whether the content auto flip when it reaches the border set it as true for default flip + * or set the custom flip positions + */ + autoFlip?: boolean | FlipPositionType | FlipPositionType[]; + /** + * Element to act as a boundary for the Layer. The Layer will not sit outside this element if it + * can help it. If, through it's normal positoning, it would end up outside the boundary the + * layer will flip positions if the autoPosition prop is set. + */ + boundariesElement?: BoundariesElementType; + /** Target to which layer is attached */ + children?: ReactNode; + /** HTML content to display in the layer. Will be aligned to the target according to the position prop. */ + content?: ReactNode; + /** + * String representing the offsets from the target element in the format "[x-offset][y-offset]", + * measured in pixels. + */ + offset?: string; + /** + * Callback that is used to know when the flipped state of Layer changes. This occurs when placing a + * Layered element in the requested position would cause Layer to be rendered outside of the + * boundariesElement (usually viewport). + */ + onFlippedChange?: ( + flipped: boolean, + actualPosition: CSSPositionType, + originalPosition: CSSPositionType, + ) => void; + /** + * Position of a layer relative to its target. The position attribute takes two positional arguments in + * the format position="edge edge-position", where edge specifies what edge to align the layer to, and + * edge-position specifies where on that edge the layer should appear. + */ + position?: PositionType; + /** z-index for the layer component */ + zIndex?: number; + /** Lock scrolling behind the layer */ + lockScroll?: boolean; +} + +export type FlipPositionType = 'top' | 'right' | 'bottom' | 'left'; + +export type PositionType = + | 'top left' + | 'top center' + | 'top right' + | 'right top' + | 'right middle' + | 'right bottom' + | 'bottom left' + | 'bottom center' + | 'bottom right' + | 'left top' + | 'left middle' + | 'left bottom'; + +export type BoundariesElementType = 'viewport' | 'window' | 'scrollParent'; + +export type CSSPositionType = 'absolute' | 'fixed'; diff --git a/types/atlaskit__layer/tsconfig.json b/types/atlaskit__layer/tsconfig.json new file mode 100644 index 0000000000..6b6a475bd3 --- /dev/null +++ b/types/atlaskit__layer/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6", "dom"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react", + "paths": { + "@atlaskit/layer": ["atlaskit__layer"] + } + }, + "files": ["index.d.ts", "atlaskit__layer-tests.tsx"] +} diff --git a/types/atlaskit__layer/tslint.json b/types/atlaskit__layer/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/atlaskit__layer/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/atlaskit__single-select/atlaskit__single-select-tests.tsx b/types/atlaskit__single-select/atlaskit__single-select-tests.tsx new file mode 100644 index 0000000000..baa25dfe1f --- /dev/null +++ b/types/atlaskit__single-select/atlaskit__single-select-tests.tsx @@ -0,0 +1,14 @@ +import SingleSelect, { StatelessSelect } from '@atlaskit/single-select'; + +import * as React from 'react'; +import { render } from 'react-dom'; + +declare const container: Element; + +render( +
+ + +
, + container, +); diff --git a/types/atlaskit__single-select/index.d.ts b/types/atlaskit__single-select/index.d.ts new file mode 100644 index 0000000000..6536869512 --- /dev/null +++ b/types/atlaskit__single-select/index.d.ts @@ -0,0 +1,125 @@ +// Type definitions for @atlaskit/single-select 4.0 +// Project: https://bitbucket.org/atlassian/atlaskit-mk-2/src/master/ +// Definitions by: Lee Standen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { Component, ReactNode, SyntheticEvent } from 'react'; + +export default class SingleSelect extends Component {} +export class StatelessSelect extends Component {} + +export interface Props { + /** Subtle items do not have a background color. */ + appearance?: 'default' | 'subtle'; + /** Item to be selected on component mount. */ + defaultSelected?: ItemType; + /** Sets whether the dropdown should be constrained to the width of its trigger */ + droplistShouldFitContainer?: boolean; + /** + * Sets whether the field should be selectable. If it is, the field will be + * a text box, which will filter the items. + */ + hasAutocomplete?: boolean; + /** id property to be passed down to the html select component. */ + id?: string; + /** message to show on the dialog when isInvalid is true */ + invalidMessage?: ReactNode; + /** controls the top margin of the label component rendered. */ + isFirstChild?: boolean; + /** Sets whether the select is selectable. Changes hover state. */ + isDisabled?: boolean; + /** Sets whether the component should be open on mount. */ + isDefaultOpen?: boolean; + /** + * Sets whether form including select can be submitted without an option + * being made. + */ + isRequired?: boolean; + /** + * Set whether there is an error with the selection. Sets an orange border + * and shows the warning icon. + */ + isInvalid?: boolean; + /** + * An array of objects, each one of which must have an array of items, and + * may have a heading. All items should have content and value properties, with + * content being the displayed text. + */ + items?: GroupType[]; + /** Label to be displayed above select. */ + label?: string; + /** name property to be passed to the html select element. */ + name?: string; + /** + * Message to display in any group in items if there are no items in it, + * including if there is one item that has been selected. + */ + noMatchesFound?: string; + /** Handler to be called when the filtered items changes. */ + onFilterChange?: (filter: string) => void; + /** + * Handler to be called when an item is selected. Called with an object that + * has the item selected as a property on the object. + */ + onSelected?: (item: ItemType) => void; + /** + * Handler called when the select is opened or closed. Called with an object + * that has both the event, and the new isOpen state. + */ + onOpenChange?: ( + change: { event: SyntheticEvent; isOpen: boolean }, + ) => void; + /** Text to be shown within the select when no item is selected. */ + placeholder?: string; + /** Where the select dropdown should be displayed relative to the field position. */ + position?: string; + /** Sets whether the field will become focused. */ + shouldFocus?: boolean; + /** Sets whether the field should be constrained to the width of its trigger */ + shouldFitContainer?: boolean; + /** Sets whether the droplist should flip its position when there is not enough space. */ + shouldFlip?: boolean; + /** Set the max height of the dropdown list in pixels. */ + maxHeight?: number; +} + +export interface StatelessProps extends Props { + /** Value to be used when filtering the items. Compared against 'content'. */ + filterValue?: string; + /** Sets whether the Select dropdown is open. */ + isOpen?: boolean; + /** + * Sets whether the field is loading data. The same property is used + * for either initial fetch (when no options are available) as well for + * subsequent loading of more options. The component reacts accordingly + * based on the `items` provided. + */ + isLoading?: boolean; + /** + * Message to be displayed when the component is set to its loading state. + * The message might be displayed differently depending on whether or not + * there are items already being rendered. + */ + loadingMessage?: string; + /** The selected item data */ + selectedItem?: ItemType; +} + +export interface GroupType { + heading?: string; + items: ItemType[]; +} + +export interface ItemType { + content?: ReactNode; + description?: string; + label?: string; + tooltipDescription?: string; + tooltipPosition?: 'top' | 'bottom' | 'left'; + value?: string | number; + filterValues?: string[]; + isDisabled?: boolean; + isSelected?: boolean; + elemBefore?: ReactNode; +} diff --git a/types/atlaskit__single-select/tsconfig.json b/types/atlaskit__single-select/tsconfig.json new file mode 100644 index 0000000000..1ec4324243 --- /dev/null +++ b/types/atlaskit__single-select/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6", "dom"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react", + "paths": { + "@atlaskit/single-select": ["atlaskit__single-select"] + } + }, + "files": ["index.d.ts", "atlaskit__single-select-tests.tsx"] +} diff --git a/types/atlaskit__single-select/tslint.json b/types/atlaskit__single-select/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/atlaskit__single-select/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/atob/atob-tests.ts b/types/atob/atob-tests.ts new file mode 100644 index 0000000000..e2e2618387 --- /dev/null +++ b/types/atob/atob-tests.ts @@ -0,0 +1,3 @@ +import atob from 'atob'; + +atob('foo'); diff --git a/types/atob/index.d.ts b/types/atob/index.d.ts new file mode 100644 index 0000000000..632880f7a6 --- /dev/null +++ b/types/atob/index.d.ts @@ -0,0 +1,7 @@ +// Type definitions for atob 2.1 +// Project: https://git.coolaj86.com/coolaj86/atob.js.git +// Definitions by: John Wright +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +export default function(str: string): string; diff --git a/types/atob/tsconfig.json b/types/atob/tsconfig.json new file mode 100644 index 0000000000..70dd7f0fdc --- /dev/null +++ b/types/atob/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "lib": ["es6"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "atob-tests.ts" + ] +} diff --git a/types/atob/tslint.json b/types/atob/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/atob/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/atom/atom-tests.ts b/types/atom/atom-tests.ts index f21fab1114..57420d5059 100644 --- a/types/atom/atom-tests.ts +++ b/types/atom/atom-tests.ts @@ -88,6 +88,10 @@ function testAtomEnvironment() { { label: "Undo", command: "core:undo" }, { label: "Redo", command: "core:redo" }, ], + after: ["test"], + before: ["test"], + afterGroupContaining: ["test"], + beforeGroupContaining: ["test"] }], }); @@ -3310,7 +3314,7 @@ const pathWatcherPromise = Atom.watchPath("/var/test", {}, (events) => { for (const event of events) { str = event.path; str = event.action; - if (event.oldPath) str = event.oldPath; + if (event.action === "renamed") str = event.oldPath; } }); diff --git a/types/atom/autocomplete-plus/index.d.ts b/types/atom/autocomplete-plus/index.d.ts index 2e91a81262..5176ca0f30 100644 --- a/types/atom/autocomplete-plus/index.d.ts +++ b/types/atom/autocomplete-plus/index.d.ts @@ -34,7 +34,7 @@ export interface SuggestionInsertedEvent { * An autocompletion suggestion for the user. * Primary data type for the Atom Autocomplete+ service. */ -export interface Suggestion { +export interface SuggestionBase { /** * A string that will show in the UI for this suggestion. * When not set, snippet || text is displayed. @@ -91,14 +91,20 @@ export interface Suggestion { * When specified, a More.. link will be displayed in the description area. */ descriptionMoreURL?: string; + + /** + * (experimental) Description with Markdown formatting. + * Takes precedence over plaintext description. + */ + descriptionMarkdown?: string; } -export interface TextSuggestion extends Suggestion { +export interface TextSuggestion extends SuggestionBase { /** The text which will be inserted into the editor, in place of the prefix. */ text: string; } -export interface SnippetSuggestion extends Suggestion { +export interface SnippetSuggestion extends SuggestionBase { /** * A snippet string. This will allow users to tab through function arguments * or other options. @@ -106,7 +112,8 @@ export interface SnippetSuggestion extends Suggestion { snippet: string; } -export type Suggestions = Array; +export type AnySuggestion = TextSuggestion|SnippetSuggestion; +export type Suggestions = AnySuggestion[]; /** The interface that all Autocomplete+ providers must implement. */ export interface AutocompleteProvider { @@ -154,4 +161,13 @@ export interface AutocompleteProvider { /** Will be called if your provider is being destroyed by autocomplete+ */ dispose?(): void; + + /** + * (experimental) Is called when a suggestion is selected by the user for + * the purpose of loading more information about the suggestion. Return a + * Promise of the new suggestion to replace it with or return null if + * no change is needed. + */ + getSuggestionDetailsOnSelect?: + (suggestion: AnySuggestion) => Promise | AnySuggestion | null; } diff --git a/types/atom/index.d.ts b/types/atom/index.d.ts index e673ada530..3cee95ace5 100644 --- a/types/atom/index.d.ts +++ b/types/atom/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Atom 1.25 +// Type definitions for Atom 1.26 // Project: https://github.com/atom/atom // Definitions by: GlenCFL // smhxx @@ -7,7 +7,7 @@ // TypeScript Version: 2.3 // NOTE: only those classes exported within this file should be retain that status below. -// https://github.com/atom/atom/blob/v1.25.0/exports/atom.js +// https://github.com/atom/atom/blob/v1.26.0/exports/atom.js /// @@ -1529,7 +1529,7 @@ export class TextEditor { /** Set the text in the given Range in buffer coordinates. */ setTextInBufferRange(range: RangeCompatible, text: string, options?: - { normalizeLineEndings?: boolean, undo?: "skip" }): Range; + TextEditOptions): Range; /* For each selection, replace the selected text with the given text. */ insertText(text: string, options?: TextInsertionOptions): Range|false; @@ -5145,16 +5145,13 @@ export class TextBuffer { setTextViaDiff(text: string): void; /** Set the text in the given range. */ - setTextInRange(range: RangeCompatible, text: string, options?: - { normalizeLineEndings?: boolean, undo?: "skip" }): Range; + setTextInRange(range: RangeCompatible, text: string, options?: TextEditOptions): Range; /** Insert text at the given position. */ - insert(position: PointCompatible, text: string, options?: - { normalizeLineEndings?: boolean, undo?: "skip" }): Range; + insert(position: PointCompatible, text: string, options?: TextEditOptions): Range; /** Append text to the end of the buffer. */ - append(text: string, options?: { normalizeLineEndings?: boolean, undo?: - "skip" }): Range; + append(text: string, options?: TextEditOptions): Range; /** Delete the text in the given range. */ delete(range: RangeCompatible): Range; @@ -5647,19 +5644,28 @@ export interface FileSavedEvent { path: string; } -export type FilesystemChangeEvent = Array<{ +export interface FilesystemChangeBasic< + Action extends "created"|"modified"|"deleted"|"renamed" + = "created"|"modified"|"deleted" +> { /** A string describing the filesystem action that occurred. */ - action: "created"|"modified"|"deleted"|"renamed"; + action: Action; /** The absolute path to the filesystem entry that was acted upon. */ path: string; +} +export interface FilesystemChangeRename extends FilesystemChangeBasic<"renamed"> { /** * For rename events, a string containing the filesystem entry's former * absolute path. */ - oldPath?: string; -}>; + oldPath: string; +} + +export type FilesystemChange = FilesystemChangeBasic|FilesystemChangeRename; + +export type FilesystemChangeEvent = FilesystemChange[]; export interface FullKeybindingMatchEvent { /** The string of keystrokes that matched the binding. */ @@ -5822,7 +5828,7 @@ export interface TextEditorObservedEvent { // information under certain contexts. // NOTE: the config schema with these defaults can be found here: -// https://github.com/atom/atom/blob/v1.25.0/src/config-schema.js +// https://github.com/atom/atom/blob/v1.26.0/src/config-schema.js /** * Allows you to strongly type Atom configuration variables. Additional key:value * pairings merged into this interface will result in configuration values under @@ -6161,7 +6167,7 @@ export interface ConfirmationOptions { normalizeAccessKeys?: boolean; } -export interface ContextMenuOptions { +export interface ContextMenuItemOptions { /** The menu item's label. */ label?: string; @@ -6180,12 +6186,6 @@ export interface ContextMenuOptions { /** An array of additional items. */ submenu?: ReadonlyArray; - /** - * If you want to create a separator, provide an item with type: 'separator' - * and no other keys. - */ - type?: "separator"; - /** Whether the menu item should appear in the menu. Defaults to true. */ visible?: boolean; @@ -6200,8 +6200,28 @@ export interface ContextMenuOptions { * given context menu deployment. */ shouldDisplay?(event: Event): void; + + /** Place this menu item before the menu items representing the given commands. */ + before?: ReadonlyArray; + + /** Place this menu item after the menu items representing the given commands. */ + after?: ReadonlyArray; + + /** + * Place this menu item's group before the containing group of the menu items + * representing the given commands. + */ + beforeGroupContaining?: ReadonlyArray; + + /** + * Place this menu item's group after the containing group of the menu items + * representing the given commands. + */ + afterGroupContaining?: ReadonlyArray; } +export type ContextMenuOptions = ContextMenuItemOptions | { type: "separator" }; + export interface CopyMarkerOptions { /** Whether or not the marker should be tailed. */ tailed?: boolean; @@ -6474,7 +6494,18 @@ export interface SpawnProcessOptions { shell?: boolean | string; } -export interface TextInsertionOptions { +export interface TextEditOptions { + /** If true, all line endings will be normalized to match the editor's current mode. */ + normalizeLineEndings?: boolean; + + /** + * If skip, skips the undo stack for this operation. + * @deprecated Call groupLastChanges() on the TextBuffer afterward instead. + */ + undo?: "skip"; +} + +export interface TextInsertionOptions extends TextEditOptions { /** If true, selects the newly added text. */ select?: boolean; @@ -6497,12 +6528,6 @@ export interface TextInsertionOptions { * true, this behavior is suppressed. */ preserveTrailingLineIndentation?: boolean; - - /** If true, all line endings will be normalized to match the editor's current mode. */ - normalizeLineEndings?: boolean; - - /** If skip, skips the undo stack for this operation. */ - undo?: "skip"; } /** The options for a Bootstrap 3 Tooltip class, which Atom uses a variant of. */ diff --git a/types/auth0-lock/auth0-lock-tests.ts b/types/auth0-lock/auth0-lock-tests.ts index 3ef12e327b..0c64fd361b 100644 --- a/types/auth0-lock/auth0-lock-tests.ts +++ b/types/auth0-lock/auth0-lock-tests.ts @@ -124,7 +124,9 @@ const otherOptions : Auth0LockConstructorOptions = { configurationBaseUrl: "https://cdn.auth0.com", languageBaseUrl: "http://www.example.com", hashCleanup: false, - leeway: 30 + leeway: 30, + _enableImpersonation: true, + _enableIdPInitiatedLogin: false }; new Auth0Lock(CLIENT_ID, DOMAIN, otherOptions); @@ -256,6 +258,7 @@ new Auth0Lock(CLIENT_ID, DOMAIN, avatarOptions); const authResult : AuthResult = { accessToken: 'fake_access_token', + expiresIn: 7200, idToken: 'fake_id_token', idTokenPayload: { aud: "EaQzyHt1Dy57l-r5iHcMeT-lh1fFZntg", @@ -265,5 +268,6 @@ const authResult : AuthResult = { sub: "auth0|aksjfkladsf" }, refreshToken: undefined, - state: "923jf092j3.FFSDJFDSKLDF" + state: "923jf092j3.FFSDJFDSKLDF", + tokenType: 'Bearer' }; diff --git a/types/auth0-lock/index.d.ts b/types/auth0-lock/index.d.ts index dd3e6aa7ee..27639834db 100644 --- a/types/auth0-lock/index.d.ts +++ b/types/auth0-lock/index.d.ts @@ -118,7 +118,7 @@ interface Auth0LockConstructorOptions { auth?: Auth0LockAuthOptions; autoclose?: boolean; autofocus?: boolean; - avatar?: Auth0LockAvatarOptions; + avatar?: Auth0LockAvatarOptions | null; clientBaseUrl?: string; closable?: boolean; configurationBaseUrl?: string; @@ -144,6 +144,7 @@ interface Auth0LockConstructorOptions { theme?: Auth0LockThemeOptions; usernameStyle?: string; _enableImpersonation?: boolean; + _enableIdPInitiatedLogin?: boolean; } interface Auth0LockFlashMessageOptions { @@ -164,6 +165,8 @@ interface Auth0LockShowOptions { interface AuthResult { accessToken: string; + appState?: any; + expiresIn: number; idToken: string; idTokenPayload: { aud: string; @@ -173,8 +176,10 @@ interface AuthResult { sub: string; }; refreshToken?: string; + scope?: string; state: string; -} + tokenType: string; + } interface Auth0LockStatic { new (clientId: string, domain: string, options?: Auth0LockConstructorOptions): Auth0LockStatic; diff --git a/types/auth0/auth0-tests.ts b/types/auth0/auth0-tests.ts index 0572c2b0e7..94e7d63cb3 100644 --- a/types/auth0/auth0-tests.ts +++ b/types/auth0/auth0-tests.ts @@ -75,6 +75,25 @@ management // Handle the error. }); +// Link users +management + .createUser({ connection: 'email', email: 'hi@me.co' }) + .catch(err => console.error('Cannot create E-mail user', err)) + .then((emailUser) => { + if (!emailUser) return; + management + .createUser({ connection: 'sms', phone_number: '+1234567890' }) + .catch(err => console.error('Cannot create SMS user', err)) + .then((smsUser) => { + if (!smsUser) return; + const userId = emailUser.user_id; + const params = { user_id: smsUser.user_id, provider: 'sms' }; + management.linkUsers(userId, params) + .catch(err => console.error('Cannot link E-mail and SMS users', err)) + .then((linkedUsers) => console.log(linkedUsers)) + }) + }); + auth .requestChangePasswordEmail({ connection: 'My-Connection', @@ -141,3 +160,12 @@ management.createPasswordChangeTicket({ }, (err: Error, data) => { console.log(data.ticket); }); + +// Link users +management.linkUsers('primaryId', { user_id: 'secondaryId' }) + .then((result: any) => console.log(result)); + +// Link users with callback +management.linkUsers('primaryId', { user_id: 'secondaryId' }, + (err: Error, result: any) => {}); + diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index 58013848f8..aa82e908e5 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for auth0 2.7 +// Type definitions for auth0 2.9.1 // Project: https://github.com/auth0/node-auth0 // Definitions by: Wilson Hobbs , Seth Westphal , Amiram Korach // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -33,8 +33,13 @@ export interface RetryOptions { maxRetries?: number; } -export interface UserMetadata { } -export interface AppMetadata { } +export interface UserMetadata { + [propName: string]: string +} + +export interface AppMetadata { + [propName: string]: any +} export interface UserData { email?: string; @@ -345,6 +350,14 @@ export interface Identity { user_id: string; provider: string; isSocial: boolean; + profileData?: { + email?: string; + email_verified?: boolean; + name?: string; + phone_number?: string; + phone_verified?: boolean; + request_language?: string; + } } export interface AuthenticationClientOptions { @@ -462,7 +475,7 @@ export interface UnlinkAccountsResponse { profileData?: UnlinkAccountsResponseProfile } -export interface LinkAccountsData { +export interface LinkAccountsParams { user_id: string; connection_id?: string; provider?: string; @@ -505,9 +518,72 @@ export interface EmailVerificationTicketOptions { result_url: string; } +export interface BaseClientOptions { + baseUrl: string; + clientId?: string; +} + +export interface OAuthClientOptions extends BaseClientOptions { + clientSecret?: string; +} + +export interface DatabaseClientOptions extends BaseClientOptions { +} + +export interface PasswordLessClientOptions extends BaseClientOptions { +} + +export interface TokenManagerOptions extends BaseClientOptions { + headers?: any; +} +export interface UsersOptions extends BaseClientOptions { + headers?: any; +} + +export interface SignInOptions extends VerifyOptions { + connection?: string; +} + +export interface SocialSignInOptions { + access_token: string; + connection: string; +} + +export interface SignInToken { + access_token: string; + id_token?: string; + token_type?: string; + expiry: number; +} + +export interface RequestSMSCodeOptions extends RequestSMSOptions { + client_id: string; +} + +export type SendType = 'link' | 'code'; +export interface RequestEmailCodeOrLinkOptions { + email: string; + send: SendType +} + +export interface ImpersonateSettingOptions { + impersonator_id: string; + protocol: string; + token: string; + clientId?: string; +} + export class AuthenticationClient { + + // Members + database?: DatabaseAuthenticator; + oauth?: OAuthAuthenticator; + passwordless?: PasswordlessAuthenticator; + tokens?: TokenManager; + users?: UsersManager; + constructor(options: AuthenticationClientOptions); getClientInfo(): ClientInfo; @@ -664,8 +740,8 @@ export class ManagementClient { unlinkUsers(params: UnlinkAccountsParams): Promise; unlinkUsers(params: UnlinkAccountsParams, cb: (err: Error, data: UnlinkAccountsResponse) => void): void; - linkUsers(params: ObjectWithId, data: LinkAccountsData): Promise; - linkUsers(params: ObjectWithId, data: LinkAccountsData, cb: (err: Error, data: any) => void): void; + linkUsers(userId: string, params: LinkAccountsParams): Promise; + linkUsers(userId: string, params: LinkAccountsParams, cb: (err: Error, data: any) => void): void; // Tokens @@ -747,3 +823,63 @@ export class ManagementClient { updateResourceServer(params: ObjectWithId, data: ResourceServer): Promise; updateResourceServer(params: ObjectWithId, data: ResourceServer, cb?: (err: Error, data: ResourceServer) => void): void; } + + +export class DatabaseAuthenticator { + constructor(options: DatabaseClientOptions, oauth: OAuthAuthenticator); + + changePassword(data: ResetPasswordOptions): Promise; + changePassword(data: ResetPasswordOptions, cb: (err: Error, message: string) => void): void; + + requestChangePasswordEmail(data: ResetPasswordEmailOptions): Promise; + requestChangePasswordEmail(data: ResetPasswordEmailOptions, cb: (err: Error, message: string) => void): void; + + signIn(data: SignInOptions): Promise; + signIn(data: SignInOptions, cb: (err: Error, data: SignInToken) => void): void; + + signUp(data: CreateUserData): Promise; + signIn(data: CreateUserData, cb: (err: Error, data: User) => void): void; + +} + +export class OAuthAuthenticator { + constructor(options: OAuthClientOptions); + + passwordGrant(options: PasswordGrantOptions): Promise; + passwordGrant(options: PasswordGrantOptions, cb: (err: Error, response: SignInToken) => void): void; + + signIn(data: SignInOptions): Promise; + signIn(data: SignInOptions, cb: (err: Error, data: SignInToken) => void): void; + + + socialSignIn(data: SocialSignInOptions): Promise; + socialSignIn(data: SocialSignInOptions, cb: (err: Error, data: SignInToken) => void): void; +} + +export class PasswordlessAuthenticator { + constructor(options: PasswordLessClientOptions, oauth: OAuthAuthenticator); + + signIn(data: SignInOptions): Promise; + signIn(data: SignInOptions, cb: (err: Error, data: SignInToken) => void): void; + + sendEmail(data: RequestEmailCodeOrLinkOptions): Promise; + sendEmail(data: RequestEmailCodeOrLinkOptions, cb: (err: Error, message: string) => void): void; + + sendSMS(data: RequestSMSCodeOptions): Promise; + sendSMS(data: RequestSMSCodeOptions, cb: (err: Error, message: string) => void): void; +} + +export class TokenManager { + constructor(options: TokenManagerOptions); + +} + +export class UsersManager { + constructor(options: UsersOptions); + + getInfo(accessToken: string): Promise; + getInfo(accessToken: string, cb: (err: Error, user: User) => void): void; + + impersonate(userId: string, settings: ImpersonateSettingOptions): Promise; + impersonate(userId: string, settings: ImpersonateSettingOptions, cb: (err: Error, data: any) => void): void; +} \ No newline at end of file diff --git a/types/autobahn/index.d.ts b/types/autobahn/index.d.ts index 969c703478..59bb2c404d 100644 --- a/types/autobahn/index.d.ts +++ b/types/autobahn/index.d.ts @@ -25,7 +25,7 @@ declare namespace autobahn { leave(reason: string, message: string): void; - call(procedure: string, args?: any[], kwargs?: any, options?: ICallOptions): When.Promise; + call(procedure: string, args?: any[] | any, kwargs?: any, options?: ICallOptions): When.Promise; publish(topic: string, args?: any[], kwargs?: any, options?: IPublishOptions): When.Promise; @@ -96,7 +96,7 @@ declare namespace autobahn { kwargs: any; } - type SubscribeHandler = (args?: any[], kwargs?: any, details?: IEvent) => void; + type SubscribeHandler = (args?: any[] | any, kwargs?: any, details?: IEvent) => void; interface ISubscription { topic: string; @@ -206,7 +206,7 @@ declare namespace autobahn { type DeferFactory = () => When.Promise; - type OnChallengeHandler = (session: Session, method: string, extra: any) => string; + type OnChallengeHandler = (session: Session, method: string, extra: any) => string | When.Promise; interface IConnectionOptions { use_es6_promises?: boolean; diff --git a/types/awesomplete/awesomplete-tests.ts b/types/awesomplete/awesomplete-tests.ts index f9ff4fed77..a3c66875a4 100644 --- a/types/awesomplete/awesomplete-tests.ts +++ b/types/awesomplete/awesomplete-tests.ts @@ -11,6 +11,7 @@ new Awesomplete(input, { const awesomplete = new Awesomplete(input); awesomplete.list = ["Ada", "Java", "JavaScript", "LOLCODE", "Node.js", "Ruby on Rails"]; +awesomplete.destroy(); new Awesomplete(input, { list: [ diff --git a/types/awesomplete/index.d.ts b/types/awesomplete/index.d.ts index 149b87e9f6..e73b7cf2f3 100644 --- a/types/awesomplete/index.d.ts +++ b/types/awesomplete/index.d.ts @@ -1,6 +1,9 @@ // Type definitions for Awesomplete 1.1 // Project: https://leaverou.github.io/awesomplete/ -// Definitions by: webbiesdk , Ben Dixon , Trevor Bekolay +// Definitions by: webbiesdk +// Ben Dixon +// Trevor Bekolay +// Chris LoPresto // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare class Awesomplete { @@ -35,6 +38,7 @@ declare class Awesomplete { selected: boolean; open: () => void; status: HTMLElement; + destroy: () => void; } declare namespace Awesomplete { diff --git a/types/aws-lambda-mock-context/index.d.ts b/types/aws-lambda-mock-context/index.d.ts index 6fc5fda67a..b5a3768f2d 100644 --- a/types/aws-lambda-mock-context/index.d.ts +++ b/types/aws-lambda-mock-context/index.d.ts @@ -26,10 +26,10 @@ interface Context { } interface Options { - region: string; - account: string; - functionName: string; - functionVersion: string; - memoryLimitInMB: string; + region?: string; + account?: string; + functionName?: string; + functionVersion?: string; + memoryLimitInMB?: string; alias?: string; } diff --git a/types/aws-lambda/aws-lambda-tests.ts b/types/aws-lambda/aws-lambda-tests.ts index 2b7b375576..9f9d7438e3 100644 --- a/types/aws-lambda/aws-lambda-tests.ts +++ b/types/aws-lambda/aws-lambda-tests.ts @@ -83,6 +83,7 @@ str = apiGwEvtReqCtx.httpMethod; strOrNull = apiGwEvtReqCtx.identity.accessKey; strOrNull = apiGwEvtReqCtx.identity.accountId; strOrNull = apiGwEvtReqCtx.identity.apiKey; +strOrNull = apiGwEvtReqCtx.identity.apiKeyId; strOrNull = apiGwEvtReqCtx.identity.caller; strOrNull = apiGwEvtReqCtx.identity.cognitoAuthenticationProvider; strOrNull = apiGwEvtReqCtx.identity.cognitoAuthenticationType; @@ -259,10 +260,82 @@ statement = { Resource: str }; +// $ExpectError statement = { + Effect: str, + Action: str, + Principal: 123 +}; + +// Bad Resource +// $ExpectError +statement = { + Effect: str, + Action: str, + Resource: 123 +}; + +// Bad Resource with valid Principal +// $ExpectError +statement = { + Effect: str, + Action: str, + Principal: { Service: str}, + Resource: 123 +}; + +// Bad principal with valid Resource +// $ExpectError +statement = { + Effect: str, + Action: str, + Principal: 123, + Resource: str +}; + +// No Effect +// $ExpectError +statement = { + Action: str, + Principal: str +}; + +statement = { + Sid: str, Action: [str, str], Effect: str, - Resource: [str, str] + Resource: [str, str], + Condition: { + condition1: { key: "value" }, + condition2: [{ + key1: "value", + key2: "value" + }, { + key3: "value" + }] + }, + Principal: [str, str], + NotPrincipal: [str, str] +}; + +statement = { + Action: str, + Principal: str, + Effect: str +}; + +statement = { + Action: str, + NotPrincipal: { + Service: str + }, + Effect: str +}; + +statement = { + Effect: str, + NotAction: str, + NotResource: str }; policyDocument = { @@ -270,6 +343,11 @@ policyDocument = { Statement: [statement] }; +policyDocument = { + Version: str, + Statement: [statement, statement] +}; + authResponse = { principalId: str, policyDocument, @@ -572,6 +650,28 @@ const CloudFrontResponseEvent: AWSLambda.CloudFrontResponseEvent = { ] }; +/* Kinesis Data Stream Events */ +declare let kinesisStreamEvent: AWSLambda.KinesisStreamEvent; +declare let kinesisStreamRecord: AWSLambda.KinesisStreamRecord; +declare let kinesisStreamRecordPayload: AWSLambda.KinesisStreamRecordPayload; + +kinesisStreamRecord = kinesisStreamEvent.Records[0]; + +str = kinesisStreamRecord.awsRegion; +str = kinesisStreamRecord.eventID; +str = kinesisStreamRecord.eventName; +str = kinesisStreamRecord.eventSource; +str = kinesisStreamRecord.eventSourceARN; +str = kinesisStreamRecord.eventVersion; +str = kinesisStreamRecord.invokeIdentityArn; +kinesisStreamRecordPayload = kinesisStreamRecord.kinesis; + +num = kinesisStreamRecordPayload.approximateArrivalTimestamp; +str = kinesisStreamRecordPayload.data; +str = kinesisStreamRecordPayload.kinesisSchemaVersion; +str = kinesisStreamRecordPayload.partitionKey; +str = kinesisStreamRecordPayload.sequenceNumber; + /* Compatibility functions */ context.done(); context.done(error); @@ -585,8 +685,27 @@ context.fail(str); /* Handler */ let handler: AWSLambda.Handler = (event: any, context: AWSLambda.Context, cb: AWSLambda.Callback) => { }; -// async methods return Promise, test assignability -let asyncHandler: AWSLambda.Handler = async (event: any, context: AWSLambda.Context, cb: AWSLambda.Callback) => { }; +/* In node8.10 runtime, handlers may return a promise for the result value, so existing async + * handlers that return Promise before calling the callback will now have a `null` result. + * Be safe and make that badly typed with a major verson bump to 8.10 so users expect the breaking change, + * since the upgrade effort should be pretty low in most cases, and it points them at a nicer solution. + */ +// $ExpectError +let legacyAsyncHandler: AWSLambda.APIGatewayProxyHandler = async ( + event: AWSLambda.APIGatewayProxyEvent, + context: AWSLambda.Context, + cb: AWSLambda.Callback, +) => { + cb(null, { statusCode: 200, body: 'No longer valid' }); +}; + +let node8AsyncHandler: AWSLambda.APIGatewayProxyHandler = async ( + event: AWSLambda.APIGatewayProxyEvent, + context: AWSLambda.Context, + cb: AWSLambda.Callback, +) => { + return { statusCode: 200, body: 'Is now valid!' }; +}; let inferredHandler: AWSLambda.S3Handler = (event, context, cb) => { // $ExpectType S3Event @@ -661,3 +780,5 @@ let customHandler: AWSLambda.Handler = (event, contex // $ExpectError cb(null, { resultString: bool }); }; + +let kinesisStreamHandler: AWSLambda.KinesisStreamHandler = (event: AWSLambda.KinesisStreamEvent, context: AWSLambda.Context, cb: AWSLambda.Callback) => { }; diff --git a/types/aws-lambda/index.d.ts b/types/aws-lambda/index.d.ts index 5802913c37..7795c4cdfe 100644 --- a/types/aws-lambda/index.d.ts +++ b/types/aws-lambda/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for AWS Lambda +// Type definitions for AWS Lambda 8.10 // Project: http://docs.aws.amazon.com/lambda // Definitions by: James Darbyshire // Michael Skarum @@ -16,6 +16,8 @@ // Danilo Raisi // Simon Buchan // David Hayden +// Chris Redekop +// Aneil Mallavarapu // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -29,6 +31,7 @@ export interface APIGatewayEventRequestContext { accessKey: string | null; accountId: string | null; apiKey: string | null; + apiKeyId: string | null; caller: string | null; cognitoAuthenticationProvider: string | null; cognitoAuthenticationType: string | null; @@ -437,28 +440,59 @@ export interface CustomAuthorizerResult { principalId: string; policyDocument: PolicyDocument; context?: AuthResponseContext; + usageIdentifierKey?: string; } export type AuthResponse = CustomAuthorizerResult; /** * API Gateway CustomAuthorizer AuthResponse.PolicyDocument. - * http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html#api-gateway-custom-authorizer-output + * https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html + * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Condition */ export interface PolicyDocument { Version: string; - Statement: [Statement]; + Id?: string; + Statement: Statement[]; +} + +/** + * API Gateway CustomAuthorizer AuthResponse.PolicyDocument.Condition. + * https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-policy-language-overview.html + * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html + */ +export interface ConditionBlock { + [condition: string]: Condition | Condition[]; +} + +export interface Condition { + [key: string]: string | string[]; } /** * API Gateway CustomAuthorizer AuthResponse.PolicyDocument.Statement. - * http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html#api-gateway-custom-authorizer-output + * https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-policy-language-overview.html + * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html */ -export interface Statement { - Action: string | string[]; +export type Statement = BaseStatement & StatementAction & (StatementResource | StatementPrincipal); + +export interface BaseStatement { Effect: string; - Resource: string | string[]; + Sid?: string; + Condition?: ConditionBlock; } +export type PrincipalValue = { [key: string]: string | string[]; } | string | string[]; +export interface MaybeStatementPrincipal { + Principal?: PrincipalValue; + NotPrincipal?: PrincipalValue; +} +export interface MaybeStatementResource { + Resource?: string | string[]; + NotResource?: string | string[]; +} +export type StatementAction = { Action: string | string[] } | { NotAction: string | string[] }; +export type StatementResource = MaybeStatementPrincipal & ({ Resource: string | string[] } | { NotResource: string | string[] }); +export type StatementPrincipal = MaybeStatementResource & ({ Principal: PrincipalValue } | { NotPrincipal: PrincipalValue }); /** * API Gateway CustomAuthorizer AuthResponse.PolicyDocument.Statement. * http://docs.aws.amazon.com/apigateway/latest/developerguide/use-custom-authorizer.html#api-gateway-custom-authorizer-output @@ -529,6 +563,31 @@ export interface CloudFrontRequestEvent { export type CloudFrontResponseResult = undefined | null | CloudFrontResultResponse; +// Kinesis Streams +// https://docs.aws.amazon.com/lambda/latest/dg/eventsources.html#eventsources-kinesis-streams +export interface KinesisStreamRecordPayload { + approximateArrivalTimestamp: number; + data: string; + kinesisSchemaVersion: string; + partitionKey: string; + sequenceNumber: string; +} + +export interface KinesisStreamRecord { + awsRegion: string; + eventID: string; + eventName: string; + eventSource: string; + eventSourceARN: string; + eventVersion: string; + invokeIdentityArn: string; + kinesis: KinesisStreamRecordPayload; +} + +export interface KinesisStreamEvent { + Records: KinesisStreamRecord[]; +} + /** * AWS Lambda handler function. * http://docs.aws.amazon.com/lambda/latest/dg/nodejs-prog-model-handler.html @@ -536,8 +595,13 @@ export type CloudFrontResponseResult = undefined | null | CloudFrontResultRespon * @param event – event data. * @param context – runtime information of the Lambda function that is executing. * @param callback – optional callback to return information to the caller, otherwise return value is null. + * @return In the node8.10 runtime, a promise for the lambda result. */ -export type Handler = (event: TEvent, context: Context, callback: Callback) => void; +export type Handler = ( + event: TEvent, + context: Context, + callback: Callback, +) => void | Promise; /** * Optional callback parameter. @@ -595,7 +659,9 @@ export type CloudFrontRequestCallback = Callback; export type CloudFrontResponseHandler = Handler; export type CloudFrontResponseCallback = Callback; -// TODO: Kinesis (should be very close to DynamoDB stream?) +export type KinesisStreamHandler = Handler; + +// TODO: Kinesis Firehose export type CustomAuthorizerHandler = Handler; export type CustomAuthorizerCallback = Callback; diff --git a/types/axon/axon-tests.ts b/types/axon/axon-tests.ts new file mode 100644 index 0000000000..a7f2a95a87 --- /dev/null +++ b/types/axon/axon-tests.ts @@ -0,0 +1,173 @@ +import * as axon from 'axon'; +import { Socket as NetSocket } from 'net'; + +const PubEmitterSocket = axon.PubEmitterSocket; +const PubSocket = axon.PubSocket; +const RepSocket = axon.RepSocket; +const ReqSocket = axon.ReqSocket; +const Socket = axon.Socket; +const SubSocket = axon.SubSocket; + +const pubSocket = new PubSocket(); +const pubEmitterSocket = new PubEmitterSocket(); +const repSocket = new RepSocket(); +const reqSocket = new ReqSocket(); +const netSocket = new NetSocket(); +const socket = new Socket(); +const subSocket = new SubSocket(); + +// $ExpectType PubSocket +pubSocket.send('anything'); + +// $ExpectType PubSocket +pubSocket.send('anything', {w: 100, h: 200}); + +// $ExpectType PubSocket +pubEmitterSocket.send('anything'); + +// $ExpectType PubSocket +pubEmitterSocket.send('anything', {w: 100, h: 200}); + +// $ExpectType Socket +pubEmitterSocket.bind(3000); + +// $ExpectError +pubEmitterSocket.bind({a, b, c}); + +// $ExpectError +pubEmitterSocket.bind(); + +// $ExpectType Socket +pubEmitterSocket.connect(3000); + +// $ExpectError +pubEmitterSocket.connect({a, b, c}); + +// $ExpectError +pubEmitterSocket.connect(); + +// $ExpectType (args: Buffer | Buffer[]) => void +repSocket.onmessage(netSocket); + +// $ExpectError +repSocket.onmessage(); + +// $ExpectError +repSocket.onmessage(''); + +// $ExpectError +repSocket.onmessage(1); + +// $ExpectError +repSocket.onmessage({}); + +// $ExpectType string +reqSocket.id(); + +// $ExpectType (args: Buffer | Buffer[]) => void +reqSocket.onmessage(); + +// $ExpectType void +reqSocket.send('anything'); + +// $ExpectType void +reqSocket.send('anything', {w: 100, h: 200}); + +// $ExpectType Socket +socket.set('name', 'aaa'); + +// $ExpectError +socket.set(1, 'aaa'); + +// $ExpectError +socket.set({}, 'aaa'); + +// $ExpectError +socket.set('name'); + +// $ExpectType any +socket.get('name'); + +// $ExpectError +socket.get(1); + +// $ExpectError +socket.get({}); + +// $ExpectType Socket +socket.enable('name'); + +// $ExpectError +socket.enable(1); + +// $ExpectError +socket.enable({}); + +// $ExpectType Socket +socket.disable('name'); + +// $ExpectError +socket.disable(1); + +// $ExpectError +socket.disable({}); + +// $ExpectType boolean +socket.enabled('name'); + +// $ExpectError +socket.enabled(1); + +// $ExpectError +socket.enabled({}); + +// $ExpectType boolean +socket.disabled('name'); + +// $ExpectError +socket.disabled(1); + +// $ExpectError +socket.disabled({}); + +// $ExpectType boolean +subSocket.hasSubscriptions(); + +// $ExpectType boolean +subSocket.matches('name'); + +// $ExpectError +subSocket.matches(1); + +// $ExpectError +subSocket.matches({}); + +// $ExpectType RegExp +subSocket.subscribe(/some regex/); + +// $ExpectType RegExp +subSocket.subscribe('some string'); + +// $ExpectError +subSocket.subscribe(1); + +// $ExpectError +subSocket.subscribe({}); + +// $ExpectError +subSocket.subscribe(); + +// $ExpectType void +subSocket.unsubscribe(/some regex/); + +// $ExpectType void +subSocket.unsubscribe('some string'); + +// $ExpectError +subSocket.unsubscribe(1); + +// $ExpectError +subSocket.unsubscribe({}); + +// $ExpectError +subSocket.unsubscribe(); diff --git a/types/axon/index.d.ts b/types/axon/index.d.ts new file mode 100644 index 0000000000..2449b83eb4 --- /dev/null +++ b/types/axon/index.d.ts @@ -0,0 +1,134 @@ +// Type definitions for axon 2.0 +// Project: https://github.com/visionmedia/axon#readme +// Definitions by: Vilim StubiÄan +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import { EventEmitter } from "events"; +import { Socket as NetSocket } from "net"; + +export class Socket extends EventEmitter { + set(name: string, val: any): Socket; + + get(name: string): any; + + enable(name: string): Socket; + + disable(name: string): Socket; + + enabled(name: string): boolean; + + disabled(name: string): boolean; + + use(plugin: (socket: Socket) => any): Socket; + + pack(args: Buffer | Buffer[]): Buffer; + + closeSockets(): void; + + close(): void; + + closeServer(fn: () => any): void; + + address(): { port: number; family: string; address: string; string: string } | undefined; + + removeSocket(sock: Socket): void; + + addSocket(sock: Socket): void; + + handleErrors(sock: Socket): void; + + onmessage(sock: NetSocket): (args: Buffer | Buffer[]) => void; + + connect(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; + + onconnect(sock: Socket): void; + + bind(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; +} + +export class SubSocket extends Socket { + hasSubscriptions(): boolean; + + matches(topic: string): boolean; + + onmessage(sock: NetSocket): (args: Buffer | Buffer[]) => void; + + subscribe(re: RegExp | string): RegExp; + + unsubscribe(re: RegExp | string): void; + + clearSubscriptions(): void; + + /** + * @throws {Error} + */ + send(): void; +} + +export class SubEmitterSocket { + onmessage(): (args: Buffer | Buffer[]) => void; + + on(event: string, fn: (...args: any[]) => void): SubEmitterSocket; + + off(event: string): SubEmitterSocket; + + bind(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; + + connect(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; + + close(): void; +} + +export class PubSocket extends Socket { + send(...args: any[]): PubSocket; +} + +export class PubEmitterSocket { + sock: PubSocket; + + send(...args: any[]): PubSocket; + + bind(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; + + connect(port: ConnectionPort, host?: string | (() => void), fn?: () => void): Socket; + + close(): void; +} + +export class PushSocket extends Socket { + send(...args: any[]): void; + enqueue(msg: any): void; +} + +export class ReqSocket extends Socket { + id(): string; + + onmessage(): (args: Buffer | Buffer[]) => void; + + send(...args: any[]): void; +} + +export class RepSocket extends Socket { + onmessage(sock: NetSocket): (args: Buffer | Buffer[]) => void; +} + +export class PullSocket extends Socket { + /** + * @throws {Error} + */ + send(): void; +} + +export type ConnectionPort = + number + | string + | { protocol?: string, hostname?: string, pathname: string, port: string | number }; + +export function socket(type: string, options?: any): Socket; + +export const types: { + [propName: string]: { new(): PubEmitterSocket | SubEmitterSocket | PushSocket | PullSocket | PubSocket | SubSocket | ReqSocket | RepSocket | Socket }; +}; diff --git a/types/axon/tsconfig.json b/types/axon/tsconfig.json new file mode 100644 index 0000000000..2025639930 --- /dev/null +++ b/types/axon/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "axon-tests.ts" + ] +} diff --git a/types/axon/tslint.json b/types/axon/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/axon/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/babel-types/index.d.ts b/types/babel-types/index.d.ts index b1de338923..8c892a3ca0 100644 --- a/types/babel-types/index.d.ts +++ b/types/babel-types/index.d.ts @@ -46,7 +46,7 @@ export interface Node { export interface ArrayExpression extends Node { type: "ArrayExpression"; - elements: Array; + elements: Array; } export interface AssignmentExpression extends Node { @@ -1306,7 +1306,7 @@ export type TSEntityName = Identifier | TSQualifiedName; export type TSTypeElement = TSCallSignatureDeclaration | TSConstructSignatureDeclaration | TSIndexSignature | TSMethodSignature | TSPropertySignature; -export function arrayExpression(elements?: Array): ArrayExpression; +export function arrayExpression(elements?: Array): ArrayExpression; export function assignmentExpression(operator?: string, left?: LVal, right?: Expression): AssignmentExpression; export function binaryExpression( operator?: "+" | "-" | "/" | "%" | "*" | "**" | "&" | "|" | ">>" | ">>>" | "<<" | "^" | "==" | "===" | "!=" | "!==" | "in" | "instanceof" | ">" | "<" | ">=" | "<=", diff --git a/types/base64-arraybuffer/base64-arraybuffer-tests.ts b/types/base64-arraybuffer/base64-arraybuffer-tests.ts new file mode 100644 index 0000000000..3263f45afe --- /dev/null +++ b/types/base64-arraybuffer/base64-arraybuffer-tests.ts @@ -0,0 +1,4 @@ +import { encode, decode } from 'base64-arraybuffer'; + +encode(new Float32Array([1, 2, 3]).buffer); // $ExpectType string +decode('AACAPwAAAEAAAEBA'); // $ExpectType ArrayBuffer diff --git a/types/base64-arraybuffer/index.d.ts b/types/base64-arraybuffer/index.d.ts new file mode 100644 index 0000000000..8d8f5b8285 --- /dev/null +++ b/types/base64-arraybuffer/index.d.ts @@ -0,0 +1,7 @@ +// Type definitions for base64-arraybuffer 0.1 +// Project: https://github.com/niklasvh/base64-arraybuffer +// Definitions by: Ben Cook +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export function encode(arraybuffer: ArrayBuffer): string; +export function decode(base64: string): ArrayBuffer; diff --git a/types/base64-arraybuffer/tsconfig.json b/types/base64-arraybuffer/tsconfig.json new file mode 100644 index 0000000000..5d6ba6ac31 --- /dev/null +++ b/types/base64-arraybuffer/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "base64-arraybuffer-tests.ts" + ] +} diff --git a/types/base64-arraybuffer/tslint.json b/types/base64-arraybuffer/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/base64-arraybuffer/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/bcrypt/bcrypt-tests.ts b/types/bcrypt/bcrypt-tests.ts index 6824549a61..0d824f40a2 100644 --- a/types/bcrypt/bcrypt-tests.ts +++ b/types/bcrypt/bcrypt-tests.ts @@ -8,15 +8,24 @@ let error: Error; str = bcrypt.genSaltSync(); str = bcrypt.genSaltSync(num); +str = bcrypt.genSaltSync(num, str); bcrypt.genSalt(num, (err: Error, salt: string): void => { error = err; str = salt; }) .then(salt => str = salt) .catch(err => error = err); +bcrypt.genSalt(num, str, (err: Error, salt: string): void => { error = err; str = salt; }) + .then(salt => str = salt) + .catch(err => error = err); + bcrypt.genSalt(num) .then(salt => str = salt) .catch(err => error = err); +bcrypt.genSalt(num, str) + .then(salt => str = salt) + .catch(err => error = err); + bcrypt.genSalt((err: Error, salt: string): void => { error = err; str = salt; }) .then(salt => str = salt) .catch(err => error = err); diff --git a/types/bcrypt/index.d.ts b/types/bcrypt/index.d.ts index 98c7ba97fe..3cf57ca562 100644 --- a/types/bcrypt/index.d.ts +++ b/types/bcrypt/index.d.ts @@ -1,20 +1,32 @@ -// Type definitions for bcrypt 1.0 +// Type definitions for bcrypt 2.0 // Project: https://www.npmjs.org/package/bcrypt -// Definitions by: Peter Harris , Ayman Nedjmeddine +// Definitions by: Peter Harris +// Ayman Nedjmeddine +// David Stapleton // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /** - * @param rounds The cost of processing the data. Default 10. + * @param rounds The cost of processing the data. Default 10. + * @param minor The minor version of bcrypt to use. Either 'a' or 'b'. Default 'b'. */ -export declare function genSaltSync(rounds?: number): string; +export declare function genSaltSync(rounds?: number, minor?: string): string; /** * @param rounds The cost of processing the data. Default 10. * @param callback A callback to be fire once the sald has been generated. Uses eio making it asynchronous. * @return A promise to be either resolved with the generated salt or rejected with an Error */ -export declare function genSalt(rounds: number, callback?: (err: Error, salt: string) => void): Promise; +export declare function genSalt(rounds?: number, callback?: (err: Error, salt: string) => void): Promise; + +/** + * @param rounds The cost of processing the data. Default 10. + * @param minor The minor version of bcrypt to use. Either 'a' or 'b'. Default 'b'. + * @param callback A callback to be fire once the sald has been generated. Uses eio making it asynchronous. + * @return A promise to be either resolved with the generated salt or rejected with an Error + */ +export declare function genSalt(rounds?: number, minor?: string, callback?: (err: Error, salt: string) => void): Promise; + /** * @param callback A callback to be fire once the sald has been generated. Uses eio making it asynchronous. * @return A promise to be either resolved with the generated salt or rejected with an Error diff --git a/types/behavior3/behavior3-tests.ts b/types/behavior3/behavior3-tests.ts new file mode 100644 index 0000000000..b612209a09 --- /dev/null +++ b/types/behavior3/behavior3-tests.ts @@ -0,0 +1,73 @@ +import '../behavior3'; + +// Test decode +const blackboard = new b3.Blackboard(); +const behaviorTree = new b3.BehaviorTree(); +behaviorTree.load({ + version: "0.3.0", + scope: "tree", + id: "6bc03cd0-38ef-4a3e-8e08-54c412491525", + title: "A behavior tree", + description: "", + root: "607d29f5-9dbc-4cc4-8ebb-e57c4908d87b", + properties: {}, + nodes: { + "607d29f5-9dbc-4cc4-8ebb-e57c4908d87b": { + id: "607d29f5-9dbc-4cc4-8ebb-e57c4908d87b", + name: "Sequence", + title: "Sequence", + description: "", + properties: {}, + display: { + x: -216, + y: -36 + }, + children: [ + "09f04185-205b-40c0-8494-ffd53ffd0820", + "df7366f8-999a-4971-872c-cef57607f99f" + ] + }, + "df7366f8-999a-4971-872c-cef57607f99f": { + id: "df7366f8-999a-4971-872c-cef57607f99f", + name: "Runner", + title: "Runner", + description: "", + properties: {}, + display: { + x: -12, + y: -36 + } + }, + "e498e1a5-5295-43c3-8716-20dd6d3407f2": { + id: "e498e1a5-5295-43c3-8716-20dd6d3407f2", + name: "Succeeder", + title: "Succeeder", + description: "", + properties: {}, + display: { + x: 192, + y: -96 + } + }, + "09f04185-205b-40c0-8494-ffd53ffd0820": { + id: "09f04185-205b-40c0-8494-ffd53ffd0820", + name: "Inverter", + title: "Inverter", + description: "", + properties: {}, + display: { + x: -36, + y: -108 + }, + child: "e498e1a5-5295-43c3-8716-20dd6d3407f2" + } + }, + display: { + camera_x: 640, + camera_y: 324, + camera_z: 1, + x: -324, + y: -36 + } + }); +behaviorTree.tick(null, blackboard); diff --git a/types/behavior3/index.d.ts b/types/behavior3/index.d.ts new file mode 100644 index 0000000000..7cb3ad9deb --- /dev/null +++ b/types/behavior3/index.d.ts @@ -0,0 +1,908 @@ +// Type definitions for behavior3 0.2 +// Project: https://github.com/behavior3/behavior3js +// Definitions by: carry.wu +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * Behavior3JS + * =========== + * + * * * * + * + * **Behavior3JS** is a Behavior Tree library written in JavaScript. It + * provides structures and algorithms that assist you in the task of creating + * intelligent agents for your game or application. Check it out some features + * of Behavior3JS: + * + * - Based on the work of (Marzinotto et al., 2014), in which they propose a + * **formal**, **consistent** and **general** definition of Behavior Trees; + * - **Optimized to control multiple agents**: you can use a single behavior + * tree instance to handle hundreds of agents; + * - It was **designed to load and save trees in a JSON format**, in order to + * use, edit and test it in multiple environments, tools and languages; + * - A **cool visual editor** which you can access online; + * - Several **composite, decorator and action nodes** available within the + * library. You still can define your own nodes, including composites and + * decorators; + * - **Completely free**, the core module and the visual editor are all + * published under the MIT License, which means that you can use them for + * your open source and commercial projects; + * - **Lightweight**! + * + * Visit http://behavior3.com to know more! + * + * + * ## Core Classes and Functions + * + * This library include the following core structures... + * + * + * **Public:** + * + * - **BehaviorTree**: the structure that represents a Behavior Tree; + * - **Blackboard**: represents a "memory" in an agent and is required to to + * run a `BehaviorTree`; + * - **Composite**: base class for all composite nodes; + * - **Decorator**: base class for all decorator nodes; + * - **Action**: base class for all action nodes; + * - **Condition**: base class for all condition nodes; + * + * + * **Internal:** + * + * - **Tick**: used as container and tracking object through the tree during + * the tick signal; + * - **BaseNode**: the base class that provide all common node features; + * + * *Some classes are used internally on Behavior3JS, but you may need to access + * its functionalities eventually, specially the `Tick` object.* + * + * + * **Nodes:** + * + * - **Composite Nodes**: Sequence, Priority, MemSequence, MemPriority. + * - **Decorators**: Inverter, Limiter, MaxTime, Repeater, + * RepeaterUntilFailure, RepeaterUntilSuccess. + * - **Actions**: Succeeder, Failer, Error, Runner, Wait. + * + * ## The list of all constants in B3. + * + * NAME | VALUE + * ------------------- | ---------------------- + * VERSION | depends on the version + * | + * **Node State** | + * SUCCESS | 1 + * FAILURE | 2 + * RUNNING | 3 + * ERROR | 4 + * | + * **Node categories** | + * COMPOSITE | 'composite' + * DECORATOR | 'decorator' + * ACTION | 'action' + * CONDITION | 'condition' + * + */ +declare namespace b3 { + /** + * This function is used to create unique IDs for trees and nodes. + * + * (consult http://www.ietf.org/rfc/rfc4122.txt). + * + */ + function createUUID(): string; + + /** + * The BaseNode class is used as super class to all nodes in BehaviorJS. It + * comprises all common variables and methods that a node must have to + * execute. + * + * **IMPORTANT:** Do not inherit from this class, use `Composite`, + * `Decorator`, `Action` or `Condition`, instead. + * + * The attributes are specially designed to serialization of the node in a + * JSON format. In special, the `parameters` attribute can be set into the + * visual editor (thus, in the JSON file), and it will be used as parameter + * on the node initialization at `BehaviorTree.load`. + * + * BaseNode also provide 5 callback methods, which the node implementations + * can override. They are `enter`, `open`, `tick`, `close` and `exit`. See + * their documentation to know more. These callbacks are called inside the + * `_execute` method, which is called in the tree traversal. + * + */ + class BaseNode { + /** + * Initialization method. + */ + constructor({category, name, title, description, properties}?: {category?: string, name?: string, title?: string, description?: string, properties?: any}); + + /** + * This is the main method to propagate the tick signal to this node. This + * method calls all callbacks: `enter`, `open`, `tick`, `close`, and + * `exit`. It only opens a node if it is not already open. In the same + * way, this method only close a node if the node returned a status + * different of `RUNNING`. + * + */ + _execute(tick: Tick): number; + + /** + * Wrapper for enter method. + */ + _enter(tick: Tick): void; + + /** + * Wrapper for open method. + */ + _open(tick: Tick): void; + + /** + * Wrapper for tick method. + */ + _tick(tick: Tick): number; + + /** + * Wrapper for close method. + */ + _close(tick: Tick): void; + + /** + * Wrapper for exit method. + */ + _exit(tick: Tick): void; + + /** + * Enter method, override this to use. It is called every time a node is + * asked to execute, before the tick itself. + */ + enter(tick: Tick): void; + + /** + * Open method, override this to use. It is called only before the tick + * callback and only if the not isn't closed. + * + * Note: a node will be closed if it returned `RUNNING` in the tick. + * + */ + open(tick: Tick): void; + + /** + * Tick method, override this to use. This method must contain the real + * execution of node (perform a task, call children, etc.). It is called + * every time a node is asked to execute. + * + */ + tick(tick: Tick): void; + + /** + * Close method, override this to use. This method is called after the tick + * callback, and only if the tick return a state different from + * `RUNNING`. + * + */ + close(tick: Tick): void; + + /** + * Exit method, override this to use. Called every time in the end of the + * execution. + * + */ + exit(tick: Tick): void; + } + + /** + * Action is the base class for all action nodes. Thus, if you want to create + * new custom action nodes, you need to inherit from this class. For example, + * take a look at the Runner action: + * + * class Runner extends b3.Action { + * constructor(){ + * super({name: 'Runner'}); + * } + * tick(tick) { + * return b3.RUNNING; + * } + * }; + * + */ + class Action extends BaseNode { + /** + * Creates an instance of Action. + */ + constructor({name, title, properties}?: {name?: string, title?: string, properties?: any}); + } + + /** + * The BehaviorTree class, as the name implies, represents the Behavior Tree + * structure. + * + * There are two ways to construct a Behavior Tree: by manually setting the + * root node, or by loading it from a data structure (which can be loaded + * from a JSON). Both methods are shown in the examples below and better + * explained in the user guide. + * + * The tick method must be called periodically, in order to send the tick + * signal to all nodes in the tree, starting from the root. The method + * `BehaviorTree.tick` receives a target object and a blackboard as + * parameters. The target object can be anything: a game agent, a system, a + * DOM object, etc. This target is not used by any piece of Behavior3JS, + * i.e., the target object will only be used by custom nodes. + * + * The blackboard is obligatory and must be an instance of `Blackboard`. This + * requirement is necessary due to the fact that neither `BehaviorTree` or + * any node will store the execution variables in its own object (e.g., the + * BT does not store the target, information about opened nodes or number of + * times the tree was called). But because of this, you only need a single + * tree instance to control multiple (maybe hundreds) objects. + * + * Manual construction of a Behavior Tree + * -------------------------------------- + * + * var tree = new b3.BehaviorTree(); + * + * tree.root = new b3.Sequence({children:[ + * new b3.Priority({children:[ + * new MyCustomNode(), + * new MyCustomNode() + * ]}), + * ... + * ]}); + * + * + * Loading a Behavior Tree from data structure + * ------------------------------------------- + * + * var tree = new b3.BehaviorTree(); + * + * tree.load({ + * 'title' : 'Behavior Tree title' + * 'description' : 'My description' + * 'root' : 'node-id-1' + * 'nodes' : { + * 'node-id-1' : { + * 'name' : 'Priority', // this is the node type + * 'title' : 'Root Node', + * 'description' : 'Description', + * 'children' : ['node-id-2', 'node-id-3'], + * }, + * ... + * } + * }) + * + */ + class BehaviorTree { + /** + * Initialization method. + */ + constructor(); + + /** + * This method loads a Behavior Tree from a data structure, populating this + * object with the provided data. Notice that, the data structure must + * follow the format specified by Behavior3JS. Consult the guide to know + * more about this format. + * + * You probably want to use custom nodes in your BTs, thus, you need to + * provide the `names` object, in which this method can find the nodes by + * `names[NODE_NAME]`. This variable can be a namespace or a dictionary, + * as long as this method can find the node by its name, for example: + * + * //json + * ... + * 'node1': { + * 'name': MyCustomNode, + * 'title': ... + * } + * ... + * + * //code + * var bt = new b3.BehaviorTree(); + * bt.load(data, {'MyCustomNode':MyCustomNode}) + * + * + */ + load(data: any, names?: any): void; + + /** + * This method dump the current BT into a data structure. + * + * Note: This method does not record the current node parameters. Thus, + * it may not be compatible with load for now. + * + */ + dump(): any; + + /** + * Propagates the tick signal through the tree, starting from the root. + * + * This method receives a target object of any type (Object, Array, + * DOMElement, whatever) and a `Blackboard` instance. The target object has + * no use at all for all Behavior3JS components, but surely is important + * for custom nodes. The blackboard instance is used by the tree and nodes + * to store execution variables (e.g., last node running) and is obligatory + * to be a `Blackboard` instance (or an object with the same interface). + * + * Internally, this method creates a Tick object, which will store the + * target and the blackboard objects. + * + * Note: BehaviorTree stores a list of open nodes from last tick, if these + * nodes weren't called after the current tick, this method will close them + * automatically. + * + */ + tick(target: any, blackboard: Blackboard): string; + } + + /** + * The Blackboard is the memory structure required by `BehaviorTree` and its + * nodes. It only have 2 public methods: `set` and `get`. These methods works + * in 3 different contexts: global, per tree, and per node per tree. + * + * Suppose you have two different trees controlling a single object with a + * single blackboard, then: + * + * - In the global context, all nodes will access the stored information. + * - In per tree context, only nodes sharing the same tree share the stored + * information. + * - In per node per tree context, the information stored in the blackboard + * can only be accessed by the same node that wrote the data. + * + * The context is selected indirectly by the parameters provided to these + * methods, for example: + * + * // getting/setting variable in global context + * blackboard.set('testKey', 'value'); + * var value = blackboard.get('testKey'); + * + * // getting/setting variable in per tree context + * blackboard.set('testKey', 'value', tree.id); + * var value = blackboard.get('testKey', tree.id); + * + * // getting/setting variable in per node per tree context + * blackboard.set('testKey', 'value', tree.id, node.id); + * var value = blackboard.get('testKey', tree.id, node.id); + * + * Note: Internally, the blackboard store these memories in different + * objects, being the global on `_baseMemory`, the per tree on `_treeMemory` + * and the per node per tree dynamically create inside the per tree memory + * (it is accessed via `_treeMemory[id].nodeMemory`). Avoid to use these + * variables manually, use `get` and `set` instead. + * + */ + class Blackboard { + /** + * Initialization method. + */ + constructor(); + + /** + * Internal method to retrieve the tree context memory. If the memory does + * not exist, this method creates it. + * + */ + _getTreeMemory(treeScope: string): any; + + /** + * Internal method to retrieve the node context memory, given the tree + * memory. If the memory does not exist, this method creates is. + * + */ + _getNodeMemory(treeMemory: string, nodeScope: string): any; + + /** + * Internal method to retrieve the context memory. If treeScope and + * nodeScope are provided, this method returns the per node per tree + * memory. If only the treeScope is provided, it returns the per tree + * memory. If no parameter is provided, it returns the global memory. + * Notice that, if only nodeScope is provided, this method will still + * return the global memory. + * + */ + _getMemory(treeScope: string, nodeScope: string): any; + + /** + * Stores a value in the blackboard. If treeScope and nodeScope are + * provided, this method will save the value into the per node per tree + * memory. If only the treeScope is provided, it will save the value into + * the per tree memory. If no parameter is provided, this method will save + * the value into the global memory. Notice that, if only nodeScope is + * provided (but treeScope not), this method will still save the value into + * the global memory. + * + */ + set(key: string, value: string, treeScope: string, nodeScope: string): void; + + /** + * Retrieves a value in the blackboard. If treeScope and nodeScope are + * provided, this method will retrieve the value from the per node per tree + * memory. If only the treeScope is provided, it will retrieve the value + * from the per tree memory. If no parameter is provided, this method will + * retrieve from the global memory. If only nodeScope is provided (but + * treeScope not), this method will still try to retrieve from the global + * memory. + * + */ + get(key: string, treeScope: string, nodeScope: string): any; + } + + /** + * Composite is the base class for all composite nodes. Thus, if you want to + * create new custom composite nodes, you need to inherit from this class. + * + * When creating composite nodes, you will need to propagate the tick signal + * to the children nodes manually. To do that, override the `tick` method and + * call the `_execute` method on all nodes. For instance, take a look at how + * the Sequence node inherit this class and how it call its children: + * + * // Inherit from Composite, using the util function Class. + * class Sequence extends Composite { + * + * constructor(){ + * // Remember to set the name of the node. + * super({name: 'Sequence'}); + * } + * + * // Override the tick function + * tick(tick) { + * + * // Iterates over the children + * for (var i=0; i +bidirectionalMap.has("one"); // $ExpectType boolean +bidirectionalMap.hasValue(2); // $ExpectType boolean +bidirectionalMap.keys(); // $ExpectType IterableIterator +bidirectionalMap.values(); // $ExpectType IterableIterator diff --git a/types/bidirectional-map/index.d.ts b/types/bidirectional-map/index.d.ts new file mode 100644 index 0000000000..67662d3441 --- /dev/null +++ b/types/bidirectional-map/index.d.ts @@ -0,0 +1,22 @@ +// Type definitions for bidirectional-map 1.0 +// Project: https://github.com/educastellano/bidirectional-map +// Definitions by: Helen Anderson +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +export default class BiMap { + constructor(object?: { [i: string]: TValue }); + size: number; + + set(key: string, value: TValue): void; + get(key: string): TValue; + getKey(value: TValue): string; + clear(): void; + delete(key: string): void; + deleteValue(value: TValue): void; + entries(): IterableIterator<[string, TValue]>; + has(key: string): boolean; + hasValue(value: TValue): boolean; + keys(): IterableIterator; + values(): IterableIterator; +} diff --git a/types/bidirectional-map/tsconfig.json b/types/bidirectional-map/tsconfig.json new file mode 100644 index 0000000000..0c3b3a1cac --- /dev/null +++ b/types/bidirectional-map/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "bidirectional-map-tests.ts" + ] +} diff --git a/types/bidirectional-map/tslint.json b/types/bidirectional-map/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/bidirectional-map/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/big.js/index.d.ts b/types/big.js/index.d.ts index 405622f7ee..8b61c73d37 100644 --- a/types/big.js/index.d.ts +++ b/types/big.js/index.d.ts @@ -102,6 +102,12 @@ export interface BigConstructor { export interface Big { /** Returns a Big number whose value is the absolute value, i.e. the magnitude, of this Big number. */ abs(): Big; + /** + * Returns a Big number whose value is the value of this Big number plus n - alias for .plus(). + * + * @throws `NaN` if n is invalid. + */ + add(n: BigSource): Big; /** * Compare the values. * @@ -162,6 +168,12 @@ export interface Big { * @throws `NaN` if n is negative or otherwise invalid. */ mod(n: BigSource): Big; + /** + * Returns a Big number whose value is the value of this Big number times n - alias for .times(). + * + * @throws `NaN` if n is invalid. + */ + mul(n: BigSource): Big; /** * Returns a Big number whose value is the value of this Big number plus n. * @@ -196,6 +208,12 @@ export interface Big { * @throws `NaN` if this Big number is negative. */ sqrt(): Big; + /** + * Returns a Big number whose value is the value of this Big number minus n - alias for .minus(). + * + * @throws `NaN` if n is invalid. + */ + sub(n: BigSource): Big; /** * Returns a Big number whose value is the value of this Big number times n. * diff --git a/types/big.js/test/big.js-global-tests.ts b/types/big.js/test/big.js-global-tests.ts index 578391de7b..a57e748fbf 100644 --- a/types/big.js/test/big.js-global-tests.ts +++ b/types/big.js/test/big.js-global-tests.ts @@ -86,6 +86,7 @@ function minusTests() { 0.3 - 0.1; // 0.19999999999999998 const x = new Big(0.3); x.minus(0.1); // '0.2' + x.sub(0.1); // '0.2' } function modTests() { @@ -99,6 +100,7 @@ function plusTests() { const x = new Big(0.1); const y = x.plus(0.2); // '0.3' Big(0.7).plus(x).plus(y); // '1' + Big(0.7).add(x).add(y); // '1' } function powTests() { @@ -138,6 +140,7 @@ function timesTests() { const x = new Big(0.6); const y = x.times(3); // '1.8' Big('7e+500').times(y); // '1.26e+501' + Big('7e+500').mul(y); // '1.26e+501' } function toExponentialTests() { diff --git a/types/big.js/test/big.js-module-tests.ts b/types/big.js/test/big.js-module-tests.ts index 056d41727b..62e5ba491e 100644 --- a/types/big.js/test/big.js-module-tests.ts +++ b/types/big.js/test/big.js-module-tests.ts @@ -88,6 +88,7 @@ function minusTests() { 0.3 - 0.1; // 0.19999999999999998 const x = new Big(0.3); x.minus(0.1); // '0.2' + x.sub(0.1); // '0.2' } function modTests() { @@ -101,6 +102,7 @@ function plusTests() { const x = new Big(0.1); const y = x.plus(0.2); // '0.3' Big(0.7).plus(x).plus(y); // '1' + Big(0.7).add(x).add(y); // '1' } function powTests() { @@ -140,6 +142,7 @@ function timesTests() { const x = new Big(0.6); const y = x.times(3); // '1.8' Big('7e+500').times(y); // '1.26e+501' + Big('7e+500').mul(y); // '1.26e+501' } function toExponentialTests() { diff --git a/types/bl/index.d.ts b/types/bl/index.d.ts index 5d34052b80..8ad01671fd 100644 --- a/types/bl/index.d.ts +++ b/types/bl/index.d.ts @@ -11,7 +11,7 @@ import stream = require('stream'); declare class BufferList extends stream.Duplex { constructor(callback?: (err: Error, buffer: Buffer) => void); - append(buffer: Buffer): void; + append(buffer: Buffer | Buffer[] | BufferList | BufferList[] | string): void; get(index: number): number; slice(start?: number, end?: number): Buffer; copy(dest: Buffer, destStart?: number, srcStart?: number, srcEnd?: number): void; diff --git a/types/blocked/blocked-tests.ts b/types/blocked/blocked-tests.ts new file mode 100644 index 0000000000..f43eb82cba --- /dev/null +++ b/types/blocked/blocked-tests.ts @@ -0,0 +1,7 @@ +import * as blocked from 'blocked'; + +blocked((ms: number) => { + // todo: show warning +}, { + threshold: 10 +}); diff --git a/types/blocked/index.d.ts b/types/blocked/index.d.ts new file mode 100644 index 0000000000..5292011f23 --- /dev/null +++ b/types/blocked/index.d.ts @@ -0,0 +1,24 @@ +// Type definitions for blocked 1.2 +// Project: https://github.com/visionmedia/node-blocked#readme +// Definitions by: Jonas Lochmann +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +/*~ Note that ES6 modules cannot directly export callable functions. + *~ This file should be imported using the CommonJS-style: + *~ import x = require('someLibrary'); + *~ + *~ Refer to the documentation to understand common + *~ workarounds for this limitation of ES6 modules. + */ + +export = Blocked; + +declare function Blocked(callback: (ms: number) => void, options?: Blocked.Options): NodeJS.Timer; + +declare namespace Blocked { + interface Options { + threshold: number; // in milliseconds + } +} diff --git a/types/blocked/tsconfig.json b/types/blocked/tsconfig.json new file mode 100644 index 0000000000..3b110548b0 --- /dev/null +++ b/types/blocked/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": [ + "index.d.ts", + "blocked-tests.ts" + ] +} diff --git a/types/blocked/tslint.json b/types/blocked/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/blocked/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/bluebird-retry/bluebird-retry-tests.ts b/types/bluebird-retry/bluebird-retry-tests.ts index e9beaf5562..45a665c969 100644 --- a/types/bluebird-retry/bluebird-retry-tests.ts +++ b/types/bluebird-retry/bluebird-retry-tests.ts @@ -30,3 +30,10 @@ const options: retry.Options = { }; retry(logFail, options); + +function stopErrorExample() { + console.log('retrying\n'); + throw new retry.StopError('stop retrying'); +} + +retry(stopErrorExample); diff --git a/types/bluebird-retry/index.d.ts b/types/bluebird-retry/index.d.ts index 358c75936d..b7ba96495d 100644 --- a/types/bluebird-retry/index.d.ts +++ b/types/bluebird-retry/index.d.ts @@ -20,6 +20,8 @@ declare namespace retry { context?: any; args?: any; } + + class StopError extends Error {} } export = retry; diff --git a/types/body-parser-xml/body-parser-xml-tests.ts b/types/body-parser-xml/body-parser-xml-tests.ts new file mode 100644 index 0000000000..9aab34ecc7 --- /dev/null +++ b/types/body-parser-xml/body-parser-xml-tests.ts @@ -0,0 +1,4 @@ +import bodyParser = require('body-parser'); +import bodyParserXml = require('body-parser-xml'); + +bodyParserXml(bodyParser); diff --git a/types/body-parser-xml/index.d.ts b/types/body-parser-xml/index.d.ts new file mode 100644 index 0000000000..c5de21c062 --- /dev/null +++ b/types/body-parser-xml/index.d.ts @@ -0,0 +1,11 @@ +// Type definitions for body-parser-xml 1.1 +// Project: https://github.com/fiznool/body-parser-xml +// Definitions by: tbounsiar +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import { Request, RequestHandler, Response, NextFunction } from 'express'; + +declare function bodyParserXml(bodyParser: any): (req: Request, res: Response, next: NextFunction) => void; + +export = bodyParserXml; diff --git a/types/node-common-errors/tsconfig.json b/types/body-parser-xml/tsconfig.json similarity index 92% rename from types/node-common-errors/tsconfig.json rename to types/body-parser-xml/tsconfig.json index a862893b87..c597f3cb08 100644 --- a/types/node-common-errors/tsconfig.json +++ b/types/body-parser-xml/tsconfig.json @@ -18,6 +18,6 @@ }, "files": [ "index.d.ts", - "node-common-errors-tests.ts" + "body-parser-xml-tests.ts" ] } \ No newline at end of file diff --git a/types/body-parser-xml/tslint.json b/types/body-parser-xml/tslint.json new file mode 100644 index 0000000000..2750cc0197 --- /dev/null +++ b/types/body-parser-xml/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } \ No newline at end of file diff --git a/types/body-parser/body-parser-tests.ts b/types/body-parser/body-parser-tests.ts index 2f6a33ea72..89d905ead0 100644 --- a/types/body-parser/body-parser-tests.ts +++ b/types/body-parser/body-parser-tests.ts @@ -1,3 +1,4 @@ +import * as http from 'http'; import express = require('express'); import { json, @@ -13,6 +14,21 @@ app.use(raw()); app.use(text()); app.use(urlencoded()); +const jsonParser = app.use(json({ + inflate: true, + limit: '100kb', + type: 'application/*', + verify: ( + req: http.IncomingMessage, + res: http.ServerResponse, + buf: Buffer, + encoding: string + ) => { + return true; + } +})); +app.use(jsonParser); + // send any data, it should be parsed and printed app.all('/', (req, res, next) => { console.log(req.body); diff --git a/types/body-parser/index.d.ts b/types/body-parser/index.d.ts index b1485770a1..67774e2149 100644 --- a/types/body-parser/index.d.ts +++ b/types/body-parser/index.d.ts @@ -1,24 +1,30 @@ -// Type definitions for body-parser 1.16 +// Type definitions for body-parser 1.17 // Project: https://github.com/expressjs/body-parser -// Definitions by: Santi Albo , Vilic Vane , Jonathan Häberle , Gevik Babakhani , Tomasz Åaziuk +// Definitions by: Santi Albo +// Vilic Vane +// Jonathan Häberle +// Gevik Babakhani +// Tomasz Åaziuk +// Jason Walton // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 /// -import { Request, RequestHandler, Response } from 'express'; +import { NextHandleFunction } from 'connect'; +import * as http from 'http'; // for docs go to https://github.com/expressjs/body-parser/tree/1.16.0#body-parser // @deprecated -declare function bodyParser(options?: bodyParser.OptionsJson & bodyParser.OptionsText & bodyParser.OptionsUrlencoded): RequestHandler; +declare function bodyParser(options?: bodyParser.OptionsJson & bodyParser.OptionsText & bodyParser.OptionsUrlencoded): NextHandleFunction; declare namespace bodyParser { interface Options { inflate?: boolean; limit?: number | string; - type?: string | string[] | ((req: Request) => any); - verify?(req: Request, res: Response, buf: Buffer, encoding: string): void; + type?: string | string[] | ((req: http.IncomingMessage) => any); + verify?(req: http.IncomingMessage, res: http.ServerResponse, buf: Buffer, encoding: string): void; } interface OptionsJson extends Options { @@ -35,13 +41,13 @@ declare namespace bodyParser { parameterLimit?: number; } - function json(options?: OptionsJson): RequestHandler; + function json(options?: OptionsJson): NextHandleFunction; - function raw(options?: Options): RequestHandler; + function raw(options?: Options): NextHandleFunction; - function text(options?: OptionsText): RequestHandler; + function text(options?: OptionsText): NextHandleFunction; - function urlencoded(options?: OptionsUrlencoded): RequestHandler; + function urlencoded(options?: OptionsUrlencoded): NextHandleFunction; } export = bodyParser; diff --git a/types/bootstrap-datepicker/index.d.ts b/types/bootstrap-datepicker/index.d.ts index dfe358854e..b841fe07ab 100644 --- a/types/bootstrap-datepicker/index.d.ts +++ b/types/bootstrap-datepicker/index.d.ts @@ -10,7 +10,20 @@ type DatepickerEvents = "show"|"hide"|"clearDate"|"changeDate"|"changeMonth"|"ch type DatepickerViewModes = 0|"days"|1|"months"|2|"years"|3|"decades"|4|"centuries"|"millenium"; -type DatepickerOrientations = "auto"|"left top"|"left bottom"|"right top"|"right bottom"; +type DatepickerOrientations = + "auto" + | "left top" + | "left bottom" + | "right top" + | "right bottom" + | "top auto" + | "bottom auto" + | "auto left" + | "top left" + | "bottom left" + | "auto right" + | "top right" + | "bottom right" /** * All options that take a “Date†can handle a Date object; a String diff --git a/types/bootstrap/bootstrap-tests.ts b/types/bootstrap/bootstrap-tests.ts index 21286ad5f4..f0a353889c 100755 --- a/types/bootstrap/bootstrap-tests.ts +++ b/types/bootstrap/bootstrap-tests.ts @@ -43,10 +43,15 @@ $("#carousel").on("slide.bs.carousel", function(ev) { $("#carousel").carousel({ interval: 5000, keyboard: true, + slide: false, pause: "hover", wrap: true, }); +$("#carousel").carousel({ + slide: "prev", +}); + $("#carousel").carousel({ pause: false, }); @@ -96,6 +101,8 @@ $("#dropdown").dropdown({ offset: 10, flip: false, boundary: "window", + reference: "toggle", + display: "dynamic", }); $("#dropdown").dropdown({ @@ -114,6 +121,10 @@ $("#dropdown").dropdown({ boundary: document.body, }); +$("#dropdown").dropdown({ + reference: document.body, +}); + // -------------------------------------------------------------------------------------- // Modal // -------------------------------------------------------------------------------------- diff --git a/types/bootstrap/index.d.ts b/types/bootstrap/index.d.ts index 88bcc66af8..2f43555a73 100755 --- a/types/bootstrap/index.d.ts +++ b/types/bootstrap/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Bootstrap 4.0 +// Type definitions for Bootstrap 4.1 // Project: https://github.com/twbs/bootstrap/ // Definitions by: denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -55,6 +55,14 @@ export interface CarouselOption { */ keyboard?: boolean; + /** + * Use to easily control the position of the carousel. It accepts the keywords prev or next, which alters the slide position + * relative to its current position. Alternatively, use `data-slide-to` to pass a raw slide index to the carousel. + * + * @default false + */ + slide?: "next" | "prev" | false; + /** * If set to "hover", pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave. * If set to false, hovering over the carousel won't pause it. @@ -116,6 +124,21 @@ export interface DropdownOption { * @default "scrollParent" */ boundary?: Popper.Boundary | HTMLElement; + + /** + * Reference element of the dropdown menu. Accepts the values of 'toggle', 'parent', or an HTMLElement reference. + * For more information refer to Popper.js's referenceObject docs. + * + * @default "toggle" + */ + reference?: "toggle" | "parent" | HTMLElement; + + /** + * By default, we use Popper.js for dynamic positioning. Disable this with 'static'. + * + * @default "dynamic" + */ + display?: "dynamic" | "static"; } export interface ModalOption { @@ -154,6 +177,8 @@ export interface PopoverOption extends TooltipOption { * Default content value if data-content attribute isn't present. * If a function is given, it will be called with its this reference * set to the element that the popover is attached to. + * + * @default "" */ content?: string | Element | ((this: Element) => string | Element); } @@ -226,7 +251,7 @@ export interface TooltipOption { * the tooltip or popover DOM node as its first argument and the triggering element DOM node as its second. * The this context is set to the tooltip or popover instance. * - * @default "top" + * @default tooltip: "top", popover: "right" */ placement?: Placement | ((this: TooltipInstance, node: HTMLElement, trigger: Element) => Placement); diff --git a/types/browser-sync/browser-sync-tests.ts b/types/browser-sync/browser-sync-tests.ts index bcd829367a..c63cb0c862 100644 --- a/types/browser-sync/browser-sync-tests.ts +++ b/types/browser-sync/browser-sync-tests.ts @@ -8,11 +8,98 @@ import browserSync = require("browser-sync"); })(); browserSync({ - server: { - baseDir: "./" + ui: true +}); + +browserSync({ + ui: { + port: 9000, + weinre: { + port: 9001 + } } }); +browserSync({ + files: "app/css/style.css" +}); + +browserSync({ + files: [ + "app/css/style.css", + "app/js/*.js" + ] +}); + +browserSync({ + files: [ + "app/css/style.css", + "!app/js/*.js" + ] +}); + +browserSync({ + files: [ + "wp-content/themes/**/*.css", + { + match: ["wp-content/themes/**/*.css"], + fn: function (event, file) { + /** Custom event handler **/ + } + } + ] +}); + +browserSync({ + watchEvents: [ + "change", + "add", + "unlink", + "addDir", + "unlinkDir" + ] +}); + +browserSync({ + watch: true +}); + +browserSync({ + ignore: [ + "app/js/*.js" + ] +}); + +browserSync({ + single: true +}); + +browserSync({ + watchOptions: { + ignoreInitial: true, + ignored: '*.txt' + }, + files: ['./app'] +}); + +browserSync({ + files: [ + { + match: ["wp-content/themes/**/*.php"], + fn: function (event, file) { + /** Custom event handler **/ + }, + options: { + ignored: '*.txt' + } + } + ] +}); + +browserSync({ + server: "app" +}); + // multiple base directory browserSync({ server: { @@ -20,6 +107,39 @@ browserSync({ } }); +browserSync({ + server: true +}); + +browserSync({ + server: { + baseDir: "./" + } +}); + +browserSync({ + server: { + baseDir: "./", + index: "index.htm" + } +}); + +browserSync({ + server: { + baseDir: "./", + directory: true + } +}); + +browserSync({ + server: { + baseDir: "app", + serveStaticOptions: { + extensions: ["html"] + } + } +}); + browserSync({ proxy: "yourlocal.dev" }); @@ -27,8 +147,8 @@ browserSync({ browserSync({ proxy: { target: "http://yourlocal.dev", - proxyReq: function(proxyReq) { - console.log(proxyReq); + proxyReq: function (proxyReq) { + console.log(proxyReq); } } }); @@ -37,7 +157,7 @@ browserSync({ proxy: { target: "http://yourlocal.dev", proxyReq: [ - function(proxyReq) { + function (proxyReq) { console.log(proxyReq); } ] @@ -47,8 +167,8 @@ browserSync({ browserSync({ proxy: { target: "http://yourlocal.dev", - proxyRes: function(proxyRes, req, res) { - console.log(proxyRes); + proxyRes: function (proxyResponse, req, res) { + console.log(proxyResponse); } } }); @@ -57,13 +177,157 @@ browserSync({ proxy: { target: "http://yourlocal.dev", proxyRes: [ - function(proxyRes, req, res) { - console.log(proxyRes); + function (proxyResponse, req, res) { + console.log(proxyResponse); } ] } }); +browserSync({ + proxy: { + target: "http://yourlocal.dev", + proxyRes: function (res) { + console.log(res); + } + } +}); + +browserSync({ + proxy: { + target: "http://yourlocal.dev", + proxyRes: [ + function (res) { + console.log(res); + } + ] + } +}); + +browserSync({ + proxy: "https://yourlocal.dev", + https: { + key: "./path/to/the/key/file.key", + cert: "./path/to/the/cert/file.cer" + } +}); + +browserSync({ + port: 3000 +}); + +browserSync({ + proxy: "http://yourlocal.dev", + serveStatic: ['.', './app/css'] +}); + +browserSync({ + proxy: "http://yourlocal.dev", + serveStatic: [{ + route: '/assets', + dir: 'tmp' + }] +}); + +browserSync({ + proxy: "http://yourlocal.dev", + serveStatic: [{ + route: ['/assets', '/content'], + dir: 'tmp' + }] +}); + +browserSync({ + proxy: "http://yourlocal.dev", + serveStatic: [{ + route: '/assets', + dir: ['./tmp', './app'] + }] +}); + +browserSync({ + serveStatic: ['.', './app', './temp'], + serveStaticOptions: { + extensions: ['html'] // pretty urls + } +}); + +browserSync({ + https: true +}); + +browserSync({ + server: "./app", + https: true +}); + +browserSync({ + server: "./app", + https: { + key: "./path/to/the/key/file.key", + cert: "./path/to/the/cert/file.cer" + } +}); + +browserSync({ + httpModule: "http2" +}); + +browserSync({ + ghostMode: { + clicks: true, + scroll: true, + forms: { + inputs: true, + submit: true, + toggles: true + } + }, + proxy: "https://yourlocal.dev" +}); + +/** + * Not testing a bunch because they are either only string or boolean types. + * ....Also just got lazy and tired of writing the simple ones. + */ + +browserSync({ + snippetOptions: { + + // Ignore all HTML files within the templates folder + blacklist: [ + "templates/*.html" + ], + // Provide a custom Regex for inserting the snippet. + rule: { + match: /<\/body>/i, + fn: function (snippet, match) { + return snippet + match; + } + } + } +}); + +browserSync({ + rewriteRules: [ + { + match: /Browsersync/g, + fn: function (req, res, match) { + return 'kittenz'; + } + } + ] +}); + +browserSync({ + rewriteRules: [ + { + match: /(cats|kitten[sz]) are mediocre/g, + replace: "$1 are excellent" + } + ] +}); + var config = { server: { baseDir: "./" @@ -84,13 +348,13 @@ browserSync(config, function (err, bs) { browserSync.reload(); // single file -browserSync.reload( "styles.css" ); +browserSync.reload("styles.css"); // multiple files -browserSync.reload( ["styles.css", "ie.css"] ); +browserSync.reload(["styles.css", "ie.css"]); // streams support -browserSync.reload( { stream: true } ); +browserSync.reload({ stream: true }); browserSync.notify("Compiling, please wait!"); @@ -143,19 +407,19 @@ browser.exit(); browser.stream(); // -- "once" option. -browser.stream({once: true}); +browser.stream({ once: true }); // -- "match" option (string). -browser.stream({match: "**/*.js"}); +browser.stream({ match: "**/*.js" }); // -- "match" option (RegExp). -browser.stream({match: /\.js$/}); +browser.stream({ match: /\.js$/ }); // -- "match" option (function). -browser.stream({match: (testString) => true}); +browser.stream({ match: (testString) => true }); // -- "match" option (array). -browser.stream({match: ["**/*.js", /\.js$/, (testString) => true]}); +browser.stream({ match: ["**/*.js", /\.js$/, (testString) => true] }); // -- Both options. -browser.stream({once: true, match: ["**/*.js", /\.js$/, (testString) => true]}); +browser.stream({ once: true, match: ["**/*.js", /\.js$/, (testString) => true] }); diff --git a/types/browser-sync/index.d.ts b/types/browser-sync/index.d.ts index b22054c367..de0a457266 100644 --- a/types/browser-sync/index.d.ts +++ b/types/browser-sync/index.d.ts @@ -1,16 +1,21 @@ // Type definitions for browser-sync // Project: http://www.browsersync.io/ -// Definitions by: Asana , Joe Skeen +// Definitions by: Asana , +// Joe Skeen // Thomas "Thasmo" Deinhamer +// Kiyotoshi Ichikawa // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 /// /// +/// import * as chokidar from "chokidar"; import * as fs from "fs"; import * as http from "http"; import * as mm from "micromatch"; +import { ServeStaticOptions } from "serve-static"; declare namespace browserSync { interface Options { @@ -20,7 +25,7 @@ declare namespace browserSync { * * port - Default: 3001 * weinre.port - Default: 8080 - * Note: requires at least version 2.0.0 + * Note: Requires at least version 2.0.0. */ ui?: UIOptions | boolean; /** @@ -29,46 +34,81 @@ declare namespace browserSync { * patterns. * Default: false */ - files?: string | (string | FileCallback)[]; + files?: string | (string | FileCallback | object)[]; + /** + * Specify which file events to respond to. + * Available events: `add`, `change`, `unlink`, `addDir`, `unlinkDir` + */ + watchEvents?: WatchEvents | string[]; + /** + * Watch files automatically. + */ + watch?: boolean; + /** + * Patterns for any watchers to ignore. + * Anything provided here will end up inside 'watchOptions.ignored'. + */ + ignore?: string[]; + /** + * Serve an index.html file for all non-asset routes. + * Useful when using client-routers. + */ + single?: boolean; /** * File watching options that get passed along to Chokidar. Check their docs for available options * Default: undefined - * Note: requires at least version 2.6.0 + * Note: Requires at least version 2.6.0. */ watchOptions?: chokidar.WatchOptions; /** * Use the built-in static server for basic HTML/JS/CSS websites. * Default: false */ - server?: ServerOptions; + server?: string | boolean | string[] | ServerOptions; /** * Proxy an EXISTING vhost. Browsersync will wrap your vhost with a proxy URL to view your site. + * Passing only a URL as a string equates to passing only target property of ProxyOptions type. * target - Default: undefined * ws - Default: undefined * middleware - Default: undefined * reqHeaders - Default: undefined - * proxyRes - Default: undefined + * proxyRes - Default: undefined (http.ServerResponse if expecting single parameter) * proxyReq - Default: undefined */ - proxy?: string | boolean | ProxyOptions; + proxy?: string | ProxyOptions; /** * Use a specific port (instead of the one auto-detected by Browsersync) * Default: 3000 */ port?: number; + /** + * Functions or actual plugins used as middleware. + */ + middleware?: MiddlewareHandler | PerRouteMiddleware | (MiddlewareHandler | PerRouteMiddleware)[]; /** * Add additional directories from which static files should be served. * Should only be used in proxy or snippet mode. * Default: [] - * Note: requires at least version 2.8.0 + * Note: Requires at least version 2.8.0. */ - serveStatic?: string[]; + serveStatic?: StaticOptions[] | string[]; + /** + * Options that are passed to the serve-static middleware when you use the + * string[] syntax: eg: `serveStatic: ['./app']`. + * Please see [serve-static](https://github.com/expressjs/serve-static) for details. + */ + serveStaticOptions?: ServeStaticOptions; /** * Enable https for localhost development. - * Note - this is not needed for proxy option as it will be inferred from your target url. - * Note: requires at least version 1.3.0 + * Note: This may not be needed for proxy option as it will try to infer from your target url. + * Note: If privacy error is encountered please see HttpsOptions below, setting those will resolve. + * Note: Requires at least version 1.3.0. */ - https?: boolean; + https?: boolean | HttpsOptions; + /** + * Override http module to allow using 3rd party server modules (such as http2). + */ + httpModule?: string; /** * Clicks, Scrolls & Form inputs on any device will be mirrored to all others. * clicks - Default: true @@ -80,11 +120,11 @@ declare namespace browserSync { * Can be either "info", "debug", "warn", or "silent" * Default: info */ - logLevel?: string; + logLevel?: LogLevel; /** * Change the console logging prefix. Useful if you're creating your own project based on Browsersync * Default: BS - * Note: requires at least version 1.5.1 + * Note: Requires at least version 1.5.1. */ logPrefix?: string; /** @@ -100,19 +140,19 @@ declare namespace browserSync { /** * Log the snippet to the console when you're in snippet mode (no proxy/server) * Default: true - * Note: requires at least version 1.5.2 + * Note: Requires at least version 1.5.2. */ logSnippet?: boolean; /** * You can control how the snippet is injected onto each page via a custom regex + function. * You can also provide patterns for certain urls that should be ignored from the snippet injection. - * Note: requires at least version 2.0.0 + * Note: Requires at least version 2.0.0. */ snippetOptions?: SnippetOptions; /** * Add additional HTML rewriting rules. * Default: false - * Note: requires at least version 2.4.0 + * Note: Requires at least version 2.4.0. */ rewriteRules?: boolean | RewriteRules[]; /** @@ -130,7 +170,7 @@ declare namespace browserSync { * Decide which URL to open automatically when Browsersync starts. Defaults to "local" if none set. * Can be true, local, external, ui, ui-external, tunnel or false */ - open?: string | boolean; + open?: OpenOptions | boolean; /** * The browser(s) to open * Default: default @@ -139,7 +179,7 @@ declare namespace browserSync { /** * Add HTTP access control (CORS) headers to assets served by Browsersync. * Default: false - * Note: requires at least version 2.16.0 + * Note: Requires at least version 2.16.0. */ cors?: boolean; /** @@ -177,12 +217,12 @@ declare namespace browserSync { /** * Sync the scroll position of any element on the page. Add any amount of CSS selectors * Default: [] - * Note: requires at least version 2.9.0 + * Note: Requires at least version 2.9.0. */ scrollElements?: string[]; /** * Default: [] - * Note: requires at least version 2.9.0 + * Note: Requires at least version 2.9.0. * Sync the scroll position of any element on the page - where any scrolled element will cause * all others to match scroll position. This is helpful when a breakpoint alters which element * is actually scrolling @@ -197,13 +237,18 @@ declare namespace browserSync { /** * Restrict the frequency in which browser:reload events can be emitted to connected clients * Default: 0 - * Note: requires at least version 2.6.0 + * Note: Requires at least version 2.6.0. */ reloadDebounce?: number; + /** + * Emit only the first event during sequential time windows of a specified duration. + * Note: Requires at least version 2.13.0. + */ + reloadThrottle?: number; /** * User provided plugins * Default: [] - * Note: requires at least version 2.6.0 + * Note: Requires at least version 2.6.0. */ plugins?: any[]; /** @@ -224,6 +269,10 @@ declare namespace browserSync { * Override host detection if you know the correct IP to use */ host?: string; + /** + * Support environments where dynamic hostnames are not required (ie: electron). + */ + localOnly?: boolean; /** * Send file-change events to the browser * Default: true @@ -234,10 +283,16 @@ declare namespace browserSync { * Default: true */ timestamps?: boolean; + /** + * ¯\_(ツ)_/¯ + * Best guess, when ghostMode (or SocketIO?) is setup the events + * listed here will be emitted and able to hook into. + */ + clientEvents?: string[]; /** * Alter the script path for complete control over where the Browsersync Javascript is served * from. Whatever you return from this function will be used as the script path. - * Note: requires at least version 1.5.0 + * Note: Requires at least version 1.5.0. */ scriptPath?: (path: string) => string; /** @@ -248,12 +303,29 @@ declare namespace browserSync { * domain - Default: undefined * port - Default: undefined * clients.heartbeatTimeout - Default: 5000 - * Note: requires at least version 1.6.2 + * Note: Requires at least version 1.6.2. */ socket?: SocketOptions; - middleware?: MiddlewareHandler | PerRouteMiddleware | (MiddlewareHandler | PerRouteMiddleware)[]; + /** + * ¯\_(ツ)_/¯ + */ + tagNames?: TagNamesOptions; + /** + * ¯\_(ツ)_/¯ + */ + injectFileTypes?: string[]; + /** + * ¯\_(ツ)_/¯ + */ + excludeFileTypes?: string[]; } + type WatchEvents = "add" | "change" | "unlink" | "addDir" | "unlinkDir"; + + type LogLevel = "info" | "debug" | "warn" | "silent"; + + type OpenOptions = "local" | "external" | "ui" | "ui-external" | "tunnel"; + interface Hash { [path: string]: T; } @@ -287,22 +359,39 @@ declare namespace browserSync { routes?: Hash; /** configure custom middleware */ middleware?: (MiddlewareHandler | PerRouteMiddleware)[]; + serveStaticOptions?: ServeStaticOptions; } interface ProxyOptions { target?: string; middleware?: MiddlewareHandler; ws?: boolean; - reqHeaders?: (config: any) => Hash; - proxyRes?: ((res: http.ServerResponse, req: http.IncomingMessage, next: Function) => any)[] | ((res: http.ServerResponse, req: http.IncomingMessage, next: Function) => any); - proxyReq?: ((res: http.ServerRequest) => any)[] | ((res: http.ServerRequest) => any); + reqHeaders?: (config: object) => Hash; + proxyRes?: ProxyResponseMiddleware | ProxyResponseMiddleware[]; + proxyReq?: ((res: http.ServerRequest) => void)[] | ((res: http.ServerRequest) => void); + error?: (err: NodeJS.ErrnoException, req: http.IncomingMessage, res: http.ServerResponse) => void; + } + + interface ProxyResponseMiddleware { + (proxyRes: http.ServerResponse | http.IncomingMessage, res: http.ServerResponse, req: http.IncomingMessage): void; + } + + interface HttpsOptions { + key?: string; + cert?: string; + } + + interface StaticOptions { + route: string | string[], + dir: string | string[] } interface MiddlewareHandler { - (req: http.IncomingMessage, res: http.ServerResponse, next: Function): any; + (req: http.IncomingMessage, res: http.ServerResponse, next: () => void): any; } interface PerRouteMiddleware { + id?: string; route: string; handle: MiddlewareHandler; } @@ -310,12 +399,23 @@ declare namespace browserSync { interface GhostOptions { clicks?: boolean; scroll?: boolean; - forms?: boolean; + forms?: FormsOptions | boolean; + } + + interface FormsOptions { + inputs: boolean, + submit: boolean, + toggles: boolean } interface SnippetOptions { - ignorePaths?: string; - rule?: { match?: RegExp; fn?: (snippet: string, match: string) => any }; + async?: boolean; + whitelist?: string[], + blacklist?: string[], + rule?: { + match?: RegExp; + fn?: (snippet: string, match: string) => any + }; } interface SocketOptions { @@ -327,9 +427,22 @@ declare namespace browserSync { clients?: { heartbeatTimeout?: number; }; } + interface TagNamesOptions { + less?: string; + scss?: string; + css?: string; + jpg?: string; + jpeg?: string; + png?: string; + svg?: string; + gif?: string; + js?: string; + } + interface RewriteRules { match: RegExp; - fn: (match: string) => string; + replace?: string; + fn?: (req: http.IncomingMessage, res: http.ServerResponse, match: string) => string; } interface StreamOptions { @@ -342,7 +455,7 @@ declare namespace browserSync { * Start the Browsersync service. This will launch a server, proxy or start the snippet mode * depending on your use-case. */ - (config?: Options, callback?: (err: Error, bs: Object) => any): BrowserSyncInstance; + (config?: Options, callback?: (err: Error, bs: object) => any): BrowserSyncInstance; /** * Create a Browsersync instance * @param name an identifier that can used for retrieval later @@ -367,7 +480,7 @@ declare namespace browserSync { * Start the Browsersync service. This will launch a server, proxy or start the snippet mode * depending on your use-case. */ - init(config?: Options, callback?: (err: Error, bs: Object) => any): BrowserSyncInstance; + init(config?: Options, callback?: (err: Error, bs: object) => any): BrowserSyncInstance; /** * Reload the browser * The reload method will inform all browsers about changed files and will either cause the browser diff --git a/types/bson/bson-tests.ts b/types/bson/bson-tests.ts index ebdd8a19c3..b3173053c8 100644 --- a/types/bson/bson-tests.ts +++ b/types/bson/bson-tests.ts @@ -6,7 +6,7 @@ bson.ObjectID.cacheHexString = true let BSON = new bson.BSON(); let Long = bson.Long; -let doc = {long: Long.fromNumber(100)} +let doc = { long: Long.fromNumber(100) } // Serialize a document let data = BSON.serialize(doc, false, true, false); @@ -19,3 +19,10 @@ console.log("doc_2:", doc_2); BSON = new bson.BSON(); data = BSON.serialize(doc); doc_2 = BSON.deserialize(data); + + +// Calculate Object Size +BSON = new bson.BSON(); +console.log("Calculated Object size - no options object:", BSON.calculateObjectSize(doc)); +console.log("Calculated Object size - empty options object:", BSON.calculateObjectSize(doc, {})); +console.log("Calculated Object size - custom options object:", BSON.calculateObjectSize(doc, { ignoreUndefined: false, serializeFunctions: true })); diff --git a/types/bson/index.d.ts b/types/bson/index.d.ts index 24372ff0f5..3b0feb0113 100644 --- a/types/bson/index.d.ts +++ b/types/bson/index.d.ts @@ -16,6 +16,14 @@ export interface DeserializeOptions { /** {Boolean, default:false}, deserialize Binary data directly into node.js Buffer object. */ promoteBuffers?: boolean; } + +export interface CalculateObjectSizeOptions { + /** {Boolean, default:false}, serialize the javascript functions */ + serializeFunctions?: boolean; + /** {Boolean, default:true}, ignore undefined fields. */ + ignoreUndefined?: boolean; +} + export class BSON { /** * @param {Object} object the Javascript object to serialize. @@ -26,6 +34,14 @@ export class BSON { */ serialize(object: any, checkKeys?: boolean, asBuffer?: boolean, serializeFunctions?: boolean): Buffer; deserialize(buffer: Buffer, options?: DeserializeOptions, isArray?: boolean): any; + /** + * Calculate the bson size for a passed in Javascript object. + * + * @param {Object} object the Javascript object to calculate the BSON byte size for. + * @param {CalculateObjectSizeOptions} Options + * @return {Number} returns the number of bytes the BSON object will take up. + */ + calculateObjectSize(object: any, options?: CalculateObjectSizeOptions): number; } export class Binary { diff --git a/types/btoa/btoa-tests.ts b/types/btoa/btoa-tests.ts new file mode 100644 index 0000000000..d09cdad23a --- /dev/null +++ b/types/btoa/btoa-tests.ts @@ -0,0 +1,3 @@ +import btoa from 'btoa'; + +btoa('foo'); diff --git a/types/btoa/index.d.ts b/types/btoa/index.d.ts new file mode 100644 index 0000000000..cc311ed836 --- /dev/null +++ b/types/btoa/index.d.ts @@ -0,0 +1,7 @@ +// Type definitions for btoa 1.2 +// Project: https://git.coolaj86.com/coolaj86/btoa.js +// Definitions by: John Wright +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +export default function(str: string): string; diff --git a/types/btoa/tsconfig.json b/types/btoa/tsconfig.json new file mode 100644 index 0000000000..da4e373e68 --- /dev/null +++ b/types/btoa/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "lib": ["es6"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "btoa-tests.ts" + ] +} diff --git a/types/btoa/tslint.json b/types/btoa/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/btoa/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/c3/c3-tests.ts b/types/c3/c3-tests.ts index 7ac2f0ccd8..f2e630cd09 100644 --- a/types/c3/c3-tests.ts +++ b/types/c3/c3-tests.ts @@ -1798,6 +1798,26 @@ function legend_custom() { }); } +function legend_tiles() { + const chart = c3.generate({ + data: { + columns: [ + ["sample", 30, 200, 100, 400, 150, 250] + ] + }, + legend: { + // amount of padding to put between each legend element + padding: 5, + // define custom height and width for the legend item tile + item: { + tile: { + width: 15, + height: 2 + } + } + }}); +} + ///////////////////// // Tooltip Tests ///////////////////// diff --git a/types/c3/index.d.ts b/types/c3/index.d.ts index a1dfaaf8f0..6c466458e3 100644 --- a/types/c3/index.d.ts +++ b/types/c3/index.d.ts @@ -1,9 +1,10 @@ -// Type definitions for C3js 0.5 +// Type definitions for C3js 0.6 // Project: http://c3js.org/ // Definitions by: Marc Climent // Gerin Jacob // Bernd Hacker // Dzmitry Shyndzin +// Tim Niemueller // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -700,6 +701,10 @@ export interface LegendOptions { y?: number; step?: number; }; + /** + * Padding between legend elements. + */ + padding?: number; item?: { /** @@ -714,6 +719,19 @@ export interface LegendOptions { * Set mouseout event handler to the legend item. */ onmouseout?(id: any): void; + /** + * Tile settings for legend color display. + */ + tile?: { + /** + * Tile width. + */ + width?: number; + /** + * Tile height + */ + height?: number; + } }; } diff --git a/types/cassandra-driver/index.d.ts b/types/cassandra-driver/index.d.ts index 5c0578ccf2..33a9f5988f 100644 --- a/types/cassandra-driver/index.d.ts +++ b/types/cassandra-driver/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for cassandra-driver v3.2.2 +// Type definitions for cassandra-driver v3.4.1 // Project: https://github.com/datastax/nodejs-driver // Definitions by: Marc Fisher +// Christian D // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -115,7 +116,11 @@ export namespace policies { interface RetryPolicyStatic { new (): RetryPolicy; - retryDecision: any; + retryDecision: { + rethrow: number, + retry: number, + ignore: number + }; } interface RetryPolicy { @@ -126,15 +131,55 @@ export namespace policies { retryResult(): { decision: retryDecision, consistency: types.consistencies, useCurrentHost: boolean }; } } + + namespace speculativeExecution { + let NoSpeculativeExecutionPolicy: NoSpeculativeExecutionPolicyStatic + + interface SpeculativeExecutionPolicy { + init(client: Client): void; + newPlan(keyspace: string, queryInfo: string | Array): { + nextExecution: Function + } + } + + interface NoSpeculativeExecutionPolicyStatic { + new (): NoSpeculativeExecutionPolicy + } + + interface NoSpeculativeExecutionPolicy extends SpeculativeExecutionPolicy { } + + interface ConstantSpeculativeExecutionPolicyStatic { + new (delay: number, maxSpeculativeExecutions: number): ConstantSpeculativeExecutionPolicy + } + + interface ConstantSpeculativeExecutionPolicy extends SpeculativeExecutionPolicy { } + } + + namespace timestampGeneration { + let MonotonicTimestampGenerator: MonotonicTimestampGeneratorStatic + + interface TimestampGenerator { + next(client: Client): null | number | _Long + } + + interface MonotonicTimestampGeneratorStatic { + new (warningThreshold?: number, minLogInterval?: number): MonotonicTimestampGeneratorStatic + } + + interface MonotonicTimestampGenerator extends TimestampGenerator { + getDate(): number + } + } } export namespace types { let BigDecimal: BigDecimalStatic; + let Duration: DurationStatic; + let Long: _Long; let InetAddress: InetAddressStatic; let Integer: IntegerStatic; let LocalDate: LocalDateStatic; let LocalTime: LocalTimeStatic; - let Long: _Long; let ResultSet: ResultSetStatic; // let ResultStream: ResultStreamStatic; let Row: RowStatic; @@ -221,6 +266,19 @@ export namespace types { toJSON(): string; } + interface DurationStatic { + new (month: number, days: number, nanoseconds: number | _Long): Duration; + + fromBuffer(buffer: Buffer): Duration; + fromString(input: string): Duration; + } + + interface Duration { + equals(other: Duration): boolean; + toBuffer(): Buffer; + toString(): string; + } + interface InetAddressStatic { new (buffer: Buffer): InetAddress; @@ -336,13 +394,14 @@ export namespace types { } interface ResultSetStatic { - new (response: any, host: string, triedHost: { [key: string]: any }, consistency: consistencies): ResultSet; + new (response: any, host: string, triedHost: { [key: string]: any }, speculativeExecutions: number, consistency: consistencies): ResultSet; } interface ResultSet { info: { queriedHost: Host, triedHosts: { [key: string]: string; }, + speculativeExecutions: number, achievedConsistency: consistencies, traceId: Uuid, warnings: Array, @@ -352,11 +411,13 @@ export namespace types { rowLength: number; columns: Array<{ [key: string]: string; }>; pageState: string; - nextPage: any; // function + nextPage: Function; first(): Row; getPageState(): string; getColumns(): Array<{ [key: string]: string; }>; + wasApplied(): boolean; + [Symbol.iterator](): Iterator; } interface ResultStreamStatic { @@ -442,40 +503,50 @@ export let Encoder: EncoderStatic; export interface ClientOptions { contactPoints: Array, keyspace?: string, + refreshSchemaDelay?: number, + isMetadataSyncEnabled?: boolean, + prepareOnAllHosts?: boolean, + rePrepareOnUp?: boolean, + maxPrepared?: number, policies?: { - addressResolution?: policies.addressResolution.AddressTranslator, loadBalancing?: policies.loadBalancing.LoadBalancingPolicy, + retry?: policies.retry.RetryPolicy, reconnection?: policies.reconnection.ReconnectionPolicy, - retry?: policies.retry.RetryPolicy + addressResolution?: policies.addressResolution.AddressTranslator, + speculativeExecution?: policies.speculativeExecution.SpeculativeExecutionPolicy, + timestampGeneration?: policies.timestampGeneration.TimestampGenerator, }, queryOptions?: QueryOptions, pooling?: { - heartBeatInterval: number, - coreConnectionsPerHost: { [key: number]: number; }, - warmup: boolean; + heartBeatInterval?: number, + coreConnectionsPerHost?: { [key: number]: number; }, + maxRequestsPerConnection?: number, + warmup?: boolean; }, protocolOptions?: { - port: number, - maxSchemaAgreementWaitSeconds: number, - maxVersion: number + port?: number, + maxSchemaAgreementWaitSeconds?: number, + maxVersion?: number }, socketOptions?: { - connectTimeout: number, - defunctReadTimeoutThreshold: number, - keepAlive: boolean, - keepAliveDelay: number, - readTimeout: number, - tcpNoDelay: boolean, - coalescingThreshold: number + connectTimeout?: number, + defunctReadTimeoutThreshold?: number, + keepAlive?: boolean, + keepAliveDelay?: number, + readTimeout?: number, + tcpNoDelay?: boolean, + coalescingThreshold?: number }, authProvider?: auth.AuthProvider, sslOptions?: tls.ConnectionOptions, encoding?: { - map: Function, - set: Function, - copyBuffer: boolean, - useUndefinedAsUnset: boolean - } + map?: Function, + set?: Function, + copyBuffer?: boolean, + useUndefinedAsUnset?: boolean + }, + profiles?: Array, + promiseFactory?: Function, } export interface QueryOptions { @@ -483,8 +554,11 @@ export interface QueryOptions { captureStackTrace?: boolean; consistency?: number; customPayload?: any; + executionProfile?: string | ExecutionProfile; fetchSize?: number; hints?: Array | Array>; + isIdempotent?: boolean; + keyspace?: string; logged?: boolean; pageState?: Buffer | string; prepare?: boolean; @@ -520,6 +594,7 @@ export interface Client extends events.EventEmitter { execute(query: string, callback: ResultCallback): void; execute(query: string, params?: any, options?: QueryOptions): Promise; getReplicas(keyspace: string, token: Buffer): Array; // TODO: Should this be a more explicit return? + getState(): metadata.ClientState; shutdown(callback?: Callback): void; shutdown(): Promise; stream(query: string, params?: any, options?: QueryOptions, callback?: Callback): NodeJS.ReadableStream; @@ -548,6 +623,7 @@ export interface HostMapStatic { export interface HostMap extends events.EventEmitter { length: number; + clear(): Array; forEach(callback: Callback): void; get(key: string): Host; keys(): Array; @@ -566,6 +642,22 @@ export interface Encoder { encode(value: any, typeInfo?: string | number | { code: number, info?: any }): Buffer; } +interface ExecutionProfileOptions { + consistency: number, + loadBalancing: policies.loadBalancing.LoadBalancingPolicy, + name: string, + readTimeout: number, + retry: policies.retry.RetryPolicy, + serialConsistency: number +} + +export interface ExecutionProfileStatic { + new (name: string, options: ExecutionProfileOptions): ExecutionProfile +} + +export interface ExecutionProfile extends ExecutionProfileOptions { +} + export namespace auth { let Authenticator: AuthenticatorStatic; let PlainTextAuthProvider: PlainTextAuthProviderStatic; @@ -649,6 +741,17 @@ export namespace metadata { stateFunction: string; stateType: string; } + + interface ClientStateStatic { + new (): ClientState; + } + + interface ClientState { + getConnectedHosts(): Array; + getInFlightQueries(host: Host): number; + getOpenConnections(host: Host): number; + toString(): string; + } interface DataTypeInfo { code: number, diff --git a/types/catalog/catalog-tests.tsx b/types/catalog/catalog-tests.tsx deleted file mode 100644 index 37a87540d1..0000000000 --- a/types/catalog/catalog-tests.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import * as React from "react"; -import { Config, render, markdown, Catalog, ReactSpecimen, Page } from "catalog"; - -const config: Config = { - title: 'Test', - pages: [ - { - path: '/', - title: 'Introduction', - content: '/patd/to/file.md', - }, - { - path: '/materials', - title: 'Materials', - pages: [ - { - path: '/materials/typeface', - title: 'Typeface', - component: , - }, - ], - }, - ], - useBrowserHistory: true, - basePath: '/doc', - responsiveSizes: [ - { name: 'large', width: 978, height: 1100 }, - { name: 'medium', width: 640, height: 900 }, - { name: 'small', width: 471, height: 700 }, - ], -}; - -render(config, document.body); -; - -markdown` -# Test - -${ -
-} -`; diff --git a/types/catalog/index.d.ts b/types/catalog/index.d.ts deleted file mode 100644 index 3476e86641..0000000000 --- a/types/catalog/index.d.ts +++ /dev/null @@ -1,109 +0,0 @@ -// Type definitions for catalog 3.2 -// Project: https://github.com/interactivethings/catalog/ -// Definitions by: Peter Gassner , Tomas Carnecky -// Definitions: https://github.com/interactivethings/catalog/ -// TypeScript Version: 2.6 - -import * as React from "react"; - -// Configuration - -// XXX: Can not name this 'Page' because there's already a 'Page' -// component here. -export interface ConfigPage { - path: string; - title: string; - - content?: any; - component?: any; - pages?: ConfigPage[]; -} - -export interface ConfigResponsiveSize { - name: string; - width: number; - height: number; -} - -export interface Config { - title: string; - pages: ConfigPage[]; - - useBrowserHistory?: boolean; - basePath?: string; - responsiveSizes?: ConfigResponsiveSize[]; -} - -export function render(config: Config, element: HTMLElement): void; -export function configure(config: any): any; -export function configureRoutes(config: any): any; -export function configureJSXRoutes(config: any): any; - -export function pageLoader(f: () => Promise): any; -export function markdown(...x: any[]): JSX.Element; - -// Components -export interface DefaultCatalogProps extends React.Props<{}> { - span?: number; - theme?: any; -} - -export class Card extends React.Component {} -export class Page extends React.Component {} -export interface SpanProps extends DefaultCatalogProps { - style?: any; -} -export class Span extends React.Component {} - -// Specimens -export class AudioSpecimen extends React.Component {} - -export interface CodeSpecimenProps extends DefaultCatalogProps { - rawBody: string; - collapsed: boolean; - lang: string; - raw: boolean; -} -export class CodeSpecimen extends React.Component {} - -export interface ColorSpecimenProps extends DefaultCatalogProps { - value: string; - name: string; -} -export class ColorSpecimen extends React.Component {} - -export interface ColorPaletteSpecimenProps extends DefaultCatalogProps { - colors: Array<{name?: string, value: string}>; - horizontal?: boolean; -} -export class ColorPaletteSpecimen extends React.Component {} - -export class HtmlSpecimen extends React.Component {} -export class HintSpecimen extends React.Component {} -export class ImageSpecimen extends React.Component {} - -export interface TypeSpecimenProps extends DefaultCatalogProps { - color?: string; - font: string; - headings: string[] | number[]; - style?: string; - weight: string; -} -export class TypeSpecimen extends React.Component {} -export class DownloadSpecimen extends React.Component {} - -export interface ReactSpecimenProps extends DefaultCatalogProps { - noSource?: boolean; - plain?: boolean; - light?: boolean; - dark?: boolean; - frame?: boolean; - state?: any; - responsive?: boolean | string | string[]; - sourceText?: string; -} -export class ReactSpecimen extends React.Component {} - -export class VideoSpecimen extends React.Component {} - -export class Catalog extends React.Component {} diff --git a/types/catalog/tslint.json b/types/catalog/tslint.json deleted file mode 100644 index b4b47a0378..0000000000 --- a/types/catalog/tslint.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "dtslint/dt.json" -} diff --git a/types/chai-spies/chai-spies-tests.ts b/types/chai-spies/chai-spies-tests.ts index 1d99f0add2..f5247ba13f 100644 --- a/types/chai-spies/chai-spies-tests.ts +++ b/types/chai-spies/chai-spies-tests.ts @@ -88,6 +88,27 @@ spyStringArg('foo'); expect(spyStringArg).to.have.been.called.always.with.exactly('foo'); spyStringArg.should.have.been.called.always.with.exactly('foo'); +// .first / .second / .third +const spyStringIteratedArg = chai.spy((arg: string) => arg); +spyStringIteratedArg('foo'); +spyStringIteratedArg('bar'); +spyStringIteratedArg('baz'); +expect(spyStringIteratedArg).to.have.been.first.called.with('foo'); +spyStringIteratedArg.should.have.been.first.called.with('foo'); +expect(spyStringIteratedArg).to.have.been.first.called.with('bar'); +spyStringIteratedArg.should.have.been.first.called.with('bar'); +expect(spyStringIteratedArg).to.have.been.first.called.with('baz'); +spyStringIteratedArg.should.have.been.first.called.with('baz'); + +// .nth +const spyStringNthArg = chai.spy((arg: string) => arg); +spyStringNthArg('foo'); +spyStringNthArg('bar'); +expect(spyStringNthArg).on.nth(1).be.called.with('foo'); +spyStringNthArg.should.on.nth(1).be.called.with('foo'); +expect(spyStringNthArg).on.nth(2).be.called.with('bar'); +spyStringNthArg.should.on.nth(2).be.called.with('bar'); + // .once expect(spy).to.have.been.called.once; expect(spy).to.not.have.been.called.once; diff --git a/types/chai-spies/index.d.ts b/types/chai-spies/index.d.ts index ffed6e594b..75f702ca37 100644 --- a/types/chai-spies/index.d.ts +++ b/types/chai-spies/index.d.ts @@ -10,6 +10,10 @@ declare namespace Chai { spy: ChaiSpies.Spy; } + interface LanguageChains { + on: Assertion; + } + interface Assertion { /** * ####.spy @@ -31,6 +35,28 @@ declare namespace Chai { * Note that ```called``` can be used as a chainable method. */ called: ChaiSpies.Called; + + /** + * * ####.been + * * Assert that something has been spied on. Negation passes through. + * * ```ts + * * expect(spy).to.have.been.called(); + * * spy.should.have.been.called(); + * ``` + * Note that ```been``` can be used as a chainable method. + */ + been: ChaiSpies.Been; + + /** + * * ####.nth (function) + * * Assert that something has been spied on on a certain index. Negation passes through. + * * ```ts + * * expect(spy).on.nth(5).be.called.with('foobar'); + * * spy.should.on.nth(5).be.called.with('foobar'); + * ``` + * Note that ```nth``` can be used as a chainable method. + */ + nth(index: number): Assertion; } } @@ -224,6 +250,47 @@ declare namespace ChaiSpies { lt(n: number): Chai.Assertion; } + interface Been extends Chai.Assertion { + (): Chai.Assertion; + called: Called; + + /** + * ####.first + * Assert that a spy has been called first. + * ```ts + * expect(spy).to.have.been.called.first; + * expect(spy).to.not.have.been.called.first; + * spy.should.have.been.called.first; + * spy.should.not.have.been.called.first; + * ``` + */ + first: Chai.Assertion; + + /** + * ####.second + * Assert that a spy has been called second. + * ```ts + * expect(spy).to.have.been.called.second; + * expect(spy).to.not.have.been.called.second; + * spy.should.have.been.called.second; + * spy.should.not.have.been.called.second; + * ``` + */ + second: Chai.Assertion; + + /** + * ####.third + * Assert that a spy has been called third. + * ```ts + * expect(spy).to.have.been.called.third; + * expect(spy).to.not.have.been.called.third; + * spy.should.have.been.called.third; + * spy.should.not.have.been.called.third; + * ``` + */ + third: Chai.Assertion; + } + interface With { /** * ####.with diff --git a/types/chai-string/index.d.ts b/types/chai-string/index.d.ts index bc990104be..fcf0fb9c23 100644 --- a/types/chai-string/index.d.ts +++ b/types/chai-string/index.d.ts @@ -49,4 +49,5 @@ declare global { } declare function chaiString(chai: any, utils: any): void; +declare namespace chaiString { } export = chaiString; diff --git a/types/chai-things/chai-things-tests.ts b/types/chai-things/chai-things-tests.ts index ecb7294dd2..b3549ab192 100644 --- a/types/chai-things/chai-things-tests.ts +++ b/types/chai-things/chai-things-tests.ts @@ -1,8 +1,7 @@ -import chai = require('chai'); -import chaiThings = require('chai-things'); - +import * as chai from 'chai'; +import * as chaiThings from 'chai-things'; chai.use(chaiThings); function test_somethingSyntax() { diff --git a/types/chai-things/index.d.ts b/types/chai-things/index.d.ts index 11ad20ede3..e0b3d0f0ec 100644 --- a/types/chai-things/index.d.ts +++ b/types/chai-things/index.d.ts @@ -60,5 +60,6 @@ interface Array { declare module "chai-things" { function chaiThings(chai: any, utils: any): void; + namespace chaiThings { } export = chaiThings; } diff --git a/types/chai-uuid/chai-uuid-tests.ts b/types/chai-uuid/chai-uuid-tests.ts new file mode 100644 index 0000000000..0620464988 --- /dev/null +++ b/types/chai-uuid/chai-uuid-tests.ts @@ -0,0 +1,15 @@ +import { assert, expect, use, should } from 'chai'; +import chaiUuid = require('chai-uuid'); + +use(chaiUuid); +should(); + +// bdd style +expect('67cb8aa1-61bb-4b9b-8ca9-9dc0b278d5f7').to.be.uuid('v4'); +expect('67cb8aa1-61bb-4b9b-8ca9-9dc0b278d5f7').to.be.guid; +expect('invalid').to.not.be.uuid('v4'); +expect('invalid').to.not.be.guid(); + +// tdd style +assert.uuid('67cb8aa1-61bb-4b9b-8ca9-9dc0b278d5f7', 'v4'); +assert.guid('67cb8aa1-61bb-4b9b-8ca9-9dc0b278d5f7'); diff --git a/types/chai-uuid/index.d.ts b/types/chai-uuid/index.d.ts new file mode 100644 index 0000000000..23a0b6db92 --- /dev/null +++ b/types/chai-uuid/index.d.ts @@ -0,0 +1,27 @@ +// Type definitions for chai-uuid 1.0 +// Project: https://github.com/rfrench/chai-uuid +// Definitions by: Harm van der Werf +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +/// +/// + +declare global { + namespace Chai { + type UuidVersion = 'v1' | 'v2' | 'v3' | 'v4' | 'v5' | ''; + + interface Assertion extends LanguageChains, NumericComparison, TypeComparison { + uuid(uuid?: UuidVersion): void; + guid(guid?: any): void; + } + + interface Assert { + uuid(uuid: string, version?: UuidVersion): void; + guid(guid: string, version?: any): void; + } + } +} + +declare function chaiUuid(chai: any, utils: any): void; +export = chaiUuid; diff --git a/types/chai-uuid/tsconfig.json b/types/chai-uuid/tsconfig.json new file mode 100644 index 0000000000..ca2ca40071 --- /dev/null +++ b/types/chai-uuid/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "chai-uuid-tests.ts" + ] +} diff --git a/types/chai-uuid/tslint.json b/types/chai-uuid/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/chai-uuid/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/chai/chai-tests.ts b/types/chai/chai-tests.ts index 57b7d127ac..f19514fe71 100644 --- a/types/chai/chai-tests.ts +++ b/types/chai/chai-tests.ts @@ -191,6 +191,18 @@ function within() { expect(10).to.be.within(50, 100, 'blah'); (10).should.be.within(50, 100, 'blah'); + expect(new Date('December 17, 1995 03:24:30')).to.not.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40')); + new Date('December 17, 1995 03:24:30').should.not.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40')); + + expect(new Date('December 17, 1995 03:24:30')).to.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40')); + new Date('December 17, 1995 03:24:30').should.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40')); + + expect(new Date('December 17, 1995 03:24:30')).to.not.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40'), 'blah'); + new Date('December 17, 1995 03:24:30').should.not.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40'), 'blah'); + + expect(new Date('December 17, 1995 03:24:30')).to.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40'), 'blah'); + new Date('December 17, 1995 03:24:30').should.be.within(new Date('December 17, 1995 03:24:20'), new Date('December 17, 1995 03:24:40'), 'blah'); + expect('foo').to.have.length.within(5, 7, 'blah'); 'foo'.should.have.length.within(5, 7, 'blah'); @@ -218,6 +230,18 @@ function above() { expect(10).to.not.be.above(6, 'blah'); (10).should.not.be.above(6, 'blah'); + expect(new Date('December 17, 1995 03:24:30')).to.not.be.above(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.not.be.above(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.be.above(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.be.above(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.not.be.above(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.not.be.above(new Date('December 17, 1995 03:24:20'), 'blah'); + + expect(new Date('December 17, 1995 03:24:30')).to.be.above(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.be.above(new Date('December 17, 1995 03:24:20'), 'blah'); + expect('foo').to.have.length.above(4, 'blah'); 'foo'.should.have.length.above(4, 'blah'); @@ -243,6 +267,18 @@ function least() { expect(10).to.not.be.at.least(6, 'blah'); (10).should.not.be.at.least(6, 'blah'); + expect(new Date('December 17, 1995 03:24:30')).to.not.be.least(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.not.be.least(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.be.least(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.be.least(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.not.be.least(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.not.be.least(new Date('December 17, 1995 03:24:20'), 'blah'); + + expect(new Date('December 17, 1995 03:24:30')).to.be.least(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.be.least(new Date('December 17, 1995 03:24:20'), 'blah'); + expect('foo').to.have.length.of.at.least(4, 'blah'); 'foo'.should.have.length.of.at.least(4, 'blah'); @@ -273,6 +309,18 @@ function below() { expect(6).to.not.be.below(10, 'blah'); (6).should.not.be.below(10, 'blah'); + expect(new Date('December 17, 1995 03:24:30')).to.not.be.below(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.not.be.below(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.be.below(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.be.below(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.not.be.below(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.not.be.below(new Date('December 17, 1995 03:24:20'), 'blah'); + + expect(new Date('December 17, 1995 03:24:30')).to.be.below(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.be.below(new Date('December 17, 1995 03:24:20'), 'blah'); + expect('foo').to.have.length.below(2, 'blah'); 'foo'.should.have.length.below(2, 'blah'); @@ -300,6 +348,18 @@ function most() { expect(6).to.not.be.at.most(10, 'blah'); (6).should.not.be.at.most(10, 'blah'); + expect(new Date('December 17, 1995 03:24:30')).to.not.be.most(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.not.be.most(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.be.most(new Date('December 17, 1995 03:24:20')); + new Date('December 17, 1995 03:24:30').should.be.most(new Date('December 17, 1995 03:24:20')); + + expect(new Date('December 17, 1995 03:24:30')).to.not.be.most(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.not.be.most(new Date('December 17, 1995 03:24:20'), 'blah'); + + expect(new Date('December 17, 1995 03:24:30')).to.be.most(new Date('December 17, 1995 03:24:20'), 'blah'); + new Date('December 17, 1995 03:24:30').should.be.most(new Date('December 17, 1995 03:24:20'), 'blah'); + expect('foo').to.have.length.of.at.most(2, 'blah'); 'foo'.should.have.length.of.at.most(2, 'blah'); diff --git a/types/chai/index.d.ts b/types/chai/index.d.ts index 02bca8909f..d0f5ab099c 100644 --- a/types/chai/index.d.ts +++ b/types/chai/index.d.ts @@ -9,6 +9,7 @@ // Shaun Luttin // Gintautas Miselis // Satana Charuwichitratana +// Erik Schierboom // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace Chai { @@ -150,10 +151,11 @@ declare namespace Chai { most: NumberComparer; lte: NumberComparer; within(start: number, finish: number, message?: string): Assertion; + within(start: Date, finish: Date, message?: string): Assertion; } interface NumberComparer { - (value: number, message?: string): Assertion; + (value: number | Date, message?: string): Assertion; } interface TypeComparison { diff --git a/types/chardet/chardet-tests.ts b/types/chardet/chardet-tests.ts new file mode 100644 index 0000000000..7c06d2cc61 --- /dev/null +++ b/types/chardet/chardet-tests.ts @@ -0,0 +1,7 @@ +import * as chardet from "chardet"; + +chardet.detect(new Buffer('hello there!')); +chardet.detectFile('/path/to/file', (err, encoding) => {}); +chardet.detectFileSync('/path/to/file'); + +chardet.detectFile('/path/to/file', { sampleSize: 32 }, (err, encoding) => {}); diff --git a/types/chardet/index.d.ts b/types/chardet/index.d.ts new file mode 100644 index 0000000000..20324be60e --- /dev/null +++ b/types/chardet/index.d.ts @@ -0,0 +1,26 @@ +// Type definitions for chardet 0.5 +// Project: https://github.com/runk/node-chardet +// Definitions by: Hauke Oldsen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +export interface Confidence { + name: string; + confidence: number; + lang?: string; +} + +export interface Options { + returnAllMatches?: boolean; + sampleSize?: number; +} + +export type Result = Confidence[] | string | null; + +export function detect(buf: Buffer, opts?: Options): Result; + +export function detectFile(path: string, cb: (err: any, result: Result) => void): void; +export function detectFile(path: string, opts: Options, cb: (err: any, result: Result) => void): void; + +export function detectFileSync(path: string, opts?: Options): Result; diff --git a/types/chardet/tsconfig.json b/types/chardet/tsconfig.json new file mode 100644 index 0000000000..6215a6303f --- /dev/null +++ b/types/chardet/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "chardet-tests.ts" + ] +} diff --git a/types/chardet/tslint.json b/types/chardet/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/chardet/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/chart.js/chart.js-tests.ts b/types/chart.js/chart.js-tests.ts index 6041889b66..d0f6ebc684 100644 --- a/types/chart.js/chart.js-tests.ts +++ b/types/chart.js/chart.js-tests.ts @@ -21,6 +21,12 @@ const chart: Chart = new Chart(new CanvasRenderingContext2D(), { hover: { intersect: true }, + onHover(ev: MouseEvent, points: any[]) { + return; + }, + title: { + text: ["foo", "bar"] + }, tooltips: { filter: data => Number(data.yLabel) > 0, intersect: true, @@ -52,6 +58,7 @@ const chart: Chart = new Chart(new CanvasRenderingContext2D(), { padding: 40 } }, + devicePixelRatio: 2, } }); chart.update(); diff --git a/types/chart.js/index.d.ts b/types/chart.js/index.d.ts index c637164d30..04d2e182ee 100644 --- a/types/chart.js/index.d.ts +++ b/types/chart.js/index.d.ts @@ -9,6 +9,8 @@ // Dan Manastireanu // Guillaume Rodriguez // Sergey Rubanov +// Simon Archer +// Ken Elkabany // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -126,6 +128,10 @@ declare namespace Chart { pointStyle?: PointStyle; } + interface ChartLegendLabelItem extends ChartLegendItem { + datasetIndex: number; + } + interface ChartTooltipItem { xLabel?: string; yLabel?: string; @@ -161,8 +167,9 @@ declare namespace Chart { interface ChartPoint { x?: number | string | Date; - y?: number; + y?: number | string | Date; r?: number; + t?: number | string | Date; } interface ChartConfiguration { @@ -184,6 +191,7 @@ declare namespace Chart { aspectRatio?: number; maintainAspectRatio?: boolean; events?: string[]; + onHover?(this: Chart, event: MouseEvent, activeElements: Array<{}>): any; onClick?(event?: MouseEvent, activeElements?: Array<{}>): any; title?: ChartTitleOptions; legend?: ChartLegendOptions; @@ -198,6 +206,7 @@ declare namespace Chart { cutoutPercentage?: number; circumference?: number; rotation?: number; + devicePixelRatio?: number; // Plugins can require any options plugins?: { [plugin: string]: any }; } @@ -212,21 +221,21 @@ declare namespace Chart { interface ChartTitleOptions { display?: boolean; position?: PositionType; - fullWdith?: boolean; + fullWidth?: boolean; fontSize?: number; fontFamily?: string; fontColor?: ChartColor; fontStyle?: string; padding?: number; - text?: string; + text?: string | string[]; } interface ChartLegendOptions { display?: boolean; position?: PositionType; fullWidth?: boolean; - onClick?(event: MouseEvent, legendItem: ChartLegendItem): void; - onHover?(event: MouseEvent, legendItem: ChartLegendItem): void; + onClick?(event: MouseEvent, legendItem: ChartLegendLabelItem): void; + onHover?(event: MouseEvent, legendItem: ChartLegendLabelItem): void; labels?: ChartLegendLabelOptions; reverse?: boolean; } @@ -239,7 +248,7 @@ declare namespace Chart { fontFamily?: string; padding?: number; generateLabels?(chart: any): any; - filter?(item: ChartLegendItem, data: ChartData): any; + filter?(legendItem: ChartLegendLabelItem, data: ChartData): any; usePointStyle?: boolean; } @@ -291,7 +300,7 @@ declare namespace Chart { mode?: string; animationDuration?: number; intersect?: boolean; - onHover?(active: any): void; + onHover?(this: Chart, event: MouseEvent, activeElements: Array<{}>): any; } interface ChartAnimationObject { @@ -395,6 +404,10 @@ declare namespace Chart { interface TickOptions { autoSkip?: boolean; autoSkipPadding?: number; + backdropColor?: ChartColor; + backdropPaddingX?: number; + backdropPaddingY?: number; + beginAtZero?: boolean; callback?(value: any, index: any, values: any): string|number; display?: boolean; fontColor?: ChartColor; @@ -402,14 +415,18 @@ declare namespace Chart { fontSize?: number; fontStyle?: string; labelOffset?: number; + max?: any; maxRotation?: number; + maxTicksLimit?: number; + min?: any; minRotation?: number; mirror?: boolean; padding?: number; reverse?: boolean; - min?: any; - max?: any; + showLabelBackdrop?: boolean; + source?: 'auto' | 'data' | 'labels'; } + interface AngleLineOptions { display?: boolean; color?: ChartColor; @@ -424,26 +441,15 @@ declare namespace Chart { fontStyle?: string; } - interface TickOptions { - backdropColor?: ChartColor; - backdropPaddingX?: number; - backdropPaddingY?: number; - maxTicksLimit?: number; - showLabelBackdrop?: boolean; - } interface LinearTickOptions extends TickOptions { - beginAtZero?: boolean; - min?: number; - max?: number; maxTicksLimit?: number; stepSize?: number; suggestedMin?: number; suggestedMax?: number; } + // tslint:disable-next-line no-empty-interface interface LogarithmicTickOptions extends TickOptions { - min?: number; - max?: number; } type ChartColor = string | CanvasGradient | CanvasPattern | string[]; @@ -507,6 +513,7 @@ declare namespace Chart { gridLines?: GridLineOptions; barThickness?: number; scaleLabel?: ScaleTitleOptions; + offset?: boolean; beforeUpdate?(scale?: any): void; beforeSetDimension?(scale?: any): void; beforeDataLimits?(scale?: any): void; @@ -526,6 +533,7 @@ declare namespace Chart { interface ChartXAxe extends CommonAxe { categoryPercentage?: number; barPercentage?: number; + distribution?: 'linear' | 'series'; time?: TimeScale; } diff --git a/types/chosen-js/chosen-js-tests.ts b/types/chosen-js/chosen-js-tests.ts index 575b7503ea..811ff4994b 100644 --- a/types/chosen-js/chosen-js-tests.ts +++ b/types/chosen-js/chosen-js-tests.ts @@ -1,5 +1,3 @@ - - // Options $(".my_select_box").chosen(); @@ -12,14 +10,23 @@ $(".my_select_box").chosen({ width: "95%" }); +$(".chosen-select").chosen({ + rtl: true +}); + // Destroy $(".my_select_box").chosen("destroy"); // Triggered Events -$(".my_select_box").on("change", function(evt, params) { +$(".my_select_box").on("change", (evt, params) => { evt.preventDefault(); - let s = params.selected; - console.log(s); + const s: string = params.selected; + const d: string = params.deselected; + console.log(s, d); +}); + +$(".chosen-select").on("chosen:maxselected", () => { + alert("Max selected"); }); // Triggerable Events diff --git a/types/chosen-js/index.d.ts b/types/chosen-js/index.d.ts index c9a5556c26..e9a67550db 100644 --- a/types/chosen-js/index.d.ts +++ b/types/chosen-js/index.d.ts @@ -1,9 +1,11 @@ -// Type definitions for Chosen.JQuery 1.6.1 +// Type definitions for Chosen 1.8 // Project: http://harvesthq.github.com/chosen/ -// Definitions by: Boris Yankov , denis +// Definitions by: Boris Yankov , denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 +// Validated against Chosen version 1.8.5 + /// declare namespace Chosen { @@ -11,71 +13,107 @@ declare namespace Chosen { type TriggerEvent = "chosen:updated" | "chosen:activate" | "chosen:open" | "chosen:close"; interface Options { - /**When set to true on a single select, Chosen adds a UI element which selects the first element (if it is blank). - * @default: false + /** + * When set to true on a single select, Chosen adds a UI element which selects the first element (if it is blank). + * @default false */ allow_single_deselect?: boolean; - /**By default Chosen's search is case-insensitive. Setting this option to true makes the search case-sensitive. - * @default: false + /** + * By default, Chosen's search is case-insensitive. Setting this option to true makes the search case-sensitive. + * @default false */ case_sensitive_search?: boolean; - /**When set to true, Chosen will not display the search field (single selects only). - * @default: false + /** + * When set to true, Chosen will not display the search field (single selects only). + * @default false */ disable_search?: boolean; - /**Hide the search input on single selects if there are n or fewer options. - * @default: 0 + /** + * Hide the search input on single selects if there are n or fewer options. + * @default 0 */ disable_search_threshold?: number; - /**By default, searching will match on any word within an option tag. Set this option to false if you want to only match on the entire text of an option tag. - * @default: true + /** + * By default, searching will match on any word within an option tag. Set this option to false if you want to only match on the entire text of an option tag. + * @default true */ enable_split_word_search?: boolean; - /**When set to true, Chosen will grab any classes on the original select field and add them to Chosen’s container div. - * @default: false + /** + * By default, Chosen will search group labels as well as options, and filter to show all options below matching groups. Set this to false to search only in the options. + * @default true + */ + group_search?: boolean; + /** + * By default, Chosen's results are hidden after a option is selected. Setting this option to false will keep the results open after selection. This only applies to multiple selects. + * @default true + */ + hide_results_on_select?: boolean; + /** + * When set to true, Chosen will grab any classes on the original select field and add them to Chosen’s container div. + * @default false */ inherit_select_classes?: boolean; - /**Limits how many options the user can select. When the limit is reached, the chosen:maxselected event is triggered. - * @default: Infinity + /** + * Limits how many options the user can select. When the limit is reached, the `chosen:maxselected` event is triggered. + * @default Infinity */ max_selected_options?: number; - /**The text to be displayed when no matching results are found. The current search is shown at the end of the text (e.g., No results match "Bad Search"). - * @default: "No results match" + /** + * The text to be displayed when no matching results are found. The current search is shown at the end of the text (e.g., No results match "Bad Search"). + * @default "No results match" */ no_results_text?: string; - /**The text to be displayed as a placeholder when no options are selected for a multiple select. - * @default: "Select Some Options" + /** + * The text to be displayed as a placeholder when no options are selected for a multiple select. + * @default "Select Some Options" */ placeholder_text_multiple?: string; - /**The text to be displayed as a placeholder when no options are selected for a single select. - * @default: "Select an Option" + /** + * The text to be displayed as a placeholder when no options are selected for a single select. + * @default "Select an Option" */ placeholder_text_single?: string; - /**By default, Chosen’s search matches starting at the beginning of a word. Setting this option to true allows matches starting from anywhere within a word. This is especially useful for options that include a lot of special characters or phrases in ()s and []s. - * @default: false + /** + * Chosen supports right-to-left text in select boxes. Set this option to true to support right-to-left text options. + * @default false + */ + rtl?: boolean; + /** + * By default, Chosen’s search matches starting at the beginning of a word. Setting this option to true allows matches starting from anywhere within a word. + * This is especially useful for options that include a lot of special characters or phrases in ()s and []s. + * @default false */ search_contains?: boolean; - /**By default, pressing delete/backspace on multiple selects will remove a selected choice. When false, pressing delete/backspace will highlight the last choice, and a second press deselects it. - * @default: true + /** + * By default, pressing delete/backspace on multiple selects will remove a selected choice. + * When false, pressing delete/backspace will highlight the last choice, and a second press deselects it. + * @default true */ single_backstroke_delete?: boolean; - /**The width of the Chosen select box. By default, Chosen attempts to match the width of the select box you are replacing. If your select is hidden when Chosen is instantiated, you must specify a width or the select will show up with a width of 0. */ + /** + * The width of the Chosen select box. By default, Chosen attempts to match the width of the select box you are replacing. + * If your select is hidden when Chosen is instantiated, you must specify a width or the select will show up with a width of 0. + */ width?: string; - /**By default, Chosen includes disabled options in search results with a special styling. Setting this option to false will hide disabled results and exclude them from searches. - * @default: true + /** + * By default, Chosen includes disabled options in search results with a special styling. Setting this option to false will hide disabled results and exclude them from searches. + * @default true */ display_disabled_options?: boolean; - /**By default, Chosen includes selected options in search results with a special styling. Setting this option to false will hide selected results and exclude them from searches. + /** + * By default, Chosen includes selected options in search results with a special styling. Setting this option to false will hide selected results and exclude them from searches. * Note: this is for multiple selects only. In single selects, the selected result will always be displayed. - * @default: true + * @default true */ display_selected_options?: boolean; - /**By default, Chosen only shows the text of a selected option. Setting this option to true will show the text and group (if any) of the selected option. - * @default: false + /** + * By default, Chosen only shows the text of a selected option. Setting this option to true will show the text and group (if any) of the selected option. + * @default false */ include_group_label_in_selected?: boolean; - /**Only show the first (n) matching options in the results. This can be used to increase performance for selects with very many options. - * @default: Infinity + /** + * Only show the first (n) matching options in the results. This can be used to increase performance for selects with very many options. + * @default Infinity */ max_shown_results?: number; } @@ -87,13 +125,27 @@ declare namespace Chosen { } interface JQuery { - chosen(): JQuery; - chosen(options: Chosen.Options | "destroy"): JQuery; + chosen(options?: Chosen.Options | "destroy"): JQuery; - /**Chosen triggers the standard DOM event whenever a selection is made (it also sends a selected or deselected parameter that tells you which option was changed). */ + /** + * Chosen triggers the standard DOM event whenever a selection is made (it also sends a selected or deselected parameter that tells you which option was changed). + */ on(events: "change", handler: (eventObject: JQueryEventObject, args: Chosen.SelectedData) => any): JQuery; + /** + * * `chosen:ready` Triggered after Chosen has been fully instantiated. + * * `chosen:maxselected` Triggered if max_selected_options is set and that total is broken. + * * `chosen:showing_dropdown` Triggered when Chosen’s dropdown is opened. + * * `chosen:hiding_dropdown` Triggered when Chosen’s dropdown is closed. + * * `chosen:no_results` Triggered when a search returns no matching results. + */ on(events: Chosen.OnEvent, handler: (eventObject: JQueryEventObject) => any): JQuery; + /** + * * `chosen:updated` This event should be triggered whenever Chosen’s underlying select element changes (such as a change in selected options). + * * `chosen:activate` This is the equivalant of focusing a standard HTML select field. When activated, Chosen will capure keypress events as if you had clicked the field directly. + * * `chosen:open` This event activates Chosen and also displays the search results. + * * `chosen:close` This event deactivates Chosen and hides the search results. + */ trigger(eventType: Chosen.TriggerEvent): JQuery; } diff --git a/types/chosen-js/tsconfig.json b/types/chosen-js/tsconfig.json index 9f4ce049cb..93360e6201 100644 --- a/types/chosen-js/tsconfig.json +++ b/types/chosen-js/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/chosen-js/tslint.json b/types/chosen-js/tslint.json index a41bf5d19a..f93cf8562a 100644 --- a/types/chosen-js/tslint.json +++ b/types/chosen-js/tslint.json @@ -1,79 +1,3 @@ { - "extends": "dtslint/dt.json", - "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false - } + "extends": "dtslint/dt.json" } diff --git a/types/chrome/index.d.ts b/types/chrome/index.d.ts index 8c953aaca1..d2b92e4b22 100644 --- a/types/chrome/index.d.ts +++ b/types/chrome/index.d.ts @@ -263,6 +263,7 @@ declare namespace chrome.bookmarks { export interface BookmarkRemoveInfo { index: number; parentId: string; + node: BookmarkTreeNode; } export interface BookmarkMoveInfo { @@ -7236,6 +7237,9 @@ declare namespace chrome.webNavigation { * @since Chrome 17. */ declare namespace chrome.webRequest { + /** How the requested resource will be used. */ + export type ResourceType = "main_frame" | "sub_frame" | "stylesheet" | "script" | "image" | "font" | "object" | "xmlhttprequest" | "ping" | "csp_report" | "media" | "websocket" | "other"; + export interface AuthCredentials { username: string; password: string; @@ -7277,9 +7281,8 @@ declare namespace chrome.webRequest { tabId?: number; /** * A list of request types. Requests that cannot match any of the types will be filtered out. - * Each element one of: "main_frame", "sub_frame", "stylesheet", "script", "image", "object", "xmlhttprequest", or "other" */ - types?: string[]; + types?: ResourceType[]; /** A list of URLs or URL patterns. Requests that cannot match any of the URLs will be filtered out. */ urls: string[]; @@ -7330,9 +7333,8 @@ declare namespace chrome.webRequest { tabId: number; /** * How the requested resource will be used. - * One of: "main_frame", "sub_frame", "stylesheet", "script", "image", "object", "xmlhttprequest", or "other" */ - type: string; + type: ResourceType; /** The time when this signal is triggered, in milliseconds since the epoch. */ timeStamp: number; } diff --git a/types/chromedriver/chromedriver-tests.ts b/types/chromedriver/chromedriver-tests.ts new file mode 100644 index 0000000000..abafb29676 --- /dev/null +++ b/types/chromedriver/chromedriver-tests.ts @@ -0,0 +1,11 @@ +import * as chromeDriver from 'chromedriver'; +import { ChildProcess } from 'child_process'; + +const chromeDriverPath: string = chromeDriver.path; +const chromeDriverVersion: string = chromeDriver.version; + +chromeDriver.start(); +chromeDriver.stop(); + +const driverProcess: ChildProcess = chromeDriver.start(['a', 'b', 'c']); +const chromeDriverDefaultInstance: ChildProcess | undefined = chromeDriver.defaultInstance; diff --git a/types/chromedriver/index.d.ts b/types/chromedriver/index.d.ts new file mode 100644 index 0000000000..af48749615 --- /dev/null +++ b/types/chromedriver/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for chromedriver 2.38 +// Project: https://github.com/giggio/node-chromedriver +// Definitions by: Peter Safranek +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +import { ChildProcess } from 'child_process'; + +export const path: string; +export const version: string; +export function start(args?: ReadonlyArray): ChildProcess; +export function stop(): void; +export let defaultInstance: ChildProcess | undefined; diff --git a/types/chromedriver/tsconfig.json b/types/chromedriver/tsconfig.json new file mode 100644 index 0000000000..3727446dd9 --- /dev/null +++ b/types/chromedriver/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "chromedriver-tests.ts" + ] +} diff --git a/types/chromedriver/tslint.json b/types/chromedriver/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/chromedriver/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/ckeditor/ckeditor-tests.ts b/types/ckeditor/ckeditor-tests.ts index dd0ec92164..1a906bc26e 100644 --- a/types/ckeditor/ckeditor-tests.ts +++ b/types/ckeditor/ckeditor-tests.ts @@ -37,6 +37,13 @@ function test_CKEDITOR() { CKEDITOR.replaceAll((textarea, config) => false); } +function test_CKEDITOR_events() { + CKEDITOR.on('instanceCreated', function(event) { + // $ExpectType editor + event.editor; + }); +} + function test_config() { var config1: CKEDITOR.config = { toolbar: 'basic', @@ -55,18 +62,18 @@ function test_config() { var config3: CKEDITOR.config = { toolbarGroups: [ { name: 'clipboard', groups: [ 'clipboard', 'undo' ] }, - { name: 'editing', groups: [ 'find', 'selection', 'spellchecker', 'editing' ] }, - { name: 'links', groups: [ 'links' ] }, - { name: 'insert', groups: [ 'insert' ] }, - { name: 'tools', groups: [ 'tools' ] }, - { name: 'document', groups: [ 'mode' ] }, - { name: 'about', groups: [ 'about' ] }, - '/', - { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] }, - { name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'paragraph' ] }, - '/', - { name: 'styles', groups: [ 'styles' ] }, - { name: 'colors', groups: [ 'colors' ] }, + { name: 'editing', groups: [ 'find', 'selection', 'spellchecker', 'editing' ] }, + { name: 'links', groups: [ 'links' ] }, + { name: 'insert', groups: [ 'insert' ] }, + { name: 'tools', groups: [ 'tools' ] }, + { name: 'document', groups: [ 'mode' ] }, + { name: 'about', groups: [ 'about' ] }, + '/', + { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] }, + { name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'paragraph' ] }, + '/', + { name: 'styles', groups: [ 'styles' ] }, + { name: 'colors', groups: [ 'colors' ] }, ], } } @@ -211,7 +218,7 @@ function test_dom_event() { domEvent.getTarget().addClass('clicked'); }); element.on('click', ev=> { - var domEvent = ev.data; + var domEvent = ev.data as CKEDITOR.dom.event; domEvent.preventDefault(); }); } @@ -323,7 +330,11 @@ function test_adding_dialog_by_definition() { title: 'Abbreviation Properties', minWidth: 400, minHeight: 200, - + onLoad: () => {}, + onOk: () => {}, + onCancel: () => {}, + onShow: () => {}, + onHide: () => {}, contents: [ { id: 'tab-basic', @@ -340,12 +351,14 @@ function test_adding_dialog_by_definition() { }); } -function test_adding_plugin() { +function test_plugins() { CKEDITOR.plugins.add( 'abbr', { init: function( editor: CKEDITOR.editor ) { // empty logic } }); + + console.log(CKEDITOR.plugins.registered['abbr']); } function test_adding_widget() { @@ -506,3 +519,82 @@ function test_editor_instance_event() { } }); } + +function test_dtd() { + var brConsideredEmptyTag = CKEDITOR.dtd.$empty['br']; + var spanCanContainText = CKEDITOR.dtd['span']['#']; + var divCanContainSpan = CKEDITOR.dtd['div']['span']; +} + +function test_getSelectedHtml() { + var textarea = document.createElement('textarea'); + var editor = CKEDITOR.replace(textarea); + + // $ExpectType documentFragment + var sel1 = editor.getSelectedHtml(); + console.log(sel1); + + // $ExpectType documentFragment + var sel2 = editor.getSelectedHtml(false); + console.log(sel2); + + // $ExpectType string + var sel3 = editor.getSelectedHtml(true); + console.log(sel3); + + // $ExpectType string | documentFragment + var sel4 = editor.getSelectedHtml(Math.random() > 0.5); + console.log(sel4); +} + +function test_element() { + var el = CKEDITOR.document.getById('myElement'); + el.addClass('class'); + console.log(el.hasClass('class')); + el.removeClass('class'); +} + +function test_selection() { + var editor = new CKEDITOR.editor(); + var testNode = CKEDITOR.document.getById('myElement'); + + var selection = editor.getSelection(); + var ranges = selection.getRanges(); + for (var i = 0, c = ranges.length; i < c; i++) { + var range = ranges[i]; + range.setStartBefore(testNode); + range.setStartAfter(testNode); + range.setEndBefore(testNode); + range.setEndAfter(testNode); + } +} + +function test_tools() { + var obj = { key: 'value' }; + CKEDITOR.tools.clone(obj); + CKEDITOR.tools.copy(obj); + CKEDITOR.tools.prototypedCopy(obj); + + console.log(CKEDITOR.tools.isArray([1])); // true + console.log(CKEDITOR.tools.isArray(obj)); // false + console.log(CKEDITOR.tools.isArray(null)); // false + console.log(CKEDITOR.tools.isArray(undefined)); // false + + CKEDITOR.tools.override(parseInt, function(_parseInt) { + return function(value: any, radix?: number) { + return _parseInt(value, radix); + }; + }); +} + +function test_htmlParser() { + var html = '
text
'; + var fragment = CKEDITOR.htmlParser.fragment.fromHtml(html); + fragment.forEach(function(node) { + if (node instanceof CKEDITOR.htmlParser.element) { + node.forEach(function(node) { + console.log(node); + }); + } + }, CKEDITOR.NODE_ELEMENT, true); +} diff --git a/types/ckeditor/index.d.ts b/types/ckeditor/index.d.ts index cf7cd0cc27..3370479bff 100644 --- a/types/ckeditor/index.d.ts +++ b/types/ckeditor/index.d.ts @@ -24,8 +24,8 @@ declare namespace CKEDITOR { var DIALOG_RESIZE_HEIGHT: number; var DIALOG_RESIZE_NONE: number; var DIALOG_RESIZE_WIDTH: number; - var DIALOG_STATE_IDLE: number; - var DIALOG_STATE_BUSY: number; + var DIALOG_STATE_IDLE: number; + var DIALOG_STATE_BUSY: number; var ELEMENT_MODE_APPENDTO: number; var ELEMENT_MODE_INLINE: number; var ELEMENT_MODE_NONE: number; @@ -44,10 +44,10 @@ declare namespace CKEDITOR { var NODE_DOCUMENT_FRAGMENT: number; var NODE_ELEMENT: number; var NODE_TEXT: number; - var POSITION_BEFORE_START: number; - var POSITION_BEFORE_END: number; - var POSITION_AFTER_START: number; - var POSITION_AFTER_END: number; + var POSITION_BEFORE_START: number; + var POSITION_BEFORE_END: number; + var POSITION_AFTER_START: number; + var POSITION_AFTER_END: number; var SELECTION_ELEMENT: number; var SELECTION_NONE: number; var SELECTION_TEXT: number; @@ -55,9 +55,9 @@ declare namespace CKEDITOR { var SHRINK_ELEMENT: number; var SHRINK_TEXT: number; var START: number; - var STYLE_BLOCK: string; - var STYLE_INLINE: string; - var STYLE_OBJECT: string; + var STYLE_BLOCK: string; + var STYLE_INLINE: string; + var STYLE_OBJECT: string; var TRISTATE_DISABLED: number; var TRISTATE_OFF: number; var TRISTATE_ON: number; @@ -80,7 +80,6 @@ declare namespace CKEDITOR { var version: string; var config: config; - // Methods function add(editor: editor): void; function addCss(css: string): void; @@ -101,6 +100,17 @@ declare namespace CKEDITOR { function replaceAll(className?: string): void; function replaceAll(assertionFunction: (textarea: HTMLTextAreaElement, config: config) => boolean): void; + // Event interface + function capture(): void; + function define(name: string, meta: Object): void; + function fire(eventName: string, data?: Object, editor?: editor): any; + function fireOnce(eventName: string, data?: Object, editor?: editor): any; + function hasListeners(eventName: string): boolean; + function on(eventName: string, listenerFunction: (eventInfo: eventInfo) => void, scopeObj?: Object, listenerData?: Object, priority?: number): void; + function once(eventName: string, listenerFunction: (eventInfo: eventInfo) => void, scopeObj?: Object, listenerData?: Object, priority?: number): void; + function removeAllListeners(): void; + function removeListener(eventName: string, listenerFunction: (eventInfo: eventInfo) => void): void; + type listenerRegistration = { removeListener: () => void; } @@ -288,7 +298,7 @@ declare namespace CKEDITOR { class elementPath { constructor(startNode: element, root: element); - constructor(startNode: element); + constructor(startNode: element); block: element; blockLimit: element; root: element; @@ -321,11 +331,11 @@ declare namespace CKEDITOR { deleteContents(mergeThen?: boolean): void; extractContents(mergeThen?: boolean): documentFragment; createBookmark(serializable?: boolean): bookmark; - createBookmark2(normalized: boolean): Object; + createBookmark2(normalized?: boolean): Object; createIterator(): iterator; moveToBookmark(bookmark: Object): void; getBoundaryNodes(): { startNode: node; endNode: node; }; - getCommonAncestor(includeSelf: boolean, ignoreTextNode: boolean): element; + getCommonAncestor(includeSelf?: boolean, ignoreTextNode?: boolean): element; optimize(): void; optimizeBookmark(): void; trim(ignoreStart?: boolean, ignoreEnd?: boolean): void; @@ -337,12 +347,14 @@ declare namespace CKEDITOR { selectNodeContents(node: node): void; setStart(startNode: node, startOffset: number): void; setEnd(endNode: node, endOffset: number): void; + setEndAfter(node: node): void; + setEndBefore(node: node): void; setStartAfter(node: node): void; setStartBefore(node: node): void; setStartAt(node: node, position: number): void; setEndAt(node: node, position: number): void; fixBlock(isStart: boolean, blockTag: Object): Object; - select(): selection; + select(): selection; splitBlock(blockTag: Object): Object; splitElement(toSplit: element): element; removeEmptyBlocksAtEnd(atEnd: boolean): void; @@ -380,8 +392,8 @@ declare namespace CKEDITOR { constructor(target: document); constructor(target: element); constructor(target: selection); - createBookmarks(serializable: Object): any[]; - createBookmarks2(normalized?: Object): any[]; + createBookmarks(serializable: Object): bookmark[]; + createBookmarks2(normalized: Object): Object[]; fake(element: element): void; getCommonAncestor(): element; getNative(): Object; @@ -406,8 +418,8 @@ declare namespace CKEDITOR { constructor(ranges: range[]); constructor(range: range); createIterator(): rangeListIterator; - createBokmark(serializable: boolean): Object[]; - createBookmark2(normalized: boolean): Object[]; + createBokmarks(serializable?: boolean): bookmark[]; + createBookmarks2(normalized?: boolean): Object[]; moveToBookmark(bookmarks: Object[]): void; } @@ -431,7 +443,7 @@ declare namespace CKEDITOR { insertAfter(node: node): node; insertBefore(node: node): node; insertBeforeMe(node: node): node; - getAddress(normalized: boolean): Object[]; + getAddress(normalized?: boolean): Object[]; getDocument(): document; getIndex(normalized?: boolean): number; getNextSourceNode(startFromSibling: Object, nodeType: Object, guard: Object): void; @@ -444,7 +456,7 @@ declare namespace CKEDITOR { getPosition(otherNode: Object): void; getAscendant(reference: string, includeSelf?: boolean): node; hasAscendant(name: Object, includeSelf: any): boolean; - move(preserveChildren?: boolean): node; + remove(preserveChildren?: boolean): node; replace(nodeToReplace: node): void; trim(): void; ltrim(): void; @@ -464,7 +476,7 @@ declare namespace CKEDITOR { constructor(domEvent: Event); getKey(): number; getKeystroke(): number; - preventDefault(stopPropagation: boolean): void; + preventDefault(stopPropagation?: boolean): void; stopPropagation(): void; getTarget(): node; getPhase(): number; @@ -836,7 +848,7 @@ declare namespace CKEDITOR { templates_files?: Object; templates_replaceContent?: boolean; title?: string | boolean; - toolbar?: string | (string | string[] | { name: string, items?: string[], groups?: string[] })[] | null; + toolbar?: string | (string | string[] | { name: string, items?: string[], groups?: string[] })[] | null; toolbarCanCollapse?: boolean; toolbarGroupCycling?: boolean; toolbarGroups?: (toolbarGroups | string)[]; @@ -869,19 +881,20 @@ declare namespace CKEDITOR { } module skin { - var icons: { [name: string]: { path: string } }; - function addIcon(name: string, path: string, offset?: number, bgsize?: string): void; - } + var icons: { [name: string]: { path: string } }; + function addIcon(name: string, path: string, offset?: number, bgsize?: string): void; + } class style { - constructor(something: { element: string, attributes: { [att: string]: string } }); - applyToRange(range: Range, editor: editor): void; - } + constructor(something: { element: string, attributes: { [att: string]: string } }); + applyToRange(range: Range, editor: editor): void; + } - interface editable extends dom.element { - hasFocus: boolean; - attachListener(obj: event | editable, eventName: string, listenerFunction: (ei: eventInfo) => void, - scopeobj?: {}, listenerData?: any, priority?: number): listenerRegistration; + class editable extends dom.element { + constructor(editor: editor, element: HTMLElement | dom.element); + hasFocus: boolean; + attachListener(obj: event | editable, eventName: string, listenerFunction: (ei: eventInfo) => void, + scopeobj?: {}, listenerData?: any, priority?: number): listenerRegistration; } @@ -978,7 +991,7 @@ declare namespace CKEDITOR { destroy(widget: CKEDITOR.plugins.widget, offline?: boolean): void; destroyAll(offline?: boolean): void; finalizeCreation(container: any): void; - focused: widget; + focused: widget; fire(eventName: string, data: Object, editor: editor): any; // should be boolean | Object getByElement(element: any, checkWrapperOnly: boolean): CKEDITOR.plugins.widget; hasListeners(eventName: string): boolean; @@ -1077,19 +1090,19 @@ declare namespace CKEDITOR { function add(name: string, definition: IPluginDefinition): void; function add(name: string): void; - function addExternal(name: string, path: string, fileName: string): void; + function addExternal(name: string, path: string, fileName?: string): void; function get(name: string): any; function getFilePath(name: string): string; function getPath(name: string): string; function load(name: string, callback: Function, scope?: Object): void; function setLang(pluginName: string, languageCode: string, languageEntries: any): void; - + var registered: {[key: string]: IPluginDefinition}; } interface IMenuItemDefinition { label:string, command:string, - icon: string + icon: string group:string, order:number } @@ -1142,7 +1155,7 @@ declare namespace CKEDITOR { createFakeParserElement(realElement: Object, className: Object, realElementType: Object, isResizable: Object): void; createRange(): dom.range; destroy(noUpdate?: boolean): void; - editable(): editable | null; + editable(): editable | null; editable(elementOrEditable: dom.element): void; editable(elementOrEditable: editable): void; elementPath(startNode?: dom.node): dom.elementPath; @@ -1155,6 +1168,9 @@ declare namespace CKEDITOR { getData(noEvents?: Object): string; getMenuItem(name: string): Object; getResizable(forContents: boolean): dom.element; + getSelectedHtml(toString?: false): dom.documentFragment; + getSelectedHtml(toString: true): string; + getSelectedHtml(toString?: boolean): CKEDITOR.dom.documentFragment | string; getSelection(forceRealSelection?: boolean): dom.selection; getSnapshot(): string; getStylesSet(callback: Function): void; @@ -1300,14 +1316,14 @@ declare namespace CKEDITOR { stop(): void; } - module filter { - interface allowedContentRules { + module filter { + interface allowedContentRules { - } - } + } + } class filter { - allow(newRules: CKEDITOR.filter.allowedContentRules, featureName?: string, overrideCustom?: boolean): boolean; + allow(newRules: CKEDITOR.filter.allowedContentRules, featureName?: string, overrideCustom?: boolean): boolean; } @@ -1370,10 +1386,28 @@ declare namespace CKEDITOR { } - class dtd { - + interface dtdDefinition { + [outerTagName: string]: {[innerTagName: string]: 1}; + $block: {[tagName: string]: 1}; + $blockLimit: {[tagName: string]: 1}; + $cdata: {[tagName: string]: 1}; + $editable: {[tagName: string]: 1}; + $empty: {[tagName: string]: 1}; + $inline: {[tagName: string]: 1}; + $intermediate: {[tagName: string]: 1}; + $list: {[tagName: string]: 1}; + $listItem: {[tagName: string]: 1}; + $nonBodyContent: {[tagName: string]: 1}; + $nonEditable: {[tagName: string]: 1}; + $object: {[tagName: string]: 1}; + $removeEmpty: {[tagName: string]: 1}; + $tabIndex: {[tagName: string]: 1}; + $tableContent: {[tagName: string]: 1}; + $transparent: {[tagName: string]: 1}; } + var dtd: dtdDefinition; + class ui extends event { constructor(editor: editor); @@ -1717,6 +1751,7 @@ declare namespace CKEDITOR { onLoad?: Function; onOk?: Function; onShow?: Function; + onHide?: Function; resizable?: number; title?: string; width?: number; @@ -1819,10 +1854,12 @@ declare namespace CKEDITOR { children: any[]; type: number; add(node: node): number; - add(node: node, index: number): void; + add(node: node, index: number): void; + addClass(className: string): void; clone(): element; filter(filter: filter): boolean; filterChildren(filter: filter): void; + forEach(callback: (node: node, type?: number) => void|false, type?: number, skipRoot?: boolean): void; writeHtml(writer: basicWriter, filter: filter): void; writeChildrenHtml(writer: basicWriter, filter: filter): void; replaceWithChildren(): void; @@ -1853,6 +1890,7 @@ declare namespace CKEDITOR { add(node: node, index?: number): void; filter(filter: filter): void; filterChildren(filter: filter, filterRoot?: boolean): void; + forEach(callback: (node: node, type?: number) => void|false, type?: number, skipRoot?: boolean): void; writeHtml(writer: basicWriter, filter?: filter): void; writeChildrenHtml(writer: basicWriter, filter?: filter, filterRoot?: boolean): void; forEach(callback: (node: node, type?: number) => boolean, type?: number, skipRoot?: boolean): void; @@ -1890,8 +1928,13 @@ declare namespace CKEDITOR { namespace tools { var callFunction: Function; + function clone(source: Object): Object; + function copy(source: Object): Object; function enableHtml5Elements(doc: Object, withAppend?: Boolean): void; + function isArray(object: any|null|undefined): object is T[]; + function override(originalFunction: T, functionBuilder: (originalFunction: T) => T): T; function parseCssText(styleText: string, normalize?: Boolean, nativeNormalize?: Boolean): { [key: string]: string } + function prototypedCopy(source: Object): Object; function writeCssText(style: { [key: string]: string }, sort?: Boolean): string; } diff --git a/types/clearbladejs-client/clearbladejs-client-tests.ts b/types/clearbladejs-client/clearbladejs-client-tests.ts new file mode 100644 index 0000000000..bce39bee2a --- /dev/null +++ b/types/clearbladejs-client/clearbladejs-client-tests.ts @@ -0,0 +1,193 @@ +// Testing type definitions for clearbladejs-client 1.0 +// Project: https://github.com/ClearBlade/JavaScript-API +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +let genericCallback = (error: boolean, response: Resp) => {}; + +/////////////////////////////////////// +// ClearBlade object API invocations +/////////////////////////////////////// +ClearBlade.init({ + systemKey: "abcdef", + systemSecret: "abcdefg", + callback: genericCallback +}); + +ClearBlade.setUser("test@test.com", "password"); +ClearBlade.registerUser("test@test.com", "password", genericCallback); +ClearBlade.isCurrentUserAuthenticated(genericCallback); +ClearBlade.logoutUser(genericCallback); +ClearBlade.loginAnon(genericCallback); +ClearBlade.loginUser("test@test.com", "password", genericCallback); +ClearBlade.loginUserMqtt("test@test.com", "password", genericCallback); +ClearBlade.sendPush(["user1", "user2"], {data: "Test"}, "appId: string", genericCallback); +ClearBlade.getAllCollections(genericCallback); + +let coll1 = ClearBlade.Collection("collectionID"); +let coll2 = ClearBlade.Collection({ collectionName: "collectionName" }); +let coll3 = ClearBlade.Collection({ collectionID: "collectionID" }); + +let query1 = ClearBlade.Query("collectionID"); +let query2 = ClearBlade.Query({ offset: 5, limit: 5, collectionID: "collectionID" }); +let query3 = ClearBlade.Query({ collectionName: "collectionName" }); + +let item1 = ClearBlade.Item({}, "collectionID"); +let item2 = ClearBlade.Item({}, { collectionID: "collectionID" }); + +let code = ClearBlade.Code(); +let user = ClearBlade.User(); + +let messaging = ClearBlade.Messaging({}, genericCallback); +let stats = ClearBlade.MessagingStats(); + +let edge = ClearBlade.Edge(); +let metrics = ClearBlade.Metrics(); +let device = ClearBlade.Device(); +let analytics = ClearBlade.Analytics(); +let portal = ClearBlade.Portal("MyPortal"); +let triggers = ClearBlade.Triggers(); + +ClearBlade.getEdges(query1.query, genericCallback); + +/////////////////////////////////////// +// Collection API invocations +/////////////////////////////////////// +coll1.fetch(query1.query, genericCallback); +coll1.create(ClearBlade.Item({}, ""), genericCallback); +coll1.update(query1.query, {}, genericCallback); +coll1.remove(query1.query, genericCallback); +coll1.columns(genericCallback); +coll1.count(query1.query, genericCallback); + +/////////////////////////////////////// +// Query API invocations +/////////////////////////////////////// +query1.addSortToQuery( + query1, + QuerySortDirections.QUERY_SORT_ASCENDING, + "column1" +); +query1.addFilterToQuery( + query1, + QueryConditions.QUERY_GREATERTHAN, + "key", + "value" +); +query1.ascending("string"); +query1.descending("string"); +query1.equalTo("string", "string"); +query1.greaterThan("string", 2); +query1.greaterThanEqualTo("string", false); +query1.lessThan("string", "string"); +query1.lessThanEqualTo("string", "string"); +query1.notEqualTo("string", "string"); +query1.matches("string", new RegExp(/.*/)); +query1.or(query2); +query1.setPage(1, 1); +query1.fetch(genericCallback); +query1.update({}, genericCallback); +query1.columns([]); +query1.remove(genericCallback); + +/////////////////////////////////////// +// Item API invocations +/////////////////////////////////////// +item1.save(genericCallback); +item1.refresh(genericCallback); +item1.destroy(genericCallback); + +/////////////////////////////////////// +// Code API invocations +/////////////////////////////////////// +code.create("codeName", "body: string", genericCallback); +code.update("codeName", "body: string", genericCallback); +code.delete("codeName", genericCallback); +code.execute("codeName", {}, genericCallback); +code.getCompletedServices(genericCallback); +code.getFailedServices(genericCallback); +code.getAllServices(genericCallback); + +/////////////////////////////////////// +// User API invocations +/////////////////////////////////////// +user.getUser(genericCallback); +user.setUser({}, genericCallback); +user.allUsers(query1.query, genericCallback); +user.setPassword("old_password", "new_password", genericCallback); +user.count(query1.query, genericCallback); + +/////////////////////////////////////// +// Messaging API invocations +/////////////////////////////////////// +messaging.getMessageHistoryWithTimeFrame("topic", 5, 10, 15, 20, genericCallback); +messaging.getMessageHistory("topic", 5, 15, genericCallback); +messaging.getAndDeleteMessageHistory("topic", 5, 10, 1, 20, genericCallback); +messaging.currentTopics(genericCallback); +messaging.publish("topic", {}); +messaging.publishREST("topic", { payload: Object }, genericCallback); +let mcb = (message: string) => {}; +messaging.subscribe("topic", {}, mcb); +messaging.unsubscribe("topic", {}); +messaging.disconnect(); + +/////////////////////////////////////// +// MessagingStats API invocations +/////////////////////////////////////// +stats.getAveragePayloadSize("topic: string", 5, 5, genericCallback); +stats.getOpenConnections(genericCallback); +stats.getCurrentSubscribers("topic: string", genericCallback); + +/////////////////////////////////////// +// Edge API invocations +/////////////////////////////////////// +edge.updateEdgeByName("edgename", {changedColumn: "New value"}, genericCallback); +edge.deleteEdgeByName("edgename", genericCallback); +edge.create({newEdge: Object}, "edgename", genericCallback); +edge.columns(genericCallback); +edge.count(query1.query, genericCallback); + +/////////////////////////////////////// +// Metrics API invocations +/////////////////////////////////////// +metrics.setQuery(query1.query); +metrics.getStatistics(genericCallback); +metrics.getStatisticsHistory(genericCallback); +metrics.getDBConnections(genericCallback); +metrics.getLogs(genericCallback); + +/////////////////////////////////////// +// Device API invocations +/////////////////////////////////////// +device.getDeviceByName("devicename", genericCallback); +device.updateDeviceByName("devicename", { object: Object }, true, genericCallback); +device.deleteDeviceByName("devicename", genericCallback); +device.fetch(query1.query, genericCallback); +device.update(query1.query, { object: Object }, false, genericCallback); +device.delete(query1.query, genericCallback); +device.create({ newDevice: Object }, genericCallback); +device.columns(genericCallback); +device.count(query1.query, genericCallback); + +/////////////////////////////////////// +// Analytics API invocations +/////////////////////////////////////// +analytics.getStorage({}, genericCallback); +analytics.getCount({}, genericCallback); +analytics.getEventList({}, genericCallback); +analytics.getEventTotals({}, genericCallback); +analytics.getUserEvents({}, genericCallback); + +/////////////////////////////////////// +// Portal API invocations +/////////////////////////////////////// +portal.fetch(genericCallback); +portal.update({data: Object}, genericCallback); + +/////////////////////////////////////// +// Triggers API invocations +/////////////////////////////////////// +triggers.fetchDefinitions(genericCallback); +triggers.create("triggername", {data: Object}, genericCallback); +triggers.update("triggername", {data: Object}, genericCallback); +triggers.delete("triggername", genericCallback); diff --git a/types/clearbladejs-client/global.d.ts b/types/clearbladejs-client/global.d.ts new file mode 100644 index 0000000000..d6e2e88a70 --- /dev/null +++ b/types/clearbladejs-client/global.d.ts @@ -0,0 +1,5 @@ +declare global { + var ClearBlade: ClearBladeGlobal; +} + +export {}; diff --git a/types/clearbladejs-client/index.d.ts b/types/clearbladejs-client/index.d.ts new file mode 100644 index 0000000000..4cb8c4744b --- /dev/null +++ b/types/clearbladejs-client/index.d.ts @@ -0,0 +1,436 @@ +// Type definitions for clearbladejs-client 1.0 +// Project: https://github.com/ClearBlade/JavaScript-API +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +interface Resp { + error(msg: any): never; // todo: figure out if we can have the compiler throw an error if someone adds code after this + success(msg: any): never; +} + +declare enum MessagingQOS { + MESSAGING_QOS_AT_MOST_ONCE = 0, + MESSAGING_QOS_AT_LEAST_ONCE = 1, + MESSAGING_QOS_EXACTLY_ONCE = 2 +} + +interface InitOptions { + systemKey: string; + systemSecret: string; + masterSecret?: string; + logging?: boolean; + callback?: CbCallback; + email?: string; + password?: string; + registerUser?: boolean; + useUser?: APIUser; + URI?: string; + messagingURI?: string; + messagingPort?: number; + defaultQoS?: MessagingQOS; + callTimeout?: number; + messagingAuthPort?: number; +} + +interface RequestOptions { + method?: string; + endpoint?: string; + body?: string; + qs?: string; + URI?: string; + useUser?: boolean; + authToken?: string; + timeout?: number; + user?: APIUser; +} + +interface APIUser { + email: string; + authToken: string; +} + +type CbCallback = (error: boolean, response: Resp) => void; + +interface ClearBladeGlobal extends ClearBladeInt { + MESSAGING_QOS_AT_MOST_ONCE: MessagingQOS.MESSAGING_QOS_AT_MOST_ONCE; + MESSAGING_QOS_AT_LEAST_ONCE: MessagingQOS.MESSAGING_QOS_AT_LEAST_ONCE; + MESSAGING_QOS_EXACTLY_ONCE: MessagingQOS.MESSAGING_QOS_EXACTLY_ONCE; + + request(options: RequestOptions, callback: CbCallback): void; +} + +interface ClearBladeInt { + systemKey: string; + systemSecret: string; + masterSecret: string; + URI: string; + messagingURI: string; + messagingPort: number; + logging: boolean; + defaultQoS: MessagingQOS; + + init(options: InitOptions): void; + setUser(email: string, password: string): void; + registerUser(email: string, password: string, callback: CbCallback): void; + isCurrentUserAuthenticated(callback: CbCallback): void; + logoutUser(callback: CbCallback): void; + loginAnon(callback: CbCallback): void; + loginUser(email: string, password: string, callback: CbCallback): void; + loginUserMqtt(email: string, password: string, callback: CbCallback): void; + registerMasterCallback(callback: CbCallback): void; + Collection(options: string | CollectionOptionsWithName | CollectionOptionsWithID): Collection; + Query( + options: string | QueryOptionsWithName | QueryOptionsWithID + ): QueryObj; + Item(data: object, collectionID: string | ItemOptions): Item; + Code(): Code; + User(): AppUser; + Messaging(options: MessagingOptions, callback: CbCallback): Messaging; + MessagingStats(): MessagingStats; + sendPush( + users: string[], + payload: object, + appId: string, + callback: CbCallback + ): void; + getEdges(query: Query, callback: CbCallback): void; + Edge(): Edge; + Metrics(): Metrics; + Device(): Device; + Analytics(): Analytics; + Portal(name: string): Portal; + Triggers(): Triggers; + + getAllCollections(callback: CbCallback): void; +} +interface CollectionOptionsWithName { + collectionName: string; +} + +interface CollectionOptionsWithID { + collectionID: string; +} + +interface Collection { + name: string; + endpoint: string; + isUsingCollectionName: boolean; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + fetch(query: Query, callback: CbCallback): void; + create(newItem: Item, callback: CbCallback): void; + update(query: Query, changes: object, callback: CbCallback): void; + remove(query: Query, callback: CbCallback): void; + columns(callback: CbCallback): void; + count(query: Query, callback: CbCallback): void; +} + +declare enum QuerySortDirections { + QUERY_SORT_ASCENDING = "ASC", + QUERY_SORT_DESCENDING = "DESC" +} + +declare enum QueryConditions { + QUERY_EQUAL = "EQ", + QUERY_NOTEQUAL = "NEQ", + QUERY_GREATERTHAN = "GT", + QUERY_GREATERTHAN_EQUAL = "GTE", + QUERY_LESSTHAN = "LT", + QUERY_LESSTHAN_EQUAL = "LTE", + QUERY_MATCHES = "RE" +} + +type QueryValue = string | number | boolean; + +interface QueryOptions { + offset?: number; + limit?: number; +} + +interface QueryOptionsWithName + extends CollectionOptionsWithName, + QueryOptions {} +interface QueryOptionsWithID extends CollectionOptionsWithID, QueryOptions {} + +interface Query { + SELECTCOLUMNS?: string[]; + SORT?: QuerySortDirections; + FILTERS?: QueryFilter[]; + PAGESIZE?: number; + PAGENUM?: number; +} + +interface QueryFilter { + [QueryConditions: string]: QueryFilterValue; +} + +interface QueryFilterValue { + [name: string]: QueryValue; +} + +interface QueryObj { + endpoint: string; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + query: Query; + OR: Query[]; + offset: number; + limit: number; + + addSortToQuery( + query: QueryObj, + direction: QuerySortDirections, + column: string + ): void; + addFilterToQuery( + query: QueryObj, + condition: QueryConditions, + key: string, + value: QueryValue + ): void; + ascending(field: string): void; + descending(field: string): void; + equalTo(field: string, value: QueryValue): void; + greaterThan(field: string, value: QueryValue): void; + greaterThanEqualTo(field: string, value: QueryValue): void; + lessThan(field: string, value: QueryValue): void; + lessThanEqualTo(field: string, value: QueryValue): void; + notEqualTo(field: string, value: QueryValue): void; + matches(field: string, pattern: RegExp): void; + or(query: QueryObj): void; + setPage(pageSize: number, pageNum: number): void; + fetch(callback: CbCallback): void; + update(changes: object, callback: CbCallback): void; + columns(columnsArray: string[]): void; + remove(callback: CbCallback): void; +} + +interface ItemOptions extends CollectionOptionsWithID {} + +interface Item { + data: object; + + save(callback: CbCallback): void; + refresh(callback: CbCallback): void; + destroy(callback: CbCallback): void; +} + +interface Code { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + callTimeout: number; + + create(name: string, body: string, callback: CbCallback): void; + update(name: string, body: string, callback: CbCallback): void; + delete(name: string, callback: CbCallback): void; + execute(name: string, params: object, callback: CbCallback): void; + getCompletedServices(callback: CbCallback): void; + getFailedServices(callback: CbCallback): void; + getAllServices(callback: CbCallback): void; +} + +interface AppUser { + user: APIUser; + URI: string; + endpoint: string; + systemKey: string; + systemSecret: string; + callTimeout: number; + + getUser(callback: CbCallback): void; + setUser(data: object, callback: CbCallback): void; + allUsers(query: Query, callback: CbCallback): void; + setPassword( + old_password: string, + new_password: string, + callback: CbCallback + ): void; + count(query: Query, callback: CbCallback): void; +} + +interface Messaging { + user: APIUser; + URI: string; + endpoint: string; + systemKey: string; + systemSecret: string; + callTimeout: number; + client: Paho.MQTT.Client; + + getMessageHistoryWithTimeFrame( + topic: string, + count: number, + last: number, + start: number, + stop: number, + callback: CbCallback + ): void; + getMessageHistory( + topic: string, + last: number, + count: number, + callback: CbCallback + ): void; + getAndDeleteMessageHistory( + topic: string, + count: number, + last: number, + start: number, + stop: number, + callback: CbCallback + ): void; + currentTopics(callback: CbCallback): void; + publish(topic: string, payload: object): void; + publishREST(topic: string, payload: object, callback: CbCallback): void; + subscribe( + topic: string, + options: MessagingSubscribeOptions, + messageCallback: MessageCallback + ): void; + unsubscribe(topic: string, options: MessagingSubscribeOptions): void; + disconnect(): void; +} + +interface CommonMessagingProperties { + cleanSession?: boolean; + useSSL?: boolean; + hosts?: string; + ports?: string; + onSuccess?: Function; + onFailure?: Function; +} + +interface MessagingOptions extends CommonMessagingProperties { + qos?: MessagingQOS; +} + +interface MessagingConfiguration extends CommonMessagingProperties { + userName: string; + password: string; +} + +type MessageCallback = (message: string) => void; + +interface MessagingSubscribeOptions { + qos?: MessagingQOS; + invocationContext?: object; + onSuccess?: Function; + onFailure?: Function; + timeout?: number; +} + +interface MessagingStats { + user: APIUser; + URI: string; + endpoint: string; + systemKey: string; + + getAveragePayloadSize( + topic: string, + start: number, + stop: number, + callback: CbCallback + ): void; + getOpenConnections(callback: CbCallback): void; + getCurrentSubscribers(topic: string, callback: CbCallback): void; +} + +interface Edge { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + updateEdgeByName(name: string, object: object, callback: CbCallback): void; + deleteEdgeByName(name: string, callback: CbCallback): void; + create(newEdge: object, name: string, callback: CbCallback): void; + columns(callback: CbCallback): void; + count(query: Query, callback: CbCallback): void; +} + +interface Metrics { + user: APIUser; + URI: string; + systemKey: string; + + setQuery(query: Query): void; + getStatistics(callback: CbCallback): void; + getStatisticsHistory(callback: CbCallback): void; + getDBConnections(callback: CbCallback): void; + getLogs(callback: CbCallback): void; +} + +interface Device { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + getDeviceByName(name: string, callback: CbCallback): void; + updateDeviceByName( + name: string, + object: object, + trigger: boolean, + callback: CbCallback + ): void; + deleteDeviceByName(name: string, callback: CbCallback): void; + fetch(query: Query, callback: CbCallback): void; + update( + query: Query, + object: object, + trigger: boolean, + callback: CbCallback + ): void; + delete(query: Query, callback: CbCallback): void; + create(newDevice: object, callback: CbCallback): void; + columns(callback: CbCallback): void; + count(query: Query, callback: CbCallback): void; +} + +interface Analytics { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + getStorage(filter: QueryFilter, callback: CbCallback): void; + getCount(filter: QueryFilter, callback: CbCallback): void; + getEventList(filter: QueryFilter, callback: CbCallback): void; + getEventTotals(filter: QueryFilter, callback: CbCallback): void; + getUserEvents(filter: QueryFilter, callback: CbCallback): void; +} + +interface Portal { + name: string; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + fetch(callback: CbCallback): void; + update(data: object, callback: CbCallback): void; +} + +interface Triggers { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + fetchDefinitions(callback: CbCallback): void; + create(name: string, data: object, callback: CbCallback): void; + update(name: string, data: object, callback: CbCallback): void; + delete(name: string, callback: CbCallback): void; +} + +declare var ClearBlade: ClearBladeGlobal; diff --git a/types/clearbladejs-client/tsconfig.json b/types/clearbladejs-client/tsconfig.json new file mode 100644 index 0000000000..7821d7db9e --- /dev/null +++ b/types/clearbladejs-client/tsconfig.json @@ -0,0 +1,29 @@ +{ + "compilerOptions": { + "target": "ES5", + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clearbladejs-client-tests.ts", + "global.d.ts" + ], + "exclude": [ + "**/clearbladejs-node/*", + "**/clearbladejs-server/*" + ] +} \ No newline at end of file diff --git a/types/clearbladejs-client/tslint.json b/types/clearbladejs-client/tslint.json new file mode 100644 index 0000000000..d538486d5e --- /dev/null +++ b/types/clearbladejs-client/tslint.json @@ -0,0 +1,7 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "ban-types": false, + "no-empty-interface": false + } +} \ No newline at end of file diff --git a/types/clearbladejs-node/clearbladejs-node-tests.ts b/types/clearbladejs-node/clearbladejs-node-tests.ts new file mode 100644 index 0000000000..e9cb585d50 --- /dev/null +++ b/types/clearbladejs-node/clearbladejs-node-tests.ts @@ -0,0 +1,124 @@ +// Testing type definitions for clearbladejs-node 1.0 +// Project: https://github.com/ClearBlade/Node-SDK +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import { ClearBlade, Resp, QuerySortDirections, QueryConditions } from "."; + +// Sample code for clearbladejs Node SDK v1.0.0 used to test typescript definitions + +const genericCallback = (error: boolean, response: Resp) => {}; + +/////////////////////////////////////// +// ClearBlade object API invocations +/////////////////////////////////////// +ClearBlade.init({ + email: "a@a.com", + password: "a", + systemKey: "testkey", + systemSecret: "testsecret", + URI: "https://mycbplatform.com", + messagingURI: "mycbplatform.com", + callback: genericCallback +}); + +ClearBlade.setUser("test@test.com", "password"); +ClearBlade.registerUser("test@test.com", "password", genericCallback); +ClearBlade.isCurrentUserAuthenticated(genericCallback); +if (!ClearBlade.isObjectEmpty({prop: "test"})) { + ClearBlade.logger("Object is not empty"); +} + +ClearBlade.validateEmailPassword("test@test.com", "password"); + +ClearBlade.logoutUser(genericCallback); +ClearBlade.loginAnon(genericCallback); +ClearBlade.loginUser("test@test.com", "password", genericCallback); + +ClearBlade.sendPush([], {}, "appId: string", genericCallback); + +// execute(error: Object, response: Object, callback: ClearBladeCallback): void; +// makeKVPair(key: string, value: string): KeyValuePair; +// request(options: RequestOptions, callback: RequestCallback): void; + +const coll1 = ClearBlade.Collection("collectionID"); +const coll2 = ClearBlade.Collection({collectionName: "collectionName"}); +const coll3 = ClearBlade.Collection({collectionID: "collectionID"}); + +const query1 = ClearBlade.Query("collectionID"); +const query2 = ClearBlade.Query({offset: 5, limit: 5, collectionID: "collectionID"}); +const query3 = ClearBlade.Query({collectionName: "collectionName"}); +const query4 = ClearBlade.Query({collection: "collectionID"}); + +ClearBlade.addToQuery(query1, "key", "value"); +ClearBlade.addFilterToQuery(query1, QueryConditions.QUERY_GREATERTHAN, "key", "value"); +ClearBlade.addSortToQuery(query1, QuerySortDirections.QUERY_SORT_ASCENDING, "column1"); + +const opQueryStr = ClearBlade.parseOperationQuery(query1.query); +const parse1: string = ClearBlade.parseQuery(query1.query); +const parse2: string = ClearBlade.parseQuery(query1); + +const item1 = ClearBlade.Item({}, "hello"); +const item2 = ClearBlade.Item({}, {collectionID: "hello"}); + +const code = ClearBlade.Code(); +const user = ClearBlade.User(); + +const messaging = ClearBlade.Messaging({}, genericCallback); + +/////////////////////////////////////// +// Collection API invocations +/////////////////////////////////////// +coll1.fetch(query1, genericCallback); +coll1.create(ClearBlade.Item({}, ""), genericCallback); +coll1.update(query1.query, {}, genericCallback); +coll1.remove(query1.query, genericCallback); + +/////////////////////////////////////// +// Query API invocations +/////////////////////////////////////// +query1.ascending("string"); +query1.descending("string"); +query1.equalTo("string", "string"); +query1.greaterThan("string", 2); +query1.greaterThanEqualTo("string", false); +query1.lessThan("string", "string"); +query1.lessThanEqualTo("string", "string"); +query1.notEqualTo("string", "string"); +query1.or(query2); +query1.setPage(1, 1); +query1.fetch(genericCallback); +query1.update({}, genericCallback); +query1.remove(genericCallback); + +/////////////////////////////////////// +// Item API invocations +/////////////////////////////////////// +item1.save(); +item1.refresh(); +item1.destroy(); + +/////////////////////////////////////// +// Code API invocations +/////////////////////////////////////// +code.execute("codeName", {}, genericCallback); + +/////////////////////////////////////// +// User API invocations +/////////////////////////////////////// +user.getUser(genericCallback); +user.setUser({}, genericCallback); +user.allUsers(query1.query, genericCallback); + +/////////////////////////////////////// +// Messaging API invocations +/////////////////////////////////////// +messaging.getMessageHistory("topic: string", 5, 15, genericCallback); + +messaging.publish("topic: string", {}); + +messaging.subscribe("my/topic", {}, messageReceivedCb); + +function messageReceivedCb(message: string) { + messaging.unsubscribe("my/topic"); +} diff --git a/types/clearbladejs-node/index.d.ts b/types/clearbladejs-node/index.d.ts new file mode 100644 index 0000000000..192b1a97ee --- /dev/null +++ b/types/clearbladejs-node/index.d.ts @@ -0,0 +1,249 @@ +// Type definitions for clearbladejs-node 1.0 +// Project: https://github.com/ClearBlade/Node-SDK +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import { Response, RequestCallback } from "request/index"; +// import {//PacketCallback } from "mqtt"; + +export enum MessagingQOS { + MESSAGING_QOS_AT_MOST_ONCE = 0, + MESSAGING_QOS_AT_LEAST_ONCE = 1, + MESSAGING_QOS_EXACTLY_ONCE = 2 +} + +export interface Resp { + error(msg: any): never; + success(msg: any): never; +} + +export interface InitOptions { + systemKey: string; + systemSecret: string; + logging?: boolean; + callback?: CbCallback; + email?: string; + password?: string; + registerUser?: boolean; + useUser?: APIUser; + URI?: string; + messagingURI?: string; + messagingPort?: number; + defaultQoS?: MessagingQOS; + callTimeout?: number; +} + +export interface RequestOptions { + systemKey: string; + systemSecret: string; + method?: string; + endpoint?: string; + body?: string; + qs?: string; + URI?: string; + useUser?: boolean; + authToken?: string; + user?: APIUser; +} + +export interface APIUser { + email: string; + authToken: string; +} + +export interface KeyValuePair { + [key: string]: any; +} + +export type CbCallback = (error: boolean, response: Resp) => void; + +export default interface ClearBladeGlobal extends ClearBladeInt { + isCurrentUserAuthenticated(callback: CbCallback): void; +} + +export interface ClearBladeInt { + addToQuery(queryObj: QueryObj, key: string, value: string): void; + addFilterToQuery(queryObj: QueryObj, condition: QueryConditions, key: string, value: QueryValue): void; + addSortToQuery(queryObj: QueryObj, direction: QuerySortDirections, column: string): void; + Code(): Code; + Collection(options: string | CollectionOptionsWithName | CollectionOptionsWithID): Collection; + execute(error: object, response: object, callback: CbCallback): void; + init(options: InitOptions): void; + isObjectEmpty(obj: object): boolean; + Item(data: object, options: string | ItemOptions): Item; + logger(message: string): void; + loginAnon(callback: CbCallback): void; + loginUser(email: string, password: string, callback: CbCallback): void; + logoutUser(callback: CbCallback): void; + makeKVPair(key: string, value: string): KeyValuePair; + parseOperationQuery(query: Query): string; + parseQuery(query: Query | QueryObj): string; + Query(options: string | QueryOptionsWithCollection | QueryOptionsWithName | QueryOptionsWithID): QueryObj; + registerUser(email: string, password: string, callback: CbCallback): void; + request(options: RequestOptions, callback: RequestCallback): void; + setUser(email: string, password: string): void; + User(): AppUser; + Messaging(options: MessagingOptions, callback: CbCallback): Messaging; + sendPush(users: string[], payload: object, appId: string, callback: CbCallback): void; + validateEmailPassword(email: string, password: string): void; +} + +export interface CollectionOptionsWithName { + collectionName: string; +} + +export interface CollectionOptionsWithID { + collectionID: string; +} + +export interface Collection { + endpoint: string; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + fetch(query: QueryObj, callback: CbCallback): void; + create(newItem: Item, callback: CbCallback): void; + update(query: Query, changes: object, callback: CbCallback): void; + remove(query: Query, callback: CbCallback): void; +} + +export enum QuerySortDirections { + QUERY_SORT_ASCENDING = 'ASC', + QUERY_SORT_DESCENDING = 'DESC' +} + +export enum QueryConditions { + QUERY_EQUAL = 'EQ', + QUERY_NOTEQUAL = 'NEQ', + QUERY_GREATERTHAN = 'GT', + QUERY_GREATERTHAN_EQUAL = 'GTE', + QUERY_LESSTHAN = 'LT', + QUERY_LESSTHAN_EQUAL = 'LTE', + QUERY_MATCHES = 'RE' +} + +export type QueryValue = string|number|boolean; + +export interface QueryOptions { + offset?: number; + limit?: number; +} + +export interface QueryOptionsWithCollection extends QueryOptions { + collection: string; +} + +export interface QueryOptionsWithName extends CollectionOptionsWithName, QueryOptions {} + +export interface QueryOptionsWithID extends CollectionOptionsWithID, QueryOptions {} + +export interface Query { + SELECTCOLUMNS?: string[]; + SORT?: QuerySortDirections; + FILTERS?: QueryFilter[]; + PAGESIZE?: number; + PAGENUM?: number; +} + +export interface QueryFilter { + [QueryConditions: string]: QueryFilterValue; +} + +export interface QueryFilterValue { + [name: string]: QueryValue; +} + +export interface QueryObj { + endpoint: string; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + query: Query; + OR: Query[]; + offset: number; + limit: number; + + ascending(field: string): Query; + descending(field: string): Query; + equalTo(field: string, value: QueryValue): Query; + greaterThan(field: string, value: QueryValue): Query; + greaterThanEqualTo(field: string, value: QueryValue): Query; + lessThan(field: string, value: QueryValue): Query; + lessThanEqualTo(field: string, value: QueryValue): Query; + notEqualTo(field: string, value: QueryValue): Query; + matches(field: string, pattern: string): Query; + or(query: QueryObj): Query; + setPage(pageSize: number, pageNum: number): Query; + fetch(callback: CbCallback): void; + update(changes: object, callback: CbCallback): void; + remove(callback: CbCallback): void; +} + +export interface ItemOptions extends CollectionOptionsWithID {} + +export interface Item { + data: object; + + save(): void; + refresh(): void; + destroy(): void; +} + +export interface Code { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + callTimeout: number; + URIPrefix: string; + + execute(name: string, params: object, callback: CbCallback): void; +} + +export interface AppUser { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + getUser(callback: CbCallback): void; + setUser(data: object, callback: CbCallback): void; + allUsers(query: Query, callback: CbCallback): void; +} + +export interface Messaging { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + client: object; + + getMessageHistory(topic: string, startTime: number, count: number, callback: CbCallback): void; + publish(topic: string, payload: object): void; + subscribe(topic: string, options: MessagingSubscribeOptions, messageCallback: MessageCallback): void; + unsubscribe(topic: string, callback?: (error?: Error, packet?: object) => any): void; +} + +export interface CommonMessagingProperties { + hosts?: string; + ports?: string; +} + +export interface MessagingOptions extends CommonMessagingProperties { + qos?: MessagingQOS; +} + +export interface MessagingSubscribeOptions { + qos?: MessagingQOS; + timeout?: number; +} + +export type MessageCallback = (message: string) => void; + +export let ClearBlade: ClearBladeGlobal; diff --git a/types/clearbladejs-node/tsconfig.json b/types/clearbladejs-node/tsconfig.json new file mode 100644 index 0000000000..67aea82d3f --- /dev/null +++ b/types/clearbladejs-node/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compileOnSave": true, + "compilerOptions": { + "target": "ES5", + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clearbladejs-node-tests.ts" + ], + "exclude": [ + "**/clearbladejs-client/*", + "**/clearbladejs-server/*" + ] +} \ No newline at end of file diff --git a/types/clearbladejs-node/tslint.json b/types/clearbladejs-node/tslint.json new file mode 100644 index 0000000000..2e3f95d861 --- /dev/null +++ b/types/clearbladejs-node/tslint.json @@ -0,0 +1,7 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "no-empty-interface": false, + "no-relative-import-in-test": false + } +} \ No newline at end of file diff --git a/types/clearbladejs-server/clearbladejs-server-tests.ts b/types/clearbladejs-server/clearbladejs-server-tests.ts new file mode 100644 index 0000000000..d240f181ea --- /dev/null +++ b/types/clearbladejs-server/clearbladejs-server-tests.ts @@ -0,0 +1,192 @@ +// Testing type definitions for clearbladejs-server 1.0 +// Project: https://github.com/ClearBlade/JavaScript-API +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +const genericCallback = (error: boolean, response: Resp) => {}; + +/////////////////////////////////////// +// ClearBlade object API invocations +/////////////////////////////////////// +ClearBlade.init({ + systemKey: "abcdef", + systemSecret: "abcdefg", + callback: genericCallback +}); + +ClearBlade.init({request: { + isLogging: false, + params: { + param1: "1", + param2: 2 + }, + systemKey: "abcdef", + systemSecret: "abcdef", + userEmail: "test@test.com", + userToken: "abcdef", + userid: "abcdef", +}}); + +const about = ClearBlade.about(); +ClearBlade.setUser("test@test.com", "authtoken", "userId"); +ClearBlade.registerUser("test@test.com", "password", genericCallback); +ClearBlade.isCurrentUserAuthenticated(genericCallback); +ClearBlade.logoutUser(genericCallback); +ClearBlade.loginAnon(genericCallback); +ClearBlade.loginUser("test@test.com", "password", genericCallback); + +ClearBlade.getAllCollections(genericCallback); +const edgeID = ClearBlade.edgeId(); +const isEdge = ClearBlade.isEdge(genericCallback); +if (ClearBlade.isObjectEmpty({test: "test"})) { + ClearBlade.logger("Object is empty"); +} +const kvPair = ClearBlade.makeKVPair("key", "value"); + +const coll1 = ClearBlade.Collection("collectionID"); +const coll2 = ClearBlade.Collection({ collectionName: "collectionName" }); +const coll3 = ClearBlade.Collection({ collectionID: "collectionID" }); +const coll4 = ClearBlade.Collection({ collection: "collectionID" }); + +const query1 = ClearBlade.Query({ collectionID: "collectionID" }); +const query2 = ClearBlade.Query({ collectionName: "collectionName" }); +const query3 = ClearBlade.Query({ collection: "collectionID" }); + +const item1 = ClearBlade.Item({}, "collectionID"); +const item2 = ClearBlade.Item({}, { collectionID: "collectionID" }); + +const code = ClearBlade.Code(); +const deployment = ClearBlade.Deployment(); +const user = ClearBlade.User(); + +const messaging = ClearBlade.Messaging({}, genericCallback); + +const device = ClearBlade.Device(); + +ClearBlade.addToQuery(query1, "key", "value"); +ClearBlade.addSortToQuery( + query1, + QuerySortDirections.QUERY_SORT_ASCENDING, + "column1" +); +ClearBlade.addFilterToQuery( + query1, + QueryConditions.QUERY_GREATERTHAN, + "key", + "value" +); + +ClearBlade.newCollection("collectionName", genericCallback); + +const parseOperation = ClearBlade.parseOperationQuery(query1.query); +const parseQuery1 = ClearBlade.parseQuery(query1); +const parseQuery2 = ClearBlade.parseQuery(query1.query); + +ClearBlade.createDevice("devicename", {type: "devicetype"}, false, genericCallback); +ClearBlade.deleteDevice("devicename", true, genericCallback); +ClearBlade.updateDevice("devicename", {type: "devicetype"}, true, genericCallback); +ClearBlade.getDeviceByName("devicename", genericCallback); +ClearBlade.getAllDevicesForSystem(genericCallback); +ClearBlade.validateEmailPassword("test@test.com", "password"); + +/////////////////////////////////////// +// Collection API invocations +/////////////////////////////////////// +coll1.addColumn({name: "column1"}, genericCallback); +coll1.dropColumn("column1", genericCallback); +coll1.deleteCollection(genericCallback); +coll1.fetch(query1.query, genericCallback); +coll1.create(ClearBlade.Item({}, ""), genericCallback); +coll1.update(query1.query, {}, genericCallback); +coll1.remove(query1.query, genericCallback); +coll1.columns(genericCallback); +coll1.count(query1.query, genericCallback); + +/////////////////////////////////////// +// Query API invocations +/////////////////////////////////////// +query2.ascending("string"); +query1.descending("string"); +query1.equalTo("string", "string"); +query1.greaterThan("string", 2); +query1.greaterThanEqualTo("string", false); +query1.lessThan("string", "string"); +query1.lessThanEqualTo("string", "string"); +query1.notEqualTo("string", "string"); +query1.matches("string", ".*"); +query1.or(query2); +query1.setPage(1, 1); +query1.fetch(genericCallback); +query1.update({}, genericCallback); +query1.columns([]); +query1.remove(genericCallback); + +/////////////////////////////////////// +// Item API invocations +/////////////////////////////////////// +item1.save(); +item1.refresh(); +item1.destroy(); + +/////////////////////////////////////// +// Code API invocations +/////////////////////////////////////// +code.execute("codeName", {}, true, genericCallback); +code.getAllServices(genericCallback); + +/////////////////////////////////////// +// Deployment API invocations +/////////////////////////////////////// +deployment.create("deploymentname", "deployment description", {}, genericCallback); +deployment.update("deploymentname", {}, genericCallback); +deployment.delete("deploymentname", genericCallback); +deployment.read("deploymentname", genericCallback); +deployment.readAll(query1, genericCallback); + +/////////////////////////////////////// +// User API invocations +/////////////////////////////////////// +user.getUser(genericCallback); +user.setUser({}, genericCallback); +user.setUsers(query2, {name: "Fred"}, genericCallback); +user.allUsers(query1, genericCallback); +user.count(query1, genericCallback); + +/////////////////////////////////////// +// Messaging API invocations +/////////////////////////////////////// +messaging.getMessageHistoryWithTimeFrame("topic", 5, 10, 15, 20, genericCallback); +messaging.getMessageHistory("topic", 5, 15, genericCallback); +messaging.getAndDeleteMessageHistory("topic", 5, 10, 1, 20, genericCallback); +messaging.getCurrentTopics(genericCallback); +messaging.publish("topic", "payload"); + +/////////////////////////////////////// +// Device API invocations +/////////////////////////////////////// +device.fetch(query1.query, genericCallback); +device.update(query1.query, { object: Object }, genericCallback); +device.delete(query1.query, genericCallback); +device.create({ newDevice: Object }, genericCallback); + +/////////////////////////////////////// +// Triggers API invocations +/////////////////////////////////////// +ClearBlade.Trigger.Create( + "triggername", + { + system_key: "key", + name: "triggername", + def_module: TriggerModule.DEVICE, + def_name: "someName", + key_value_pairs: [], + service_name: "ServiceName" + }, + genericCallback); +ClearBlade.Trigger.Fetch("triggername", genericCallback); + +/////////////////////////////////////// +// Timers API invocations +/////////////////////////////////////// +ClearBlade.Timer.Create("timername", {}, genericCallback); +ClearBlade.Timer.Fetch("timername", genericCallback); diff --git a/types/clearbladejs-server/global.d.ts b/types/clearbladejs-server/global.d.ts new file mode 100644 index 0000000000..d6e2e88a70 --- /dev/null +++ b/types/clearbladejs-server/global.d.ts @@ -0,0 +1,5 @@ +declare global { + var ClearBlade: ClearBladeGlobal; +} + +export {}; diff --git a/types/clearbladejs-server/index.d.ts b/types/clearbladejs-server/index.d.ts new file mode 100644 index 0000000000..fb3ef065ce --- /dev/null +++ b/types/clearbladejs-server/index.d.ts @@ -0,0 +1,335 @@ +// Type definitions for clearbladejs-server 1.0 +// Project: https://docs.clearblade.com/v/3/4-developer_reference/platformsdk/ClearBlade.js/ +// Definitions by: Jim Bouquet +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +interface BasicReq { + readonly isLogging: boolean; + readonly params: { + [id: string]: any; + }; + readonly systemKey: string; + readonly systemSecret: string; + readonly userEmail: string; + readonly userToken: string; + readonly userid: string; +} +type ReqTypes = BasicReq; +declare var req: ReqTypes; +interface Resp { + error(msg: any): never; + success(msg: any): never; +} +declare var resp: Resp; + +declare enum MessagingQOS { + MESSAGING_QOS_AT_MOST_ONCE = 0, + MESSAGING_QOS_AT_LEAST_ONCE = 1, + MESSAGING_QOS_EXACTLY_ONCE = 2 +} + +interface InitOptions { + systemKey: string; + systemSecret: string; + logging?: boolean; + callback?: CbCallback; + authToken?: string; + userToken?: string; + email?: string; + password?: string; + registerUser?: boolean; + useUser?: APIUser; + URI?: string; + messagingURI?: string; + messagingPort?: number; + defaultQoS?: MessagingQOS; + callTimeout?: number; +} + +interface APIUser { + email: string; + authToken: string; + user_id?: string; +} + +interface KeyValuePair { + [key: string]: any; +} + +type CbCallback = (error: boolean, response: Resp) => void; + +interface ClearBladeGlobal extends ClearBladeInt { + user: APIUser; +} + +interface ClearBladeInt { + Trigger: TriggerClass; + Timer: TimerClass; + + about(): string; + addToQuery(queryObj: QueryObj, key: string, value: string): void; + addFilterToQuery(queryObj: QueryObj, condition: QueryConditions, key: string, value: QueryValue): void; + addSortToQuery(queryObj: QueryObj, direction: QuerySortDirections, column: string): void; + Code(): Code; + Collection(options: string | CollectionOptionsWithName | CollectionOptionsWithID | CollectionOptionsWithCollection): Collection; + Deployment(): Deployment; + Device(): Device; + edgeId(): string; + execute(error: object, response: object, callback: CbCallback): any; + getAllCollections(callback: CbCallback): void; + http(): object; + init(options: InitOptions | {request: BasicReq}): void; + isEdge(callback: CbCallback): boolean; + isCurrentUserAuthenticated(callback: CbCallback): void; + isObjectEmpty(obj: object): boolean; + Item(data: object, options: string | ItemOptions): Item; + logger(message: string): void; + loginAnon(callback: CbCallback): void; + loginUser(email: string, password: string, callback: CbCallback): void; + logoutUser(callback: CbCallback): void; + makeKVPair(key: string, value: string): KeyValuePair; + Messaging(options: MessagingOptions, callback: CbCallback): Messaging; + newCollection(name: string, callback: CbCallback): void; + Query(options: QueryOptionsWithCollection | QueryOptionsWithName | QueryOptionsWithID): QueryObj; + parseOperationQuery(query: Query): string; + parseQuery(query: Query | QueryObj): string; + registerUser(email: string, password: string, callback: CbCallback): void; + setUser(email: string, authToken: string, userId: string): void; + User(): AppUser; + + createDevice(name: string, data: object, causeTrigger: boolean, callback: CbCallback): void; + deleteDevice(name: string, causeTrigger: boolean, callback: CbCallback): void; + updateDevice(name: string, data: object, causeTrigger: boolean, callback: CbCallback): void; + getDeviceByName(name: string, callback: CbCallback): void; + getAllDevicesForSystem(callback: CbCallback): void; + validateEmailPassword(email: string, password: string): void; +} + +interface CollectionOptionsWithCollection { + collection: string; +} + +interface CollectionOptionsWithName { + collectionName: string; +} + +interface CollectionOptionsWithID { + collectionID: string; +} + +interface Collection { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + addColumn(options: object, callback: CbCallback): void; + dropColumn(name: string, callback: CbCallback): void; + deleteCollection(callback: CbCallback): void; + fetch(query: Query, callback: CbCallback): void; + create(newItem: Item, callback: CbCallback): void; + update(query: Query, changes: object, callback: CbCallback): void; + remove(query: Query, callback: CbCallback): void; + columns(callback: CbCallback): void; + count(query: Query, callback: CbCallback): void; +} + +declare enum QuerySortDirections { + QUERY_SORT_ASCENDING = 'ASC', + QUERY_SORT_DESCENDING = 'DESC' +} + +declare enum QueryConditions { + QUERY_EQUAL = 'EQ', + QUERY_NOTEQUAL = 'NEQ', + QUERY_GREATERTHAN = 'GT', + QUERY_GREATERTHAN_EQUAL = 'GTE', + QUERY_LESSTHAN = 'LT', + QUERY_LESSTHAN_EQUAL = 'LTE', + QUERY_MATCHES = 'RE' +} + +type QueryValue = string|number|boolean; + +interface QueryOptions { + offset?: number; + limit?: number; +} + +interface QueryOptionsWithCollection extends CollectionOptionsWithCollection, QueryOptions {} + +interface QueryOptionsWithName extends CollectionOptionsWithName, QueryOptions {} + +interface QueryOptionsWithID extends CollectionOptionsWithID, QueryOptions {} + +interface Query { + SELECTCOLUMNS?: string[]; + SORT?: QuerySortDirections; + FILTERS?: QueryFilter[]; + PAGESIZE?: number; + PAGENUM?: number; +} + +interface QueryFilter { + [QueryConditions: string]: QueryFilterValue; +} + +interface QueryFilterValue { + [name: string]: QueryValue; +} + +interface QueryObj { + id: string; + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + query: Query; + OR: Query[]; + offset: number; + limit: number; + + ascending(field: string): void; + descending(field: string): void; + equalTo(field: string, value: QueryValue): void; + greaterThan(field: string, value: QueryValue): void; + greaterThanEqualTo(field: string, value: QueryValue): void; + lessThan(field: string, value: QueryValue): void; + lessThanEqualTo(field: string, value: QueryValue): void; + notEqualTo(field: string, value: QueryValue): void; + matches(field: string, pattern: QueryValue): void; + or(query: QueryObj): void; + setPage(pageSize: number, pageNum: number): void; + fetch(callback: CbCallback): void; + update(changes: object, callback: CbCallback): void; + columns(columnsArray: string[]): void; + remove(callback: CbCallback): void; +} + +interface ItemOptions extends CollectionOptionsWithID {} + +interface Item { + data: object; + + save(): void; + refresh(): void; + destroy(): void; +} + +interface Code { + user: APIUser; + systemKey: string; + systemSecret: string; + + execute(name: string, params: object, loggingEnabled: boolean, callback: CbCallback): void; + getAllServices(callback: CbCallback): void; +} + +interface DeploymentOptions {} + +interface Deployment { + user: APIUser; + systemKey: string; + systemSecret: string; + + create(name: string, description: string, options: DeploymentOptions, callback: CbCallback): void; + update(name: string, options: DeploymentOptions, callback: CbCallback): void; + delete(name: string, callback: CbCallback): void; + read(name: string, callback: CbCallback): void; + readAll(query: QueryObj, callback: CbCallback): void; +} + +interface AppUser { + user: APIUser; + URI: string; + systemKey: string; + systemSecret: string; + + getUser(callback: CbCallback): void; + setUser(data: object, callback: CbCallback): void; + setUsers(query: QueryObj, data: object, callback: CbCallback): void; + allUsers(query: QueryObj, callback: CbCallback): void; + count(query: QueryObj, callback: CbCallback): void; +} + +interface Messaging { + user: APIUser; + systemKey: string; + systemSecret: string; + + getMessageHistoryWithTimeFrame(topic: string, count: number, last: number, start: number, stop: number, callback: CbCallback): void; + getMessageHistory(topic: string, start: number, count: number, callback: CbCallback): void; + getAndDeleteMessageHistory(topic: string, count: number, last: number, start: number, stop: number, callback: CbCallback): void; + getCurrentTopics(callback: CbCallback): void; + publish(topic: string, payload: string | ArrayBuffer): void; +} + +interface MessagingOptions {} + +interface Device { + URI: string; + systemKey: string; + systemSecret: string; + + fetch(query: Query, callback: CbCallback): void; + update(query: Query, changes: object, callback: CbCallback): void; + delete(query: Query, callback: CbCallback): void; + create(newDevice: object, callback: CbCallback): void; +} + +declare enum TriggerModule { + DEVICE = "Device", + Data = "Data", + MESSAGING = "Messaging", + USER = "User" +} + +interface TriggerCreateOptions { + system_key: string; + name: string; + def_module: TriggerModule; + def_name: string; + key_value_pairs: KeyValuePair[]; + service_name: string; +} + +interface TriggerClass { + Create(name: string, options: TriggerCreateOptions, callback: CbCallback): void; + Fetch(name: string, callback: CbCallback): void; +} + +interface TimerCreateOptions { + description?: string; + start_time?: Date; + repeats?: number; + frequency?: number; + service_name?: string; + user_id?: string; + user_token?: string; +} + +interface TimerClass { + Create(name: string, options: TimerCreateOptions, callback: CbCallback): void; + Fetch(name: string, callback: CbCallback): void; +} + +interface TriggerInstance { + name: string; + systemKey: string; + + Update(options: object, callback: CbCallback): void; + Delete(callback: CbCallback): void; +} + +interface TimerInstance { + name: string; + systemKey: string; + + Update(options: object, callback: CbCallback): void; + Delete(callback: CbCallback): void; +} + +declare var ClearBlade: ClearBladeGlobal; diff --git a/types/clearbladejs-server/tsconfig.json b/types/clearbladejs-server/tsconfig.json new file mode 100644 index 0000000000..b549e1c685 --- /dev/null +++ b/types/clearbladejs-server/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "target": "ES5", + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clearbladejs-server-tests.ts", + "global.d.ts" + ], + "exclude": [ + "**/clearbladejs-client/*", + "**/clearbladejs-node/*" + ] +} \ No newline at end of file diff --git a/types/clearbladejs-server/tslint.json b/types/clearbladejs-server/tslint.json new file mode 100644 index 0000000000..6a6f758e67 --- /dev/null +++ b/types/clearbladejs-server/tslint.json @@ -0,0 +1,6 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "no-empty-interface": false + } +} \ No newline at end of file diff --git a/types/cleave.js/cleave.js-tests.tsx b/types/cleave.js/cleave.js-tests.tsx index 825b44a2ad..eb682d432b 100644 --- a/types/cleave.js/cleave.js-tests.tsx +++ b/types/cleave.js/cleave.js-tests.tsx @@ -2,7 +2,7 @@ import * as React from "react"; import Cleave = require("cleave.js"); import CleaveReact = require("cleave.js/react"); -const Example1 = () => { +const ExampleSelector1 = () => { const cleave = new Cleave("#my-input", { phone: true }); cleave.setPhoneRegionCode("AT"); cleave.setRawValue("foo"); @@ -11,6 +11,15 @@ const Example1 = () => { cleave.destroy(); }; +const ExampleElement1 = () => { + const input: HTMLElement = new HTMLElement(); + + const cleave = new Cleave(input, { date: true }); + cleave.setRawValue("2001/01/01"); + const formattedDate: string = cleave.getISOFormatDate(); + cleave.destroy(); +}; + const ExampleReact1 = (props: any) => { return ( , // J Giancono , // Alex Shakun // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.6 +// TypeScript Version: 2.8 import { CleaveOptions } from './options'; declare class Cleave { - constructor(selector: string, options: CleaveOptions); + constructor(selector: string | HTMLElement, options: CleaveOptions); getRawValue(): string; @@ -17,6 +17,8 @@ declare class Cleave { getFormattedValue(): string; + getISOFormatDate(): string; + destroy(): void; setPhoneRegionCode(regionCode: string): void; diff --git a/types/cli-progress/cli-progress-tests.ts b/types/cli-progress/cli-progress-tests.ts new file mode 100644 index 0000000000..b9fa6d5057 --- /dev/null +++ b/types/cli-progress/cli-progress-tests.ts @@ -0,0 +1,92 @@ +import progress = require('cli-progress'); + +function test0() { + // Usage + // Multiple examples are available e.g.example.js - just try it $ node example.js + + const _cliProgress = require('cli-progress'); + + // create a new progress bar instance and use shades_classic theme + const bar1 = new _cliProgress.Bar({}, _cliProgress.Presets.shades_classic); + + // start the progress bar with a total value of 200 and start value of 0 + bar1.start(200, 0); + + // update the current value in your application.. + bar1.update(100); + + // stop the progress bar + bar1.stop(); +} + +function test1() { + // Examples + // Example 1 - Set Options + + // change the progress characters + // set fps limit to 5 + // change the output stream and barsize + const bar = new progress.Bar({ + barCompleteChar: '#', + barIncompleteChar: '.', + fps: 5, + stream: process.stdout, + barsize: 65 + }); +} + +function test2() { + // Example 2 - Change Styles defined by Preset + // uee shades preset + // change the barsize + const bar = new progress.Bar({ + barsize: 65 + }, progress.Presets.shades_grey); +} + +function test3() { + // Example 3 - Custom Payload + // create new progress bar with custom token "speed" + const bar = new progress.Bar({ + format: 'progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total} | Speed: {speed} kbit' + }); + + // initialize the bar - set payload token "speed" with the default value "N/A" + bar.start(200, 0, { + speed: "N/A" + }); + + // some code/update loop + // ... + + // update bar value. set custom token "speed" to 125 + bar.update(5, { + speed: '125' + }); + + // process finished + bar.stop(); +} + +function test4() { + // Example 4 - Custom Presets + // File mypreset.js + + const _colors = require('colors'); + + module.exports = { + format: _colors.red(' {bar}') + ' {percentage}% | ETA: {eta}s | {value}/{total} | Speed: {speed} kbit', + barCompleteChar: '\u2588', + barIncompleteChar: '\u2591' + }; +} + +function test5() { + // Application + + const _mypreset = require('./mypreset.js'); + + const bar = new progress.Bar({ + barsize: 65 + }, _mypreset); +} diff --git a/types/cli-progress/index.d.ts b/types/cli-progress/index.d.ts new file mode 100644 index 0000000000..3ac9dfe8a3 --- /dev/null +++ b/types/cli-progress/index.d.ts @@ -0,0 +1,114 @@ +// Type definitions for cli-progress 1.8 +// Project: https://github.com/AndiDittrich/Node.CLI-Progress +// Definitions by: My Self +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/// + +export interface Options { + /** + * progress bar output format. + * The progressbar can be customized by using the following build-in placeholders. They can be combined in any order. + * {bar} - the progress bar, customizable by the options barsize, barCompleteString and barIncompleteString + * {percentage} - the current progress in percent (0-100) + * {total} - the end value + * {value} - the current value set by last update() call + * {eta} - expected time of accomplishment in seconds + * {duration} - elapsed time in seconds + * {eta_formatted} - expected time of accomplishment formatted into appropriate units + * {duration_formatted} - elapsed time formatted into appropriate units + * + * Example: + * progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total} + * is rendered as + * progress [========================================] 100% | ETA: 0s | 200/200 + */ + format?: string; + + /** the maximum update rate (default: 10) */ + fps?: number; + + /** output stream to use (default: process.stderr) */ + stream?: NodeJS.WritableStream; + + /** automatically call stop() when the value reaches the total (default: false) */ + stopOnComplete?: boolean; + + /** clear the progress bar on complete / stop() call (default: false) */ + clearOnComplete?: boolean; + + /** the length of the progress bar in chars (default: 40) */ + barsize?: number; + + /** character to use as "complete" indicator in the bar (default: "=") */ + barCompleteString?: string; + + /** character to use as "incomplete" indicator in the bar (default: "-") */ + barIncompleteString?: string; + + /** character to use as "complete" indicator in the bar (default: "=") */ + barCompleteChar?: string; + + /** character to use as "incomplete" indicator in the bar (default: "-") */ + barIncompleteChar?: string; + + /** hide the cursor during progress operation; restored on complete (default: false) */ + hideCursor?: boolean; + + /** number of updates with which to calculate the eta; higher numbers give a more stable eta (default: 10) */ + etaBuffer?: number; + + /** disable line wrapping (default: false) - pass null to keep terminal settings; pass true to trim the output to terminal width */ + linewrap?: boolean | null; +} + +export interface Preset { + barCompleteChar: string; + barIncompleteChar: string; + format: string; +} + +export class Bar { + /** Initialize a new Progress bar. An instance can be used multiple times! it's not required to re-create it! */ + constructor(opt: Options, preset?: Preset); + + calculateETA(): void; + + formatTime(t: any, roundToMultipleOf: any): any; + + getTotal(): any; + + /** Increases the current progress value by a specified amount (default +1). Update payload optionally */ + increment(step: number, payload?: object): void; + + render(): void; + + /** Sets the total progress value while progressbar is active. Especially useful handling dynamic tasks. */ + setTotal(total: number): void; + + /** Starts the progress bar and set the total and initial value */ + start(total: number, startValue: number, payload?: object): void; + + /** Stops the progress bar and go to next line */ + stop(): void; + + stopTimer(): void; + + /** Sets the current progress value and optionally the payload with values of custom tokens as a second parameter */ + update(current: number, payload?: object): void; +} + +export const Presets: { + /** Styles as of cli-progress v1.3.0 */ + legacy: Preset; + + /** Unicode Rectangles */ + rect: Preset; + + /** Unicode background shades are used for the bar */ + shades_classic: Preset; + + /** Unicode background shades with grey bar */ + shades_grey: Preset; +}; diff --git a/types/cli-progress/tsconfig.json b/types/cli-progress/tsconfig.json new file mode 100644 index 0000000000..be8771c6c5 --- /dev/null +++ b/types/cli-progress/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": [ + "index.d.ts", + "cli-progress-tests.ts" + ] +} diff --git a/types/cli-progress/tslint.json b/types/cli-progress/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/cli-progress/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/clientjs/clientjs-tests.ts b/types/clientjs/clientjs-tests.ts new file mode 100644 index 0000000000..2781ae4a42 --- /dev/null +++ b/types/clientjs/clientjs-tests.ts @@ -0,0 +1,66 @@ +import ClientJS = require("clientjs"); + +const client = new ClientJS(); +client.getSoftwareVersion(); // $ExpectType string +client.getFingerprint(); // $ExpectType number +client.getCustomFingerprint(client.getUserAgent(), client.getFonts()); // $ExpectType number +client.getUserAgent(); // $ExpectType string +client.getUserAgentLowerCase(); // $ExpectType string +client.getBrowser(); // $ExpectType string +client.getBrowserVersion(); // $ExpectType string +client.getBrowserMajorVersion(); // $ExpectType string +client.isIE(); // $ExpectType boolean +client.isChrome(); // $ExpectType boolean +client.isFirefox(); // $ExpectType boolean +client.isSafari(); // $ExpectType boolean +client.isOpera(); // $ExpectType boolean +client.isMobileSafari(); // $ExpectType boolean +client.getEngine(); // $ExpectType string +client.getEngineVersion(); // $ExpectType string +client.getOS(); // $ExpectType string +client.getOSVersion(); // $ExpectType string +client.isWindows(); // $ExpectType boolean +client.isMac(); // $ExpectType boolean +client.isLinux(); // $ExpectType boolean +client.isUbuntu(); // $ExpectType boolean +client.isSolaris(); // $ExpectType boolean +client.getDevice(); // $ExpectType string +client.getDeviceType(); // $ExpectType string +client.getDeviceVendor(); // $ExpectType string +client.getCPU(); // $ExpectType string +client.isMobile(); // $ExpectType boolean +client.isMobileMajor(); // $ExpectType boolean +client.isMobileAndroid(); // $ExpectType boolean +client.isMobileOpera(); // $ExpectType boolean +client.isMobileWindows(); // $ExpectType boolean +client.isMobileBlackBerry(); // $ExpectType boolean +client.isMobileIOS(); // $ExpectType boolean +client.isIphone(); // $ExpectType boolean +client.isIpad(); // $ExpectType boolean +client.isIpod(); // $ExpectType boolean +client.getScreenPrint(); // $ExpectType string +client.getColorDepth(); // $ExpectType string +client.getCurrentResolution(); // $ExpectType string +client.getAvailableResolution(); // $ExpectType string +client.getDeviceXDPI(); // $ExpectType string +client.getDeviceYDPI(); // $ExpectType string +client.getPlugins(); // $ExpectType string +client.isJava(); // $ExpectType boolean +client.getJavaVersion(); // $ExpectType string +client.isFlash(); // $ExpectType boolean +client.getFlashVersion(); // $ExpectType string +client.isSilverlight(); // $ExpectType boolean +client.getSilverlightVersion(); // $ExpectType string +client.isMimeTypes(); // $ExpectType boolean +client.getMimeTypes(); // $ExpectType string +client.isFont('Times New Roman'); // $ExpectType boolean +client.isFont('Nonexistent Random Font'); // $ExpectType boolean +client.getFonts(); // $ExpectType string +client.isLocalStorage(); // $ExpectType boolean +client.isSessionStorage(); // $ExpectType boolean +client.isCookie(); // $ExpectType boolean +client.getTimeZone(); // $ExpectType string +client.getLanguage(); // $ExpectType string +client.getSystemLanguage(); // $ExpectType string +client.isCanvas(); // $ExpectType boolean +client.getCanvasPrint(); // $ExpectType string diff --git a/types/clientjs/index.d.ts b/types/clientjs/index.d.ts new file mode 100644 index 0000000000..db46d41dab --- /dev/null +++ b/types/clientjs/index.d.ts @@ -0,0 +1,191 @@ +// Type definitions for clientjs 0.1 +// Project: https://clientjs.org +// Definitions by: icopp +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare class ClientJS { + constructor(); + + /** @return A string containing this software version number. */ + getSoftwareVersion(): string; + + // Fingerprint methods + + /** @return A 32-bit integer representing the browser's fingerprint. */ + getFingerprint(): number; + /** + * @param datapoints Any number of datapoints that are (or can be coerced to + * be) strings. + * @return A 32-bit integer representing the cumulative fingerprint. + */ + getCustomFingerprint(...datapoints: Array): number; + + // User agent methods + + /** @return A string containing unparsed user agent. */ + getUserAgent(): string; + /** @return A lowercase string containing the user agent. */ + getUserAgentLowerCase(): string; + + // Browser methods + + /** @return A string containing the browser name */ + getBrowser(): string; + /** @return A string containing the browser version. */ + getBrowserVersion(): string; + /** @return A string containing the major browser version. */ + getBrowserMajorVersion(): string; + /** Check if the browser is IE. */ + isIE(): boolean; + /** Check if the browser is Chrome. */ + isChrome(): boolean; + /** Check if the browser is Firefox. */ + isFirefox(): boolean; + /** Check if the browser is Safari. */ + isSafari(): boolean; + /** Check if the browser is Opera. */ + isOpera(): boolean; + /** Check if the browser is mobile Safari. */ + isMobileSafari(): boolean; + + // Engine methods + + /** @return A string containing the browser engine. */ + getEngine(): string; + /** @return A string containing the browser engine version. */ + getEngineVersion(): string; + + // OS methods + + /** @return A string containing the OS. */ + getOS(): string; + /** @return A string containing the OS version. */ + getOSVersion(): string; + /** Check if the OS is Windows. */ + isWindows(): boolean; + /** Check if the OS is Mac. */ + isMac(): boolean; + /** Check if the OS is Linux. */ + isLinux(): boolean; + /** Check if the OS is Ubuntu. */ + isUbuntu(): boolean; + /** Check if the OS is Solaris. */ + isSolaris(): boolean; + + // Device methods + + /** @return A string containing the device. */ + getDevice(): string; + /** @return A string containing the device type. */ + getDeviceType(): string; + /** @return A string containing the device vendor. */ + getDeviceVendor(): string; + + // CPU methods + + /** @return A string containing the CPU architecture. */ + getCPU(): string; + + // Mobile methods + + /** Check if the browser is on a mobile device. */ + isMobile(): boolean; + /** Check if the browser is on a major mobile device. */ + isMobileMajor(): boolean; + /** Check if the browser is on an Android mobile device. */ + isMobileAndroid(): boolean; + /** Check if the browser is on an Opera mobile device. */ + isMobileOpera(): boolean; + /** Check if the browser is on a Windows mobile device. */ + isMobileWindows(): boolean; + /** Check if the browser is on a Blackberry mobile device. */ + isMobileBlackBerry(): boolean; + + // iOS methods + + /** Check if the browser is on an Apple iOS device. */ + isMobileIOS(): boolean; + /** Check if the browser is on an Apple iPhone. */ + isIphone(): boolean; + /** Check if the browser is on an Apple iPad. */ + isIpad(): boolean; + /** Check if the browser is on an Apple iPod. */ + isIpod(): boolean; + + // Screen methods + + /** @return A string containing screen information. */ + getScreenPrint(): string; + /** @return A string containing the color depth. */ + getColorDepth(): string; + /** @return A string containing the current resolution. */ + getCurrentResolution(): string; + /** @return A string containing the available resolution. */ + getAvailableResolution(): string; + /** @return A string containing the device horizontal DPI. */ + getDeviceXDPI(): string; + /** @return A string containing the device vertical DPI. */ + getDeviceYDPI(): string; + + // Plugin methods + + /** @return A string containing a list of installed plugins. */ + getPlugins(): string; + /** Check if Java is installed. */ + isJava(): boolean; + /** @return A string containing the Java Version. */ + getJavaVersion(): string; + /** Check if Flash is installed. */ + isFlash(): boolean; + /** @return A string containing the Flash Version. */ + getFlashVersion(): string; + /** Check if Silverlight is installed. */ + isSilverlight(): boolean; + /** @return A string containing the Silverlight Version. */ + getSilverlightVersion(): string; + + // MIME type methods + + /** Check if MIME types are installed. */ + isMimeTypes(): boolean; + /** A string containing a list of installed MIME types. */ + getMimeTypes(): string; + + // Font methods + + /** Check if `font` is installed. */ + isFont(font: string): boolean; + /** A string containing a comma-separated list of installed fonts. */ + getFonts(): string; + + // Storage methods + + /** Check if local storage is avaliable. */ + isLocalStorage(): boolean; + /** Check if session storage is avaliable. */ + isSessionStorage(): boolean; + /** Check if cookies are avaliable. */ + isCookie(): boolean; + + // Time methods + + /** A lowercase string containing the time zone. */ + getTimeZone(): string; + + // Language methods + + /** A lowercase string containing the user language. */ + getLanguage(): string; + /** A lowercase string containing the system language. */ + getSystemLanguage(): string; + + // Canvas methods + + /** Check if the canvas element is available. */ + isCanvas(): boolean; + /** @return A string containing canvas image information */ + getCanvasPrint(): string; +} + +export = ClientJS; +export as namespace ClientJS; diff --git a/types/clientjs/tsconfig.json b/types/clientjs/tsconfig.json new file mode 100644 index 0000000000..2d02f6ec55 --- /dev/null +++ b/types/clientjs/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clientjs-tests.ts" + ] +} diff --git a/types/clientjs/tslint.json b/types/clientjs/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/clientjs/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/clmtrackr/clmtrackr-tests.ts b/types/clmtrackr/clmtrackr-tests.ts new file mode 100644 index 0000000000..8a38e4361c --- /dev/null +++ b/types/clmtrackr/clmtrackr-tests.ts @@ -0,0 +1,26 @@ +import clm from "clmtrackr"; + +const ctracker = new clm.tracker(); + +console.log(clm.version); + +ctracker.init({ + constantVelocity: true, + searchWindow: 11, + useWebGL: true, + scoreThreshold: 0.50, + stopOnConvergence: false, + /** object with parameters for facedetection : */ + faceDetection: { useWebWorkers: true} +}); + +const video = document.getElementsByTagName("video")[0]; +ctracker.start(video); +const positions = ctracker.getCurrentPosition(); +if (positions) { + const canvas = document.getElementsByTagName("canvas")[0]; + ctracker.draw(canvas); + positions.forEach(([x, y]) => { + const sum: number = x + y; + }); +} diff --git a/types/clmtrackr/index.d.ts b/types/clmtrackr/index.d.ts new file mode 100644 index 0000000000..a0c778ed00 --- /dev/null +++ b/types/clmtrackr/index.d.ts @@ -0,0 +1,55 @@ +// Type definitions for clmtrackr 1.1 +// Project: https://github.com/auduno/clmtrackr +// Definitions by: hellochar +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +interface TrackerParams { + /** whether to use constant velocity model when fitting (default is true) */ + constantVelocity?: boolean; + /** the size of the searchwindow around each point (default is 11) */ + searchWindow?: number; + /** whether to use webGL if it is available (default is true) */ + useWebGL?: boolean; + /** threshold for when to assume we've lost tracking (default is 0.50) */ + scoreThreshold?: number; + /** whether to stop tracking when the fitting has converged (default is false) */ + stopOnConvergence?: boolean; + /** object with parameters for facedetection : */ + faceDetection?: { + /** whether to use web workers for face detection (default is true) */ + useWebWorkers?: boolean; + }; +} + +type IPosition = [number, number]; + +type Model = any; + +declare namespace _default { + class tracker { + constructor(params?: TrackerParams); + + init(model?: Model): void; + + start(element: HTMLVideoElement | HTMLCanvasElement): void; + + track(element: HTMLVideoElement | HTMLCanvasElement): IPosition[] | false; + + reset(): void; + + getConvergence(): number; + + getCurrentParameters(): number[]; + + getCurrentPosition(): IPosition[] | false; + + getScore(): number; + + draw(canvas: HTMLCanvasElement): void; + + setResponseMode(type: "single" | "cycle" | "blend", list: Array<"raw" | "sobel" | "lbp">): void; + } + const version: string; +} + +export default _default; diff --git a/types/clmtrackr/tsconfig.json b/types/clmtrackr/tsconfig.json new file mode 100644 index 0000000000..54d471be5c --- /dev/null +++ b/types/clmtrackr/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "dom", + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "clmtrackr-tests.ts" + ] +} diff --git a/types/clmtrackr/tslint.json b/types/clmtrackr/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/clmtrackr/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/cloneable-readable/cloneable-readable-tests.ts b/types/cloneable-readable/cloneable-readable-tests.ts new file mode 100644 index 0000000000..d6cf68f33d --- /dev/null +++ b/types/cloneable-readable/cloneable-readable-tests.ts @@ -0,0 +1,11 @@ +import { PassThrough } from 'stream'; +import cloneable = require('cloneable-readable'); + +const ps = new PassThrough(); // $ExpectType PassThrough +const cl = cloneable(ps); // $ExpectType Cloneable + +process.stdin.pipe(cl.clone()).pipe(process.stderr); +process.stdin.pipe(cl).pipe(process.stdout); + +cloneable.isCloneable(ps); // $ExpectType boolean +cloneable.isCloneable(cl); // $ExpectType boolean diff --git a/types/cloneable-readable/index.d.ts b/types/cloneable-readable/index.d.ts new file mode 100644 index 0000000000..49f7c89ffd --- /dev/null +++ b/types/cloneable-readable/index.d.ts @@ -0,0 +1,17 @@ +// Type definitions for cloneable-readable 1.1 +// Project: https://github.com/mcollina/cloneable-readable#readme +// Definitions by: Nikita Volodin +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/// + +import { Readable } from 'stream'; + +type Cloneable = T & { clone(): Cloneable }; +interface CloneableFn { + (x: T): Cloneable; + isCloneable(x: Readable): boolean; +} +declare const cloneable: CloneableFn; +export = cloneable; diff --git a/types/cloneable-readable/tsconfig.json b/types/cloneable-readable/tsconfig.json new file mode 100644 index 0000000000..86b9886f7d --- /dev/null +++ b/types/cloneable-readable/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "cloneable-readable-tests.ts" + ] +} diff --git a/types/cloneable-readable/tslint.json b/types/cloneable-readable/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/cloneable-readable/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/cloner/cloner-tests.ts b/types/cloner/cloner-tests.ts new file mode 100644 index 0000000000..63baf4b950 --- /dev/null +++ b/types/cloner/cloner-tests.ts @@ -0,0 +1,43 @@ +import cloner = require("cloner"); + +interface A { + test: string; + nest: { + test: string; + num: number; + }; +} + +interface B { + somethingElse: string; + nest: { + somethingElse: string; + notNaN: number; + }; +} + +let aO: A; +let aN: A; +let bO: B; +let bN: B; + +aO = { + test: "test", + nest: { + test: "nestTest", + num: 1 + } +}; +bO = { + somethingElse: "se", + nest: { + somethingElse: "nestSe", + notNaN: 0 + } +}; + +aN = cloner.deep.copy(aO); +bN = cloner.shallow.copy(bO); + +aN = cloner.deep.merge(aO, bO); +bN = cloner.shallow.merge(aO, bO); diff --git a/types/cloner/index.d.ts b/types/cloner/index.d.ts new file mode 100644 index 0000000000..6021c9a716 --- /dev/null +++ b/types/cloner/index.d.ts @@ -0,0 +1,45 @@ +// Type definitions for cloner 0.4 +// Project: https://github.com/WebReflection/cloner +// Definitions by: matrumz +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * Deep-style methods that will perform operations by value, instead of reference. + */ +export namespace deep { + /** + * Will loop over all own keys and deeply copy (copy by value) them to a new object. + * + * Preserves inheritance and is recursion aware, meaning it shouldn't fail with recursive properties. + * @param [obj] The object to copy. + */ + function copy(obj: T): T; + /** + * Preserves what's already in the target and merges all own keys found in one or more passed sources. + * + * Properties are merged by value. + * @param [target] Destination object for merged properties. + * @param [sources] Source object(s) for properties to merge. + */ + function merge(target: any, ...sources: any[]): any; +} +/** + * Shallow-style methods that will perform operations by reference, instead of value. + */ +export namespace shallow { + /** + * Will loop over all own keys and shallow copy (copy by reference) them to a new object. + * + * Preserves inheritance and is recursion aware, meaning it shouldn't fail with recursive properties. + * @param [obj] The object to copy. + */ + function copy(obj: T): T; + /** + * Preserves what's already in the target and merges all own keys found in one or more passed sources. + * + * Properties are merged by reference. + * @param [target] Destination object for merged properties. + * @param [sources] Source object(s) for properties to merge. + */ + function merge(target: any, ...sources: any[]): any; +} diff --git a/types/cloner/tsconfig.json b/types/cloner/tsconfig.json new file mode 100644 index 0000000000..9619614ce4 --- /dev/null +++ b/types/cloner/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "cloner-tests.ts" + ] +} diff --git a/types/cloner/tslint.json b/types/cloner/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/cloner/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/command-line-args/command-line-args-tests.ts b/types/command-line-args/command-line-args-tests.ts index 11848ee202..89d310cb14 100644 --- a/types/command-line-args/command-line-args-tests.ts +++ b/types/command-line-args/command-line-args-tests.ts @@ -1,10 +1,24 @@ import commandLineArgs = require('command-line-args'); -const optionDefinitions = [ - { name: 'verbose', alias: 'v', type: Boolean }, - { name: 'src', type: String, multiple: true, defaultOption: true }, - { name: 'timeout', alias: 't', type: Number } +const optionDefinitions: commandLineArgs.OptionDefinition[] = [ + { + name: 'something', + alias: 's', + type: String, + defaultValue: '1', + multiple: true, + lazyMultiple: true, + defaultOption: true, + group: 'one' + } ]; -const options = commandLineArgs(optionDefinitions); +const options = commandLineArgs(optionDefinitions, { + argv: [ '--one', '1' ], + partial: true, + stopAtFirstUnknown: true, + camelCase: true +}); +const unknown = options._unknown; +const something = options.something; diff --git a/types/command-line-args/index.d.ts b/types/command-line-args/index.d.ts index 332368d827..5172a2f74a 100644 --- a/types/command-line-args/index.d.ts +++ b/types/command-line-args/index.d.ts @@ -1,87 +1,90 @@ -// Type definitions for command-line-args 4.0.7 +// Type definitions for command-line-args 5.0 // Project: https://github.com/75lb/command-line-args -// Definitions by: CzBuCHi +// Definitions by: Lloyd Brookes // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 /** - * Returns an object containing all options set on the command line. By default it parses the global [`process.argv`](https://nodejs.org/api/process.html#process_process_argv) array. - * - * By default, an exception is thrown if the user sets an unknown option (one without a valid [definition](#exp_module_definition--OptionDefinition)). To enable __partial parsing__, invoke `commandLineArgs` with the `partial` option - all unknown arguments will be returned in the `_unknown` property. - * - * - * @param {module:definition[]} - An array of [OptionDefinition](#exp_module_definition--OptionDefinition) objects - * @param [options] {object} - Options. - * @param [options.argv] {string[]} - An array of strings, which if passed will be parsed instead of `process.argv`. - * @param [options.partial] {boolean} - If `true`, an array of unknown arguments is returned in the `_unknown` property of the output. - * @returns {object} - * @throws `UNKNOWN_OPTION` if `options.partial` is false and the user set an undefined option - * @throws `NAME_MISSING` if an option definition is missing the required `name` property - * @throws `INVALID_TYPE` if an option definition has a `type` value that's not a function - * @throws `INVALID_ALIAS` if an alias is numeric, a hyphen or a length other than 1 - * @throws `DUPLICATE_NAME` if an option definition name was used more than once - * @throws `DUPLICATE_ALIAS` if an option definition alias was used more than once - * @throws `DUPLICATE_DEFAULT_OPTION` if more than one option definition has `defaultOption: true` - * @alias module:command-line-args + * Returns an object containing option values parsed from the command line. By default it parses the global `process.argv` array. + * Parsing is strict by default. To be more permissive, enable `partial` or `stopAtFirstUnknown` modes. */ -declare function commandLineArgs(optionDefinitions: commandLineArgs.OptionDefinition[], options?: commandLineArgs.Options): any; +declare function commandLineArgs(optionDefinitions: commandLineArgs.OptionDefinition[], options?: commandLineArgs.ParseOptions): commandLineArgs.CommandLineOptions; -declare module commandLineArgs { +declare namespace commandLineArgs { + interface CommandLineOptions { + /** + * Command-line arguments not parsed by `commandLineArgs`. + */ + _unknown?: string[]; + [propName: string]: any; + } - export interface OptionDefinition { - /** - * The only required definition property is name, the value of each option will be either a Boolean or string. - */ - name: string, - /** - * The type value is a setter function (you receive the output from this), - * enabling you to be specific about the type and value received. - */ - type?: (arg: string) => any, - /** - * getopt-style short option names. Can be any single character (unicode included) except a digit or hypen. - */ - alias?: string, - /** - * Set this flag if the option takes a list of values. You will receive an array of values, each passed - * through the type function (if specified). - */ - multiple?: boolean, - /** - * Any unclaimed command-line args will be set on this option. This flag is typically set on - * the most commonly-used option to make for more concise usage - * (i.e. $ myapp *.js instead of $ myapp --files *.js). - */ - defaultOption?: boolean, - /** - * An initial value for the option. - */ - defaultValue?: any, - /** - * When your app has a large amount of options it makes sense to organise them in groups. - * There are two automatic groups: _all (contains all options) and _none (contains options - * without a group specified in their definition). - */ - group?: string | string[], - /** - * Describes the option. - */ - description?: string, - /** - * A label for the type, e.g. . - */ - typeLabel?: string; - } + interface ParseOptions { + /** + * An array of strings which if present will be parsed instead of `process.argv`. + */ + argv?: string[]; - export interface Options { - /** - * An array of strings, which if passed will be parsed instead of `process.argv`. - */ - argv?: string[]; - /** - * If `true`, an array of unknown arguments is returned in the `_unknown` property of the output. - */ - partial?: boolean; - } + /** + * If `true`, `commandLineArgs` will not throw on unknown options or values, instead returning them in the `_unknown` property of the output. + */ + partial?: boolean; + + /** + * If `true`, `commandLineArgs` will not throw on unknown options or values. Instead, parsing will stop at the first unknown argument + * and the remaining arguments returned in the `_unknown` property of the output. If set, `partial: true` is implied. + */ + stopAtFirstUnknown?: boolean; + + /** + * If `true`, options with hypenated names (e.g. `move-to`) will be returned in camel-case (e.g. `moveTo`). + */ + camelCase?: boolean; + } + + interface OptionDefinition { + /** + * The long option name. + */ + name: string; + + /** + * A setter function (you receive the output from this) enabling you to be specific about the type and value received. Typical values + * are `String` (the default), `Number` and `Boolean` but you can use a custom function. If no option value was set you will receive `null`. + */ + type?: (input: string) => any; + + /** + * A getopt-style short option name. Can be any single character except a digit or hyphen. + */ + alias?: string; + + /** + * Set this flag if the option accepts multiple values. In the output, you will receive an array of values each passed through the `type` function. + */ + multiple?: boolean; + + /** + * Identical to `multiple` but with greedy parsing disabled. + */ + lazyMultiple?: boolean; + + /** + * Any values unaccounted for by an option definition will be set on the `defaultOption`. This flag is typically set + * on the most commonly-used option to enable more concise usage. + */ + defaultOption?: boolean; + + /** + * An initial value for the option. + */ + defaultValue?: any; + + /** + * One or more group names the option belongs to. + */ + group?: string | string[]; + } } export = commandLineArgs; diff --git a/types/command-line-args/tslint.json b/types/command-line-args/tslint.json index a41bf5d19a..495d29983d 100644 --- a/types/command-line-args/tslint.json +++ b/types/command-line-args/tslint.json @@ -1,79 +1,5 @@ { "extends": "dtslint/dt.json", "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false } } diff --git a/types/command-line-args/v4/command-line-args-tests.ts b/types/command-line-args/v4/command-line-args-tests.ts new file mode 100644 index 0000000000..c99d64b1a2 --- /dev/null +++ b/types/command-line-args/v4/command-line-args-tests.ts @@ -0,0 +1,21 @@ +import commandLineArgs = require('command-line-args'); + +const optionDefinitions: commandLineArgs.OptionDefinition[] = [ + { + name: 'something', + alias: 's', + type: String, + defaultValue: '1', + multiple: true, + defaultOption: true, + group: 'one' + } +]; + +const options = commandLineArgs(optionDefinitions, { + argv: [ '--one', '1' ], + partial: true +}); + +const unknown = options._unknown; +const something = options.something; diff --git a/types/command-line-args/v4/index.d.ts b/types/command-line-args/v4/index.d.ts new file mode 100644 index 0000000000..a5c8250827 --- /dev/null +++ b/types/command-line-args/v4/index.d.ts @@ -0,0 +1,73 @@ +// Type definitions for command-line-args 4.0 +// Project: https://github.com/75lb/command-line-args +// Definitions by: CzBuCHi , Lloyd Brookes +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/** + * Returns an object containing option values parsed from the command line. By default it parses the global `process.argv` array. + */ +declare function commandLineArgs(optionDefinitions: commandLineArgs.OptionDefinition[], options?: commandLineArgs.ParseOptions): commandLineArgs.CommandLineOptions; + +declare namespace commandLineArgs { + interface CommandLineOptions { + /** + * Command-line arguments not parsed by `commandLineArgs`. + */ + _unknown?: string[]; + [propName: string]: any; + } + + interface ParseOptions { + /** + * An array of strings which if present will be parsed instead of `process.argv`. + */ + argv?: string[]; + + /** + * If `true`, `commandLineArgs` will not throw on unknown options or values, instead returning them in the `_unknown` property of the output. + */ + partial?: boolean; + } + + interface OptionDefinition { + /** + * The long option name. + */ + name: string; + + /** + * A setter function (you receive the output from this) enabling you to be specific about the type and value received. Typical values + * are `String` (the default), `Number` and `Boolean` but you can use a custom function. If no option value was set you will receive `null`. + */ + type?: (input: string) => any; + + /** + * A getopt-style short option name. Can be any single character except a digit or hyphen. + */ + alias?: string; + + /** + * Set this flag if the option accepts multiple values. In the output, you will receive an array of values each passed through the `type` function. + */ + multiple?: boolean; + + /** + * Any values unaccounted for by an option definition will be set on the `defaultOption`. This flag is typically set + * on the most commonly-used option to enable more concise usage. + */ + defaultOption?: boolean; + + /** + * An initial value for the option. + */ + defaultValue?: any; + + /** + * One or more group names the option belongs to. + */ + group?: string | string[]; + } +} + +export = commandLineArgs; diff --git a/types/command-line-args/v4/tsconfig.json b/types/command-line-args/v4/tsconfig.json new file mode 100644 index 0000000000..3517f0823e --- /dev/null +++ b/types/command-line-args/v4/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "strictFunctionTypes": true, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "paths": { + "command-line-args": [ "command-line-args/v4" ] + } + }, + "files": [ + "index.d.ts", + "command-line-args-tests.ts" + ] +} diff --git a/types/react-native-collapsible/tslint.json b/types/command-line-args/v4/tslint.json similarity index 56% rename from types/react-native-collapsible/tslint.json rename to types/command-line-args/v4/tslint.json index b1439230db..495d29983d 100644 --- a/types/react-native-collapsible/tslint.json +++ b/types/command-line-args/v4/tslint.json @@ -1,7 +1,5 @@ { "extends": "dtslint/dt.json", "rules": { - // TODO - "no-any-union": false } } diff --git a/types/command-line-usage/command-line-usage-tests.ts b/types/command-line-usage/command-line-usage-tests.ts index 05dfadc7f3..23e2284d83 100644 --- a/types/command-line-usage/command-line-usage-tests.ts +++ b/types/command-line-usage/command-line-usage-tests.ts @@ -1,24 +1,397 @@ -import commandLineUsage = require("command-line-usage"); +import getUsage = require('command-line-usage'); -const sections = [ +let usage: string; +let sections: getUsage.Section[]; +let optionDefinitions: getUsage.OptionDefinition[] = []; + +// chalk-escaping.js +usage = getUsage([ { - header: 'A typical app', - content: 'Generates something {italic very} important.' + header: 'A typical app', + content: 'Generates something \\{very important\\}, also retaining `backticks`.' }, { - header: 'Options', - optionList: [ - { - name: 'input', - typeLabel: '{underline file}', - description: 'The input to process.' - }, - { - name: 'help', - description: 'Print this usage guide.' - } - ] + header: 'Options', + optionList: [ + { name: 'files', typeLabel: '\\{something\\}', description: 'This is not \\{red red\\}.'} + ] } -]; + ]); -const usage = commandLineUsage(sections); +// chalk-formatting.js +usage = getUsage([ + { + header: 'A typical app', + content: 'Generates something {italic.keyword("orange") very {rgb(255,231,0).bold important}}. This is a rather long, but {hex("#1ef").underline ultimately} inconsequential ' + + 'description intended {yellow.bgRed.bold solely {bgBlue to}} demonstrate description appearance. ' + }, + { + header: 'Options', + optionList: [ + { name: 'files', typeLabel: '{magenta {underline files}}', description: 'This is {red red}.'} + ] + }, + { + content: 'Project home: {underline https://github.com/me/example}' + } + ]); + +// command-list.js +sections = [ + { + header: 'Example App', + content: 'Generates something {italic very} important. This is a rather long, but ultimately inconsequential description intended solely to demonstrate description appearance. ' + }, + { + header: 'Synopsis', + content: '$ app ' + }, + { + header: 'Command List', + content: [ + { name: 'help', summary: 'Display help information about Git.' }, + { name: 'commit', summary: 'Record changes to the repository.' }, + { name: 'Version', summary: 'Print the version.' }, + { name: 'etc', summary: 'Etc.' } + ] + } + ]; +usage = getUsage(sections); + +// description-columns.js +sections = [ + { + header: 'Soviet Union', + content: { + options: { + columns: [ + { name: 'one', maxWidth: 40 }, + { name: 'two', width: 40, noWrap: true } + ] + }, + data: [ + { + one: "this was waaaay too long", + two: null + } + ] + } + }, + { + header: 'Synopsis', + content: [ + '$ example [{bold --timeout} {underline ms}] {bold --src} {underline file} ...', + '$ example {bold --help}' + ] + }, + { + header: 'Options', + optionList: optionDefinitions + } + ]; +getUsage(sections); + +// examples.js +sections = [ + { + header: 'A typical app', + content: 'Generates something {italic very} important.' + }, + { + header: 'Synopsis', + content: [ + '$ example [{bold --timeout} {underline ms}] {bold --src} {underline file} ...', + '$ example {bold --help}' + ] + }, + { + header: 'Options', + optionList: optionDefinitions + }, + { + header: 'Examples', + content: [ + { + desc: '1. A concise example. ', + example: '$ example -t 100 lib/*.js' + }, + { + desc: '2. A long example. ', + example: '$ example --timeout 100 --src lib/*.js' + }, + { + desc: '3. This example will scan space for unknown things. Take cure when scanning space, it could take some time. ', + example: '$ example --src galaxy1.facts galaxy1.facts galaxy2.facts galaxy3.facts galaxy4.facts galaxy5.facts' + } + ] + }, + { + content: 'Project home: {underline https://github.com/me/example}' + } + ]; +getUsage(sections); + +// footer.js +sections = [ + { + header: 'A typical app', + content: 'Generates something {italic very} important.' + }, + { + header: 'Synopsis', + content: [ + '$ example [{bold --timeout} {underline ms}] {bold --src} {underline file} ...', + '$ example {bold --help}' + ] + }, + { + header: 'Options', + optionList: optionDefinitions + }, + { + content: [ + '{italic This app was tested by dragons in Wales.}', + '', + null + ], + raw: true + } +]; +getUsage(sections); + +// groups.js +optionDefinitions = [ + { + name: 'help', + description: 'Display this usage guide.', + alias: 'h', + type: Boolean, + group: 'main' + }, + { + name: 'src', + description: 'The input files to process', + multiple: true, + defaultOption: true, + typeLabel: '{underline file} ...', + group: 'input' + }, + { + name: 'timeout', + description: 'Timeout value in ms', + alias: 't', + typeLabel: '{underline ms}', + group: 'main' + }, + { + name: 'plugin', + description: 'A plugin path', + type: String + } + ]; + +sections = [ + { + header: 'A typical app', + content: 'Generates something {italic very} important.' + }, + { + header: 'Main options', + optionList: optionDefinitions, + group: [ 'main', 'input' ] + }, + { + header: 'Misc', + optionList: optionDefinitions, + group: '_none' + } + ]; + +getUsage(sections); + +// header-only.js +sections = [ + { + header: 'a header only' + }, + { + content: 'content only' + } + ]; +getUsage(sections); + +// header.js +sections = [ + { + content: "", + raw: true + }, + { + header: 'Synopsis', + content: [ + '$ example [{bold --timeout} {underline ms}] {bold --src} {underline file} ...', + '$ example {bold --help}' + ] + } +]; +getUsage(sections); + +// hide.js +usage = getUsage([ + { + header: 'A typical app', + content: 'Generates something {italic very} important. This is a rather long, but ultimately inconsequential description intended solely to demonstrate description appearance. ' + }, + { + header: 'Options', + optionList: optionDefinitions, + hide: 'src' + }, + { + content: 'Project home: {underline https://github.com/me/example}' + } +]); + +// option-list-options.js +sections = [ + { + header: 'A typical app', + content: 'Generates something {italic very} important.' + }, + { + header: 'Options', + optionList: optionDefinitions, + tableOptions: { + columns: [ + { + name: 'option', + noWrap: true, + padding: { left: '🔥 ', right: '' }, + width: 30 + }, + { + name: 'description', + width: 50, + padding: { left: '', right: ' 🔥' } + } + ] + } + } +]; +getUsage(sections); + +// simple-reverse-name-order.js +usage = getUsage([ + { + header: 'A typical app', + content: 'Generates something {italic very} important. This is a rather long, but ultimately inconsequential description intended solely to demonstrate description appearance. ' + }, + { + header: 'Options', + optionList: optionDefinitions, + reverseNameOrder: true + }, + { + content: 'Project home: {underline https://github.com/me/example}' + } + ]); + +// simple-width.js +usage = getUsage([ + { + header: 'A typical app', + content: { + options: { maxWidth: 40 }, + data: [ + { col: 'Generates something {italic very} important. This is a rather long, but ultimately inconsequential description intended solely to demonstrate description appearance. ' } + ] + } + } + ]); + +// synopsis.js +sections = [ + { + header: 'A typical app', + content: 'Generates something {italic very} important.' + }, + { + header: 'Options', + optionList: [ + { + name: 'input', + typeLabel: '{underline file}', + description: 'The input to process.' + }, + { + name: 'help', + description: 'Print this usage guide.' + } + ] + } + ]; +usage = getUsage(sections); + +// whitespace.js +/* When using default options, the whitespace before the bullets is trimmed */ +sections = [ + { + header: 'Example app', + content: [ + 'Generates something {italic very} important. This description is:', + '', + ' • rather long', + ' • inconsequential', + ' • demonstrative', + '', + 'And the text continues underneath as this {cyan might} be required in cases where text is required underneath.' + ] + } + ]; +usage = getUsage(sections); +/* Solution 1: Use `raw` option and supply your own whitespace */ +sections = [ + { + header: 'Example app', + content: [ + ' Generates something {italic very} important. This description is:', + ' ', + ' • rather long', + ' • inconsequential', + ' • demonstrative', + ' ', + ' And the text continues underneath as this {cyan might} be required in cases where', + ' text is required underneath.' + ], + raw: true + } +]; +usage = getUsage(sections); + +/* Section 2: use separate sections with the `noTrim` option on the bullets */ +sections = [ + { + header: 'Example app', + content: [ + 'Generates something {italic very} important. This description is:' + ] + }, + { + content: { + options: { + noTrim: true + }, + data: [ + { col: ' • rather long' }, + { col: ' • inconsequential' }, + { col: ' • demonstrative' } + ] + } + }, + { + content: [ + 'And the text continues underneath as this {cyan might} be required in cases where text is required underneath.' + ] + } +]; +usage = getUsage(sections); diff --git a/types/command-line-usage/index.d.ts b/types/command-line-usage/index.d.ts index ac4f1d7606..0beb4ef2d8 100644 --- a/types/command-line-usage/index.d.ts +++ b/types/command-line-usage/index.d.ts @@ -1,48 +1,82 @@ // Type definitions for command-line-usage 5.0 // Project: https://github.com/75lb/command-line-usage#readme -// Definitions by: Andrija Dvorski +// Definitions by: matrumz +// Andrija Dvorski // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 +/** + * Generates a usage guide suitable for a command-line app. + * @param sections One or more Section objects + * @alias module:command-line-usage + */ +declare function commandLineUsage(sections: commandLineUsage.Section | commandLineUsage.Section[]): string; +export = commandLineUsage; + declare namespace commandLineUsage { - interface Section { - list: string[]; + /** Section object. */ + type Section = Content | OptionList; - add(content: object): void; - emptyLine(): void; - header(text: string): void; - toString(): string; - } - - interface SectionData { - optionList?: OptionListData[]; - hide?: string[]; - group?: string[]; + /** A Content section comprises a header and one or more lines of content. */ + interface Content { + /** The section header, always bold and underlined. */ header?: string; - reverseNameOrder?: boolean; - tableOptions?: any; - } - - interface OptionListData extends SectionData { - name: string; - typeLabel?: string; - description?: string; - } - - interface ContentSectionData extends SectionData { - content: string; + /** + * Overloaded property, accepting data in one of four formats. + * 1. A single string (one line of text). + * 2. An array of strings (multiple lines of text). + * 3. An array of objects (recordset-style data). In this case, the data will be rendered in table format. The property names of each object are not important, so long as they are + * consistent throughout the array. + * 4. An object with two properties - data and options. In this case, the data and options will be passed directly to the underlying table layout module for rendering. + */ + content?: string | string[] | any[] | { data: any; options: any }; + /** Set to true to avoid indentation and wrapping. Useful for banners. */ raw?: boolean; } - type CommandLineUsageInput = - SectionData - | SectionData[] - | OptionListData - | OptionListData[] - | ContentSectionData - | ContentSectionData[]; + /** Describes a command-line option. Additionally, if generating a usage guide with command-line-usage you could optionally add description and typeLabel properties to each definition. */ + interface OptionDefinition { + name: string; + /** + * The type value is a setter function (you receive the output from this), enabling you to be specific about the type and value received. + * + * The most common values used are String (the default), Number and Boolean but you can use a custom function. + */ + type?: any; + /** getopt-style short option names. Can be any single character (unicode included) except a digit or hyphen. */ + alias?: string; + /** Set this flag if the option takes a list of values. You will receive an array of values, each passed through the type function (if specified). */ + multiple?: boolean; + /** Identical to multiple but with greedy parsing disabled. */ + lazyMultiple?: boolean; + /** Any values unaccounted for by an option definition will be set on the defaultOption. This flag is typically set on the most commonly-used option to make for more concise usage. */ + defaultOption?: boolean; + /** An initial value for the option. */ + defaultValue?: any; + /** + * When your app has a large amount of options it makes sense to organise them in groups. + * + * There are two automatic groups: _all (contains all options) and _none (contains options without a group specified in their definition). + */ + group?: string | string[]; + /** A string describing the option. */ + description?: string; + /** A string to replace the default type string (e.g. ). It's often more useful to set a more descriptive type label, like , , , etc.. */ + typeLabel?: string; + } + + /** A OptionList section adds a table displaying details of the available options. */ + interface OptionList { + header?: string; + /** An array of option definition objects. */ + optionList?: OptionDefinition[]; + /** If specified, only options from this particular group will be printed. */ + group?: string | string[]; + /** The names of one of more option definitions to hide from the option list. */ + hide?: string | string[]; + /** If true, the option alias will be displayed after the name, i.e. --verbose, -v instead of -v, --verbose). */ + reverseNameOrder?: boolean; + /** An options object suitable for passing into table-layout. */ + tableOptions?: any; + } } - -declare function commandLineUsage(sections: commandLineUsage.CommandLineUsageInput): string | undefined | commandLineUsage.Section; - -export = commandLineUsage; diff --git a/types/node-common-errors/node-common-errors-tests.ts b/types/common-errors/common-errors-tests.ts similarity index 98% rename from types/node-common-errors/node-common-errors-tests.ts rename to types/common-errors/common-errors-tests.ts index 9554c31dff..ed2c1cdf15 100644 --- a/types/node-common-errors/node-common-errors-tests.ts +++ b/types/common-errors/common-errors-tests.ts @@ -1,4 +1,4 @@ -import * as errors from 'node-common-errors'; +import * as errors from 'common-errors'; errors.log(new Error()); // $ExpectType Error errors.log(new Error(), ''); // $ExpectType Error diff --git a/types/node-common-errors/index.d.ts b/types/common-errors/index.d.ts similarity index 99% rename from types/node-common-errors/index.d.ts rename to types/common-errors/index.d.ts index 06bcb9e754..da0230b084 100644 --- a/types/node-common-errors/index.d.ts +++ b/types/common-errors/index.d.ts @@ -1,5 +1,5 @@ -// Type definitions for node-common-errors 0.4 -// Project: https://github.com/shutterstock/node-errors +// Type definitions for common-errors 1.0 +// Project: https://github.com/shutterstock/node-common-errors // Definitions by: Ian Copp // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 diff --git a/types/common-errors/tsconfig.json b/types/common-errors/tsconfig.json new file mode 100644 index 0000000000..a4c4800e39 --- /dev/null +++ b/types/common-errors/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "common-errors-tests.ts" + ] +} diff --git a/types/common-errors/tslint.json b/types/common-errors/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/common-errors/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/component-emitter/index.d.ts b/types/component-emitter/index.d.ts index 95682f6ca4..b55a1673ab 100644 --- a/types/component-emitter/index.d.ts +++ b/types/component-emitter/index.d.ts @@ -13,9 +13,9 @@ interface Emitter { hasListeners(event: string): boolean; } -declare const constructor: { +declare const Emitter: { (obj?: any): Emitter; new (obj?: any): Emitter; }; -export = constructor; +export = Emitter; diff --git a/types/connect/connect-tests.ts b/types/connect/connect-tests.ts index 5a7590a9a0..669a146a28 100644 --- a/types/connect/connect-tests.ts +++ b/types/connect/connect-tests.ts @@ -4,13 +4,23 @@ import connect = require("connect"); const app = connect(); // log all requests -app.use((req: http.IncomingMessage, res: http.ServerResponse, next: Function) => { +app.use((req: http.IncomingMessage, res: http.ServerResponse, next: connect.NextFunction) => { console.log(req, res); next(); }); +// "Throw" an Error +app.use((req: http.IncomingMessage, res: http.ServerResponse, next: connect.NextFunction) => { + next(new Error("Something went wrong!")); +}); + +// "Throw" a number +app.use((req: http.IncomingMessage, res: http.ServerResponse, next: connect.NextFunction) => { + next(404); +}); + // Stop on errors -app.use((err: Error, req: http.IncomingMessage, res: http.ServerResponse, next: Function) => { +app.use((err: any, req: http.IncomingMessage, res: http.ServerResponse, next: connect.NextFunction) => { if (err) { return res.end(`Error: ${err}`); } @@ -18,6 +28,11 @@ app.use((err: Error, req: http.IncomingMessage, res: http.ServerResponse, next: next(); }); +// Use legacy `Function` for `next` parameter. +app.use((req: http.IncomingMessage, res: http.ServerResponse, next: Function) => { + next(); +}); + // respond to all requests app.use((req: http.IncomingMessage, res: http.ServerResponse) => { res.end("Hello from Connect!\n"); diff --git a/types/connect/index.d.ts b/types/connect/index.d.ts index 8cebd6ba78..4efddb1e7f 100644 --- a/types/connect/index.d.ts +++ b/types/connect/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for connect v3.4.0 // Project: https://github.com/senchalabs/connect // Definitions by: Maxime LUCE +// Evan Hahn // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -17,9 +18,11 @@ declare function createServer(): createServer.Server; declare namespace createServer { export type ServerHandle = HandleFunction | http.Server; + type NextFunction = (err?: any) => void; + export type SimpleHandleFunction = (req: http.IncomingMessage, res: http.ServerResponse) => void; - export type NextHandleFunction = (req: http.IncomingMessage, res: http.ServerResponse, next: Function) => void; - export type ErrorHandleFunction = (err: Error, req: http.IncomingMessage, res: http.ServerResponse, next: Function) => void; + export type NextHandleFunction = (req: http.IncomingMessage, res: http.ServerResponse, next: NextFunction) => void; + export type ErrorHandleFunction = (err: any, req: http.IncomingMessage, res: http.ServerResponse, next: NextFunction) => void; export type HandleFunction = SimpleHandleFunction | NextHandleFunction | ErrorHandleFunction; export interface ServerStackItem { diff --git a/types/convict/convict-tests.ts b/types/convict/convict-tests.ts index 98a107d8e8..de35b17578 100644 --- a/types/convict/convict-tests.ts +++ b/types/convict/convict-tests.ts @@ -1,108 +1,122 @@ -import convict = require('convict'); -import validator = require('validator'); +import * as convict from 'convict'; +import * as validator from 'validator'; +import { safeLoad } from 'js-yaml'; // define a schema // straight from the convict tests const format: convict.Format = { - name: 'float-percent', - validate(val) { - if (val !== 0 && (!val || val > 1 || val < 0)) { - throw new Error('must be a float between 0 and 1, inclusive'); + name: 'float-percent', + validate(val) { + if (val !== 0 && (!val || val > 1 || val < 0)) { + throw new Error('must be a float between 0 and 1, inclusive'); + } + }, + coerce(val) { + return parseFloat(val); } - }, - coerce(val) { - return parseFloat(val); - } }; convict.addFormat(format); convict.addFormats({ - prime: { - validate(val) { - function isPrime(n: number) { - if (n <= 1) return false; // zero and one are not prime - for (let i = 2; i * i <= n; i++) { - if (n % i === 0) return false; + prime: { + validate(val) { + function isPrime(n: number) { + if (n <= 1) return false; // zero and one are not prime + for (let i = 2; i * i <= n; i++) { + if (n % i === 0) return false; + } + return true; + } + if (!isPrime(val)) throw new Error('must be a prime number'); + }, + coerce(val) { + return parseInt(val, 10); } - return true; - } - if (!isPrime(val)) throw new Error('must be a prime number'); - }, - coerce(val) { - return parseInt(val, 10); } - } }); +convict.addParser({ extension: 'json', parse: JSON.parse }); +convict.addParser([ + { extension: 'json', parse: JSON.parse }, + { extension: ['yml', 'yaml'], parse: safeLoad } +]); + const conf = convict({ - env: { - doc: 'The applicaton environment.', - format: ['production', 'development', 'test'], - default: 'development', - env: 'NODE_ENV', - arg: 'node-env', - }, - ip: { - doc: 'The IP address to bind.', - format: 'ipaddress', - default: '127.0.0.1', - env: 'IP_ADDRESS', - }, - port: { - doc: 'The port to bind.', - format: 'port', - default: 0, - env: 'PORT', - arg: 'port', - }, - key: { - doc: "API key", - format: (val: string) => { - if (!validator.isUUID(val)) { - throw new Error('must be a valid UUID'); - } + env: { + doc: 'The applicaton environment.', + format: ['production', 'development', 'test'], + default: 'development', + env: 'NODE_ENV', + arg: 'node-env', }, - default: '01527E56-8431-11E4-AF91-47B661C210CA' - }, - db: { ip: { - doc: 'The IP address to bind.', - format: 'ipaddress', - default: '127.0.0.1', - env: 'IP_ADDRESS', + doc: 'The IP address to bind.', + format: 'ipaddress', + default: '127.0.0.1', + env: 'IP_ADDRESS', }, port: { - doc: 'The port to bind.', - format: 'port', - default: 0, - env: 'PORT', - arg: 'port', + doc: 'The port to bind.', + format: 'port', + default: 0, + env: 'PORT', + arg: 'port', }, - password: { - doc: 'The database password.', - default: 'secret', - format: String, - sensitive: true, + key: { + doc: "API key", + format: (val: string) => { + if (!validator.isUUID(val)) { + throw new Error('must be a valid UUID'); + } + }, + default: '01527E56-8431-11E4-AF91-47B661C210CA' + }, + db: { + ip: { + doc: 'The IP address to bind.', + format: 'ipaddress', + default: '127.0.0.1', + env: 'IP_ADDRESS', + }, + port: { + doc: 'The port to bind.', + format: 'port', + default: 0, + env: 'PORT', + arg: 'port', + }, + password: { + doc: 'The database password.', + default: 'secret', + format: String, + sensitive: true, + }, + }, + primeNumber: { + format: 'prime', + default: 17 + }, + percentNumber: { + format: 'float-percent', + default: 0.5 }, - }, - primeNumber: { - format: 'prime', - default: 17 - }, - percentNumber: { - format: 'float-percent', - default: 0.5 - }, }); // load environment dependent configuration +interface LoadType { + primeNumber: number; + isPrime: boolean; +} + const env = conf.get('env'); -const dbip = conf.get('db.ip'); conf.loadFile(`./config/${env}.json`); conf.loadFile(['./configs/always.json', './configs/sometimes.json']); +// tslint:disable-next-line:no-invalid-template-strings +conf.loadFile('./config/${env}.yaml'); + // perform validation conf.validate({ strict: true }); @@ -112,25 +126,39 @@ conf.validate({ allowed: 'warn' }); // Chaining conf - .loadFile(['./configs/always.json', './configs/sometimes.json']) - .loadFile(`./config/${env}.json`) - .load({ jsonKey: 'jsonValue' }) - .set('key', 'value') - .validate({ allowed: 'warn' }) - .toString(); + .loadFile(['./configs/always.json', './configs/sometimes.json']) + .loadFile<{ envVar: any }>(`./config/${env}.json`) + .load({ jsonKey: 'jsonValue' }) + .set('key', 'value') + .validate({ allowed: 'warn' }) + .toString(); -const port: number = conf.default('port'); +const port = conf.default('port'); if (conf.has('key')) { - conf.set('the.awesome', true); - conf.load({ - thing: { - a: 'b' - } - }); + conf.set('the.awesome', true); + conf.load({ + thing: { + a: 'b' + } + }); } +conf.has('unknow.key'); +conf.has<'db', 'ip'>('db.ip'); + +const schema = conf.getSchema(); + +const schemaVal = conf.getSchema().properties.db.properties.port.default; + conf.get(); +conf.get('unknownkey'); +conf.get('db'); +conf.get('db.ip'); +conf.get<'db', 'ip'>('db.ip'); +conf.default('env'); +conf.default('db.ip'); +conf.default<'db', 'ip'>('db.ip'); conf.getSchema(); conf.getProperties(); conf.getSchemaString(); diff --git a/types/convict/index.d.ts b/types/convict/index.d.ts index 544cb9b3f3..2c3dbf0547 100644 --- a/types/convict/index.d.ts +++ b/types/convict/index.d.ts @@ -1,11 +1,16 @@ -// Type definitions for convict 4.1 +// Type definitions for convict 4.2 // Project: https://github.com/mozilla/node-convict // Definitions by: Wim Looman // Vesa Poikajärvi // Eli Young +// Suntharesan Mohan // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 declare namespace convict { + // Taken from https://github.com/Microsoft/TypeScript/issues/12215#issuecomment-307871458 + type Overwrite = { [P in Exclude]: T[P] } & U; + type ValidationMethod = 'strict' | 'warn'; interface ValidateOptions { @@ -27,8 +32,13 @@ declare namespace convict { coerce?(val: any): any; } - interface SchemaObj { - default: any; + interface Parser { + extension: string | string[]; + parse: (content: string) => any; + } + + interface SchemaObj { + default: T; doc?: string; /** * From the implementation: @@ -48,57 +58,105 @@ declare namespace convict { sensitive?: boolean; } - interface Schema { - [name: string]: Schema | SchemaObj; + type Schema = { + [P in keyof T]: Schema | SchemaObj; + }; + + interface InternalSchema { + properties: { + [K in keyof T]: T[K] extends object ? InternalSchema : { default: T[K] } + }; } - interface InternalSchema { - properties: Schema; - } - - interface Config { + interface Config { /** * @returns the current value of the name property. name can use dot * notation to reference nested values */ - get(name?: string): any; + get(name?: K): + K extends null | undefined ? T : + K extends keyof T ? T[K] : + any; + get(name: string): T[K][K2]; + get(name: K): T[K][K2][K3]; + get< + K extends keyof T, + K2 extends keyof T[K], + K3 extends keyof T[K][K2], + K4 extends keyof T[K][K2][K3] + >(name: string): T[K][K2][K3][K4]; /** * @returns the default value of the name property. name can use dot * notation to reference nested values */ - default(name: string): any; + default(name?: K): + K extends keyof T ? T[K] : + K extends null | undefined ? T : + any; + default(name?: K): T[K]; + default(name: string): T[K][K2]; + default(name: K): T[K][K2][K3]; + default< + K extends keyof T, + K2 extends keyof T[K], + K3 extends keyof T[K][K2], + K4 extends keyof T[K][K2][K3] + >(name: string): T[K][K2][K3][K4]; /** * @returns true if the property name is defined, or false otherwise */ - has(name: string): boolean; + has(name: K): boolean; + has(name: string): boolean; + has(name: K): boolean; + has< + K extends keyof T, + K2 extends keyof T[K], + K3 extends keyof T[K][K2], + K4 extends keyof T[K][K2][K3] + >(name: string): boolean; /** * Sets the value of name to value. name can use dot notation to reference * nested values, e.g. "database.port". If objects in the chain don't yet * exist, they will be initialized to empty objects */ - set(name: string, value: any): Config; + set(name: K, value: K extends keyof T ? T[K] : any): Config; + set< + K extends keyof T, + K2 extends keyof T[K] | string + >(name: K, value: K2 extends keyof T[K] ? T[K][K2] : any): Config; + set< + K extends keyof T, + K2 extends keyof T[K], + K3 extends keyof T[K][K2] | string + >(name: K, value: K3 extends keyof T[K][K2] ? T[K][K2][K3] : any): Config; + set< + K extends keyof T, + K2 extends keyof T[K], + K3 extends keyof T[K][K2], + K4 extends keyof T[K][K2][K3] | string + >(name: K, value: K4 extends keyof T[K][K2][K3] ? T[K][K2][K3][K4] : any): Config; /** * Loads and merges a JavaScript object into config */ - load(conf: Object): Config; + load(conf: U): Config>; /** * Loads and merges JSON configuration file(s) into config */ - loadFile(files: string | string[]): Config; + loadFile(files: string | string[]): Config>; /** * Validates config against the schema used to initialize it */ - validate(options?: ValidateOptions): Config; + validate(options?: ValidateOptions): Config; /** * Exports all the properties (that is the keys and their current values) as a {JSON} {Object} * @returns A {JSON} compliant {Object} */ - getProperties(): Object; + getProperties(): T; /** * Exports the schema as a {JSON} {Object} * @returns A {JSON} compliant {Object} */ - getSchema(): InternalSchema; + getSchema(): InternalSchema; /** * Exports all the properties (that is the keys and their current values) as a JSON string. @@ -113,10 +171,12 @@ declare namespace convict { getSchemaString(): string; } } + interface convict { addFormat(format: convict.Format): void; addFormats(formats: { [name: string]: convict.Format }): void; - (config: convict.Schema | string): convict.Config; + addParser(parsers: convict.Parser | convict.Parser[]): void; + (config: convict.Schema | string): convict.Config; } declare var convict: convict; export = convict; diff --git a/types/convict/tslint.json b/types/convict/tslint.json index 09f94cd344..3d215ace77 100644 --- a/types/convict/tslint.json +++ b/types/convict/tslint.json @@ -2,6 +2,7 @@ "extends": "dtslint/dt.json", "rules": { // ban-types needs to be disabled to support TypeScript <2.2 - "ban-types": false + "ban-types": false, + "no-unnecessary-generics": false } } diff --git a/types/core-js/core-js-tests.ts b/types/core-js/core-js-tests.ts index ab11eab409..476c97348f 100644 --- a/types/core-js/core-js-tests.ts +++ b/types/core-js/core-js-tests.ts @@ -418,7 +418,7 @@ log.disable(); // Non-standard point = dictOfPoint[s]; point = dictOfPoint[i]; -point = dictOfPoint[sym]; +// point = dictOfPoint[sym]; dictOfPoint = new Dict(dictOfPoint); dictOfAny = new Dict(point); dictOfPoint = Dict(dictOfPoint); diff --git a/types/cors/cors-tests.ts b/types/cors/cors-tests.ts index 83975549c7..ed4cd77213 100644 --- a/types/cors/cors-tests.ts +++ b/types/cors/cors-tests.ts @@ -47,4 +47,11 @@ app.use(cors({ } } })); +app.use(cors((req, cb) => { + if (req.query.trusted) { + cb(null, {origin: 'http://example.com', credentials: true}); + } else { + cb(new Error('Not trusted')); + } +})) diff --git a/types/cors/index.d.ts b/types/cors/index.d.ts index ab8ba2ed2d..bc7a567fc7 100644 --- a/types/cors/index.d.ts +++ b/types/cors/index.d.ts @@ -1,12 +1,9 @@ // Type definitions for cors 2.8 // Project: https://github.com/troygoode/node-cors/ -// Definitions by: Mihhail Lapushkin +// Definitions by: Alan Plum // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 - - - import express = require('express'); type CustomOrigin = ( @@ -25,7 +22,13 @@ declare namespace e { preflightContinue?: boolean; optionsSuccessStatus?: number; } + type CorsOptionsDelegate = ( + req: express.Request, + callback: (err: Error | null, options?: CorsOptions) => void + ) => void; } -declare function e(options?: e.CorsOptions): express.RequestHandler; +declare function e( + options?: e.CorsOptions | e.CorsOptionsDelegate +): express.RequestHandler; export = e; diff --git a/types/cosmiconfig/cosmiconfig-tests.ts b/types/cosmiconfig/cosmiconfig-tests.ts index 2676c58407..632569c6f9 100644 --- a/types/cosmiconfig/cosmiconfig-tests.ts +++ b/types/cosmiconfig/cosmiconfig-tests.ts @@ -1,41 +1,23 @@ -import cosmiconfig = require("cosmiconfig"); +import cosmiconfig, { CosmiconfigResult } from "cosmiconfig"; +import * as path from "path"; -const asyncExplorer = cosmiconfig("yourModuleName", { - packageProp: "yourModuleName", - rc: ".yourModuleNamerc", - js: "yourModuleName.config.js", - rcStrictJson: false, - rcExtensions: false, - stopDir: "someDir", - cache: true, - sync: false, - transform: ({ config, filePath }) => ({ config, filePath }), - format: "js" +const explorer = cosmiconfig("yourModuleName", { + searchPlaces: [], + loaders: {}, + packageProp: "yourModuleName", + stopDir: "someDir", + cache: true, + transform: (result: CosmiconfigResult) => result, + ignoreEmptySearchPlaces: false, }); Promise.all([ - asyncExplorer.load(), - asyncExplorer.load("start/search/here"), - asyncExplorer.load(null, "load/this/file.json") + explorer.search(path.join(__dirname)), + explorer.searchSync(path.join(__dirname)), + explorer.load(path.join(__dirname, "sample-config.json")), + explorer.loadSync(path.join(__dirname, "sample-config.json")), ]).then(result => result); -asyncExplorer.load().then(({ config, filePath }) => ({ config, filePath })); - -asyncExplorer.clearFileCache(); -asyncExplorer.clearDirectoryCache(); -asyncExplorer.clearCaches(); - -const syncExplorer = cosmiconfig("yourModuleName", { - packageProp: "yourModuleName", - rc: ".yourModuleNamerc", - js: "yourModuleName.config.js", - rcStrictJson: false, - rcExtensions: false, - stopDir: "someDir", - cache: true, - sync: true, - transform: ({ config, filePath }) => ({ config, filePath }), - format: "js" -}); - -const { config, filePath } = syncExplorer.load(); +explorer.clearLoadCache(); +explorer.clearSearchCache(); +explorer.clearCaches(); diff --git a/types/cosmiconfig/index.d.ts b/types/cosmiconfig/index.d.ts index 032f570d6f..bdafc922ec 100644 --- a/types/cosmiconfig/index.d.ts +++ b/types/cosmiconfig/index.d.ts @@ -1,63 +1,58 @@ -// Type definitions for cosmiconfig 4.0 +// Type definitions for cosmiconfig 5.0 // Project: https://github.com/davidtheclark/cosmiconfig // Definitions by: ozum +// szeck87 // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 -interface Result { - config: object; - filePath: string; +/// + +export interface Config { + [key: string]: any; } -interface Options { - packageProp?: string | false; - rc?: string | false; - js?: string | false; - rcStrictJson?: boolean; - rcExtensions?: boolean; - stopDir?: string; - cache?: boolean; - transform?: (result: Result) => Promise | Result; - configPath?: string; - format?: "json" | "yaml" | "js"; +export type CosmiconfigResult = { + config: Config; + filePath: string; + isEmpty?: boolean; +} | null; + +export interface LoaderResult { + config: Config | null; + filepath: string; } -// Default is false and makes load() method async -interface AsyncOptions extends Options { - sync?: false; +export type SyncLoader = (filepath: string, content: string) => Config | null; +export type AsyncLoader = (filepath: string, content: string) => Config | null | Promise; + +export interface LoaderEntry { + sync?: SyncLoader; + async?: AsyncLoader; } -// Makes load() method sync -interface SyncOptions extends Options { - sync: true; +export interface Loaders { + [key: string]: LoaderEntry; } -interface Explorer { - clearFileCache(): void; - clearDirectoryCache(): void; - clearCaches(): void; +export interface Explorer { + search(searchFrom: string): Promise; + searchSync(searchFrom: string): null | CosmiconfigResult; + load(loadPath: string): Promise; + loadSync(loadPath: string): CosmiconfigResult; + clearLoadCache(): void; + clearSearchCache(): void; + clearCaches(): void; } -interface AsyncExplorer extends Explorer { - // You should provide either searchPath or configPath for load method. To disallow both, overloaded definitions added. - load(searchPath?: string): Promise; - load(searchPath: null | undefined, configPath?: string): Promise; +// These are the user options with defaults applied. +export interface ExplorerOptions { + stopDir?: string; + cache?: boolean; + transform?: (result: CosmiconfigResult) => Promise | CosmiconfigResult; + packageProp?: string; + loaders?: Loaders; + searchPlaces?: string[]; + ignoreEmptySearchPlaces?: boolean; } -interface SyncExplorer extends Explorer { - // You should provide either searchPath or configPath for load method. To disallow both, overloaded definitions added. - load(searchPath?: string): Result; - load(searchPath: null | undefined, configPath?: string): Result; -} - -declare function cosmiconfig( - moduleName: string, - options: SyncOptions -): SyncExplorer; - -declare function cosmiconfig( - moduleName: string, - options?: AsyncOptions -): AsyncExplorer; - -export = cosmiconfig; +export default function cosmiconfig(moduleName: string, options: ExplorerOptions): Explorer; diff --git a/types/cosmiconfig/v4/cosmiconfig-tests.ts b/types/cosmiconfig/v4/cosmiconfig-tests.ts new file mode 100644 index 0000000000..2676c58407 --- /dev/null +++ b/types/cosmiconfig/v4/cosmiconfig-tests.ts @@ -0,0 +1,41 @@ +import cosmiconfig = require("cosmiconfig"); + +const asyncExplorer = cosmiconfig("yourModuleName", { + packageProp: "yourModuleName", + rc: ".yourModuleNamerc", + js: "yourModuleName.config.js", + rcStrictJson: false, + rcExtensions: false, + stopDir: "someDir", + cache: true, + sync: false, + transform: ({ config, filePath }) => ({ config, filePath }), + format: "js" +}); + +Promise.all([ + asyncExplorer.load(), + asyncExplorer.load("start/search/here"), + asyncExplorer.load(null, "load/this/file.json") +]).then(result => result); + +asyncExplorer.load().then(({ config, filePath }) => ({ config, filePath })); + +asyncExplorer.clearFileCache(); +asyncExplorer.clearDirectoryCache(); +asyncExplorer.clearCaches(); + +const syncExplorer = cosmiconfig("yourModuleName", { + packageProp: "yourModuleName", + rc: ".yourModuleNamerc", + js: "yourModuleName.config.js", + rcStrictJson: false, + rcExtensions: false, + stopDir: "someDir", + cache: true, + sync: true, + transform: ({ config, filePath }) => ({ config, filePath }), + format: "js" +}); + +const { config, filePath } = syncExplorer.load(); diff --git a/types/cosmiconfig/v4/index.d.ts b/types/cosmiconfig/v4/index.d.ts new file mode 100644 index 0000000000..032f570d6f --- /dev/null +++ b/types/cosmiconfig/v4/index.d.ts @@ -0,0 +1,63 @@ +// Type definitions for cosmiconfig 4.0 +// Project: https://github.com/davidtheclark/cosmiconfig +// Definitions by: ozum +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +interface Result { + config: object; + filePath: string; +} + +interface Options { + packageProp?: string | false; + rc?: string | false; + js?: string | false; + rcStrictJson?: boolean; + rcExtensions?: boolean; + stopDir?: string; + cache?: boolean; + transform?: (result: Result) => Promise | Result; + configPath?: string; + format?: "json" | "yaml" | "js"; +} + +// Default is false and makes load() method async +interface AsyncOptions extends Options { + sync?: false; +} + +// Makes load() method sync +interface SyncOptions extends Options { + sync: true; +} + +interface Explorer { + clearFileCache(): void; + clearDirectoryCache(): void; + clearCaches(): void; +} + +interface AsyncExplorer extends Explorer { + // You should provide either searchPath or configPath for load method. To disallow both, overloaded definitions added. + load(searchPath?: string): Promise; + load(searchPath: null | undefined, configPath?: string): Promise; +} + +interface SyncExplorer extends Explorer { + // You should provide either searchPath or configPath for load method. To disallow both, overloaded definitions added. + load(searchPath?: string): Result; + load(searchPath: null | undefined, configPath?: string): Result; +} + +declare function cosmiconfig( + moduleName: string, + options: SyncOptions +): SyncExplorer; + +declare function cosmiconfig( + moduleName: string, + options?: AsyncOptions +): AsyncExplorer; + +export = cosmiconfig; diff --git a/types/cosmiconfig/v4/tsconfig.json b/types/cosmiconfig/v4/tsconfig.json new file mode 100644 index 0000000000..f0c8707c16 --- /dev/null +++ b/types/cosmiconfig/v4/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../../", + "typeRoots": ["../../"], + "paths": { + "cosmiconfig": [ "cosmiconfig/v4" ] + }, + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "cosmiconfig-tests.ts"] +} diff --git a/types/cosmiconfig/v4/tslint.json b/types/cosmiconfig/v4/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/cosmiconfig/v4/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/countdown/index.d.ts b/types/countdown/index.d.ts index bcb0d07976..9b00293185 100644 --- a/types/countdown/index.d.ts +++ b/types/countdown/index.d.ts @@ -17,6 +17,7 @@ declare namespace countdown { decades?: number; years?: number; months?: number; + weeks?: number; days?: number; hours?: number; minutes?: number; diff --git a/types/create-react-class/create-react-class-tests.ts b/types/create-react-class/create-react-class-tests.ts index b8025b23f0..3d7536d722 100644 --- a/types/create-react-class/create-react-class-tests.ts +++ b/types/create-react-class/create-react-class-tests.ts @@ -11,7 +11,7 @@ interface State { bar: number; } -const props: Props & React.ClassAttributes<{}> = { +const props: Props = { foo: "foo" }; diff --git a/types/cron/cron-tests.ts b/types/cron/cron-tests.ts index 7eea73eeed..21e28f9c0f 100644 --- a/types/cron/cron-tests.ts +++ b/types/cron/cron-tests.ts @@ -47,7 +47,12 @@ var job = new CronJob({ start: false, timeZone: 'America/Los_Angeles' }); +console.log(job.lastDate()); +console.log(job.nextDates(1)); +console.log(job.running); +job.setTime(new CronTime('00 30 11 * * 1-2')); job.start(); +job.stop(); // How to check if a cron pattern is valid: try { diff --git a/types/cron/index.d.ts b/types/cron/index.d.ts index 780890c014..b27bfdf90c 100644 --- a/types/cron/index.d.ts +++ b/types/cron/index.d.ts @@ -1,25 +1,118 @@ -// Type definitions for cron 1.2 +// Type definitions for cron 1.3 // Project: https://www.npmjs.com/package/cron // Definitions by: Hiroki Horiuchi +// Lundarl Gholoi // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +export declare class CronTime { + /** + * Create a new ```CronTime```. + * @param source The time to fire off your job. This can be in the form of cron syntax or a JS ```Date``` object. + * @param zone Timezone name. You can check all timezones available at [Moment Timezone Website](http://momentjs.com/timezone/). + */ + constructor(source: string | Date, zone?: string); + /** + * Tells you when ```CronTime``` will be run. + * @param i Indicate which turn of run after now. If not given return next run time. + */ + public sendAt(i?: number): Date; + /** + * Get the number of milliseconds in the future at which to fire our callbacks. + */ + public getTimeout(): number; +} -interface CronJobStatic { - new (cronTime: string | Date, onTick: () => void, onComplete?: () => void, start?: boolean, timeZone?: string, context?: any, runOnInit?: boolean): CronJob; - new (options: { - cronTime: string | Date; onTick: () => void; onComplete?: () => void; start?: boolean; timeZone?: string; context?: any; runOnInit?: boolean - }): CronJob; +export declare interface CronJobParameters { + /** + * The time to fire off your job. This can be in the form of cron syntax or a JS ```Date``` object. + */ + cronTime: string | Date; + /** + * The function to fire at the specified time. + */ + onTick: () => void; + /** + * A function that will fire when the job is complete, when it is stopped. + */ + onComplete?: () => void; + /** + * Specifies whether to start the job just before exiting the constructor. By default this is set to false. If left at default you will need to call ```job.start()``` in order to start the job (assuming ```job``` is the variable you set the cronjob to). This does not immediately fire your onTick function, it just gives you more control over the behavior of your jobs. + */ + start?: boolean; + /** + * Specify the timezone for the execution. This will modify the actual time relative to your timezone. If the timezone is invalid, an error is thrown. You can check all timezones available at [Moment Timezone Website](http://momentjs.com/timezone/). + */ + timeZone?: string; + /** + * The context within which to execute the onTick method. This defaults to the cronjob itself allowing you to call ```this.stop()```. However, if you change this you'll have access to the functions and values within your context object. + */ + context?: any; + /** + * This will immediately fire your ```onTick``` function as soon as the requisit initialization has happened. This option is set to ```false``` by default for backwards compatibility. + */ + runOnInit?: boolean; } -interface CronJob { - start(): void; - stop(): void; - running: boolean | undefined; -} -export declare var CronJob: CronJobStatic; -interface CronTimeStatic { - new (time: string | Date): CronTime; +export declare class CronJob { + /** + * Return ```true``` if job is running. + */ + public running: boolean | undefined; + /** + * Function using to fire ```onTick```, default set to an inner private function. Overwrite this only if you have a really good reason to do so. + */ + public fireOnTick: Function; + + /** + * Create a new ```CronJob```. + * @param cronTime The time to fire off your job. This can be in the form of cron syntax or a JS ```Date``` object. + * @param onTick The function to fire at the specified time. + * @param onComplete A function that will fire when the job is complete, when it is stopped. + * @param start Specifies whether to start the job just before exiting the constructor. By default this is set to false. If left at default you will need to call ```job.start()``` in order to start the job (assuming ```job``` is the variable you set the cronjob to). This does not immediately fire your onTick function, it just gives you more control over the behavior of your jobs. + * @param timeZone Specify the timezone for the execution. This will modify the actual time relative to your timezone. If the timezone is invalid, an error is thrown. You can check all timezones available at [Moment Timezone Website](http://momentjs.com/timezone/). + * @param context The context within which to execute the onTick method. This defaults to the cronjob itself allowing you to call ```this.stop()```. However, if you change this you'll have access to the functions and values within your context object. + * @param runOnInit This will immediately fire your ```onTick``` function as soon as the requisit initialization has happened. This option is set to ```false``` by default for backwards compatibility. + */ + constructor(cronTime: string | Date, onTick: () => void, onComplete?: () => void, start?: boolean, timeZone?: string, context?: any, runOnInit?: boolean); + /** + * Create a new ```CronJob```. + * @param options Job parameters. + */ + constructor(options: CronJobParameters); + + /** + * Runs your job. + */ + public start(): void; + /** + * Stops your job. + */ + public stop(): void; + /** + * Change the time for the ```CronJob```. + * @param time Target time. + */ + public setTime(time: CronTime): void; + /** + * Tells you the last execution date. + */ + public lastDate(): Date; + /** + * Tells you when a ```CronTime``` will be run. + * @param i Indicate which turn of run after now. If not given return next run time. + */ + public nextDates(i?: number): Date; + /** + * Add another ```onTick``` function. + * @param callback Target function. + */ + public addCallback(callback: Function): void; } -interface CronTime { } -export declare var CronTime: CronTimeStatic; + +export declare var job: + ((cronTime: string | Date, onTick: () => void, onComplete?: () => void, start?: boolean, timeZone?: string, context?: any, runOnInit?: boolean) => CronJob) + | ((options: CronJobParameters) => CronJob); +export declare var time: (source: string | Date, zone?: string) => CronTime; +export declare var sendAt: (cronTime: CronTime) => Date; +export declare var timeout: (cronTime: CronTime) => number; diff --git a/types/cropperjs/index.d.ts b/types/cropperjs/index.d.ts index 60b508dd8f..30556e11fc 100644 --- a/types/cropperjs/index.d.ts +++ b/types/cropperjs/index.d.ts @@ -312,19 +312,19 @@ declare namespace cropperjs { /** * the offset left of the crop box */ - left?: number; + left: number; /** * the offset top of the crop box */ - top?: number; + top: number; /** * the width of the crop box */ - width?: number; + width: number; /** * the height of the crop box */ - height?: number; + height: number; } interface CanvasData { /** @@ -516,7 +516,7 @@ declare class cropperjs { /** * Change the cropped area position and size with new data (base on the original image). */ - setData(data: cropperjs.Data): void; + setData(data: Partial): void; /** * Output the container size data. @@ -545,7 +545,7 @@ declare class cropperjs { /** * Change the canvas (image wrapper) position and size with new data. */ - setCanvasData(data: cropperjs.CanvasData): void; + setCanvasData(data: Partial): void; /** * Output the crop box position and size data. @@ -555,7 +555,7 @@ declare class cropperjs { /** * Change the crop box position and size with new data. */ - setCropBoxData(data: cropperjs.CropBoxData): void; + setCropBoxData(data: Partial): void; /** * Get a canvas drawn the cropped image. diff --git a/types/css-font-loading-module/css-font-loading-module-tests.ts b/types/css-font-loading-module/css-font-loading-module-tests.ts index 52556a03a6..db894a5b57 100644 --- a/types/css-font-loading-module/css-font-loading-module-tests.ts +++ b/types/css-font-loading-module/css-font-loading-module-tests.ts @@ -6,6 +6,8 @@ font.load(); font.loaded.then((fontFace: FontFace) => { fontFace.status; fontFace.family; + fontFace.variationSettings; + fontFace.display; }, (fontFace: FontFace) => {}); const a: boolean = document.fonts.check("12px Example"); diff --git a/types/css-font-loading-module/index.d.ts b/types/css-font-loading-module/index.d.ts index 95d504f272..c710f2f653 100644 --- a/types/css-font-loading-module/index.d.ts +++ b/types/css-font-loading-module/index.d.ts @@ -49,6 +49,8 @@ declare global { unicodeRange: string; variant: string; featureSettings: string; + variationSettings: string; + display: string; readonly status: FontFaceLoadStatus; readonly loaded: Promise; } diff --git a/types/cucumber/cucumber-tests.ts b/types/cucumber/cucumber-tests.ts index b7fa675095..41a52c6d61 100644 --- a/types/cucumber/cucumber-tests.ts +++ b/types/cucumber/cucumber-tests.ts @@ -11,6 +11,7 @@ const Status = cucumber.Status; declare module "cucumber" { interface World { visit(url: string, callback: CallbackStepDefinition): void; + toInt(value: string): number; } } @@ -21,6 +22,7 @@ function StepSampleWithoutDefineSupportCode() { this.visit = (url: string, callback: Callback) => { callback(null, 'pending'); }; + this.toInt = parseInt; }); Before((scenarioResult: HookScenarioResult, callback: Callback) => { @@ -164,6 +166,24 @@ function StepSampleWithoutDefineSupportCode() { useForSnippets: false }); + defineParameterType({ + regexp: /(one) (two)/, + transformer: (x, y) => x + y, + name: 'param', + preferForRegexpMatch: false, + useForSnippets: false + }); + + defineParameterType({ + regexp: /123/, + transformer(val) { + return this.toInt(val); + }, + name: 'param', + preferForRegexpMatch: false, + useForSnippets: false + }); + Given('a {param} step', param => { assert.equal(param, 'PARTICULAR'); }); diff --git a/types/cucumber/index.d.ts b/types/cucumber/index.d.ts index d0fc9085fd..8cfed3ef31 100644 --- a/types/cucumber/index.d.ts +++ b/types/cucumber/index.d.ts @@ -81,7 +81,7 @@ export interface HookScenarioResult { export interface SourceLocation { line: number; - url: string; + uri: string; } export interface ScenarioResult { @@ -95,7 +95,7 @@ export namespace pickle { locations: Location[]; name: string; steps: Step[]; - tags: string[]; + tags: Tag[]; } interface Location { @@ -117,6 +117,11 @@ export namespace pickle { location: Location; value: string; } + + interface Tag { + name: string; + location: Location; + } } export type HookCode = (this: World, scenario: HookScenarioResult, callback?: CallbackStepDefinition) => void; @@ -124,7 +129,7 @@ export type GlobalHookCode = (callback?: CallbackStepDefinition) => void; export interface Transform { regexp: RegExp; - transformer(arg: string): any; + transformer(this: World, ...arg: string[]): any; useForSnippets?: boolean; preferForRegexpMatch?: boolean; name?: string; diff --git a/types/cytoscape/index.d.ts b/types/cytoscape/index.d.ts index b04ac2276e..4da9cd9ca0 100644 --- a/types/cytoscape/index.d.ts +++ b/types/cytoscape/index.d.ts @@ -8,7 +8,7 @@ // // Translation from Objects in help to Typescript interface. // http://js.cytoscape.org/#notation/functions -// +// TypeScript Version: 2.2 /** * cy --> Cy.Core @@ -3145,7 +3145,7 @@ declare namespace cytoscape { /** * http://js.cytoscape.org/#style/node-body */ - interface Node extends PaddingNode { + interface Node extends Partial, PaddingNode { "label"?: string; /** * The width of the node’s body. @@ -3320,7 +3320,7 @@ declare namespace cytoscape { "pie-i-background-opacity": number; } - interface Edge extends EdgeLine, EdgeArror { } + interface Edge extends EdgeLine, EdgeArror, Partial { } /** * These properties affect the styling of an edge’s line: diff --git a/types/d3-axis/d3-axis-tests.ts b/types/d3-axis/d3-axis-tests.ts index f2b47beaa8..8edd1ab1c4 100644 --- a/types/d3-axis/d3-axis-tests.ts +++ b/types/d3-axis/d3-axis-tests.ts @@ -47,6 +47,7 @@ axisScaleNumber = scaleBand(); axisScaleNumber = scalePoint(); axisScaleString = scaleBand(); axisScaleString = scalePoint(); + // -------------------------------------------------------------------------- // Test AxisContainerElement // -------------------------------------------------------------------------- @@ -58,7 +59,8 @@ const canvas: HTMLCanvasElement = select('canvas').node( containerElement = svg; containerElement = g; -// containerElement = canvas; // fails, incompatible type +// $ExpectError +containerElement = canvas; // fails, incompatible type // -------------------------------------------------------------------------- // Test Axis Generators @@ -77,14 +79,13 @@ let leftAxis: d3Axis.Axis = d3Axis.axisLeft(scal leftAxis = leftAxis.scale(scalePow()); const powerScale: ScalePower = leftAxis.scale>(); -// powerScale = leftAxis.scale(); // fails, without casting as AxisScale is purposely generic bottomAxis = bottomAxis.scale(scaleOrdinal()); -// bottomAxis = bottomAxis.scale(scalePow()) // fails, domain of scale incompatible with domain of axis +// $ExpectError +bottomAxis = bottomAxis.scale(scalePow()); // fails, domain of scale incompatible with domain of axis const axisScale: d3Axis.AxisScale = bottomAxis.scale(); const ordinalScale: ScaleOrdinal = bottomAxis.scale>(); -// ordinalScale = bottomAxis.scale(); // fails, without casting as AxisScale is purposely generic // ticks(...) ---------------------------------------------------------------- @@ -119,6 +120,7 @@ const formatFn: ((domainValue: string, index: number) => string) | null = bottom bottomAxis.tickFormat((d, i) => '#' + i); bottomAxis.tickFormat(d => d + '!'); + // tickSize(...) ---------------------------------------------------------------- rightAxis = rightAxis.tickSize(5); @@ -149,14 +151,24 @@ const gTransition = gSelection.transition(); gSelection.call(topAxis); gTransition.call(topAxis); -const svgSelection: Selection = select('g'); +const svgSelection: Selection = select('svg'); const svgTransition = svgSelection.transition(); svgSelection.call(leftAxis); svgTransition.call(leftAxis); +const pathSelection: Selection = select('path'); +const pathTransition = svgSelection.transition(); + +// // $ExpectError +// pathSelection.call(bottomAxis); +// // $ExpectError +// pathSelection.call(bottomAxis); + const canvasSelection: Selection = select('canvas'); const canvasTransition = canvasSelection.transition(); -// canvasSelection.call(rightAxis); // fails, incompatible context container element -// canvasTransition.call(rightAxis); // fails, incompatible context container element +// $ExpectError +canvasSelection.call(rightAxis); // fails, incompatible context container element +// $ExpectError +canvasTransition.call(rightAxis); // fails, incompatible context container element diff --git a/types/d3-axis/index.d.ts b/types/d3-axis/index.d.ts index 1c7820c809..ea67b74209 100644 --- a/types/d3-axis/index.d.ts +++ b/types/d3-axis/index.d.ts @@ -1,6 +1,9 @@ // Type definitions for D3JS d3-axis module 1.0 // Project: https://github.com/d3/d3-axis/ -// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov +// Definitions by: Tom Wanzek +// Alex Ford +// Boris Yankov +// denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // Last module patch version validated against: 1.0.8 @@ -11,6 +14,11 @@ import { Selection, TransitionLike } from 'd3-selection'; // Shared Types and Interfaces // -------------------------------------------------------------------------- +/** + * A helper type to alias elements which can serve as a domain for an axis. + */ +export type AxisDomain = number | string | Date | { valueOf(): number}; + /** * A helper interface to describe the minimal contract to be met by a time interval * which can be passed into the Axis.ticks(...) or Axis.tickArguments(...) methods when @@ -29,7 +37,7 @@ export interface AxisTimeInterval { /** * A helper interface to which a scale passed into axis must conform (at a minimum) - * for axis to use the scale without error + * for axis to use the scale without error. */ export interface AxisScale { (x: Domain): number | undefined; @@ -37,7 +45,7 @@ export interface AxisScale { range(): number[]; copy(): this; bandwidth?(): number; - // TODO: Reconsider the below, note that the compiler does not differentiate the overloads w.r.t. optionality + // TODO: Reconsider the below, note that the compiler does not differentiate the overloads w.r.t. optionality // ticks?(count?: number): Domain[]; // ticks?(count?: AxisTimeInterval): Date[]; // tickFormat?(count?: number, specifier?: string): ((d: number) => string); @@ -45,12 +53,12 @@ export interface AxisScale { } /** - * A helper type to alias elements which can serve as a container for an axis + * A helper type to alias elements which can serve as a container for an axis. */ export type AxisContainerElement = SVGSVGElement | SVGGElement; /** - * Interface defining an axis generator. The generic is the type of the axis domain + * Interface defining an axis generator. The generic is the type of the axis domain. */ export interface Axis { /** @@ -58,14 +66,14 @@ export interface Axis { * * @param context A selection of SVG containers (either SVG or G elements). */ - (context: Selection): void; + (context: Selection | Selection): void; /** * Render the axis to the given context. * * @param context A transition defined on SVG containers (either SVG or G elements). */ - (context: TransitionLike): void; + (context: TransitionLike | TransitionLike): void; /** * Gets the current scale underlying the axis. @@ -75,7 +83,7 @@ export interface Axis { /** * Sets the scale and returns the axis. * - * @param scale The scale to be used for axis generation + * @param scale The scale to be used for axis generation. */ scale(scale: AxisScale): this; @@ -86,7 +94,7 @@ export interface Axis { * * This method is also a convenience function for axis.tickArguments. * - * @param count Number of ticks that should be rendered + * @param count Number of ticks that should be rendered. * @param specifier An optional format specifier to customize how the tick values are formatted. */ ticks(count: number, specifier?: string): this; @@ -178,7 +186,7 @@ export interface Axis { * * See also axis.ticks. * - * @param args An array with arguments suitable for the scale to be used for tick generation + * @param args An array with arguments suitable for the scale to be used for tick generation. */ tickArguments(args: any[]): this; @@ -210,7 +218,7 @@ export interface Axis { tickFormat(): ((domainValue: Domain, index: number) => string) | null; /** - * Sets the tick format function and returns the axis. + * Sets the tick format function and returns the axis. * * @param format A function mapping a value from the axis Domain to a formatted string * for display purposes. When invoked, the format function is also passed a second argument representing the zero-based index @@ -287,7 +295,7 @@ export interface Axis { /** * Set the current padding and return the axis. * - * @param padding Padding in pixels (Default is 3). + * @param padding Padding in pixels (Default is 3). */ tickPadding(padding: number): this; } @@ -296,30 +304,30 @@ export interface Axis { * Constructs a new top-oriented axis generator for the given scale, with empty tick arguments, * a tick size of 6 and padding of 3. In this orientation, ticks are drawn above the horizontal domain path. * - * @param scale The scale to be used for axis generation + * @param scale The scale to be used for axis generation. */ -export function axisTop(scale: AxisScale): Axis; +export function axisTop(scale: AxisScale): Axis; /** * Constructs a new right-oriented axis generator for the given scale, with empty tick arguments, * a tick size of 6 and padding of 3. In this orientation, ticks are drawn to the right of the vertical domain path. * - * @param scale The scale to be used for axis generation + * @param scale The scale to be used for axis generation. */ -export function axisRight(scale: AxisScale): Axis; +export function axisRight(scale: AxisScale): Axis; /** * Constructs a new bottom-oriented axis generator for the given scale, with empty tick arguments, * a tick size of 6 and padding of 3. In this orientation, ticks are drawn below the horizontal domain path. * - * @param scale The scale to be used for axis generation + * @param scale The scale to be used for axis generation. */ -export function axisBottom(scale: AxisScale): Axis; +export function axisBottom(scale: AxisScale): Axis; /** * Constructs a new left-oriented axis generator for the given scale, with empty tick arguments, * a tick size of 6 and padding of 3. In this orientation, ticks are drawn to the left of the vertical domain path. * - * @param scale The scale to be used for axis generation + * @param scale The scale to be used for axis generation. */ -export function axisLeft(scale: AxisScale): Axis; +export function axisLeft(scale: AxisScale): Axis; diff --git a/types/d3-axis/tsconfig.json b/types/d3-axis/tsconfig.json index 5b54d1f622..0e15092e48 100644 --- a/types/d3-axis/tsconfig.json +++ b/types/d3-axis/tsconfig.json @@ -8,7 +8,7 @@ "noImplicitAny": true, "noImplicitThis": true, "strictNullChecks": true, - "strictFunctionTypes": false, + "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ "../" diff --git a/types/d3-color/d3-color-tests.ts b/types/d3-color/d3-color-tests.ts index c001080d36..47f191073b 100644 --- a/types/d3-color/d3-color-tests.ts +++ b/types/d3-color/d3-color-tests.ts @@ -8,37 +8,21 @@ import * as d3Color from 'd3-color'; -// RGB and HSL Typeguards - -function isRGB(color: d3Color.RGBColor | d3Color.HSLColor): color is d3Color.RGBColor { - return (color instanceof d3Color.rgb); -} - -function isHSL(color: d3Color.RGBColor | d3Color.HSLColor): color is d3Color.HSLColor { - return (color instanceof d3Color.hsl); -} - // Signature tests for 'color', rgb and hsl -let c: d3Color.RGBColor | d3Color.HSLColor; +let c: d3Color.RGBColor | d3Color.HSLColor | null; let cRGB: d3Color.RGBColor; let cHSL: d3Color.HSLColor; let displayable: boolean; let cString: string; +let nil: null; -// string signature +c = d3Color.color('oops'); c = d3Color.color('steelblue'); - -if (isRGB(c)) { - cRGB = c; -} else { - cHSL = c; -} - c = d3Color.color('rgba(20, 100, 200, 0.5)'); -c = d3Color.color(cRGB); +c = d3Color.color(d3Color.rgb(0, 0, 0)); -cRGB = d3Color.color('hsl(60, 100%, 20%, 0.5)').rgb(); +cRGB = d3Color.color('hsl(60, 100%, 20%, 0.5)')!.rgb(); cRGB = d3Color.rgb(20, 100, 200); cRGB = d3Color.rgb(20, 100, 200, 0.5); @@ -126,3 +110,27 @@ displayable = cCubehelix.displayable(); cString = cCubehelix.toString(); console.log('Channels = (h : %d, s: %d, l: %d)', cCubehelix.h, cCubehelix.s, cCubehelix.l); console.log('Opacity = %d', cCubehelix.opacity); + +// Prototype, instanceof and typeguard + +declare let color: d3Color.RGBColor | d3Color.HSLColor | d3Color.LabColor | d3Color.HCLColor | d3Color.CubehelixColor | null; + +if (color instanceof d3Color.rgb) { + cRGB = color; +} else if (color instanceof d3Color.hsl) { + cHSL = color; +} else if (color instanceof d3Color.lab) { + cLab = color; +} else if (color instanceof d3Color.hcl) { + cHcl = color; +} else if (color instanceof d3Color.cubehelix) { + cCubehelix = color; +} else if (color === null) { + nil = color; +} + +if (color instanceof d3Color.color) { + console.log(color.toString(), color.darker()); +} else { + nil = color; +} diff --git a/types/d3-color/index.d.ts b/types/d3-color/index.d.ts index 96b24fd09e..825b82d9c4 100644 --- a/types/d3-color/index.d.ts +++ b/types/d3-color/index.d.ts @@ -1,9 +1,12 @@ // Type definitions for D3JS d3-color module 1.0 // Project: https://github.com/d3/d3-color/ -// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov +// Definitions by: Tom Wanzek +// Alex Ford +// Boris Yankov +// denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// Last module patch version validated against: 1.0.1 +// Last module patch version validated against: 1.0.3 // --------------------------------------------------------------------------- // Shared Type Definitions and Interfaces @@ -32,9 +35,9 @@ export interface Color { } export interface ColorFactory extends Function { - (cssColorSpecifier: string): RGBColor | HSLColor; + (cssColorSpecifier: string): RGBColor | HSLColor | null; (color: ColorSpaceObject | ColorCommonInstance): RGBColor | HSLColor; - // prototype: Color; + readonly prototype: Color; } export interface RGBColor extends Color { @@ -44,16 +47,14 @@ export interface RGBColor extends Color { opacity: number; brighter(k?: number): this; darker(k?: number): this; - displayable(): boolean; - rgb(): RGBColor; - toString(): string; + rgb(): this; } export interface RGBColorFactory extends Function { (r: number, g: number, b: number, opacity?: number): RGBColor; (cssColorSpecifier: string): RGBColor; (color: ColorSpaceObject | ColorCommonInstance): RGBColor; - // prototype: RGBColor; + readonly prototype: RGBColor; } export interface HSLColor extends Color { @@ -63,7 +64,6 @@ export interface HSLColor extends Color { opacity: number; brighter(k?: number): this; darker(k?: number): this; - displayable(): boolean; rgb(): RGBColor; } @@ -71,7 +71,7 @@ export interface HSLColorFactory extends Function { (h: number, s: number, l: number, opacity?: number): HSLColor; (cssColorSpecifier: string): HSLColor; (color: ColorSpaceObject | ColorCommonInstance): HSLColor; - // prototype: HSLColor; + readonly prototype: HSLColor; } export interface LabColor extends Color { @@ -88,7 +88,7 @@ export interface LabColorFactory extends Function { (l: number, a: number, b: number, opacity?: number): LabColor; (cssColorSpecifier: string): LabColor; (color: ColorSpaceObject | ColorCommonInstance): LabColor; - // prototype: LabColor; + readonly prototype: LabColor; } export interface HCLColor extends Color { @@ -105,7 +105,7 @@ export interface HCLColorFactory extends Function { (h: number, l: number, c: number, opacity?: number): HCLColor; (cssColorSpecifier: string): HCLColor; (color: ColorSpaceObject | ColorCommonInstance): HCLColor; - // prototype: HCLColor; + readonly prototype: HCLColor; } export interface CubehelixColor extends Color { @@ -122,7 +122,7 @@ export interface CubehelixColorFactory extends Function { (h: number, s: number, l: number, opacity?: number): CubehelixColor; (cssColorSpecifier: string): CubehelixColor; (color: ColorSpaceObject | ColorCommonInstance): CubehelixColor; - // prototype: CubehelixColor; + readonly prototype: CubehelixColor; } // -------------------------------------------------------------------------- diff --git a/types/d3-color/tsconfig.json b/types/d3-color/tsconfig.json index d783922755..f5229e4fd8 100644 --- a/types/d3-color/tsconfig.json +++ b/types/d3-color/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/d3-dispatch/d3-dispatch-tests.ts b/types/d3-dispatch/d3-dispatch-tests.ts index a9f29ef75d..4e8d2cfb31 100644 --- a/types/d3-dispatch/d3-dispatch-tests.ts +++ b/types/d3-dispatch/d3-dispatch-tests.ts @@ -16,6 +16,9 @@ interface Datum { } let dispatch: d3Dispatch.Dispatch; +let callback: (this: HTMLElement, ...args: any[]) => void; +let callbackOrUndef: ((this: HTMLElement, ...args: any[]) => void) | undefined; +let undef: undefined; // Signature Tests ---------------------------------------- @@ -33,9 +36,15 @@ function cbFn2(this: SVGElement, d: Datum, i: number) { } dispatch.on('foo', cbFn); -// dispatch.on('foo', cbFn2); // test fails as 'this' context type is mismatched between dispatch and callback function +// $ExpectError +dispatch.on('foo', cbFn2); // test fails as 'this' context type is mismatched between dispatch and callback function -dispatch.on('bar', dispatch.on('bar')); +callback = dispatch.on('bar')!; +callbackOrUndef = dispatch.on('bar'); +callbackOrUndef = dispatch.on('unknown'); +undef = dispatch.on('unknown') as undefined; + +dispatch.on('bar', dispatch.on('bar')!); dispatch.call('foo'); dispatch.call('foo', document.body); @@ -49,4 +58,5 @@ dispatch.on('bar', null); // Copy dispatch ----------------------------------------------- const copy: d3Dispatch.Dispatch = dispatch.copy(); -// const copy2: d3Dispatch.Dispatch = dispatch.copy(); // test fails type mismatch of underlying event target +// $ExpectError +const copy2: d3Dispatch.Dispatch = dispatch.copy(); // test fails type mismatch of underlying event target diff --git a/types/d3-dispatch/index.d.ts b/types/d3-dispatch/index.d.ts index 1e6e82e06f..c8beb28a5a 100644 --- a/types/d3-dispatch/index.d.ts +++ b/types/d3-dispatch/index.d.ts @@ -1,18 +1,74 @@ // Type definitions for D3JS d3-dispatch module 1.0 // Project: https://github.com/d3/d3-dispatch/ -// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov +// Definitions by: Tom Wanzek +// Alex Ford +// Boris Yankov +// denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// Last module patch version validated against: 1.0.1 +// Last module patch version validated against: 1.0.3 export interface Dispatch { + /** + * Like `function.apply`, invokes each registered callback for the specified type, + * passing the callback the specified arguments, with `that` as the `this` context. + * + * @param type A specified event type. + * @param that The `this` context for the callback. + * @param args Additional arguments to be passed to the callback. + * @throws "unknown type" on unknown event type. + */ apply(type: string, that?: T, args?: any[]): void; - call(type: string, that?: T, ...args: any[]): void; + + /** + * Like `function.call`, invokes each registered callback for the specified type, + * passing the callback the specified arguments, with `that` as the `this` context. + * See dispatch.apply for more information. + * + * @param type A specified event type. + * @param that The `this` context for the callback. + * @param args Additional arguments to be passed to the callback. + * @throws "unknown type" on unknown event type. + */ + call(type: string, that?: T, ...args: any[]): void; + + /** + * Returns a copy of this dispatch object. + * Changes to this dispatch do not affect the returned copy and vice versa. + */ copy(): Dispatch; - on(typenames: string): (this: T, ...args: any[]) => void; + /** + * Returns the callback for the specified typenames, if any. + * If multiple typenames are specified, the first matching callback is returned. + * + * @param types An event typename. + * @param callback A callback. + */ + on(typenames: string): ((this: T, ...args: any[]) => void) | undefined; + /** + * Removes the callback for the specified typenames. + * To remove all callbacks for a given name `foo`, say `dispatch.on(".foo", null).` + * + * @param types An event typename. + */ on(typenames: string, callback: null): this; + /** + * Adds the callback for the specified typenames. + * The callback is registered for the specified (fully-qualified) typenames. + * If a callback was already registered for the given typenames, + * the existing callback is removed before the new callback is added. + * + * @param types An event typename. + * @param callback A callback. + */ on(typenames: string, callback: (this: T, ...args: any[]) => void): this; } +/** + * Creates a new dispatch for the specified event types. Each type is a string, such as "start" or "end". + * + * @param types The event types. + * @throws "illegal type" on empty string or duplicated event types. + */ export function dispatch(...types: string[]): Dispatch; diff --git a/types/d3-dispatch/tsconfig.json b/types/d3-dispatch/tsconfig.json index b270a9c1a0..88000f85e4 100644 --- a/types/d3-dispatch/tsconfig.json +++ b/types/d3-dispatch/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/d3-fetch/d3-fetch-tests.ts b/types/d3-fetch/d3-fetch-tests.ts index 3cffde0c9e..9712a0da15 100644 --- a/types/d3-fetch/d3-fetch-tests.ts +++ b/types/d3-fetch/d3-fetch-tests.ts @@ -51,8 +51,8 @@ promise2 = d3Fetch.tsv(url, parseRow); promise2 = d3Fetch.tsv(url, init, parseRow); let docPromise: Promise; -docPromise = d3Fetch.hmtl(url); -docPromise = d3Fetch.hmtl(url, init); +docPromise = d3Fetch.html(url); +docPromise = d3Fetch.html(url, init); docPromise = d3Fetch.svg(url); docPromise = d3Fetch.svg(url, init); diff --git a/types/d3-fetch/index.d.ts b/types/d3-fetch/index.d.ts index fc0d5e0e66..6e31d70a76 100644 --- a/types/d3-fetch/index.d.ts +++ b/types/d3-fetch/index.d.ts @@ -154,7 +154,7 @@ export function dsv( * @param url A valid URL string. * @param init An optional request initialization object. */ -export function hmtl(url: string, init?: RequestInit): Promise; +export function html(url: string, init?: RequestInit): Promise; /** * Fetches the image at the specified input URL and returns a promise of an HTML image element. diff --git a/types/d3-format/d3-format-tests.ts b/types/d3-format/d3-format-tests.ts index def8994b70..5ab53a45a7 100644 --- a/types/d3-format/d3-format-tests.ts +++ b/types/d3-format/d3-format-tests.ts @@ -12,6 +12,20 @@ import * as d3Format from 'd3-format'; // Preparatory Steps // ---------------------------------------------------------------------- +class NumCoercible { + a: number; + + constructor(a: number) { + this.a = a; + } + + valueOf() { + return this.a; + } +} + +const numeric: NumCoercible = new NumCoercible(10); + let num: number; let formatFn: (n: number) => string; @@ -30,6 +44,12 @@ formatFn = d3Format.format('.0%'); formatFn = d3Format.formatPrefix(',.0', 1e-6); +d3Format.format('.0%')(10); +d3Format.format('.0%')(numeric); + +d3Format.formatPrefix(',.0', 1e-6)(10); +d3Format.formatPrefix(',.0', 1e-6)(numeric); + // ---------------------------------------------------------------------- // Test Format Specifier // ---------------------------------------------------------------------- @@ -43,7 +63,7 @@ const symbol: '$' | '#' | '' = specifier.symbol; const zero: boolean = specifier.zero; const width: number | undefined = specifier.width; const comma: boolean = specifier.comma; -const precision: number = specifier.precision; +const precision: number | undefined = specifier.precision; const type: 'e' | 'f' | 'g' | 'r' | 's' | '%' | 'p' | 'b' | 'o' | 'd' | 'x' | 'X' | 'c' | '' | 'n' = specifier.type; const formatString: string = specifier.toString(); @@ -63,10 +83,10 @@ num = d3Format.precisionRound(0.0005, 3000); // ---------------------------------------------------------------------- localeDef = { - decimal: ',', - thousands: '.', - grouping: [3], - currency: ['EUR', ''] + decimal: ',', + thousands: '.', + grouping: [3], + currency: ['EUR', ''] }; localeDef = { diff --git a/types/d3-format/index.d.ts b/types/d3-format/index.d.ts index 6592756ef1..bb0473a4fb 100644 --- a/types/d3-format/index.d.ts +++ b/types/d3-format/index.d.ts @@ -1,6 +1,9 @@ // Type definitions for D3JS d3-format module 1.2 // Project: https://github.com/d3/d3-format/ -// Definitions by: Tom Wanzek , Alex Ford , Boris Yankov +// Definitions by: Tom Wanzek +// Alex Ford +// Boris Yankov +// denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // Last module patch version validated against: 1.2.0 @@ -23,7 +26,7 @@ export interface FormatLocaleDefinition { */ grouping: number[]; /** - * The currency prefix and suffix (e.g., ["$", ""]) + * The currency prefix and suffix (e.g., ["$", ""]). */ currency: [string, string]; /** @@ -31,7 +34,7 @@ export interface FormatLocaleDefinition { */ numerals?: string[]; /** - * An optional symbol to replace the `percent` suffix; the percent suffix (defaults to "%") + * An optional symbol to replace the `percent` suffix; the percent suffix (defaults to "%"). */ percent?: string; } @@ -44,9 +47,10 @@ export interface FormatLocaleObject { * Returns a new format function for the given string specifier. The returned function * takes a number as the only argument, and returns a string representing the formatted number. * - * @param specifier A Specifier string + * @param specifier A Specifier string. + * @throws Error on invalid format specifier. */ - format(specifier: string): (n: number) => string; + format(specifier: string): (n: number | { valueOf(): number }) => string; /** * Returns a new format function for the given string specifier. The returned function @@ -54,10 +58,11 @@ export interface FormatLocaleObject { * The returned function will convert values to the units of the appropriate SI prefix for the * specified numeric reference value before formatting in fixed point notation. * - * @param specifier A Specifier string + * @param specifier A Specifier string. * @param value The reference value to determine the appropriate SI prefix. + * @throws Error on invalid format specifier. */ - formatPrefix(specifier: string, value: number): (n: number) => string; + formatPrefix(specifier: string, value: number): (n: number | { valueOf(): number }) => string; } /** @@ -71,7 +76,7 @@ export interface FormatSpecifier { */ fill: string; /** - * Alignment used for format, as set by choosing one of the following + * Alignment used for format, as set by choosing one of the following: * * '>' - Forces the field to be right-aligned within the available space. (Default behavior). * '<' - Forces the field to be left-aligned within the available space. @@ -83,9 +88,9 @@ export interface FormatSpecifier { * The sign can be: * * '-' - nothing for positive and a minus sign for negative. (Default behavior.) - * '+' - a plus sign for positive and a minus sign for negative. + * '+' - a plus sign for positive and a minus sign for negative. * '(' - nothing for positive and parentheses for negative. - * ' '(space) - a space for positive and a minus sign for negative. + * ' ' (space) - a space for positive and a minus sign for negative. * */ sign: '-' | '+' | '(' | ' '; @@ -94,7 +99,7 @@ export interface FormatSpecifier { * * '$' - apply currency symbols per the locale definition. * '#' - for binary, octal, or hexadecimal notation, prefix by 0b, 0o, or 0x, respectively. - * ''(none) - no symbol. + * '' (none) - no symbol. (Default behavior.) */ symbol: '$' | '#' | ''; /** @@ -116,9 +121,9 @@ export interface FormatSpecifier { * it defaults to 6 for all types except '' (none), which defaults to 12. * Precision is ignored for integer formats (types 'b', 'o', 'd', 'x', 'X' and 'c'). * - * See precisionFixed and precisionRound for help picking an appropriate precision + * See precisionFixed and precisionRound for help picking an appropriate precision. */ - precision: number; + precision: number | undefined; /** * The available type values are: * @@ -137,7 +142,7 @@ export interface FormatSpecifier { * 'c' - converts the integer to the corresponding unicode character before printing. * '' (none) - like g, but trim insignificant trailing zeros. * - * The type 'n' is also supported as shorthand for ',g'. For the 'g', 'n' and ''(none) types, + * The type 'n' is also supported as shorthand for ',g'. For the 'g', 'n' and '' (none) types, * decimal notation is used if the resulting string would have precision or fewer digits; otherwise, exponent notation is used. */ type: 'e' | 'f' | 'g' | 'r' | 's' | '%' | 'p' | 'b' | 'o' | 'd' | 'x' | 'X' | 'c' | '' | 'n'; @@ -173,9 +178,10 @@ export function formatDefaultLocale(defaultLocale: FormatLocaleDefinition): Form * The general form of a specifier is [[fill]align][sign][symbol][0][width][,][.precision][type]. * For reference, an explanation of the segments of the specifier string, refer to the FormatSpecifier interface properties. * - * @param specifier A Specifier string + * @param specifier A Specifier string. + * @throws Error on invalid format specifier. */ -export function format(specifier: string): (n: number) => string; +export function format(specifier: string): (n: number | { valueOf(): number }) => string; /** * Returns a new format function for the given string specifier. The returned function @@ -183,15 +189,16 @@ export function format(specifier: string): (n: number) => string; * The returned function will convert values to the units of the appropriate SI prefix for the * specified numeric reference value before formatting in fixed point notation. * - * Uses the current default locale. + * Uses the current default locale. * * The general form of a specifier is [[fill]align][sign][symbol][0][width][,][.precision][type]. * For reference, an explanation of the segments of the specifier string, refer to the FormatSpecifier interface properties. * - * @param specifier A Specifier string + * @param specifier A Specifier string. * @param value The reference value to determine the appropriate SI prefix. + * @throws Error on invalid format specifier. */ -export function formatPrefix(specifier: string, value: number): (n: number) => string; +export function formatPrefix(specifier: string, value: number): (n: number | { valueOf(): number }) => string; /** * Parses the specified specifier, returning an object with exposed fields that correspond to the @@ -201,6 +208,7 @@ export function formatPrefix(specifier: string, value: number): (n: number) => s * For reference, an explanation of the segments of the specifier string, refer to the FormatSpecifier interface properties. * * @param specifier A specifier string. + * @throws Error on invalid format specifier. */ export function formatSpecifier(specifier: string): FormatSpecifier; diff --git a/types/d3-format/tsconfig.json b/types/d3-format/tsconfig.json index 6017e0916f..078df0d2f2 100644 --- a/types/d3-format/tsconfig.json +++ b/types/d3-format/tsconfig.json @@ -6,7 +6,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/d3-geo/d3-geo-tests.ts b/types/d3-geo/d3-geo-tests.ts index 5124694378..51ddb93d89 100644 --- a/types/d3-geo/d3-geo-tests.ts +++ b/types/d3-geo/d3-geo-tests.ts @@ -89,7 +89,33 @@ const sampleExtendedFeatureCollection: d3Geo.ExtendedFeatureCollection = { + type: 'Feature', + geometry: null, + properties: null +}; +const sampleExtendedNullableFeature: d3Geo.ExtendedFeature = { + type: 'Feature', + geometry: null, + properties: null +}; + +const sampleNullableFeatureCollection: GeoJSON.FeatureCollection = { + type: 'FeatureCollection', + features: [ + sampleNullableFeature, + sampleNullableFeature + ] +}; + +const sampleExtendedNullableFeatureCollection: d3Geo.ExtendedFeatureCollection = { + type: 'FeatureCollection', + features: [ + sampleExtendedNullableFeature, + sampleExtendedNullableFeature + ] +}; // ---------------------------------------------------------------------- // Spherical Math // ---------------------------------------------------------------------- @@ -101,10 +127,14 @@ area = d3Geo.geoArea(sampleSphere); area = d3Geo.geoArea(sampleGeometryCollection); area = d3Geo.geoArea(sampleExtendedGeometryCollection); area = d3Geo.geoArea(sampleFeature); +area = d3Geo.geoArea(sampleNullableFeature); area = d3Geo.geoArea(sampleExtendedFeature1); area = d3Geo.geoArea(sampleExtendedFeature2); +area = d3Geo.geoArea(sampleExtendedNullableFeature); area = d3Geo.geoArea(sampleFeatureCollection); +area = d3Geo.geoArea(sampleNullableFeatureCollection); area = d3Geo.geoArea(sampleExtendedFeatureCollection); +area = d3Geo.geoArea(sampleExtendedNullableFeatureCollection); // geoBounds(...) ========================================================= @@ -113,10 +143,14 @@ bounds = d3Geo.geoBounds(sampleSphere); bounds = d3Geo.geoBounds(sampleGeometryCollection); bounds = d3Geo.geoBounds(sampleExtendedGeometryCollection); bounds = d3Geo.geoBounds(sampleFeature); +bounds = d3Geo.geoBounds(sampleNullableFeature); bounds = d3Geo.geoBounds(sampleExtendedFeature1); bounds = d3Geo.geoBounds(sampleExtendedFeature2); +bounds = d3Geo.geoBounds(sampleExtendedNullableFeature); bounds = d3Geo.geoBounds(sampleFeatureCollection); +bounds = d3Geo.geoBounds(sampleNullableFeatureCollection); bounds = d3Geo.geoBounds(sampleExtendedFeatureCollection); +bounds = d3Geo.geoBounds(sampleExtendedNullableFeatureCollection); // geoCentroid(...) ======================================================= @@ -125,10 +159,14 @@ centroid = d3Geo.geoCentroid(sampleSphere); centroid = d3Geo.geoCentroid(sampleGeometryCollection); centroid = d3Geo.geoCentroid(sampleExtendedGeometryCollection); centroid = d3Geo.geoCentroid(sampleFeature); +centroid = d3Geo.geoCentroid(sampleNullableFeature); centroid = d3Geo.geoCentroid(sampleExtendedFeature1); centroid = d3Geo.geoCentroid(sampleExtendedFeature2); +centroid = d3Geo.geoCentroid(sampleExtendedNullableFeature); centroid = d3Geo.geoCentroid(sampleFeatureCollection); +centroid = d3Geo.geoCentroid(sampleNullableFeatureCollection); centroid = d3Geo.geoCentroid(sampleExtendedFeatureCollection); +centroid = d3Geo.geoCentroid(sampleExtendedNullableFeatureCollection); // geoContains(...) ======================================================= @@ -137,10 +175,14 @@ contained = d3Geo.geoContains(sampleSphere, [0, 0]); contained = d3Geo.geoContains(sampleGeometryCollection, [0, 0]); contained = d3Geo.geoContains(sampleExtendedGeometryCollection, [0, 0]); contained = d3Geo.geoContains(sampleFeature, [0, 0]); +contained = d3Geo.geoContains(sampleNullableFeature, [0, 0]); contained = d3Geo.geoContains(sampleExtendedFeature1, [0, 0]); contained = d3Geo.geoContains(sampleExtendedFeature2, [0, 0]); +contained = d3Geo.geoContains(sampleExtendedNullableFeature, [0, 0]); contained = d3Geo.geoContains(sampleFeatureCollection, [0, 0]); +contained = d3Geo.geoContains(sampleNullableFeatureCollection, [0, 0]); contained = d3Geo.geoContains(sampleExtendedFeatureCollection, [0, 0]); +contained = d3Geo.geoContains(sampleExtendedNullableFeatureCollection, [0, 0]); // geoDistance(...) ======================================================= @@ -153,10 +195,14 @@ length = d3Geo.geoLength(sampleSphere); length = d3Geo.geoLength(sampleGeometryCollection); length = d3Geo.geoLength(sampleExtendedGeometryCollection); length = d3Geo.geoLength(sampleFeature); +length = d3Geo.geoLength(sampleNullableFeature); length = d3Geo.geoLength(sampleExtendedFeature1); length = d3Geo.geoLength(sampleExtendedFeature2); +length = d3Geo.geoLength(sampleExtendedNullableFeature); length = d3Geo.geoLength(sampleFeatureCollection); +length = d3Geo.geoLength(sampleNullableFeatureCollection); length = d3Geo.geoLength(sampleExtendedFeatureCollection); +length = d3Geo.geoLength(sampleExtendedNullableFeatureCollection); // geoInterpolate(...) ==================================================== @@ -181,7 +227,7 @@ const inverted: [number, number] = rotation.invert([54, 2]); // Create GeoCircleGenerator ============================================ // simple use case -let circleGeneratorSimple: d3Geo.GeoCircleGenerator = d3Geo.geoCircle(); +let circleGeneratorSimple: d3Geo.GeoCircleGenerator = d3Geo.geoCircle(); // complex use as part of object class Circulator { @@ -331,8 +377,9 @@ const naturalEart1Raw: d3Geo.GeoRawProjection = d3Geo.geoNaturalEarth1Raw(); // Use Raw Projection ===================================================== const rawProjectionPoint: [number, number] = azimuthalEqualAreaRaw(54, 2); -const rawProjectionInvertedPoint: [number, number] = azimuthalEqualAreaRaw.invert(180, 6); - +if (azimuthalEqualAreaRaw.invert) { + const rawProjectionInvertedPoint: [number, number] = azimuthalEqualAreaRaw.invert(180, 6); +} // ---------------------------------------------------------------------- // Pre-Defined Projections // ---------------------------------------------------------------------- @@ -365,8 +412,10 @@ let constructedProjection: d3Geo.GeoProjection = mutate(); // Use Projection ========================================================== -const projected: [number, number] = constructedProjection([54, 2]); -const inverted2: [number, number] = constructedProjection.invert([54, 2]); +const projected: [number, number] | null = constructedProjection([54, 2]); +if (constructedProjection.invert) { + const inverted2: [number, number] | null = constructedProjection.invert([54, 2]); +} // TODO ????? // let stream: d3Geo.Stream = constructedProjection.stream([54, 2]); @@ -378,7 +427,7 @@ constructedProjection = constructedProjection.preclip(d3Geo.geoClipCircle(45)); const postClip: (stream: d3Geo.GeoStream) => d3Geo.GeoStream = constructedProjection.postclip(); constructedProjection = constructedProjection.postclip(d3Geo.geoClipRectangle(0, 0, 1, 1)); -const clipAngle: number = constructedProjection.clipAngle(); +const clipAngle: number | null = constructedProjection.clipAngle(); constructedProjection = constructedProjection.clipAngle(null); constructedProjection = constructedProjection.clipAngle(45); @@ -410,40 +459,56 @@ constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sa constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleGeometryCollection); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedGeometryCollection); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleFeature); +constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleNullableFeature); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedFeature1); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedFeature2); +constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedNullableFeature); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleFeatureCollection); +constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleNullableFeatureCollection); constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedFeatureCollection); +constructedProjection = constructedProjection.fitExtent([[0, 0], [960, 500]], sampleExtendedNullableFeatureCollection); constructedProjection = constructedProjection.fitSize([960, 500], samplePolygon); constructedProjection = constructedProjection.fitSize([960, 500], sampleSphere); constructedProjection = constructedProjection.fitSize([960, 500], sampleGeometryCollection); constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedGeometryCollection); constructedProjection = constructedProjection.fitSize([960, 500], sampleFeature); +constructedProjection = constructedProjection.fitSize([960, 500], sampleNullableFeature); constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedFeature1); constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedFeature2); +constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedNullableFeature); constructedProjection = constructedProjection.fitSize([960, 500], sampleFeatureCollection); +constructedProjection = constructedProjection.fitSize([960, 500], sampleNullableFeatureCollection); constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedFeatureCollection); +constructedProjection = constructedProjection.fitSize([960, 500], sampleExtendedNullableFeatureCollection); constructedProjection = constructedProjection.fitWidth(960, samplePolygon); constructedProjection = constructedProjection.fitWidth(960, sampleSphere); constructedProjection = constructedProjection.fitWidth(960, sampleGeometryCollection); constructedProjection = constructedProjection.fitWidth(960, sampleExtendedGeometryCollection); constructedProjection = constructedProjection.fitWidth(960, sampleFeature); +constructedProjection = constructedProjection.fitWidth(960, sampleNullableFeature); constructedProjection = constructedProjection.fitWidth(960, sampleExtendedFeature1); constructedProjection = constructedProjection.fitWidth(960, sampleExtendedFeature2); +constructedProjection = constructedProjection.fitWidth(960, sampleExtendedNullableFeature); constructedProjection = constructedProjection.fitWidth(960, sampleFeatureCollection); +constructedProjection = constructedProjection.fitWidth(960, sampleNullableFeatureCollection); constructedProjection = constructedProjection.fitWidth(960, sampleExtendedFeatureCollection); +constructedProjection = constructedProjection.fitWidth(960, sampleExtendedNullableFeatureCollection); constructedProjection = constructedProjection.fitHeight(500, samplePolygon); constructedProjection = constructedProjection.fitHeight(500, sampleSphere); constructedProjection = constructedProjection.fitHeight(500, sampleGeometryCollection); constructedProjection = constructedProjection.fitHeight(500, sampleExtendedGeometryCollection); constructedProjection = constructedProjection.fitHeight(500, sampleFeature); +constructedProjection = constructedProjection.fitHeight(500, sampleNullableFeature); constructedProjection = constructedProjection.fitHeight(500, sampleExtendedFeature1); constructedProjection = constructedProjection.fitHeight(500, sampleExtendedFeature2); +constructedProjection = constructedProjection.fitHeight(500, sampleExtendedNullableFeature); constructedProjection = constructedProjection.fitHeight(500, sampleFeatureCollection); +constructedProjection = constructedProjection.fitHeight(500, sampleNullableFeatureCollection); constructedProjection = constructedProjection.fitHeight(500, sampleExtendedFeatureCollection); +constructedProjection = constructedProjection.fitHeight(500, sampleExtendedNullableFeatureCollection); // ---------------------------------------------------------------------- // GeoConicProjection interface @@ -471,7 +536,7 @@ const minimalRenderingContextMockUp: d3Geo.GeoContext = { // Create geoPath Generator ============================================= -let geoPathCanvas: d3Geo.GeoPath; +let geoPathCanvas: d3Geo.GeoPath; geoPathCanvas = d3Geo.geoPath(); geoPathCanvas = d3Geo.geoPath(null); geoPathCanvas = d3Geo.geoPath(null, null); @@ -487,8 +552,8 @@ geoPathSVG = d3Geo.geoPath(); geoPathSVG = geoPathSVG.projection(conicConformal); @@ -501,13 +566,13 @@ const geoPathConicProjection: d3Geo.GeoConicProjection = geoPathSVG.projection { +export interface ExtendedGeometryCollection { type: string; bbox?: number[]; crs?: { @@ -45,9 +47,18 @@ export interface ExtendedGeometryCollection extends GeoJSON.GeoJsonObject { +export interface ExtendedFeature< + GeometryType extends GeoGeometryObjects | null = GeoGeometryObjects | null, + Properties extends GeoJSON.GeoJsonProperties = GeoJSON.GeoJsonProperties + > extends GeoJSON.GeoJsonObject { geometry: GeometryType; properties: Properties; id?: string | number; @@ -56,8 +67,10 @@ export interface ExtendedFeature> extends GeoJSON.GeoJsonObject { +export interface ExtendedFeatureCollection extends GeoJSON.GeoJsonObject { features: FeatureType[]; } @@ -65,8 +78,7 @@ export interface ExtendedFeatureCollection - | ExtendedFeature | ExtendedFeatureCollection>; +export type GeoPermissibleObjects = GeoGeometryObjects | ExtendedGeometryCollection | ExtendedFeature | ExtendedFeatureCollection; // ---------------------------------------------------------------------- // Spherical Math @@ -78,14 +90,14 @@ export type GeoPermissibleObjects = GeoGeometryObjects | ExtendedGeometryCollect * * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ -export function geoArea(object: ExtendedFeature): number; +export function geoArea(object: ExtendedFeature): number; /** * Returns the spherical area of the specified feature collection in steradians. * This is the spherical equivalent of path.area. * * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). */ -export function geoArea(object: ExtendedFeatureCollection>): number; +export function geoArea(object: ExtendedFeatureCollection): number; /** * Returns the spherical area of the specified GeoJson Geometry Object or GeoSphere object in steradians. * This is the spherical equivalent of path.area. @@ -99,7 +111,7 @@ export function geoArea(object: GeoGeometryObjects): number; * * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ -export function geoArea(object: ExtendedGeometryCollection): number; +export function geoArea(object: ExtendedGeometryCollection): number; /** * Returns the spherical bounding box for the specified feature. The bounding box is represented by a two-dimensional array: [[left, bottom], [right, top]], @@ -109,7 +121,7 @@ export function geoArea(object: ExtendedGeometryCollection): * * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ -export function geoBounds(object: ExtendedFeature): [[number, number], [number, number]]; +export function geoBounds(object: ExtendedFeature): [[number, number], [number, number]]; /** * Returns the spherical bounding box for the specified feature collection. The bounding box is represented by a two-dimensional array: [[left, bottom], [right, top]], * where left is the minimum longitude, bottom is the minimum latitude, right is maximum longitude, and top is the maximum latitude. All coordinates are given in degrees. @@ -118,7 +130,7 @@ export function geoBounds(object: ExtendedFeature): [[n * * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). */ -export function geoBounds(object: ExtendedFeatureCollection>): [[number, number], [number, number]]; +export function geoBounds(object: ExtendedFeatureCollection): [[number, number], [number, number]]; /** * Returns the spherical bounding box for the specified GeoJson Geometry Object or GeoSphere object. The bounding box is represented by a two-dimensional array: [[left, bottom], [right, top]], * where left is the minimum longitude, bottom is the minimum latitude, right is maximum longitude, and top is the maximum latitude. All coordinates are given in degrees. @@ -136,7 +148,7 @@ export function geoBounds(object: GeoGeometryObjects): [[number, number], [numbe * * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ -export function geoBounds(object: ExtendedGeometryCollection): [[number, number], [number, number]]; +export function geoBounds(object: ExtendedGeometryCollection): [[number, number], [number, number]]; /** * Returns the spherical centroid of the specified feature in steradians. @@ -144,14 +156,14 @@ export function geoBounds(object: ExtendedGeometryCollection * * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ -export function geoCentroid(object: ExtendedFeature): [number, number]; +export function geoCentroid(object: ExtendedFeature): [number, number]; /** * Returns the spherical centroid of the specified feature collection in steradians. * This is the spherical equivalent of path.centroid. * * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). */ -export function geoCentroid(object: ExtendedFeatureCollection>): [number, number]; +export function geoCentroid(object: ExtendedFeatureCollection): [number, number]; /** * Returns the spherical centroid of the specified GeoJson Geometry Object or GeoSphere object in steradians. * This is the spherical equivalent of path.centroid. @@ -165,7 +177,7 @@ export function geoCentroid(object: GeoGeometryObjects): [number, number]; * * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ -export function geoCentroid(object: ExtendedGeometryCollection): [number, number]; +export function geoCentroid(object: ExtendedGeometryCollection): [number, number]; /** * Returns true if and only if the specified GeoJSON object contains the specified point, or false if the object does not contain the point. @@ -175,7 +187,7 @@ export function geoCentroid(object: ExtendedGeometryCollection, point: [number, number]): boolean; +export function geoContains(object: ExtendedFeature, point: [number, number]): boolean; /** * Returns true if and only if the specified GeoJSON object contains the specified point, or false if the object does not contain the point. * The point must be specified as a two-element array [longitude, latitude] in degrees. For Point and MultiPoint geometries, an exact test is used; @@ -184,7 +196,7 @@ export function geoContains(object: ExtendedFeature, po * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). * @param point Point specified as a two-element array [longitude, latitude] in degrees. */ -export function geoContains(object: ExtendedFeatureCollection>, point: [number, number]): boolean; +export function geoContains(object: ExtendedFeatureCollection, point: [number, number]): boolean; /** * Returns true if and only if the specified GeoJSON object contains the specified point, or false if the object does not contain the point. * The point must be specified as a two-element array [longitude, latitude] in degrees. For Point and MultiPoint geometries, an exact test is used; @@ -202,7 +214,7 @@ export function geoContains(object: GeoGeometryObjects, point: [number, number]) * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). * @param point Point specified as a two-element array [longitude, latitude] in degrees. */ -export function geoContains(object: ExtendedGeometryCollection, point: [number, number]): boolean; +export function geoContains(object: ExtendedGeometryCollection, point: [number, number]): boolean; /** * Returns the great-arc distance in radians between the two points a and b. @@ -219,14 +231,14 @@ export function geoDistance(a: [number, number], b: [number, number]): number; * * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ -export function geoLength(object: ExtendedFeature): number; +export function geoLength(object: ExtendedFeature): number; /** * Returns the great-arc length of the specified feature collection in radians. For polygons, returns the perimeter of the exterior ring plus that of any interior rings. * This is the spherical equivalent of path.measure. * * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). */ -export function geoLength(object: ExtendedFeatureCollection>): number; +export function geoLength(object: ExtendedFeatureCollection): number; /** * Returns the great-arc length of the specified GeoJson Geometry Object or GeoSphere object in radians. For polygons, returns the perimeter of the exterior ring plus that of any interior rings. * This is the spherical equivalent of path.measure. @@ -240,7 +252,7 @@ export function geoLength(object: GeoGeometryObjects): number; * * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ -export function geoLength(object: ExtendedGeometryCollection): number; +export function geoLength(object: ExtendedGeometryCollection): number; /** * Returns an interpolator function given two points a and b. @@ -291,7 +303,7 @@ export function geoRotation(angles: [number, number] | [number, number, number]) * * The second generic corresponds to the type of the Datum which will be passed into the geo circle generator. */ -export interface GeoCircleGenerator { +export interface GeoCircleGenerator { /** * Returns a new GeoJSON geometry object of type “Polygon†approximating a circle on the surface of a sphere, * with the current center, radius and precision. Any arguments are passed to the accessors. @@ -362,7 +374,7 @@ export interface GeoCircleGenerator { /** * Returns a new geo circle generator */ -export function geoCircle(): GeoCircleGenerator; +export function geoCircle(): GeoCircleGenerator; /** * Returns a new geo circle generator * @@ -547,7 +559,7 @@ export interface GeoStream { * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). * @param stream A projection stream. */ -export function geoStream(object: ExtendedFeature, stream: GeoStream): void; +export function geoStream(object: ExtendedFeature, stream: GeoStream): void; /** * Streams the specified GeoJSON object to the specified projection stream. While both features and geometry objects are supported as input, @@ -556,7 +568,7 @@ export function geoStream(object: ExtendedFeature, stre * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature). * @param stream A projection stream. */ -export function geoStream(object: ExtendedFeatureCollection>, stream: GeoStream): void; +export function geoStream(object: ExtendedFeatureCollection, stream: GeoStream): void; /** * Streams the specified GeoJSON object to the specified projection stream. While both features and geometry objects are supported as input, @@ -574,7 +586,7 @@ export function geoStream(object: GeoGeometryObjects, stream: GeoStream): void; * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). * @param stream A projection stream. */ -export function geoStream(object: ExtendedGeometryCollection, stream: GeoStream): void; +export function geoStream(object: ExtendedGeometryCollection, stream: GeoStream): void; // ---------------------------------------------------------------------- // Projections @@ -736,7 +748,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeature): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeature): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature collection in the center of the given extent. * Returns the projection. @@ -746,7 +758,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature collection). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeatureCollection>): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeatureCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic geometry object in the center of the given extent. * Returns the projection. @@ -766,7 +778,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedGeometryCollection): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedGeometryCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature in the center of an extent with the given size and top-left corner of [0, 0]. @@ -777,7 +789,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitSize(size: [number, number], object: ExtendedFeature): this; + fitSize(size: [number, number], object: ExtendedFeature): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature collection in the center of an extent with the given size and top-left corner of [0, 0]. * Returns the projection. @@ -787,7 +799,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature collection). */ - fitSize(size: [number, number], object: ExtendedFeatureCollection>): this; + fitSize(size: [number, number], object: ExtendedFeatureCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic geometry object in the center of an extent with the given size and top-left corner of [0, 0]. * Returns the projection. @@ -807,7 +819,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitSize(size: [number, number], object: ExtendedGeometryCollection): this; + fitSize(size: [number, number], object: ExtendedGeometryCollection): this; /** * A convenience method for projection.fitSize where the height is automatically chosen from the aspect ratio of object and the given constraint on width. @@ -815,14 +827,14 @@ export interface GeoProjection extends GeoStreamWrapper { * @param width The width of the extent. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitWidth(width: number, object: ExtendedFeature): this; + fitWidth(width: number, object: ExtendedFeature): this; /** * A convenience method for projection.fitSize where the height is automatically chosen from the aspect ratio of object and the given constraint on width. * * @param width The width of the extent. * @param object A GeoJson Geometry Object or GeoSphere object supported by d3-geo (An extension of GeoJSON). */ - fitWidth(width: number, object: ExtendedFeatureCollection>): this; + fitWidth(width: number, object: ExtendedFeatureCollection): this; /** * A convenience method for projection.fitSize where the height is automatically chosen from the aspect ratio of object and the given constraint on width. * @@ -836,7 +848,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param width The width of the extent. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitWidth(width: number, object: ExtendedGeometryCollection): this; + fitWidth(width: number, object: ExtendedGeometryCollection): this; /** * A convenience method for projection.fitSize where the width is automatically chosen from the aspect ratio of object and the given constraint on height. @@ -844,14 +856,14 @@ export interface GeoProjection extends GeoStreamWrapper { * @param height The height of the extent. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitHeight(height: number, object: ExtendedFeature): this; + fitHeight(height: number, object: ExtendedFeature): this; /** * A convenience method for projection.fitSize where the width is automatically chosen from the aspect ratio of object and the given constraint on height. * * @param height The height of the extent. * @param object A GeoJson Geometry Object or GeoSphere object supported by d3-geo (An extension of GeoJSON). */ - fitHeight(height: number, object: ExtendedFeatureCollection>): this; + fitHeight(height: number, object: ExtendedFeatureCollection): this; /** * A convenience method for projection.fitSize where the width is automatically chosen from the aspect ratio of object and the given constraint on height. * @@ -865,7 +877,7 @@ export interface GeoProjection extends GeoStreamWrapper { * @param height The height of the extent. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitHeight(height: number, object: ExtendedGeometryCollection): this; + fitHeight(height: number, object: ExtendedGeometryCollection): this; /** * Returns a new array [longitude, latitude] in degrees representing the unprojected point of the given projected point. @@ -1012,7 +1024,7 @@ export interface GeoContext { * * The second generic corresponds to the type of the DatumObject which will be passed into the geo path generator for rendering. */ -export interface GeoPath { +export interface GeoPath { /** * Renders the given object, which may be any GeoJSON feature or geometry object: * @@ -1222,7 +1234,7 @@ export interface GeoPath { * @param context An (optional) rendering context to be used. If a context is provided, it must at least implement the interface described by GeoContext, a subset of the CanvasRenderingContext2D API. * Setting the context to "null" means that the path generator will return an SVG path string representing the to be rendered object. The default is "null". */ -export function geoPath(projection?: GeoProjection | GeoStreamWrapper | null, context?: GeoContext | null): GeoPath; +export function geoPath(projection?: GeoProjection | GeoStreamWrapper | null, context?: GeoContext | null): GeoPath; /** * Creates a new geographic path generator with the default settings. * @@ -1525,7 +1537,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeature): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeature): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature collection in the center of the given extent. * Returns the projection. @@ -1535,7 +1547,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature collection). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeatureCollection>): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedFeatureCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic geometry object in the center of the given extent. * Returns the projection. @@ -1555,7 +1567,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param extent The extent, specified as an array [[xâ‚€, yâ‚€], [xâ‚, yâ‚]], where xâ‚€ is the left side of the bounding box, yâ‚€ is the top, xâ‚ is the right and yâ‚ is the bottom. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitExtent(extent: [[number, number], [number, number]], object: ExtendedGeometryCollection): this; + fitExtent(extent: [[number, number], [number, number]], object: ExtendedGeometryCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature in the center of an extent with the given size and top-left corner of [0, 0]. @@ -1566,7 +1578,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic feature supported by d3-geo (An extension of GeoJSON feature). */ - fitSize(size: [number, number], object: ExtendedFeature): this; + fitSize(size: [number, number], object: ExtendedFeature): this; /** * Sets the projection’s scale and translate to fit the specified geographic feature collection in the center of an extent with the given size and top-left corner of [0, 0]. * Returns the projection. @@ -1576,7 +1588,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic feature collection supported by d3-geo (An extension of GeoJSON feature collection). */ - fitSize(size: [number, number], object: ExtendedFeatureCollection>): this; + fitSize(size: [number, number], object: ExtendedFeatureCollection): this; /** * Sets the projection’s scale and translate to fit the specified geographic geometry object in the center of an extent with the given size and top-left corner of [0, 0]. * Returns the projection. @@ -1596,7 +1608,7 @@ export interface GeoIdentityTranform extends GeoStreamWrapper { * @param size The size of the extent, specified as an array [width, height]. * @param object A geographic geometry collection supported by d3-geo (An extension of GeoJSON geometry collection). */ - fitSize(size: [number, number], object: ExtendedGeometryCollection): this; + fitSize(size: [number, number], object: ExtendedGeometryCollection): this; /** * Returns true if x-reflection is enabled, which defaults to false. diff --git a/types/d3-geo/tsconfig.json b/types/d3-geo/tsconfig.json index f3661c3ad2..128bdf7ee8 100644 --- a/types/d3-geo/tsconfig.json +++ b/types/d3-geo/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ @@ -21,4 +21,4 @@ "index.d.ts", "d3-geo-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/d3-hexbin/d3-hexbin-tests.ts b/types/d3-hexbin/d3-hexbin-tests.ts index 4dce0d1ce1..0082ae075d 100644 --- a/types/d3-hexbin/d3-hexbin-tests.ts +++ b/types/d3-hexbin/d3-hexbin-tests.ts @@ -22,22 +22,21 @@ interface Point { b.y()([41, 42]); // === 42; b.radius(); // === 1; - // hexbin(points) bins the specified points into hexagonal bins const bins = d3Hexbin.hexbin()([ [0, 0], [0, 1], [0, 2], [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2] - ]) + ]); - bins.map((bin: any) => {}) + bins.map((bin: any) => {}); } { // hexbin(points) observes the current x- and y-accessors - const x = function(d: any) { return d.x; }, - y = function(d: any) { return d.y; }, - bins = d3Hexbin.hexbin().x(x).y(y)([ + const x = (d: any) => d.x; + const y = (d: any) => d.y; + const bins = d3Hexbin.hexbin().x(x).y(y)([ {x0: 0, y0: 0}, {x0: 0, y0: 1}, {x0: 0, y0: 2}, {x0: 1, y0: 0}, {x0: 1, y0: 1}, {x0: 1, y0: 2}, {x0: 2, y0: 0}, {x0: 2, y0: 1}, {x0: 2, y0: 2} @@ -52,7 +51,7 @@ interface Point { [1, 0], [1, 1], [1, 2], [2, 0], [2, 1], [2, 2] ]); - bins.map((bin: any)=> {}); + bins.map((bin: any) => {}); } { @@ -62,15 +61,15 @@ interface Point { } // hexbin.x(x) sets the x-coordinate accessor - const x = function(d: PointX) { return d.x; }, - b = d3Hexbin.hexbin().x(x), - bins = b([{x: 1, 1: 2}]); + const x = (d: PointX) => d.x; + const b = d3Hexbin.hexbin().x(x); + const bins = b([{x: 1, 1: 2}]); b.x(); // should be x; bins.length; // should be 1; bins[0].x; // should be 0.8660254037844386; bins[0].y; // should be 1.5; - bins[0].length // should be 1; + bins[0].length; // should be 1; } { @@ -79,9 +78,9 @@ interface Point { [key: number]: number; } // hexbin.y(y) sets the y-coordinate accessor - const y = function(d: PointY) { return d.y; }, - b = d3Hexbin.hexbin().y(y), - bins = b([{0: 1, y: 2}]); + const y = (d: PointY) => d.y; + const b = d3Hexbin.hexbin().y(y); + const bins = b([{0: 1, y: 2}]); bins.length; // should be 1; bins[0].x; // should be 0.8660254037844386; @@ -148,9 +147,8 @@ interface Point { } { - let hb: d3Hexbin.Hexbin; - let bins: d3Hexbin.HexbinBin[]; + let bins: Array>; // Create generator ======================================= @@ -160,8 +158,8 @@ interface Point { // x Accessor ---------------------------------------------- - let x: (d:Point) => number; - x = function (d: Point) { return d.x0; }; + let x: (d: Point) => number; + x = (d: Point) => d.x0; // test setter hb = hb.x(x); @@ -171,8 +169,8 @@ interface Point { // y Accessor ---------------------------------------------- - let y: (d:Point) => number; - y = function (d: Point) { return d.y0; }; + let y: (d: Point) => number; + y = (d: Point) => d.y0; // test setter hb = hb.y(y); @@ -193,7 +191,7 @@ interface Point { points: Point[]; } - let remappedBins: Array; + let remappedBins: RemappedBin[]; remappedBins = bins.map(bin => { const x: number = bin.x; // x-coordinate of bin diff --git a/types/d3-hexbin/index.d.ts b/types/d3-hexbin/index.d.ts index dba33cb292..5fa53e6145 100644 --- a/types/d3-hexbin/index.d.ts +++ b/types/d3-hexbin/index.d.ts @@ -1,8 +1,10 @@ -// Type definitions for D3JS d3-hexbin module v0.2.1 +// Type definitions for D3JS d3-hexbin module 0.2 // Project: https://github.com/d3/d3-hexbin/ // Definitions by: UNCOVER TRUTH Inc. , Tom Wanzek // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// Last module patch version validated against: 0.2.1 + export interface HexbinBin extends Array { x: number; y: number; @@ -17,7 +19,7 @@ export interface Hexbin { * If either the x- or y-coordinate is NaN, the point is ignored and will * not be in any of the returned bins. */ - (points: T[]): HexbinBin[]; + (points: T[]): Array>; /** * Returns the SVG path string for the hexagon centered at the origin ⟨0,0⟩. @@ -27,7 +29,7 @@ export interface Hexbin { * If radius is specified, a hexagon with the specified radius is returned; * this is useful for area-encoded bivariate hexbins. * - * @param {number} radius Radius number + * @param radius Radius number */ hexagon(radius?: number): string; @@ -78,7 +80,7 @@ export interface Hexbin { * of each point. The default value assumes each point is specified as * a two-element array of numbers [x, y]. */ - y(y: (d: T) => number): Hexbin + y(y: (d: T) => number): Hexbin; /** * If y is not specified, returns the current y-coordinate accessor, diff --git a/types/d3-hexbin/tslint.json b/types/d3-hexbin/tslint.json index a41bf5d19a..71ee04c4e1 100644 --- a/types/d3-hexbin/tslint.json +++ b/types/d3-hexbin/tslint.json @@ -1,79 +1,6 @@ { "extends": "dtslint/dt.json", "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false + "no-unnecessary-generics": false } } diff --git a/types/d3-hierarchy/d3-hierarchy-tests.ts b/types/d3-hierarchy/d3-hierarchy-tests.ts index 7079fae827..4e35f02ff9 100644 --- a/types/d3-hierarchy/d3-hierarchy-tests.ts +++ b/types/d3-hierarchy/d3-hierarchy-tests.ts @@ -8,7 +8,6 @@ import * as d3Hierarchy from 'd3-hierarchy'; - // ----------------------------------------------------------------------- // Preparatory Steps // ----------------------------------------------------------------------- @@ -24,11 +23,9 @@ let idString: string; interface HierarchyDatum { name: string; val: number; - children?: Array; + children?: HierarchyDatum[]; } - - let hierarchyRootDatum: HierarchyDatum = { name: 'n0', val: 10, @@ -68,7 +65,7 @@ let hierarchyRootNode: d3Hierarchy.HierarchyNode; hierarchyRootNode = d3Hierarchy.hierarchy(hierarchyRootDatum); -hierarchyRootNode = d3Hierarchy.hierarchy(hierarchyRootDatum, function (d) { +hierarchyRootNode = d3Hierarchy.hierarchy(hierarchyRootDatum, (d) => { return d.children || null; }); @@ -82,7 +79,6 @@ num = hierarchyRootNode.height; // children, parent ------------------------------------------------------ - hierarchyNodeArray = hierarchyRootNode.children; let parentNode: d3Hierarchy.HierarchyNode; @@ -94,8 +90,8 @@ idString = hierarchyRootNode.id; // ancestors(), descendants() -------------------------------------------- -let ancestors: Array> = hierarchyRootNode.ancestors(); -let descendants: Array> = hierarchyRootNode.descendants(); +const ancestors: Array> = hierarchyRootNode.ancestors(); +const descendants: Array> = hierarchyRootNode.descendants(); // leaves() --------------------------------------------------------------- @@ -105,7 +101,7 @@ hierarchyNodeArray = hierarchyRootNode.leaves(); hierarchyNode = descendants[descendants.length - 1]; -let path: Array> = hierarchyRootNode.path(hierarchyNode); +const path: Array> = hierarchyRootNode.path(hierarchyNode); // links() and HierarchyLink<...> ------------------------------------------ @@ -121,7 +117,7 @@ hierarchyNode = link.target; // sum() and value ---------------------------------------------------------- -hierarchyRootNode = hierarchyRootNode.sum(function (d) { return d.val; }); +hierarchyRootNode = hierarchyRootNode.sum((d) => d.val); num = hierarchyRootNode.value; @@ -131,29 +127,28 @@ hierarchyRootNode = hierarchyRootNode.count(); num = hierarchyRootNode.value; - // sort --------------------------------------------------------------------- -hierarchyRootNode = hierarchyRootNode.sort(function (a, b) { - console.log(' Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyNode +hierarchyRootNode = hierarchyRootNode.sort((a, b) => { + console.log('Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyNode return b.height - a.height || b.value - a.value; }); // each(), eachAfter(), eachBefore() ---------------------------------------- -hierarchyRootNode = hierarchyRootNode.each(function (node) { - console.log(' Raw value of node:', node.data.val); // node type is HierarchyNode - console.log(' Aggregated value of node:', node.value); // node type is HierarchyNode +hierarchyRootNode = hierarchyRootNode.each((node) => { + console.log('Raw value of node:', node.data.val); // node type is HierarchyNode + console.log('Aggregated value of node:', node.value); // node type is HierarchyNode }); -hierarchyRootNode = hierarchyRootNode.eachAfter(function (node) { - console.log(' Raw value of node:', node.data.val); // node type is HierarchyNode - console.log(' Aggregated value of node:', node.value); // node type is HierarchyNode +hierarchyRootNode = hierarchyRootNode.eachAfter((node) => { + console.log('Raw value of node:', node.data.val); // node type is HierarchyNode + console.log('Aggregated value of node:', node.value); // node type is HierarchyNode }); -hierarchyRootNode = hierarchyRootNode.eachBefore(function (node) { - console.log(' Raw value of node:', node.data.val); // node type is HierarchyNode - console.log(' Aggregated value of node:', node.value); // node type is HierarchyNode +hierarchyRootNode = hierarchyRootNode.eachBefore((node) => { + console.log('Raw value of node:', node.data.val); // node type is HierarchyNode + console.log('Aggregated value of node:', node.value); // node type is HierarchyNode }); // copy() -------------------------------------------------------------------- @@ -175,7 +170,7 @@ interface TabularHierarchyDatum { val: number; } -let tabularData: Array; +let tabularData: TabularHierarchyDatum[]; tabularData = [ { name: 'n0', parentId: null, val: 10 }, { name: 'n11', parentId: 'n0', val: 5 }, @@ -183,7 +178,7 @@ tabularData = [ { name: 'n121', parentId: 'n12', val: 30 } ]; -let idStringAccessor: (d: TabularHierarchyDatum, i?: number, data?: Array) => (string | null | '' | undefined); +let idStringAccessor: (d: TabularHierarchyDatum, i?: number, data?: TabularHierarchyDatum[]) => (string | null | '' | undefined); // Create Stratify Operator --------------------------------------------- @@ -194,7 +189,7 @@ stratificatorizer = d3Hierarchy.stratify(); // id(...) -stratificatorizer = stratificatorizer.id(function (d, i, data) { +stratificatorizer = stratificatorizer.id((d, i, data) => { console.log('Length of tabular array: ', data.length); console.log('Name of first entry in tabular array: ', data[0].name); // data of type Array return d.name; // d is of type TabularHierarchyDatum @@ -204,7 +199,7 @@ idStringAccessor = stratificatorizer.id(); // parentId(...) -stratificatorizer = stratificatorizer.parentId(function (d, i, data) { +stratificatorizer = stratificatorizer.parentId((d, i, data) => { console.log('Length of tabular array: ', data.length); console.log('Name of first entry in tabular array: ', data[0].name); // data of type Array return d.parentId; // d is of type TabularHierarchyDatum @@ -214,7 +209,7 @@ idStringAccessor = stratificatorizer.parentId(); // Use Stratify Operator ------------------------------------------------ -let stratifiedRootNode: d3Hierarchy.HierarchyNode = stratificatorizer(tabularData); +const stratifiedRootNode: d3Hierarchy.HierarchyNode = stratificatorizer(tabularData); // ----------------------------------------------------------------------- // Cluster @@ -265,13 +260,12 @@ num = clusterRootNode.y; // data, depth, height --------------------------------------------------- -let clusterDatum: HierarchyDatumWithParentId = clusterRootNode.data; +const clusterDatum: HierarchyDatumWithParentId = clusterRootNode.data; num = clusterRootNode.depth; num = clusterRootNode.height; // children, parent ------------------------------------------------------ - hierarchyPointNodeArray = clusterRootNode.children; let parentPointNode: d3Hierarchy.HierarchyPointNode; @@ -283,8 +277,8 @@ idString = clusterRootNode.id; // ancestors(), descendants() -------------------------------------------- -let pointNodeAncestors: Array> = clusterRootNode.ancestors(); -let pointNodeDescendants: Array> = clusterRootNode.descendants(); +const pointNodeAncestors: Array> = clusterRootNode.ancestors(); +const pointNodeDescendants: Array> = clusterRootNode.descendants(); // leaves() --------------------------------------------------------------- @@ -294,7 +288,7 @@ hierarchyPointNodeArray = clusterRootNode.leaves(); hierarchyPointNode = pointNodeDescendants[pointNodeDescendants.length - 1]; -let clusterPath: Array> = clusterRootNode.path(hierarchyPointNode); +const clusterPath: Array> = clusterRootNode.path(hierarchyPointNode); // links() and HierarchyPointLink<...> ------------------------------------------ @@ -310,7 +304,7 @@ hierarchyPointNode = pointLink.target; // sum() and value ---------------------------------------------------------- -clusterRootNode = clusterRootNode.sum(function (d) { return d.val; }); +clusterRootNode = clusterRootNode.sum((d) => d.val); num = clusterRootNode.value; @@ -322,25 +316,25 @@ num = clusterRootNode.value; // sort --------------------------------------------------------------------- -clusterRootNode = clusterRootNode.sort(function (a, b) { - console.log(' x-coordinates of a:', a.x, ' and b:', b.x); // a and b are of type HierarchyPointNode - console.log(' Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyPointNode +clusterRootNode = clusterRootNode.sort((a, b) => { + console.log('x-coordinates of a:', a.x, ' and b:', b.x); // a and b are of type HierarchyPointNode + console.log('Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyPointNode return b.height - a.height || b.value - a.value; }); // each(), eachAfter(), eachBefore() ---------------------------------------- -clusterRootNode = clusterRootNode.each(function (node) { +clusterRootNode = clusterRootNode.each((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyPointNode console.log('X-coordinate of node:', node.x); // node type is HierarchyPointNode }); -clusterRootNode = clusterRootNode.eachAfter(function (node) { +clusterRootNode = clusterRootNode.eachAfter((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyPointNode console.log('X-coordinate of node:', node.x); // node type is HierarchyPointNode }); -clusterRootNode = clusterRootNode.eachBefore(function (node) { +clusterRootNode = clusterRootNode.eachBefore((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyPointNode console.log('X-coordinate of node:', node.x); // node type is HierarchyPointNode }); @@ -405,8 +399,7 @@ treemapLayout = d3Hierarchy.treemap(); // tile() ---------------------------------------------------------------- -treemapLayout = treemapLayout.tile(function (node, x0, y0, x1, y1) { - let n: number; +treemapLayout = treemapLayout.tile((node, x0, y0, x1, y1) => { console.log('x0 coordinate of node: ', node.x0); console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode num = x0; // number @@ -437,7 +430,7 @@ let roundFlag: boolean = treemapLayout.round(); // padding() ---------------------------------------------------------------- treemapLayout = treemapLayout.padding(1); -treemapLayout = treemapLayout.padding(function (node) { +treemapLayout = treemapLayout.padding((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -447,7 +440,7 @@ numberRectangularNodeAccessor = treemapLayout.padding(); // paddingInner() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingInner(1); -treemapLayout = treemapLayout.paddingInner(function (node) { +treemapLayout = treemapLayout.paddingInner((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -457,7 +450,7 @@ numberRectangularNodeAccessor = treemapLayout.paddingInner(); // paddingOuter() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingOuter(1); -treemapLayout = treemapLayout.paddingOuter(function (node) { +treemapLayout = treemapLayout.paddingOuter((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -467,7 +460,7 @@ numberRectangularNodeAccessor = treemapLayout.paddingOuter(); // paddingTop() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingTop(1); -treemapLayout = treemapLayout.paddingTop(function (node) { +treemapLayout = treemapLayout.paddingTop((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -477,7 +470,7 @@ numberRectangularNodeAccessor = treemapLayout.paddingTop(); // paddingRight() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingRight(1); -treemapLayout = treemapLayout.paddingRight(function (node) { +treemapLayout = treemapLayout.paddingRight((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -487,7 +480,7 @@ numberRectangularNodeAccessor = treemapLayout.paddingRight(); // paddingBottom() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingBottom(1); -treemapLayout = treemapLayout.paddingBottom(function (node) { +treemapLayout = treemapLayout.paddingBottom((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); @@ -497,21 +490,19 @@ numberRectangularNodeAccessor = treemapLayout.paddingBottom(); // paddingLeft() ---------------------------------------------------------------- treemapLayout = treemapLayout.paddingLeft(1); -treemapLayout = treemapLayout.paddingLeft(function (node) { +treemapLayout = treemapLayout.paddingLeft((node) => { console.log('Node parent id: ', node.data.parentId); // type of node is HierarchyRectangularNode return node.x0 > 10 ? 2 : 1; }); numberRectangularNodeAccessor = treemapLayout.paddingLeft(); - // Use treemap layout generator ========================================== let treemapRootNode: d3Hierarchy.HierarchyRectangularNode; treemapRootNode = treemapLayout(stratifiedRootNode); - // Tiling functions ====================================================== tilingFn = d3Hierarchy.treemapBinary; @@ -536,7 +527,6 @@ tilingFactoryFn = d3Hierarchy.treemapResquarify.ratio(2); treemapLayout.tile(d3Hierarchy.treemapResquarify.ratio(2)); - // Use HierarchyRectangularNode ================================================ // x and y coordinates --------------------------------------------------- @@ -548,13 +538,12 @@ num = treemapRootNode.y1; // data, depth, height --------------------------------------------------- -let treemapDatum: HierarchyDatumWithParentId = treemapRootNode.data; +const treemapDatum: HierarchyDatumWithParentId = treemapRootNode.data; num = treemapRootNode.depth; num = treemapRootNode.height; // children, parent ------------------------------------------------------ - hierarchyRectangularNodeArray = treemapRootNode.children; let parentRectangularNode: d3Hierarchy.HierarchyRectangularNode; @@ -566,8 +555,8 @@ idString = treemapRootNode.id; // ancestors(), descendants() -------------------------------------------- -let rectangularNodeAncestors: Array> = treemapRootNode.ancestors(); -let rectangularNodeDescendants: Array> = treemapRootNode.descendants(); +const rectangularNodeAncestors: Array> = treemapRootNode.ancestors(); +const rectangularNodeDescendants: Array> = treemapRootNode.descendants(); // leaves() --------------------------------------------------------------- @@ -577,7 +566,7 @@ hierarchyRectangularNodeArray = treemapRootNode.leaves(); hierarchyRectangularNode = rectangularNodeDescendants[rectangularNodeDescendants.length - 1]; -let treemapPath: Array> = treemapRootNode.path(hierarchyRectangularNode); +const treemapPath: Array> = treemapRootNode.path(hierarchyRectangularNode); // links() and HierarchyRectangulerLink<...> ------------------------------------------ @@ -593,7 +582,7 @@ hierarchyRectangularNode = rectangularLink.target; // sum() and value ---------------------------------------------------------- -treemapRootNode = treemapRootNode.sum(function (d) { return d.val; }); +treemapRootNode = treemapRootNode.sum((d) => d.val); num = treemapRootNode.value; @@ -604,25 +593,25 @@ treemapRootNode = treemapRootNode.count(); num = treemapRootNode.value; // sort --------------------------------------------------------------------- -treemapRootNode = treemapRootNode.sort(function (a, b) { - console.log(' x0-coordinates of a:', a.x0, ' and b:', b.x0); // a and b are of type HierarchyRectangularNode - console.log(' Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyRectangularNode +treemapRootNode = treemapRootNode.sort((a, b) => { + console.log('x0-coordinates of a:', a.x0, ' and b:', b.x0); // a and b are of type HierarchyRectangularNode + console.log('Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyRectangularNode return b.height - a.height || b.value - a.value; }); // each(), eachAfter(), eachBefore() ---------------------------------------- -treemapRootNode = treemapRootNode.each(function (node) { +treemapRootNode = treemapRootNode.each((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyRectangularNode console.log('X0-coordinate of node:', node.x0); // node type is HierarchyRectangularNode }); -treemapRootNode = treemapRootNode.eachAfter(function (node) { +treemapRootNode = treemapRootNode.eachAfter((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyRectangularNode console.log('X0-coordinate of node:', node.x0); // node type is HierarchyRectangularNode }); -treemapRootNode = treemapRootNode.eachBefore(function (node) { +treemapRootNode = treemapRootNode.eachBefore((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyRectangularNode console.log('X0-coordinate of node:', node.x0); // node type is HierarchyRectangularNode }); @@ -632,8 +621,6 @@ treemapRootNode = treemapRootNode.eachBefore(function (node) { let copiedTreemapNode: d3Hierarchy.HierarchyRectangularNode; copiedTreemapNode = treemapRootNode.copy(); - - // ----------------------------------------------------------------------- // Partition // ----------------------------------------------------------------------- @@ -646,7 +633,6 @@ partitionLayout = d3Hierarchy.partition(); // Configure partition layout generator ==================================== - // size() ---------------------------------------------------------------- partitionLayout = partitionLayout.size(null); @@ -666,7 +652,6 @@ partitionLayout = partitionLayout.padding(1); num = partitionLayout.padding(); - // Use partition layout generator ========================================== let partitionRootNode: d3Hierarchy.HierarchyRectangularNode; @@ -687,7 +672,6 @@ packLayout = d3Hierarchy.pack(); // Configure pack layout generator ==================================== - // size() ---------------------------------------------------------------- packLayout = packLayout.size(null); @@ -697,7 +681,7 @@ size = packLayout.size(); // radius() ------------------------------------------------------------ -packLayout = packLayout.radius(function (node) { +packLayout = packLayout.radius((node) => { console.log('Radius property of node before completing accessor: ', node.r); // node is of type HierarchyCircularNode console.log('Parent id of node: ', node.data.parentId); // node is of type HierarchyCircularNode return node.value; @@ -709,7 +693,7 @@ numberCircularNodeAccessor = packLayout.radius(); packLayout = packLayout.padding(1); -packLayout = packLayout.padding(function (node) { +packLayout = packLayout.padding((node) => { console.log('Radius property of node: ', node.r); // node is of type HierarchyCircularNode console.log('Parent id of node: ', node.data.parentId); // node is of type HierarchyCircularNode return node.value > 10 ? 2 : 1; @@ -717,14 +701,12 @@ packLayout = packLayout.padding(function (node) { numberCircularNodeAccessor = packLayout.padding(); - // Use partition layout generator ========================================== let packRootNode: d3Hierarchy.HierarchyCircularNode; packRootNode = packLayout(stratifiedRootNode); - // Use HierarchyCircularNode ================================================ // x and y coordinates and radius r ------------------------------------------ @@ -735,13 +717,12 @@ num = packRootNode.r; // data, depth, height --------------------------------------------------- -let packDatum: HierarchyDatumWithParentId = packRootNode.data; +const packDatum: HierarchyDatumWithParentId = packRootNode.data; num = packRootNode.depth; num = packRootNode.height; // children, parent ------------------------------------------------------ - hierarchyCircularNodeArray = packRootNode.children; let parentCircularNode: d3Hierarchy.HierarchyCircularNode; @@ -753,8 +734,8 @@ idString = packRootNode.id; // ancestors(), descendants() -------------------------------------------- -let circularNodeAncestors: Array> = packRootNode.ancestors(); -let circularNodeDescendants: Array> = packRootNode.descendants(); +const circularNodeAncestors: Array> = packRootNode.ancestors(); +const circularNodeDescendants: Array> = packRootNode.descendants(); // leaves() --------------------------------------------------------------- @@ -764,7 +745,7 @@ hierarchyCircularNodeArray = packRootNode.leaves(); hierarchyCircularNode = circularNodeDescendants[circularNodeDescendants.length - 1]; -let packPath: Array> = packRootNode.path(hierarchyCircularNode); +const packPath: Array> = packRootNode.path(hierarchyCircularNode); // links() and HierarchyRectangulerLink<...> ------------------------------------------ @@ -780,7 +761,7 @@ hierarchyCircularNode = circularLink.target; // sum() and value ---------------------------------------------------------- -packRootNode = packRootNode.sum(function (d) { return d.val; }); +packRootNode = packRootNode.sum((d) => d.val); num = packRootNode.value; @@ -791,25 +772,25 @@ packRootNode = packRootNode.count(); num = packRootNode.value; // sort --------------------------------------------------------------------- -packRootNode = packRootNode.sort(function (a, b) { +packRootNode = packRootNode.sort((a, b) => { console.log('radius of a:', a.r, ' and b:', b.r); // a and b are of type HierarchyCircularNode - console.log(' Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyCircularNode + console.log('Raw values in data of a and b:', a.data.val, ' and ', b.data.val); // a and b are of type HierarchyCircularNode return b.height - a.height || b.value - a.value; }); // each(), eachAfter(), eachBefore() ---------------------------------------- -packRootNode = packRootNode.each(function (node) { +packRootNode = packRootNode.each((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyCircularNode console.log('Radius of node:', node.r); // node type is HierarchyCircularNode }); -packRootNode = packRootNode.eachAfter(function (node) { +packRootNode = packRootNode.eachAfter((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyCircularNode console.log('Radius of node:', node.r); // node type is HierarchyCircularNode }); -packRootNode = packRootNode.eachBefore(function (node) { +packRootNode = packRootNode.eachBefore((node) => { console.log('ParentId:', node.data.parentId); // node type is HierarchyCircularNode console.log('Radius of node:', node.r); // node type is HierarchyCircularNode }); @@ -819,7 +800,6 @@ packRootNode = packRootNode.eachBefore(function (node) { let copiedPackNode: d3Hierarchy.HierarchyCircularNode; copiedPackNode = packRootNode.copy(); - // ----------------------------------------------------------------------- // Pack Siblings and Enclosure // ----------------------------------------------------------------------- @@ -828,7 +808,7 @@ interface CircleData extends d3Hierarchy.PackCircle { v: string; } -let circles: Array = [ +let circles: CircleData[] = [ { r: 10, v: 'a' }, { r: 1, v: 'b' }, { r: 20, v: 'c' } diff --git a/types/d3-hierarchy/index.d.ts b/types/d3-hierarchy/index.d.ts index bfe750b31e..a72dfa0aba 100644 --- a/types/d3-hierarchy/index.d.ts +++ b/types/d3-hierarchy/index.d.ts @@ -9,7 +9,6 @@ // Hierarchy // ----------------------------------------------------------------------- - export interface HierarchyLink { source: HierarchyNode; target: HierarchyNode; @@ -45,7 +44,6 @@ export interface HierarchyNode { copy(): HierarchyNode; } - export function hierarchy(data: Datum, children?: (d: Datum) => (Datum[] | null)): HierarchyNode; // ----------------------------------------------------------------------- @@ -54,7 +52,6 @@ export function hierarchy(data: Datum, children?: (d: Datum) => (Datum[] // TODO: Review the comment in the API documentation related to 'reserved properties': id, parentId, children. If this is refering to the element on node, it should be 'parent'? - export interface StratifyOperator { (data: Datum[]): HierarchyNode; id(): (d: Datum, i: number, data: Datum[]) => (string | null | '' | undefined); @@ -212,7 +209,6 @@ export function treemap(): TreemapLayout; // Tiling functions --------------------------------------------------------------------------------- - export function treemapBinary(node: HierarchyRectangularNode, x0: number, y0: number, x1: number, y1: number): void; export function treemapDice(node: HierarchyRectangularNode, x0: number, y0: number, x1: number, y1: number): void; export function treemapSlice(node: HierarchyRectangularNode, x0: number, y0: number, x1: number, y1: number): void; @@ -224,9 +220,8 @@ export interface RatioSquarifyTilingFactory { ratio(ratio: number): RatioSquarifyTilingFactory; } -export var treemapSquarify: RatioSquarifyTilingFactory; -export var treemapResquarify: RatioSquarifyTilingFactory; - +export const treemapSquarify: RatioSquarifyTilingFactory; +export const treemapResquarify: RatioSquarifyTilingFactory; // ----------------------------------------------------------------------- // Partition @@ -286,7 +281,6 @@ export interface HierarchyCircularNode { copy(): HierarchyCircularNode; } - export interface PackLayout { (root: HierarchyNode): HierarchyCircularNode; radius(): null | ((node: HierarchyCircularNode) => number); @@ -300,7 +294,6 @@ export interface PackLayout { export function pack(): PackLayout; - // ----------------------------------------------------------------------- // Pack Siblings and Enclosure // ----------------------------------------------------------------------- diff --git a/types/d3-hierarchy/tslint.json b/types/d3-hierarchy/tslint.json index a41bf5d19a..71ee04c4e1 100644 --- a/types/d3-hierarchy/tslint.json +++ b/types/d3-hierarchy/tslint.json @@ -1,79 +1,6 @@ { "extends": "dtslint/dt.json", "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false + "no-unnecessary-generics": false } } diff --git a/types/d3-hsv/d3-hsv-tests.ts b/types/d3-hsv/d3-hsv-tests.ts index 0d3e564360..7aa6fb7817 100644 --- a/types/d3-hsv/d3-hsv-tests.ts +++ b/types/d3-hsv/d3-hsv-tests.ts @@ -6,19 +6,23 @@ * are not intended as functional tests. */ -import { hsv, HSVColor } from 'd3-hsv'; -import { rgb, RGBColor } from 'd3-color'; +import { hsv, HSVColor, interpolateHsv, interpolateHsvLong } from 'd3-hsv'; +import { rgb, hcl, RGBColor } from 'd3-color'; -let c: RGBColor; +let cRGB: RGBColor; let cHSV: HSVColor; let displayable: boolean; let cString: string; +let iString: (t: number) => string; +let nil: null; + +// Hsv signature -// hsv signature cHSV = hsv(120, 0.4, 0.5); cHSV = hsv(120, 0.4, 0.5, 0.5); -// specifier signature +// Specifier signature + cHSV = hsv('rgb(255, 255, 255)'); cHSV = hsv('rgb(10%, 20%, 30%)'); cHSV = hsv('rgba(255, 255, 255, 0.4)'); @@ -28,13 +32,16 @@ cHSV = hsv('hsla(120, 50%, 20%, 0.4)'); cHSV = hsv('#ffeeaa'); cHSV = hsv('#fea'); cHSV = hsv('steelblue'); +cHSV = hsv(''); -// color signature -c = rgb('steelblue'); -cHSV = hsv(c); +// Color signature + +cRGB = rgb('steelblue'); +cHSV = hsv(cRGB); cHSV = hsv(cHSV); -// method signatures +// Method signatures + cHSV = cHSV.brighter(); cHSV = cHSV.brighter(0.2); cHSV = cHSV.darker(); @@ -43,3 +50,25 @@ displayable = cHSV.displayable(); cString = cHSV.toString(); console.log('Channels = (h : %d, s: %d, v: %d)', cHSV.h, cHSV.s, cHSV.v); console.log('Opacity = %d', cHSV.opacity); + +// Interpolater + +iString = interpolateHsv('seagreen', 'steelblue'); +iString = interpolateHsv(rgb('seagreen'), hcl('steelblue')); +iString = interpolateHsv(rgb('seagreen'), hsv('steelblue')); + +iString = interpolateHsvLong('seagreen', 'steelblue'); +iString = interpolateHsvLong(rgb('seagreen'), hcl('steelblue')); +iString = interpolateHsvLong(rgb('seagreen'), hsv('steelblue')); + +// Prototype, instanceof and typeguard + +declare let color: RGBColor | HSVColor | null; + +if (color instanceof rgb) { + cRGB = color; +} else if (color instanceof hsv) { + cHSV = color; +} else { + nil = color; +} diff --git a/types/d3-hsv/index.d.ts b/types/d3-hsv/index.d.ts index 6a7a2c8560..1728af0874 100644 --- a/types/d3-hsv/index.d.ts +++ b/types/d3-hsv/index.d.ts @@ -1,28 +1,89 @@ -// Type definitions for D3JS d3-hsv module 0.0 +// Type definitions for D3JS d3-hsv module 0.1 // Project: https://github.com/d3/d3-hsv/ -// Definitions by: Yuri Feldman +// Definitions by: Yuri Feldman , denisname // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// Last module patch version validated against: 0.0.3 +// Last module patch version validated against: 0.1.0 import { Color, RGBColor, ColorSpaceObject, ColorCommonInstance } from 'd3-color'; export type ColorSpaceObjectWithHSV = ColorSpaceObject | HSVColor; export interface HSVColorFactory extends Function { + /** + * Constructs a new HSV color. + * @param h The hue of the returned color. + * @param s The saturation of the returned color. + * @param v The value of the returned color. + * @param opacity The opacity of the returned color. + */ (h: number, s: number, v: number, opacity?: number): HSVColor; + /** + * Constructs a new HSV color. + * @param cssColorSpecifier A CSS Color Module Level 3 specifier string, + * it is parsed and then converted to the HSV color space. + */ (cssColorSpecifier: string): HSVColor; + /** + * Constructs a new HSV color. + * @param color A color instance, it will be converted to the RGB color space + * using `color.rgb` and then converted to HSV. + */ (color: HSVColor | ColorSpaceObject | ColorCommonInstance): HSVColor; + + readonly prototype: HSVColor; } export interface HSVColor extends Color { + /** + * The color hue. + */ h: number; + /** + * The color saturation. + */ s: number; + /** + * The color value. + */ v: number; + /** + * The color opacity. + */ opacity: number; + + /** + * Returns a brighter copy of this color. + * @param k Controls how much brighter the returned color should be (defaults to 1). + */ brighter(k?: number): this; + + /** + * Returns a darker copy of this color. + * @param k Controls how much darker the returned color should be (defaults to 1). + */ darker(k?: number): this; + + /** + * Returns the RGB equivalent of this color. + */ rgb(): RGBColor; } export const hsv: HSVColorFactory; + +/** + * Returns an HSV color space interpolator between the two colors a and b. + * If either color’s hue or chroma is NaN, the opposing color’s channel value is used. + * The shortest path between hues is used. The return value of the interpolator is an RGB string. + * @param a The starting color; it will be converted to HSV using `d3.hsv`. + * @param b The ending color; it will be converted to HSV using `d3.hsv`. + */ +export function interpolateHsv(a: string | ColorCommonInstance, b: string | ColorCommonInstance): (t: number) => string; + +/** + * Like `interpolateHsv`, but does not use the shortest path between hues. + * @param a The starting color; it will be converted to HSV using `d3.hsv`. + * @param b The ending color; it will be converted to HSV using `d3.hsv`. + */ +export function interpolateHsvLong(a: string | ColorCommonInstance, b: string | ColorCommonInstance): (t: number) => string; diff --git a/types/d3-hsv/tsconfig.json b/types/d3-hsv/tsconfig.json index c92ce346b2..0f7de85da1 100644 --- a/types/d3-hsv/tsconfig.json +++ b/types/d3-hsv/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/d3-polygon/d3-polygon-tests.ts b/types/d3-polygon/d3-polygon-tests.ts index 28e1e464e1..c4aac0b900 100644 --- a/types/d3-polygon/d3-polygon-tests.ts +++ b/types/d3-polygon/d3-polygon-tests.ts @@ -17,7 +17,7 @@ let containsFlag: boolean; let point: [number, number] = [15, 15]; const polygon: Array<[number, number]> = [[10, 10], [20, 20], [10, 30]]; const pointArray: Array<[number, number]> = [[10, 10], [20, 20], [10, 30], [15, 15]]; -let hull: Array<[number, number]>; +let hullOrNothing: Array<[number, number]> | null; // ----------------------------------------------------------------------------- // Tests @@ -27,7 +27,7 @@ num = d3Polygon.polygonArea(polygon); point = d3Polygon.polygonCentroid(polygon); -hull = d3Polygon.polygonHull(pointArray); +hullOrNothing = d3Polygon.polygonHull(pointArray); containsFlag = d3Polygon.polygonContains(polygon, point); diff --git a/types/d3-polygon/index.d.ts b/types/d3-polygon/index.d.ts index 64e1d2c9b9..b9f8711335 100644 --- a/types/d3-polygon/index.d.ts +++ b/types/d3-polygon/index.d.ts @@ -3,11 +3,11 @@ // Definitions by: Tom Wanzek , Alex Ford , Boris Yankov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// Last module patch version validated against: 1.0.1 +// Last module patch version validated against: 1.0.3 /** - * Returns the signed area of the specified polygon. If the vertices of the polygon are in counterclockwise order ( - * assuming a coordinate system where the origin ⟨0,0⟩ is in the top-left corner), the returned area is positive; + * Returns the signed area of the specified polygon. If the vertices of the polygon are in counterclockwise order + * (assuming a coordinate system where the origin <0,0> is in the top-left corner), the returned area is positive; * otherwise it is negative, or zero. * * @param polygon Array of coordinates , and so on. @@ -34,7 +34,7 @@ export function polygonHull(points: Array<[number, number]>): Array<[number, num * Returns true if and only if the specified point is inside the specified polygon. * * @param polygon Array of coordinates , and so on. - * @param point Coordinates of point + * @param point Coordinates of point . */ export function polygonContains(polygon: Array<[number, number]>, point: [number, number]): boolean; diff --git a/types/d3-polygon/tsconfig.json b/types/d3-polygon/tsconfig.json index 79bd8a43b8..1444a903df 100644 --- a/types/d3-polygon/tsconfig.json +++ b/types/d3-polygon/tsconfig.json @@ -6,7 +6,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ diff --git a/types/d3-polygon/tslint.json b/types/d3-polygon/tslint.json index 604d5950cf..f93cf8562a 100644 --- a/types/d3-polygon/tslint.json +++ b/types/d3-polygon/tslint.json @@ -1,7 +1,3 @@ { - "extends": "dtslint/dt.json", - "rules": { - "unified-signatures": false, - "callable-types": false - } + "extends": "dtslint/dt.json" } diff --git a/types/dagre/index.d.ts b/types/dagre/index.d.ts index 6c5e5e00ec..774fbf8f80 100644 --- a/types/dagre/index.d.ts +++ b/types/dagre/index.d.ts @@ -95,15 +95,15 @@ export interface NodeConfig { } export interface EdgeConfig { - minlen: number; - weight: number; - width: number; - height: number; - lablepos: 'l'|'c'|'r'; - labeloffest: number; + minlen?: number; + weight?: number; + width?: number; + height?: number; + lablepos?: 'l'|'c'|'r'; + labeloffest?: number; } -export function layout(graph: graphlib.Graph, layout?: GraphLabel&NodeConfig&EdgeConfig): void; +export function layout(graph: graphlib.Graph, layout?: GraphLabel & NodeConfig & EdgeConfig): void; export interface Edge { v: string; diff --git a/types/dat.gui/index.d.ts b/types/dat.gui/index.d.ts index 3cf4883fd8..967b5ae13b 100644 --- a/types/dat.gui/index.d.ts +++ b/types/dat.gui/index.d.ts @@ -1,10 +1,49 @@ -// Type definitions for dat.GUI 0.6 +// Type definitions for dat.GUI 0.7 // Project: https://github.com/dataarts/dat.gui // Definitions by: Satoru Kimura , ZongJing Lu , Richard Roylance // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export as namespace dat; +export interface GUIParams { + /** + * Handles GUI's element placement for you. + * @default true + */ + autoPlace?: boolean; + /** + * If true, starts closed. + * @default false + */ + closed?: boolean; + /** + * If true, close/open button shows on top of the GUI. + * @default false + */ + closeOnTop?: boolean; + /** + * If true, GUI is closed by the "h" keypress. + * @default false + */ + hideable?: boolean; + /** + * JSON object representing the saved state of this GUI. + */ + load?: any; + /** + * The name of this GUI. + */ + name?: string; + /** + * The identifier for a set of saved values. + */ + preset?: string; + /** + * The width of GUI element. + */ + width?: number; +} + export class GUI { constructor(option?: GUIParams); @@ -20,9 +59,6 @@ export class GUI { add(target: Object, propName:string, items:Object): GUIController; addColor(target: Object, propName:string): GUIController; - addColor(target: Object, propName:string, color: string): GUIController; - addColor(target: Object, propName:string, rgba: number[]): GUIController; // rgb or rgba - addColor(target: Object, propName:string, hsv:{h:number; s:number; v:number}): GUIController; remove(controller: GUIController): void; destroy(): void; @@ -55,16 +91,6 @@ export class GUI { useLocalStorage: boolean; } -export interface GUIParams{ - autoPlace?: boolean; - closed?: boolean; - closeOnTop?: boolean; - load?: any; - name?: string; - preset?: string; - width?: number; -} - export class GUIController { destroy(): void; diff --git a/types/daterangepicker/daterangepicker-tests.ts b/types/daterangepicker/daterangepicker-tests.ts index db79671721..2f8ab867e4 100644 --- a/types/daterangepicker/daterangepicker-tests.ts +++ b/types/daterangepicker/daterangepicker-tests.ts @@ -1,80 +1,116 @@ -import moment = require("moment") -import daterangepicker = require("daterangepicker"); +import moment = require('moment'); +import daterangepicker = require('daterangepicker'); function tests_simple() { $('#daterange').daterangepicker(); - $('input[name="daterange"]').daterangepicker({ - timePicker: true, - timePickerIncrement: 30, - locale: { - format: 'MM/DD/YYYY h:mm A' - } - }); + $('input[name="daterange"]') + .daterangepicker({ + timePicker: true, + timePickerIncrement: 30, + locale: { + format: 'MM/DD/YYYY h:mm A' + }, + maxSpan: { days: 10 }, + applyButtonClasses: 'my-apply-class', + cancelButtonClasses: 'my-cancel-class', + showDropdowns: true, + maxYear: 3000, + minYear: 2000 + }) + .data('daterangepicker') + .remove(); $('#reportrange').daterangepicker({ ranges: { - 'Today': [moment(), moment()], - 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + Today: [moment(), moment()], + Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')], 'Last 7 Days': [moment().subtract(6, 'days'), moment()], 'Last 30 Days': [moment().subtract(29, 'days'), moment()], 'This Month': [moment().startOf('month'), moment().endOf('month')], - 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')] + 'Last Month': [ + moment() + .subtract(1, 'month') + .startOf('month'), + moment() + .subtract(1, 'month') + .endOf('month') + ] } }); - $('input[name="datefilter"]').on('apply.daterangepicker', function (ev, picker) { - $(this).val(picker.startDate.format('MM/DD/YYYY') + ' - ' + picker.endDate.format('MM/DD/YYYY')); + $('input[name="datefilter"]').on('apply.daterangepicker', function(ev, picker) { + $(this).val( + `${picker.startDate.format('MM/DD/YYYY')} - ${picker.endDate.format('MM/DD/YYYY')}` + ); }); - - $('input[name="datefilter"]').on('cancel.daterangepicker', function (ev, picker) { + $('input[name="datefilter"]').on('cancel.daterangepicker', function(ev, picker) { $(this).val(''); }); - $('#demo').daterangepicker({ - "startDate": "05/06/2016", - "endDate": "05/12/2016" - }, function (start: moment.Moment, end: moment.Moment, label: string) { - console.log("New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')"); - }); - - $(function() { - - function cb(start: moment.Moment, end: moment.Moment) { - $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY')); - } - cb(moment().subtract(29, 'days'), moment()); - - $('#reportrange').daterangepicker({ - ranges: { - 'Today': [moment(), moment()], - 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')], - 'Last 7 Days': [moment().subtract(6, 'days'), moment()], - 'Last 30 Days': [moment().subtract(29, 'days'), moment()], - 'This Month': [moment().startOf('month'), moment().endOf('month')], - 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')] - } - }, cb); - - $('#reportrange').daterangepicker({ - ranges: { - 'Today': [moment(), moment()], - 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')], - 'Last 7 Days': [moment().subtract(6, 'days'), moment()], - 'Last 30 Days': [moment().subtract(29, 'days'), moment()] + $('#demo').daterangepicker( + { + startDate: '05/06/2016', + endDate: '05/12/2016' }, - showCustomRangeLabel: false - }, cb); + (start: moment.Moment, end: moment.Moment, label: string) => { + console.log( + "New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')" + ); + } + ); - $('#endDate').daterangepicker({ - singleDatePicker: true, - startDate: moment() + $(() => { + function cb(start: moment.Moment, end: moment.Moment) { + $('#reportrange span').html( + `${start.format('MMMM D, YYYY')} - ${end.format('MMMM D, YYYY')}` + ); + } + cb(moment().subtract(29, 'days'), moment()); + + $('#reportrange').daterangepicker( + { + ranges: { + Today: [moment(), moment()], + Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + 'Last 7 Days': [moment().subtract(6, 'days'), moment()], + 'Last 30 Days': [moment().subtract(29, 'days'), moment()], + 'This Month': [moment().startOf('month'), moment().endOf('month')], + 'Last Month': [ + moment() + .subtract(1, 'month') + .startOf('month'), + moment() + .subtract(1, 'month') + .endOf('month') + ] + } + }, + cb + ); + + $('#reportrange').daterangepicker( + { + ranges: { + Today: [moment(), moment()], + Yesterday: [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + 'Last 7 Days': [moment().subtract(6, 'days'), moment()], + 'Last 30 Days': [moment().subtract(29, 'days'), moment()] + }, + showCustomRangeLabel: false + }, + cb + ); + + $('#endDate').daterangepicker({ + singleDatePicker: true, + startDate: moment() + }); }); -}); } declare const host: HTMLElement; function test_from_amd() { - var picker = new daterangepicker(host); - console.log(picker.startDate.format("YYYY-MM-DD")); + const picker = new daterangepicker(host); + console.log(picker.startDate.format('YYYY-MM-DD')); } diff --git a/types/daterangepicker/index.d.ts b/types/daterangepicker/index.d.ts index 4d777b17b6..9267a801b2 100644 --- a/types/daterangepicker/index.d.ts +++ b/types/daterangepicker/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Date Range Picker v2.1.30 +// Type definitions for Date Range Picker 3.0 // Project: http://www.daterangepicker.com/ // Definitions by: SirMartin // Steven Masala @@ -7,62 +7,81 @@ // TypeScript Version: 2.3 /// -import moment = require("moment"); +import moment = require('moment'); declare global { interface JQuery { - daterangepicker(settings?: daterangepicker.Settings): JQuery; - daterangepicker(settings?: daterangepicker.Settings, callback?: daterangepicker.DataRangePickerCallback): JQuery; + daterangepicker: (( + options?: daterangepicker.Options, + callback?: daterangepicker.DataRangePickerCallback + ) => JQuery) & { defaultOptions?: daterangepicker.Options }; + data(key: 'daterangepicker'): daterangepicker | undefined; } } -declare const daterangepicker: daterangepicker.DateRangePicker; +declare class daterangepicker { + constructor( + element: HTMLElement, + options?: daterangepicker.Options, + callback?: daterangepicker.DataRangePickerCallback + ); + + startDate: moment.Moment; + endDate: moment.Moment; + container: JQuery; + + setStartDate(date: daterangepicker.DateOrString): void; + setEndDate(date: daterangepicker.DateOrString): void; + remove(): void; +} declare namespace daterangepicker { - type DataRangePickerCallback = (start: moment.Moment, end: moment.Moment, label: string | null) => any; + type DataRangePickerCallback = ( + start: moment.Moment, + end: moment.Moment, + label: string | null + ) => void; - interface DateRangePicker { - new (element: HTMLElement, settings?: daterangepicker.Settings, callback?: DataRangePickerCallback): DateRangePicker; - - startDate: moment.Moment; - endDate: moment.Moment; - container: JQuery; - - setStartDate(date: Date | moment.Moment | string): void; - setEndDate(date: Date | moment.Moment | string): void; - remove(): void; - } + type DateOrString = string | moment.Moment | Date; interface DatepickerEventObject extends JQueryEventObject { date: Date; format(format?: string): string; } - interface Settings { + interface Options { /** * The start of the initially selected date range */ - startDate?: string | moment.Moment | Date; + startDate?: DateOrString; /** * The end of the initially selected date range */ - endDate?: string | moment.Moment | Date; + endDate?: DateOrString; /** - * The earliest date a user may select + * The earliest date a user may select */ - minDate?: string | moment.Moment | Date; + minDate?: DateOrString; /** * The latest date a user may select */ - maxDate?: string | moment.Moment | Date; + maxDate?: DateOrString; /** * The maximum span between the selected start and end dates. Can have any property you can add to a moment object (i.e. days, months) */ - dateLimit?: any; + maxSpan?: moment.MomentInput | moment.Duration; /** * Show year and month select boxes above calendars to jump to a specific month and year */ showDropdowns?: boolean; + /** + * The minimum year shown in the dropdowns when `showDropdowns` is set to true. + */ + minYear?: number; + /** + * The maximum year shown in the dropdowns when `showDropdowns` is set to true. + */ + maxYear?: number; /** * Show localized week numbers at the start of each week on the calendars */ @@ -90,15 +109,25 @@ declare namespace daterangepicker { /** * Set predefined date ranges the user can select from.Each key is the label for the range, and its value an array with two dates representing the bounds of the range. */ - ranges?: any; + ranges?: { [name: string]: [DateOrString, DateOrString] }; /** - * (string: 'left'/'right'/'center') Whether the picker appears aligned to the left, to the right, or centered under the HTML element it's attached to + * Whether to show the 'Custom Range' label or just pre-defined ranges */ - opens?: string; + showCustomRangeLabel?: boolean; /** - * (string: 'down' or 'up') Whether the picker appears below (default) or above the HTML element it's attached to + * Normally, if you use the `ranges` option to specify pre-defined date ranges, calendars + * for choosing a custom date range are not shown until the user clicks "Custom Range". + * When this option is set to true, the calendars for choosing a custom date range are always shown instead. */ - drops?: string; + alwaysShowCalendars?: boolean; + /** + * Whether the picker appears aligned to the left, to the right, or centered under the HTML element it's attached to + */ + opens?: 'left' | 'right' | 'center'; + /** + * Whether the picker appears below (default) or above the HTML element it's attached to + */ + drops?: 'down' | 'up'; /** * CSS class names that will be added to all buttons in the picker */ @@ -106,11 +135,11 @@ declare namespace daterangepicker { /** * CSS class string that will be added to the apply button */ - applyClass?: string; + applyButtonClasses?: string; /** - * CSS class string that will be added to the cancel button - */ - cancelClass?: string; + * CSS class string that will be added to the cancel button + */ + cancelButtonClasses?: string; /** * Allows you to provide localized strings for buttons and labels, customize the date display format, and change the first day of week for the calendars. */ @@ -124,29 +153,28 @@ declare namespace daterangepicker { */ autoApply?: boolean; /** - * When enabled, the two calendars displayed will always be for two sequential months (i.e.January and February), and both will be advanced when clicking the left or right arrows above the calendars.When disabled, the two calendars can be individually advanced and display any month/ year. + * When enabled, the two calendars displayed will always be for two sequential months (i.e. + * January and February), and both will be advanced when clicking the left or right arrows + * above the calendars.When disabled, the two calendars can be individually advanced and + * display any month/ year. */ linkedCalendars?: boolean; - /** - * jQuery selector of the parent element that the date range picker will be added to, if not provided this will be 'body' - */ - parentEl?: string; /** * A function that is passed each date in the two calendars before they are displayed, and may return true or false to indicate whether that date should be available for selection or not. */ - isInvalidDate?(startDate: string | moment.Moment | Date, endDate?: string | moment.Moment | Date): boolean; + isInvalidDate?(startDate: DateOrString, endDate?: DateOrString): boolean; + /** + * A function that is passed each date in the two calendars before they are displayed, and may return a string or array of CSS class names to apply to that date's calendar cell. + */ + isCustomDate?(date: DateOrString): string | string[] | undefined; /** * Indicates whether the date range picker should automatically update the value of an < input > element it's attached to at initialization and when the selected dates change. */ autoUpdateInput?: boolean; /** - * Normally, if you use the ranges option to specify pre- defined date ranges, calendars for choosing a custom date range are not shown until the user clicks "Custom Range".When this option is set to true, the calendars for choosing a custom date range are always shown instead. - */ - alwaysShowCalendars?: boolean; - /** - * Whether to show the 'Custom Range' label or just pre-defined ranges - */ - showCustomRangeLabel?: boolean; + * jQuery selector of the parent element that the date range picker will be added to, if not provided this will be 'body' + */ + parentEl?: string; } interface Locale { diff --git a/types/daterangepicker/tslint.json b/types/daterangepicker/tslint.json index a41bf5d19a..3db14f85ea 100644 --- a/types/daterangepicker/tslint.json +++ b/types/daterangepicker/tslint.json @@ -1,79 +1 @@ -{ - "extends": "dtslint/dt.json", - "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false - } -} +{ "extends": "dtslint/dt.json" } diff --git a/types/decompress/decompress-tests.ts b/types/decompress/decompress-tests.ts index 3df7df0219..9cb8949d99 100644 --- a/types/decompress/decompress-tests.ts +++ b/types/decompress/decompress-tests.ts @@ -1,13 +1,13 @@ import decompress = require('decompress'); import * as path from "path"; -decompress('unicorn.zip', 'dist').then(files => { +decompress('unicorn.zip', 'dist').then((files: decompress.File[]) => { console.log('done!'); }); decompress('unicorn.zip', 'dist', { filter: file => path.extname(file.path) !== '.exe' -}).then(files => { +}).then((files: decompress.File[]) => { console.log('done!'); }); @@ -16,6 +16,6 @@ decompress('unicorn.zip', 'dist', { file.path = `unicorn-${file.path}`; return file; } -}).then(files => { +}).then((files: decompress.File[]) => { console.log('done!'); }); diff --git a/types/decompress/index.d.ts b/types/decompress/index.d.ts index a493f81a0d..745bebcd2e 100644 --- a/types/decompress/index.d.ts +++ b/types/decompress/index.d.ts @@ -7,7 +7,7 @@ export = decompress; -declare function decompress(input: string | Buffer, output: string, opts?: decompress.DecompressOptions): Promise; +declare function decompress(input: string | Buffer, output: string, opts?: decompress.DecompressOptions): Promise; declare namespace decompress { interface File { diff --git a/types/deglob/deglob-tests.ts b/types/deglob/deglob-tests.ts new file mode 100644 index 0000000000..1f9990d345 --- /dev/null +++ b/types/deglob/deglob-tests.ts @@ -0,0 +1,21 @@ +/// + +import deglob = require('deglob'); + +deglob(['**/*.js'], (err, files) => { + files.forEach(file => { + console.log('found file ' + file); + }); +}); + +const opts = { + cwd: 'foo', + useGitIgnore: false, + usePackageJson: false +}; + +deglob(['**/*.js'], opts, (err, files) => { + files.forEach(file => { + console.log('found file ' + file); + }); +}); diff --git a/types/deglob/index.d.ts b/types/deglob/index.d.ts new file mode 100644 index 0000000000..6310201c11 --- /dev/null +++ b/types/deglob/index.d.ts @@ -0,0 +1,22 @@ +// Type definitions for deglob v 2.1 +// Project: https://github.com/standard/deglob +// Definitions by: Saad Quadri +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +type Callback = (err: Error | null, files: string[]) => void; + +declare function deglob(patterns: string[], cb: Callback): void; +declare function deglob(patterns: string[], opts: deglob.Options, cb: Callback): void; + +declare namespace deglob { + interface Options { + useGitIgnore?: boolean; + usePackageJson?: boolean; + configKey?: string; + gitIgnoreFile?: string; + ignore?: string[]; + cwd?: string; + } +} + +export = deglob; diff --git a/types/deglob/tsconfig.json b/types/deglob/tsconfig.json new file mode 100644 index 0000000000..1d3064583a --- /dev/null +++ b/types/deglob/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "deglob-tests.ts" + ] +} diff --git a/types/deglob/tslint.json b/types/deglob/tslint.json new file mode 100644 index 0000000000..d88586e5bd --- /dev/null +++ b/types/deglob/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/deline/deline-tests.ts b/types/deline/deline-tests.ts new file mode 100644 index 0000000000..35f1696484 --- /dev/null +++ b/types/deline/deline-tests.ts @@ -0,0 +1,13 @@ +import * as dl from "deline"; + +const moduleName = "deline"; + +dl.deline(`deline`); // $ExpectType string +dl.deline(`module name: ${moduleName}`); // $ExpectType string +dl.deline`deline`; // $ExpectType string +dl.deline`tagged template: ${moduleName}`; // $ExpectType string +dl.deline` +tagged template: + +${moduleName} +`; diff --git a/types/deline/index.d.ts b/types/deline/index.d.ts new file mode 100644 index 0000000000..b65cd80d5e --- /dev/null +++ b/types/deline/index.d.ts @@ -0,0 +1,6 @@ +// Type definitions for deline 1.0 +// Project: https://github.com/airbnb/deline#readme +// Definitions by: Inaki Arroyo +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export function deline(strings: string | TemplateStringsArray, ...values: any[]): string; diff --git a/types/deline/tsconfig.json b/types/deline/tsconfig.json new file mode 100644 index 0000000000..ae8ad2e876 --- /dev/null +++ b/types/deline/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "deline-tests.ts" + ] +} diff --git a/types/deline/tslint.json b/types/deline/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/deline/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/detect-browser/index.d.ts b/types/detect-browser/index.d.ts index 351067ff59..22d6bf9c17 100644 --- a/types/detect-browser/index.d.ts +++ b/types/detect-browser/index.d.ts @@ -18,10 +18,13 @@ export type BrowserName = "phantomjs" | "safari" | "vivaldi" | - "yandexbrowser"; + "yandexbrowser" | + "node"; -export function detect(): null | { - name: BrowserName | "node"; +export interface BrowserInfo { + name: BrowserName; version: string; os: string; -}; +} + +export function detect(): null | BrowserInfo; diff --git a/types/detox/detox-tests.ts b/types/detox/detox-tests.ts new file mode 100644 index 0000000000..82e3a62d3a --- /dev/null +++ b/types/detox/detox-tests.ts @@ -0,0 +1,22 @@ +declare var describe: (test: string, callback: () => void) => void; +declare var beforeAll: (callback: () => void) => void; +declare var afterAll: (callback: () => void) => void; +declare var test: (test: string, callback: () => void) => void; + +describe('Test', () => { + beforeAll(async () => { + await device.reloadReactNative(); + }); + + afterAll(async () => { + await element(by.id('element')).clearText(); + }); + + test('Test', async () => { + await element(by.id('element')).replaceText('text'); + await element(by.id('element')).tap(); + await expect(element(by.id('element')).atIndex(0)).toNotExist(); + + await waitFor(element(by.id('element'))).toBeVisible().withTimeout(2000); + }); +}); diff --git a/types/detox/index.d.ts b/types/detox/index.d.ts new file mode 100644 index 0000000000..f4479ff4db --- /dev/null +++ b/types/detox/index.d.ts @@ -0,0 +1,408 @@ +// Type definitions for detox 7.3 +// Project: https://github.com/wix/detox +// Definitions by: Tareq El-Masri +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare const detox: Detox.Detox; +declare const device: Detox.Device; +declare const element: Detox.Element; +declare const waitFor: Detox.WaitFor; +declare const expect: Detox.Expect>; +declare const by: Detox.Matchers; + +declare namespace Detox { + interface Detox { + /** + * The setup phase happens inside detox.init(). This is the phase where detox reads its configuration, starts a server, loads its expection library and starts a simulator + * @param config + * @param options + * @example const config = require('../package.json').detox; + * + * before(async () => { + * await detox.init(config); + * }); + */ + init(config: any, options: DetoxInitOptions): Promise; + /** + * Artifacts currently include only logs from the app process before each task + * @param args + */ + beforeEach(...args: any[]): Promise; + /** + * Artifacts currently include only logs from the app process after each task + * @param args + */ + afterEach(...args: any[]): Promise; + /** + * The cleanup phase should happen after all the tests have finished. This is the phase where detox-server shuts down. + * @example after(async () => { + * await detox.cleanup(); + * }); + */ + cleanup(): Promise; + } + interface Device { + /** + * Launch the app + * @param config + * @example // Terminate the app and launch it again. If set to false, the simulator will try to bring app from background, + * // if the app isn't running, it will launch a new instance. default is false + * await device.launchApp({newInstance: true}); + * // Grant or deny runtime permissions for your application. + * await device.launchApp({permissions: {calendar: 'YES'}}); + * // Mock opening the app from URL to test your app's deep link handling mechanism. + * await device.launchApp({url: url}); + */ + launchApp(config: DeviceLanchAppConfig): Promise; + /** + * By default, terminateApp() with no params will terminate the app + * To terminate another app, specify its bundle id + * @param bundle + * @example await device.terminateApp('other.bundle.id'); + */ + terminateApp(bundle?: string): Promise; + /** + * Send application to background by bringing com.apple.springboard to the foreground. + * Combining sendToHome() with launchApp({newInstance: false}) will simulate app coming back from background. + * @example await device.sendToHome(); + * await device.launchApp({newInstance: false}); + */ + sendToHome(): Promise; + /** + * If this is a React Native app, reload the React Native JS bundle. This action is much faster than device.launchApp(), and can be used if you just need to reset your React Native logic. + * @example await device.reloadReactNative() + */ + reloadReactNative(): Promise; + /** + * By default, installApp() with no params will install the app file defined in the current configuration. + * To install another app, specify its path + * @param path + * @example await device.installApp('path/to/other/app'); + */ + installApp(path?: any): Promise; + /** + * By default, uninstallApp() with no params will uninstall the app defined in the current configuration. + * To uninstall another app, specify its bundle id + * @param bundle + * @example await device.installApp('other.bundle.id'); + */ + uninstallApp(bundle?: string): Promise; + /** + * Mock opening the app from URL. sourceApp is an optional parameter to specify source application bundle id. + * @param url + */ + openURL(url: {url: string, sourceApp?: string}): Promise; + /** + * Mock handling of received user notification when app is in foreground. + * @param params + */ + sendUserNotification(...params: any[]): Promise; + /** + * Mock handling of received user activity when app is in foreground. + * @param params + */ + sendUserActivity(...params: any[]): Promise; + /** + * Takes "portrait" or "landscape" and rotates the device to the given orientation. Currently only available in the iOS Simulator. + * @param orientation + */ + setOrientation(orientation: Orientation): Promise; + /** + * Note: setLocation is dependent on fbsimctl. if fbsimctl is not installed, the command will fail, it must be installed. Sets the simulator location to the given latitude and longitude. + * @param lat + * @param lon + * @example await device.setLocation(32.0853, 34.7818); + */ + setLocation(lat: number, lon: number): Promise; + /** + * Disable EarlGrey's network synchronization mechanism on preffered endpoints. Usful if you want to on skip over synchronizing on certain URLs. + * @param urls + * @example await device.setURLBlacklist(['.*127.0.0.1.*']); + */ + setURLBlacklist(urls: string[]): Promise; + /** + * Enable EarlGrey's synchronization mechanism (enabled by default). This is being reset on every new instance of the app. + * @example await device.enableSynchronization(); + */ + enableSynchronization(): Promise; + /** + * Disable EarlGrey's synchronization mechanism (enabled by default) This is being reset on every new instance of the app. + * @example await device.disableSynchronization(); + */ + disableSynchronization(): Promise; + /** + * Resets the Simulator to clean state (like the Simulator > Reset Content and Settings... menu item), especially removing previously set permissions. + * @example await device.resetContentAndSettings(); + */ + resetContentAndSettings(): Promise; + /** + * Returns the current device, ios or android. + * @example if (device.getPlatform() === 'ios') { + * await expect(loopSwitch).toHaveValue('1'); + * } + */ + getPlatform(): "ios" | "android"; + /** + * Simulate shake (iOS Only) + */ + shake(): Promise; + } + + type DetoxAny = Element & Actions & WaitFor; + + interface Element { + (by: Matchers): DetoxAny; + + /** + * Select by parent element + * @param parent + * @example await element(by.id('Grandson883').withAncestor(by.id('Son883'))); + */ + withAncestor(parent: Element): DetoxAny; + /** + * Select by child element + * @param parent + * @example await element(by.id('Son883').withDescendant(by.id('Grandson883'))); + */ + withDescendant(child: Element): DetoxAny; + /** + * Choose from multiple elements matching the same matcher using index + * @param index + * @example await element(by.text('Product')).atIndex(2); + */ + atIndex(index: number): DetoxAny; + } + interface Matchers { + /** + * by.id will match an id that is given to the view via testID prop. + * @param id + * @example // In a React Native component add testID like so: + * + * // Then match with by.id: + * await element(by.id('tap_me')); + */ + id(id: string): Matchers; + /** + * Find an element by text, useful for text fields, buttons. + * @param text + * @example await element(by.text('Tap Me')); + */ + text(text: string): Matchers; + /** + * Find an element by accessibilityLabel on iOS, or by contentDescription on Android. + * @param label + * @example await element(by.label('Welcome')); + */ + label(label: string): Matchers; + /** + * Find an element by native view type. + * @param nativeViewType + * @example await element(by.type('RCTImageView')); + */ + type(nativeViewType: string): Matchers; + /** + * Find an element with an accessibility trait. (iOS only) + * @example await element(by.traits(['button'])); + */ + traits(traits: string[]): Matchers; + } + interface Expect { + (element: Element): Expect; + /** + * Expect the view to be at least 75% visible. + * @example await expect(element(by.id('UniqueId204'))).toBeVisible(); + */ + toBeVisible(): R; + /** + * Expect the view to not be visible. + * @example await expect(element(by.id('UniqueId205'))).toBeNotVisible(); + */ + toBeNotVisible(): R; + /** + * Expect the view to exist in the UI hierarchy. + * @example await expect(element(by.id('UniqueId205'))).toExist(); + */ + toExist(): R; + /** + * Expect the view to not exist in the UI hierarchy. + * @example await expect(element(by.id('RandomJunk959'))).toNotExist(); + */ + toNotExist(): R; + /** + * In React Native apps, expect UI component of type to have text. + * In native iOS apps, expect UI elements of type UIButton, UILabel, UITextField or UITextViewIn to have inputText with text. + * @param text + * @example await expect(element(by.id('UniqueId204'))).toHaveText('I contain some text'); + */ + toHaveText(text: string): R; + /** + * It searches by accessibilityLabel on iOS, or by contentDescription on Android. + * In React Native it can be set for both platforms by defining an accessibilityLabel on the view. + * @param label + * @example await expect(element(by.id('UniqueId204'))).toHaveLabel('Done'); + */ + toHaveLabel(label: string): R; + /** + * In React Native apps, expect UI component to have testID with that id. + * In native iOS apps, expect UI element to have accesibilityIdentifier with that id. + * @param id + * @example await expect(element(by.text('I contain some text'))).toHaveId('UniqueId204'); + */ + toHaveId(id: string): R; + /** + * Expect components like a Switch to have a value ('0' for off, '1' for on). + * @param value + * @example await expect(element(by.id('UniqueId533'))).toHaveValue('0'); + */ + toHaveValue(value: any): R; + } + interface WaitFor { + /** + * This API polls using the given expectation continuously until the expectation is met. Use manual synchronization with waitFor only as a last resort. + * NOTE: Every waitFor call must set a timeout using withTimeout(). Calling waitFor without setting a timeout will do nothing. + * @example await waitFor(element(by.id('UniqueId336'))).toExist().withTimeout(2000); + */ + (element: Element): Expect; + /** + * Waits for the condition to be met until the specified time (millis) have elapsed. + * @param millis number + * @example await waitFor(element(by.id('UniqueId336'))).toExist().withTimeout(2000); + */ + withTimeout(millis: number): Promise; + /** + * Performs the action repeatedly on the element until an expectation is met + * @param element + * @example await waitFor(element(by.text('Text5'))).toBeVisible().whileElement(by.id('ScrollView630')).scroll(50, 'down'); + */ + whileElement(by: Matchers): Element; + } + interface Actions { + /** + * Simulate tap on an element + * @example await element(by.id('tappable')).tap(); + */ + tap(): Promise>; + /** + * Simulate long press on an element + * @example await element(by.id('tappable')).longPress(); + */ + longPress(): Promise>; + /** + * Simulate multiple taps on an element. + * @param times number + * @example await element(by.id('tappable')).multiTap(3); + */ + multiTap(times: number): Promise>; + /** + * Simulate tap at a specific point on an element. + * Note: The point coordinates are relative to the matched element and the element size could changes on different devices or even when changing the device font size. + * @param point + * @example await element(by.id('tappable')).tapAtPoint({ x:5, y:10 }); + */ + tapAtPoint(point: { x: number, y: number }): Promise>; + /** + * Use the builtin keyboard to type text into a text field. + * @param text + * @example await element(by.id('textField')).typeText('passcode'); + */ + typeText(text: string): Promise>; + /** + * Paste text into a text field. + * @param text + * @example await element(by.id('textField')).replaceText('passcode again'); + */ + replaceText(text: string): Promise>; + /** + * Clear text from a text field. + * @example await element(by.id('textField')).clearText(); + */ + clearText(): Promise>; + /** + * + * @param pixels + * @param direction + * @example + * await element(by.id('scrollView')).scroll(100, 'down'); + * await element(by.id('scrollView')).scroll(100, 'up'); + */ + scroll(pixels: number, direction: Direction): Actions>; + /** + * Scroll to edge. + * @param edge + * @example await element(by.id('scrollView')).scrollTo('bottom'); + * await element(by.id('scrollView')).scrollTo('top'); + */ + scrollTo(edge: Direction): Actions>; + /** + * + * @param direction + * @param speed + * @param percentage + * @example await element(by.id('scrollView')).swipe('down'); + * await element(by.id('scrollView')).swipe('down', 'fast'); + * await element(by.id('scrollView')).swipe('down', 'fast', 0.5); + */ + swipe(direction: Direction, speed?: Speed, percentage?: number): Actions>; + /** + * (iOS Only) column - number of datepicker column (starts from 0) value - string value in setted column (must be correct) + * @param column + * @param value + * @example await expect(element(by.type('UIPickerView'))).toBeVisible(); + * await element(by.type('UIPickerView')).setColumnToValue(1,"6"); + * await element(by.type('UIPickerView')).setColumnToValue(2,"34"); + */ + setColumnToValue(column: number, value: string): Actions>; + } + + type Direction = "left" | "right" | "top" | "bottom" | "up" | "down"; + type Orientation = "portrait" | "landscape"; + type Speed = "fast" | "slow"; + + interface DetoxInitOptions { + /** + * Detox exports device, expect, element, by and waitFor as globals by default, if you want to control their initialization manually, set init detox with initGlobals set to false. + * This is useful when during E2E tests you also need to run regular expectations in node. jest Expect for instance, will not be overriden by Detox when this option is used. + */ + initGlobals?: boolean; + /** + * By default await detox.init(config); will launch the installed app. If you wish to control when your app is launched, add {launchApp: false} param to your init. + */ + launchApp?: boolean; + } + + interface DeviceLanchAppConfig { + /** + * Restart the app + * Terminate the app and launch it again. If set to false, the simulator will try to bring app from background, if the app isn't running, it will launch a new instance. default is false + */ + newInstance?: boolean; + /** + * Set runtime permissions + * Grant or deny runtime permissions for your application. + */ + permissions?: any; + /** + * Launch from URL + * Mock opening the app from URL to test your app's deep link handling mechanism. + */ + url?: any; + /** + * Launch with user notifications + */ + userNotification?: any; + /** + * Launch with user activity + */ + userActivity?: any; + /** + * Launch into a fresh installation + * A flag that enables relaunching into a fresh installation of the app (it will uninstall and install the binary again), default is false. + */ + delete?: boolean; + /** + * Detox can start the app with additional launch arguments + * The added launchArgs will be passed through the launch command to the device and be accessible via [[NSProcessInfo processInfo] arguments] + */ + launchArgs?: any; + } +} diff --git a/types/detox/tsconfig.json b/types/detox/tsconfig.json new file mode 100644 index 0000000000..2d1a22fb79 --- /dev/null +++ b/types/detox/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "target": "ES2015", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "detox-tests.ts" + ] +} diff --git a/types/detox/tslint.json b/types/detox/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/detox/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/devexpress-web/index.d.ts b/types/devexpress-web/index.d.ts index 50aac382b1..9b29d9e0db 100644 --- a/types/devexpress-web/index.d.ts +++ b/types/devexpress-web/index.d.ts @@ -1,7 +1,11 @@ -// Type definitions for DevExpress ASP.NET v171.4 +// Type definitions for DevExpress ASP.NET v172.6 // Project: http://devexpress.com/ // Definitions by: DevExpress Inc. // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// +/// /** * A client-side counterpart of the DashboardViewer extension. @@ -115,7 +119,7 @@ interface ASPxClientDashboardItemClickEventArgs extends ASPxClientEventArgs { /** * Requests underlying data corresponding to the clicked visual element. * @param onCompleted A ASPxClientDashboardItemRequestUnderlyingDataCompleted object that references a method executed after the request is completed. - * @param dataMembers An array of string values that specify data members used to obtain underlying data. + * @param dataMembers (Optional) An array of string values that specify data members used to obtain underlying data. If this parameter is not specified, underlying data for all available data members will be requested. */ RequestUnderlyingData(onCompleted: ASPxClientDashboardItemRequestUnderlyingDataCompleted, dataMembers: string[]): void; } @@ -550,6 +554,53 @@ interface ASPxClientDashboardItemDataDeltaValue { */ GetIndicatorType(): ASPxClientDashboardItemDataMeasureValue; } +/** + * References a method that will handle the ItemCaptionToolbarUpdated event. + */ +interface ASPxClientDashboardItemCaptionToolbarUpdatedEventHandler { + /** + * References a method that will handle the ItemCaptionToolbarUpdated event. + * @param source The event source. + * @param e The ASPxClientDashboardItemCaptionToolbarUpdatedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemCaptionToolbarUpdatedEventArgs): void; +} +/** + * Provides data for the ItemCaptionToolbarUpdated event. + */ +interface ASPxClientDashboardItemCaptionToolbarUpdatedEventArgs extends ASPxClientEventArgs { + /** + * Gets a component name of the dashboard item. + * Value: A string value that is a component name of the dashboard item. + */ + ItemName: string; + /** + * Provides access to caption options of the dashboard item. + * Value: A DashboardItemCaptionToolbarOptions object containing caption options of the dashboard item. + */ + Options: Object; +} +/** + * References a method that will handle the DashboardTitleToolbarUpdated event. + */ +interface ASPxClientDashboardTitleToolbarUpdatedEventHandler { + /** + * References a method that will handle the DashboardTitleToolbarUpdated event. + * @param source The event source. + * @param e A ASPxClientDashboardTitleToolbarUpdatedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardTitleToolbarUpdatedEventArgs): void; +} +/** + * Provides data for the DashboardTitleToolbarUpdated event. + */ +interface ASPxClientDashboardTitleToolbarUpdatedEventArgs extends ASPxClientEventArgs { + /** + * Provides access to dashboard title options. + * Value: A DashboardTitleToolbarOptions object containing dashboard title options. + */ + Options: Object; +} /** * A point on the data axis. */ @@ -945,6 +996,16 @@ interface DashboardPdfExportOptions { * Value: A DashboardExportScaleMode value that specifies the mode for scaling a dashboard/dashboard item in the exported document. */ ScaleMode: string; + /** + * Gets or sets the mode for scaling a dashboard/dashboard item in the exported document. + * Value: A DashboardExportDocumentScaleMode value that specifies the mode for scaling a dashboard/dashboard item in the exported document. + */ + DocumentScaleMode: string; + /** + * Gets or sets whether the page orientation used to export a dashboard is selected automatically. + * Value: true, to automatically select the page orientation used to export a dashboard; otherwise, false. + */ + DashboardAutomaticPageLayout: boolean; /** * Gets or sets the scale factor (in fractions of 1), by which a dashboard/dashboard item is scaled in the exported document. * Value: A Single value that specifies the scale factor by which a dashboard/dashboard item is scaled in the exported document. @@ -1232,6 +1293,30 @@ interface ASPxClientDashboard extends ASPxClientControl { * Occurs after the dashboard update is performed. */ DashboardEndUpdate: ASPxClientEvent>; + /** + * Allows you to customize a dashboard item's caption (for instance, add custom buttons, menus, etc.). + */ + ItemCaptionToolbarUpdated: ASPxClientEvent>; + /** + * Allows you to customize a dashboard title (for instance, add custom buttons, menus, etc.). + */ + DashboardTitleToolbarUpdated: ASPxClientEvent>; + /** + * Returns names of the predefined ranges available for the specified Range Filter. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetAvailablePredefinedRanges(itemName: string): string[]; + /** + * Returns the name of the currently selected predefined range. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetCurrentPredefinedRange(itemName: string): string; + /** + * + * @param itemName + */ + UpdateItemCaptionToolbar(itemName: string): void; + UpdateDashboardTitleToolbar(): void; /** * Sends a callback to the server and generates the server-side CustomDataCallback event, passing it the specified argument. * @param parameter A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. @@ -1239,7 +1324,7 @@ interface ASPxClientDashboard extends ASPxClientControl { */ PerformDataCallback(parameter: string, onCallback: ASPxClientDataCallback): void; /** - * Gets an inner part of the ASPxClientDashboard control. + * Gets the DashboardControl object that is the client-side part of the Web Dashboard. */ GetDashboardControl(): DashboardControl; /** @@ -1299,7 +1384,7 @@ interface ASPxClientDashboard extends ASPxClientControl { GetParameters(): ASPxClientDashboardParameters; /** * Invokes the dialog that allows end-users to export the entire dashboard to the specified format. - * @param format A string value that specifies the format. For instance, you can use 'PDF' or 'Image'. + * @param format A string value that specifies the format. For instance, you can use 'PDF', 'Image', or 'Excel'. */ ShowExportDashboardDialog(format: string): void; /** @@ -1635,16 +1720,6 @@ interface ASPxClientDashboard extends ASPxClientControl { * @param dateTimePeriodName A String value that specifies the predefined range name. */ SetPredefinedRange(itemName: string, dateTimePeriodName: string): void; - /** - * Returns names of the predefined ranges available for the specified Range Filter. - * @param itemName A string value that specifies the component name of the Range Filter dashboard item. - */ - GetAvailablePredefinedRanges(itemName: string): string[]; - /** - * Returns the name of the currently selected predefined range. - * @param itemName A string value that specifies the component name of the Range Filter dashboard item. - */ - GetCurrentPredefinedRange(itemName: string): string; } /** * References a method that will handle the DashboardStateChanged event. @@ -1986,6 +2061,14 @@ interface ASPxClientDashboardViewer extends ASPxClientControl { * Allows you to color the required dashboard item elements using the specified colors. */ ItemElementCustomColor: ASPxClientEvent>; + /** + * Allows you to customize a dashboard item's caption (for instance, add custom buttons, menus, etc.). + */ + ItemCaptionToolbarUpdated: ASPxClientEvent>; + /** + * Allows you to customize a dashboard title (for instance, add custom buttons, menus, etc.). + */ + TitleToolbarUpdated: ASPxClientEvent>; /** * Reloads data in the data sources. */ @@ -2064,6 +2147,12 @@ interface ASPxClientDashboardViewer extends ASPxClientControl { * @param itemName A String that specifies a component name of the master filter item. */ GetCurrentSelection(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * + * @param itemName + */ + UpdateItemCaptionToolbar(itemName: string): void; + UpdateDashboardTitleToolbar(): void; /** * Requests underlying data for the specified dashboard item. * @param itemName A string that specifies the component name of the dashboard item. @@ -2079,6 +2168,21 @@ interface ASPxClientDashboardViewer extends ASPxClientControl { * Closes the Dashboard Parameters dialog. */ HideParametersDialog(): void; + /** + * Shows the dialog that allows end-users to export the dashboard. + * @param format A string value that specifies the format. For instance, you can use 'PDF, 'Image' or 'Excel'. + */ + ShowExportDialog(format: string): void; + /** + * Shows the dialog that allows end-users to export the dashboard item. + * @param itemComponentName A component name of the dashboard item. + * @param format A string value that specifies the format. For instance, you can use 'PDF, 'Image' or 'Excel'. + */ + ShowExportDashboardItemDialog(itemComponentName: string, format: string): void; + /** + * Hides the dialog that allows end-users to export the dashboard/dashboard item. + */ + HideExportDialog(): void; /** * Returns settings that specify parameters affecting how the dashboard is exported. */ @@ -2554,8 +2658,17 @@ interface ASPxClientDashboardDrillUpPerformedEventArgs extends ASPxClientEventAr */ ItemName: string; } +/** + * Provides data for the onCustomizeText handler. + */ interface CardWidgetCustomizeTextEventArgs { + /** + * Gets a dimension/measure value to be displayed within the card. + */ getValue(): Object; + /** + * Gets a formatted value displayed within the card. + */ getDefaultText(): string; } /** @@ -2567,7 +2680,15 @@ interface CardWidget { * Value: A string that specifies the HTML color used to paint a card's background. */ cardBackColor: string; + /** + * Allows you to customize texts displayed within individual cards. + * Value: A handler used customize texts displayed within individual cards. + */ onCustomizeText: Object; + /** + * Gets the root element of the widget. + */ + element(): Object; } /** * When implemented, represents the Web Dashboard extension. @@ -2588,14 +2709,14 @@ interface IExtension { stop(): void; } /** - * An inner part of the ASPxClientDashboard control. + * A client-side part of the Web Dashboard. */ interface DashboardControl { /** * Gets or sets knockout templates that you can use in the Web Dashboard. * Value: A object that is a knockout template collection. */ - customTemplates: KnockoutObservableArray; + customTemplates: KnockoutObservableArray; /** * Provides an access to the collection of registered dashboard extensions. * Value: An array of IExtension objects that are dashboard extensions. @@ -2630,11 +2751,60 @@ interface DashboardControl { */ unregisterExtension(extensionName: string): void; } +interface UrlStateExtension extends IExtension { +} +interface Element { +} +/** + * The content of the Dashboard Parameters dialog. + */ +interface ParameterDialogContent { + /** + * Gets the Dashboard Parameters dialog's grid that displays parameter values. + * Value: The Dashboards Parameters dialog's grid that displays parameter values. + */ + grid: Object; + /** + * Applies changes made in the Dashboard Parameters dialog. + */ + submitParameterValues(): void; + /** + * Resets changes in the Dashboard Parameters dialog to the default values. + */ + resetParameterValues(): void; + valueChanged(): void; +} +/** + * A Web Dashboard extension that is the Dashboard Parameters dialog. + */ interface DashboardParameterDialogExtension extends IExtension { + /** + * Gets or sets whether to show the Dashboard Parameters button in the dashboard title. + * Value: true, to show the Dashboard Parameters button; otherwise, false. + */ + showDialogButton: KnockoutObservableBoolean; + /** + * Invokes the Dashboard Parameters dialog. + */ + show(): void; + /** + * Closes the Dashboard Parameters dialog. + */ + hide(): void; + /** + * Allows you to be notified about the dashboard parameter settings changes. + * @param callback A custom function. + */ + subscribeToContentChanges(callback: Function): Object; + /** + * Renders the content of the Dashboard Parameters dialog inside the specified JQuery element. + * @param element A JQuery element where the Dashboard Parameters dialog content is rendered. + */ + renderContent(element: Element): ParameterDialogContent; } interface DashboardExportExtension extends IExtension { } -interface DashboardClientApiExtension extends IExtension { +interface ViewerApiExtension extends IExtension { } interface DashboardCurrencyEditorExtension extends IExtension { } @@ -2642,7 +2812,12 @@ interface DataSourceBrowserExtension extends IExtension { } interface DataSourceWizardExtension extends IExtension { } -interface DashboadItemMenuExtension extends IExtension { +interface DashboardItemMenuExtension extends IExtension { +} +/** + * A Web Dashboard extension that allows you to configure color schemes. + */ +interface DashboardColorSchemeEditorExtension extends IExtension { } /** * A Web Dashboard extension that allows you to keep track of all user actions, and cancel or repeat them. @@ -2654,17 +2829,12 @@ interface UndoRedoExtension extends IExtension { isChanged(): boolean; } /** - * An extension that is the dashboard item's Binding menu allowing you to create and modify data binding. + * A Web Dashboard extension that is the dashboard item's Binding menu allowing you to create and modify data binding. */ interface BindingPanelExtension extends IExtension { } /** - * A Web Dashboard extension that allows you to configure color schemes. - */ -interface DashboardColorSchemeEditorExtension extends IExtension { -} -/** - * An extension that is the dashboard item's Convert To menu allowing you to convert or duplicate the current item. + * A Web Dashboard extension that is the dashboard item's Convert To menu allowing you to convert or duplicate the current item. */ interface ConversionPanelExtension extends IExtension { } @@ -2710,22 +2880,22 @@ interface OpenDashboardExtension extends IExtension { loadDashboard(id: string): void; } /** - * An extension that is the dashboard item's Interactivity menu containing settings that affect on interaction between various dashboard items. + * A Web Dashboard extension that is the dashboard item's Interactivity menu containing settings that affect on interaction between various dashboard items. */ interface InteractivityPanelExtension extends IExtension { } /** - * An extension that is the dashboard item's Options menu containing specific options and settings related to the current dashboard item. + * A Web Dashboard extension that is the dashboard item's Options menu containing specific options and settings related to the current dashboard item. */ interface OptionsPanelExtension extends IExtension { } /** - * An extension that is the Web Dashboard title editor. + * A Web Dashboard extension that is the dashboard title editor. */ interface DashboardTitleEditorExtension extends IExtension { } /** - * The Dashboard Panel extension that displays a list of available dashboards and lets you switch between the designer and viewer modes. + * The Dashboard Panel extension that allows users to switch between dashboards and enable the Designer mode. */ interface DashboardPanelExtension extends IExtension { /** @@ -2894,10 +3064,10 @@ interface DashboardToolboxGroup { */ index: number; /** - * Provide an access to the collection of toolbox items obtained from the specified toolbox group. - * Value: A object that is an array of items obtained from the specified toolbox group. + * Provides access to a collection of toolbox group items. + * Value: A DashboardToolboxItem). */ - items: KnockoutObservableArray; + items: KnockoutObservableArray; } /** * A toolbar group that contains dashboard toolbar items. @@ -2919,35 +3089,34 @@ interface DashboardToolbarGroup { */ index: number; /** - * Provide an access to the collection of toolbox items obtained from the specified toolbar group. - * Value: A object that is an array of items obtained from the specified toolbar group. + * Provides access to a collection of toolbar group items. + * Value: A DashboardToolbarItem). */ - items: KnockoutObservableArray; + items: KnockoutObservableArray; } /** * The Web Dashboard Toolbox extension that provides access to the dashboard menu and allows you to add dashboard items, as well as undo or repeat user actions. */ interface ToolboxExtension extends IExtension { /** - * Gets or sets the visibility of the dashboard menu. - * Value: true, to display the dashboard menu; otherwise, false. + * Provides access to a collection of the dashboard menu items. + * Value: A DashboardMenuItem). + */ + menuItems: KnockoutObservableArray; + /** + * Provides access to a collection of the Toolbox groups. + * Value: A DashboardToolboxGroup). + */ + toolboxGroups: KnockoutObservableArray; + /** + * Provides access to a collection of toolbar groups from the Toolbox. + * Value: A DashboardToolbarGroup). + */ + toolbarGroups: KnockoutObservableArray; + /** + * For internal use. */ menuVisible: KnockoutObservableBoolean; - /** - * Provide an access to the collection of menu items obtained from the dashboard menu. - * Value: A object that is a collection the dashboard menu items . - */ - menuItems: KnockoutObservableArray; - /** - * Provide an access to the collection of toolbox groups obtained from the Toolbox. - * Value: A object that is a collection the toolbox groups. - */ - toolboxGroups: KnockoutObservableArray; - /** - * Provide an access to the collection of toolbar groups obtained from the Toolbox. - * Value: A object that is a collection the toolbar groups. - */ - toolbarGroups: KnockoutObservableArray; /** * Allows you to add a specified menu item to the dashboard menu. * @param menuItem A DashboardMenuItem object that is a dashboard menu item. @@ -2970,9 +3139,9 @@ interface ToolboxExtension extends IExtension { */ addToolboxItem(groupName: string, toolboxItem: DashboardToolboxItem): void; /** - * Removes the specified toolbox item from the specified toolbox group. - * @param groupName A string value that is a unique toolbox group name. - * @param toolboxItemName A string value that is a unique toolbox item name. + * Removes the specified item from the specified toolbox group. + * @param groupName A string value that is a unique toolbox group name (name). + * @param toolboxItemName A string value that is a unique toolbox item name (name). */ removeToolboxItem(groupName: string, toolboxItemName: string): void; /** @@ -3438,6 +3607,10 @@ interface ASPxClientTextEdit extends ASPxClientEdit { * Fires on the client side when the editor's text is changed and focus moves out of the editor by end-user interactions. */ TextChanged: ASPxClientEvent>; + /** + * Fires on the client side when the editor's input value is changed before the focus moves out of the editor by end-user interactions. + */ + UserInput: ASPxClientEvent>; /** * Returns the text displayed within the editor. */ @@ -4249,7 +4422,7 @@ interface ASPxClientListBox extends ASPxClientListEdit { */ PerformCallback(parameter: string): void; /** - * Adds a new item to the end of the editor's items collection, specifying the item's display text, and returns the index of the added item. + * Adds a new item to the editor, specifying the item's display text, and returns the added item's index. * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. */ AddItem(texts: string[]): number; @@ -5021,6 +5194,11 @@ interface ASPxClientGridBase extends ASPxClientControl { */ interface ASPxClientGridColumnBase { } +/** + * Lists values that specify the document formats available for export from the grid. + */ +interface ASPxClientGridExportFormat { +} /** * A method that will handle the ToolbarItemClick event. */ @@ -5047,8 +5225,8 @@ interface ASPxClientGridToolbarItemClickEventArgs extends ASPxClientProcessingMo */ toolbarName: string; /** - * Gets the clicked toolbar item. - * Value: A ASPxClientMenuItem object that is the toolbar item. + * Gets the clicked menu item + * Value: An ASPxClientMenu value that is the menu item. */ item: ASPxClientMenuItem; /** @@ -5158,7 +5336,11 @@ interface ASPxClientCardView extends ASPxClientGridBase { /** * Fires in response to changing card focus. */ - FocusedCardChanged: ASPxClientEvent>; + FocusedCardChanged: ASPxClientEvent>; + /** + * Fires before a card has been focused. + */ + CardFocusing: ASPxClientEvent>; /** * Occurs when a callback for server-side processing is initiated. */ @@ -5175,6 +5357,21 @@ interface ASPxClientCardView extends ASPxClientGridBase { * Fires after the customization window has been closed. */ CustomizationWindowCloseUp: ASPxClientEvent>; + /** + * Returns the editor used to edit the specified column's values. + * @param column An ASPxClientCardViewColumn object that specifies the required column within the client grid. + */ + GetEditor(column: ASPxClientCardViewColumn): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + GetEditor(columnIndex: number): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GetEditor(columnFieldNameOrId: string): ASPxClientEdit; /** * Returns the value of the specified edit cell. * @param column An ASPxClientCardViewColumn object that represents the data column within the client grid. @@ -5255,6 +5452,11 @@ interface ASPxClientCardView extends ASPxClientGridBase { * @param columnIndex A zero-based index that identifies the column in the column collection (the column's Index property value). */ SetFocusedCell(cardVisibleIndex: number, columnIndex: number): void; + /** + * Specifies a custom editor for the search panel on the client side. + * @param editor An ASPxClientEdit object representing a custom editor. + */ + SetSearchPanelCustomEditor(editor: ASPxClientEdit): void; /** * Sorts data by the specified data column's values. * @param column An ASPxClientCardViewColumn object that represents the data column. @@ -5407,7 +5609,7 @@ interface ASPxClientCardView extends ASPxClientGridBase { */ IsNewCardEditing(): boolean; /** - * Adds a new record. + * Adds a new card. */ AddNewCard(): void; /** @@ -5543,6 +5745,11 @@ interface ASPxClientCardView extends ASPxClientGridBase { * @param visibleIndex An integer value that identifies the card by its visible index. */ IsCardSelectedOnPage(visibleIndex: number): boolean; + /** + * Exports a grid data to a file in the specified format. + * @param format An ASPxClientCardViewExportFormat object specifying the export format. + */ + ExportTo(format: ASPxClientCardViewExportFormat): void; /** * Applies the specified search panel filter criterion to grid data. * @param value A string value that specifies the filter criterion. @@ -5682,25 +5889,10 @@ interface ASPxClientCardView extends ASPxClientGridBase { */ GetColumnById(columnId: string): ASPxClientCardViewColumn; /** - * Returns the client column which is bound to the specified data source field. + * Returns the client column to which the specified data source field is bound. * @param columnFieldName A string value that specifies the name of the data source field to which the column is bound (the column's FieldName property value). */ GetColumnByField(columnFieldName: string): ASPxClientCardViewColumn; - /** - * Returns the editor used to edit the specified column's values. - * @param column An ASPxClientCardViewColumn object that specifies the required column within the client grid. - */ - GetEditor(column: ASPxClientCardViewColumn): ASPxClientEdit; - /** - * Returns the editor used to edit the specified column's values. - * @param columnIndex An integer value that specifies the column's position within the column collection. - */ - GetEditor(columnIndex: number): ASPxClientEdit; - /** - * Returns the editor used to edit the specified column's values. - * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). - */ - GetEditor(columnFieldNameOrId: string): ASPxClientEdit; } /** * Represents a client column. @@ -5758,6 +5950,32 @@ interface ASPxClientCardViewColumnCancelEventArgs extends ASPxClientCancelEventA */ column: ASPxClientCardViewColumn; } +/** + * A method that will handle the client CardFocusing event. + */ +interface ASPxClientCardViewCardFocusingEventHandler { + /** + * Represents a method that will handle the CardFocusing event. + * @param source The event source. + * @param e An ASPxClientCardViewCardFocusingEventArgs object which contains event data. + */ + (source: S, e: ASPxClientCardViewCardFocusingEventArgs): void; +} +/** + * Provides data for the CardFocusing event. + */ +interface ASPxClientCardViewCardFocusingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the card visible index. + * Value: An integer value specifying the visible index. + */ + visibleIndex: number; + /** + * Provides access to the parameters associated with the CardFocusing event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; +} /** * A method that will handle the CardClick event. */ @@ -5846,6 +6064,27 @@ interface ASPxClientCardViewSelectionEventArgs extends ASPxClientProcessingModeE */ isChangedOnServer: boolean; } +/** + * A method that will handle the client FocusedCardChanged event. + */ +interface ASPxClientCardViewFocusEventHandler { + /** + * Represents a method that will handle the FocusedCardChanged event. + * @param source The event source. + * @param e An ASPxClientCardViewFocusEventArgs object which contains event data. + */ + (source: S, e: ASPxClientCardViewFocusEventArgs): void; +} +/** + * Provides data for the corresponding event. + */ +interface ASPxClientCardViewFocusEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets whether card focusing has been changed on the server. + * Value: true , if the card focusing has been changed on the server; otherwise, false. + */ + isChangedOnServer: boolean; +} /** * A method that will handle the client BatchEditStartEditing event. */ @@ -6143,6 +6382,30 @@ interface ASPxClientCardViewBatchEditApi { * @param visibleIndex An integer value that identifies the card by its visible index. */ IsNewCard(visibleIndex: number): boolean; + /** + * Adds a new card when ASPxCardView is in Batch Edit mode. + */ + AddNewCard(): void; + /** + * Deletes the specified card when ASPxCardView is in Batch Edit mode. + * @param visibleIndex An integer value that identifies the card index. + */ + DeleteCard(visibleIndex: number): void; + /** + * Deletes a card with a specified key value when ASPxCardView is in Batch Edit mode. + * @param key An object that uniquely identifies the card. + */ + DeleteCardByKey(key: Object): void; + /** + * Recovers the specified card when ASPxCardView is in Batch Edit mode. + * @param visibleIndex An integer value that identifies the card index. + */ + RecoverCard(visibleIndex: number): void; + /** + * Recovers a card with a specified key value when ASPxCardView is in Batch Edit mode. + * @param key An object that uniquely identifies the card. + */ + RecoverCardByKey(key: Object): void; /** * Programmatically moves the focus to the previous cell in the card */ @@ -6220,6 +6483,12 @@ interface ASPxClientCardViewBatchEditApi { * Ends cell or card editing. */ EndEdit(): void; + /** + * Provides the text displayed within the cell according to the specified display format rule. + * @param columnFieldNameOrId A string value representing the column's unique identifier or field name. + * @param value An object representing a value. + */ + GetColumnDisplayText(columnFieldNameOrId: string, value: Object): string; } /** * Contains information on a grid cell. @@ -6236,6 +6505,11 @@ interface ASPxClientCardViewCellInfo { */ column: ASPxClientCardViewColumn; } +/** + * Lists values that specify the document formats available for export from the grid. + */ +interface ASPxClientCardViewExportFormat extends ASPxClientGridExportFormat { +} /** * A client-side equivalent of the ASPxGridView object. */ @@ -6260,7 +6534,11 @@ interface ASPxClientGridView extends ASPxClientGridBase { /** * Fires in response to changing row focus. */ - FocusedRowChanged: ASPxClientEvent>; + FocusedRowChanged: ASPxClientEvent>; + /** + * Fires before a row has been focused. + */ + RowFocusing: ASPxClientEvent>; /** * Enables you to cancel data grouping. */ @@ -6369,6 +6647,29 @@ interface ASPxClientGridView extends ASPxClientGridBase { * Fires after the Customization Window has been closed. */ CustomizationWindowCloseUp: ASPxClientEvent>; + /** + * Selects the specified rows within the grid. + * @param visibleIndices An array of zero-based indices that identify data rows within the grid. + */ + SelectRows(visibleIndices: number[]): void; + /** + * Selects or deselects the specified rows within the grid. + * @param visibleIndices An array of zero-based indices that identify data rows within the grid. + * @param selected true to select the specified rows; false to deselect the rows. + */ + SelectRows(visibleIndices: number[], selected: boolean): void; + /** + * Selects or deselects the specified row within the grid. + * @param visibleIndex An integer zero-based index that identifies the data row within the grid. + * @param selected true to select the specified row; false to deselect the row. + */ + SelectRows(visibleIndex: number, selected?: boolean): void; + /** + * Selects or deselects the specified rows displayed within the grid. + * @param keys An array of objects that uniquely identify the rows. + * @param selected true to select the specified rows; false to deselect the rows. + */ + SelectRowsByKey(keys: Object[], selected?: boolean): void; /** * Selects or deselects the specified row displayed within the grid. * @param key An object that uniquely identifies the row. @@ -6498,6 +6799,16 @@ interface ASPxClientGridView extends ASPxClientGridBase { * @param scrollableRowSettings An object specifying which types of grid rows should or should not be scrollable. */ SetFixedColumnScrollableRows(scrollableRowSettings: Object): void; + /** + * Exports a grid data to a file in the specified format. + * @param format An ASPxClientGridViewExportFormat object specifying the export format. + */ + ExportTo(format: ASPxClientGridViewExportFormat): void; + /** + * Returns a value specifying the indices of the rows visible in the browser's view port. + * @param includePartiallyVisible true, to include partially visible rows, otherwise, false. + */ + GetRowIndicesVisibleInViewPort(includePartiallyVisible: boolean): number[]; /** * Applies a filter specified in the filter row to the GridView. */ @@ -6777,6 +7088,11 @@ interface ASPxClientGridView extends ASPxClientGridBase { * @param columnIndex A zero-based index that identifies the column in the column collection (the column's Index property value). */ SetFocusedCell(rowVisibleIndex: number, columnIndex: number): void; + /** + * Specifies a custom editor for the search panel on the client side. + * @param editor An ASPxClientEdit object representing a custom editor. + */ + SetSearchPanelCustomEditor(editor: ASPxClientEdit): void; /** * Invokes the Customization Dialog and displays it over the grid. */ @@ -6996,6 +7312,15 @@ interface ASPxClientGridView extends ASPxClientGridBase { * @param moveFromGroup true, to ungroup the grid's data by the column; otherwise, false. */ MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, targetPosition: ASPxClientGridColumnMovingTargetPosition, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Returns an object specifying the grid column's layout. + */ + GetColumnLayout(): Object; + /** + * Specifies the grid column's layout. + * @param columnLayout An object specifying the grid column's layout. + */ + SetColumnLayout(columnLayout: Object): void; /** * Groups data by the values of the specified column. * @param column An ASPxClientGridViewColumn object that represents the data column by whose values data is grouped. @@ -7184,29 +7509,6 @@ interface ASPxClientGridView extends ASPxClientGridBase { * @param visibleIndex A zero-based integer value that specifies the row's visible index. */ SelectRows(visibleIndex: number): void; - /** - * Selects the specified rows within the grid. - * @param visibleIndices An array of zero-based indices that identify data rows within the grid. - */ - SelectRows(visibleIndices: number[]): void; - /** - * Selects or deselects the specified rows within the grid. - * @param visibleIndices An array of zero-based indices that identify data rows within the grid. - * @param selected true to select the specified rows; false to deselect the rows. - */ - SelectRows(visibleIndices: number[], selected: boolean): void; - /** - * Selects or deselects the specified row within the grid. - * @param visibleIndex An integer zero-based index that identifies the data row within the grid. - * @param selected true to select the specified row; false to deselect the row. - */ - SelectRows(visibleIndex: number, selected?: boolean): void; - /** - * Selects or deselects the specified rows displayed within the grid. - * @param keys An array of objects that uniquely identify the rows. - * @param selected true to select the specified rows; false to deselect the rows. - */ - SelectRowsByKey(keys: Object[], selected?: boolean): void; } /** * A client grid column. @@ -7347,6 +7649,48 @@ interface ASPxClientGridViewSelectionEventArgs extends ASPxClientProcessingModeE */ isChangedOnServer: boolean; } +/** + * A method that will handle the client FocusedRowChanged event. + */ +interface ASPxClientGridViewFocusEventHandler { + /** + * Represents a method that will handle the FocusedRowChanged event. + * @param source The event source. + * @param e An ASPxClientGridViewFocusEventArgs object which contains event data. + */ + (source: S, e: ASPxClientGridViewFocusEventArgs): void; +} +/** + * Provides data for the corresponding event. + */ +interface ASPxClientGridViewFocusEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets whether the row focusing has been changed on the server. + * Value: true , if the row focusing has been changed on the server; otherwise, false. + */ + isChangedOnServer: boolean; +} +/** + * A method that will handle the client RowFocusing event. + */ +interface ASPxClientGridViewRowFocusingEventHandler { + /** + * Represents a method that will handle the RowFocusing event. + * @param source The event source. + * @param e An ASPxClientGridViewRowFocusingEventArgs object which contains event data. + */ + (source: S, e: ASPxClientGridViewRowFocusingEventArgs): void; +} +/** + * Provides data for the RowFocusing event. + */ +interface ASPxClientGridViewRowFocusingEventArgs extends ASPxClientGridViewRowCancelEventArgs { + /** + * Provides access to the parameters associated with the RowFocusing event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; +} /** * A method that will handle the RowClick events. */ @@ -7829,6 +8173,30 @@ interface ASPxClientGridViewBatchEditApi { * @param visibleIndex An integer value that identifies the row by its visible index. */ IsNewRow(visibleIndex: number): boolean; + /** + * Adds a new row when ASPxGridView is in Batch Edit mode. + */ + AddNewRow(): void; + /** + * Deletes the specified row when ASPxGridView is in Batch Edit. + * @param visibleIndex An integer value that identifies the row index. + */ + DeleteRow(visibleIndex: number): void; + /** + * Deletes a row with a specified key value when ASPxGridView is in Batch Edit mode. + * @param key An object that uniquely identifies the row. + */ + DeleteRowByKey(key: Object): void; + /** + * Recovers the specified row when ASPxGridView is in Batch Edit mode. + * @param visibleIndex An integer value that identifies the row index. + */ + RecoverRow(visibleIndex: number): void; + /** + * Recovers a row with a specified key value when ASPxGridView is in Batch Edit mode. + * @param key An object that uniquely identifies the row. + */ + RecoverRowByKey(key: Object): void; /** * Programmatically moves the focus to the previous cell in the row. */ @@ -7906,6 +8274,17 @@ interface ASPxClientGridViewBatchEditApi { * Ends cell or row editing. */ EndEdit(): void; + /** + * Provides the text displayed within the cell according to the specified display format rule. + * @param columnFieldNameOrId A string value representing the column's unique identifier or field name. + * @param value An object representing a value. + */ + GetColumnDisplayText(columnFieldNameOrId: string, value: Object): string; +} +/** + * Lists values that specify the document formats available for export from the grid. + */ +interface ASPxClientGridViewExportFormat extends ASPxClientGridExportFormat { } /** * A client-side equivalent of the ASPxVerticalGrid object. @@ -8207,6 +8586,11 @@ interface ASPxClientVerticalGrid extends ASPxClientGridBase { * @param visibleIndex An integer value that identifies the record by its visible index. */ IsRecordSelectedOnPage(visibleIndex: number): boolean; + /** + * Exports a grid data to a file in the specified format. + * @param format An ASPxClientVerticalGridExportFormat object specifying the export format. + */ + ExportTo(format: ASPxClientVerticalGridExportFormat): void; /** * Returns the values of the specified data source fields within the specified record. * @param visibleIndex An integer value that identifies the record. @@ -8221,7 +8605,7 @@ interface ASPxClientVerticalGrid extends ASPxClientGridBase { */ GetPageRecordValues(fieldNames: string, onCallback: ASPxClientVerticalGridValuesCallback): void; /** - * Returns the number of records actually displayed within the active page. + * Returns the number of records actually displayed on the active page. */ GetVisibleRecordsOnPage(): number; /** @@ -8338,6 +8722,11 @@ interface ASPxClientVerticalGrid extends ASPxClientGridBase { * @param isFilterEnabled true to enable the current filter; otherwise, false. */ SetFilterEnabled(isFilterEnabled: boolean): void; + /** + * Specifies a custom editor for the search panel on the client side. + * @param editor An ASPxClientEdit object representing a custom editor. + */ + SetSearchPanelCustomEditor(editor: ASPxClientEdit): void; /** * Returns the client row that resides at the specified position within the row collection. * @param rowIndex A zero-based index that identifies the row within the row collection (the row's Index property value). @@ -8903,6 +9292,30 @@ interface ASPxClientVerticalGridBatchEditApi { * @param visibleIndex An integer value that identifies the record by its visible index. */ IsNewRecord(visibleIndex: number): boolean; + /** + * Adds a new record when ASPxVerticalGrid is in Batch Edit mode. + */ + AddNewRecord(): void; + /** + * Deletes the specified record when ASPxVerticalGrid is in Batch Edit mode. + * @param visibleIndex An integer value that identifies the record index. + */ + DeleteRecord(visibleIndex: number): void; + /** + * Deletes a record with a specified key value when ASPxVerticalGrid is in Batch Edit mode. + * @param key An object that uniquely identifies the record. + */ + DeleteRecordByKey(key: Object): void; + /** + * Recovers the specified record when ASPxVerticalGrid is in Batch Edit mode. + * @param visibleIndex An integer value that identifies the record index. + */ + RecoverRecord(visibleIndex: number): void; + /** + * Recovers a record with a specified key value when ASPxVerticalGrid is in Batch Edit mode. + * @param key An object that uniquely identifies the record. + */ + RecoverRecordByKey(key: Object): void; /** * Programmatically moves the focus to the previous cell in the record. */ @@ -8980,6 +9393,17 @@ interface ASPxClientVerticalGridBatchEditApi { * Ends the cell(s) editing. */ EndEdit(): void; + /** + * Provides the text displayed within the cell according to the specified display format rule. + * @param columnFieldNameOrId A string value representing the row's unique identifier or field name. + * @param value An object representing a value. + */ + GetColumnDisplayText(columnFieldNameOrId: string, value: Object): string; +} +/** + * Lists values that specify the document formats available for export from the grid. + */ +interface ASPxClientVerticalGridExportFormat extends ASPxClientGridExportFormat { } /** * Contains style settings related to media elements in ASPxHtmlEditor. @@ -9886,6 +10310,11 @@ interface ASPxClientHtmlEditor extends ASPxClientControl { * Performs validation of the editor's content. */ Validate(): void; + /** + * Returns a toolbar specified by its name. + * @param name A string value specifying the toolbar name. + */ + GetToolbarByName(name: string): ASPxClientMenu; /** * Set an active tab specified by its name. * @param name A string value that is the name of the tab. @@ -10730,22 +11159,246 @@ interface ASPxClientRichEditHyperlinkClickEventArgs extends ASPxClientEventArgs */ targetUri: string; } +/** + * A method that will handle the KeyDown event. + */ +interface ASPxClientRichEditKeyDownEventHandler { + /** + * A method that will handle the KeyDown event. + * @param source The event source. + * @param e An ASPxClientRichEditKeyDownEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditKeyDownEventArgs): void; +} +/** + * Provides data for the KeyDown event. + */ +interface ASPxClientRichEditKeyDownEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether the event is handled manually, so no default processing is required. + * Value: true if the event is handled and no default processing is required; otherwise false. + */ + handled: boolean; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the KeyUp event. + */ +interface ASPxClientRichEditKeyUpEventHandler { + /** + * A method that will handle the KeyUp event. + * @param source The event source. + * @param e An ASPxClientRichEditKeyUpEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditKeyUpEventArgs): void; +} +/** + * Provides data for the KeyUp event. + */ +interface ASPxClientRichEditKeyUpEventArgs extends ASPxClientEventArgs { + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the PointerDown event. + */ +interface ASPxClientRichEditPointerDownEventHandler { + /** + * A method that will handle the PointerDown event. + * @param source The event source. + * @param e An ASPxClientRichEditPointerDownEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditPointerDownEventArgs): void; +} +/** + * Provides data for the PointerDown event. + */ +interface ASPxClientRichEditPointerDownEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether the event is handled manually, so no default processing is required. + * Value: true if the event is handled and no default processing is required; otherwise false. + */ + handled: boolean; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the PointerUp event. + */ +interface ASPxClientRichEditPointerUpEventHandler { + /** + * A method that will handle the PointerUp event. + * @param source The event source. + * @param e An ASPxClientRichEditPointerUpEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditPointerUpEventArgs): void; +} +/** + * Provides data for the PointerUp event. + */ +interface ASPxClientRichEditPointerUpEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether the event is handled manually, so no default processing is required. + * Value: true if the event is handled and no default processing is required; otherwise false. + */ + handled: boolean; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the ContentInserted event. + */ +interface ASPxClientRichEditContentInsertedEventHandler { + /** + * A method that will handle the ContentInserted event. + * @param source The event source + * @param e An ASPxClientRichEditContentInsertedEventArgs that contains event data. + */ + (source: S, e: ASPxClientRichEditContentInsertedEventArgs): void; +} +/** + * Provides data for the ContentInserted event. + */ +interface ASPxClientRichEditContentInsertedEventArgs extends ASPxClientEventArgs { + /** + * Gets the active sub-document's identifier. + * Value: An integer value specifying the sub-document's identifier. + */ + subDocumentId: number; + /** + * Gets the text buffer interval related to the inserted content. + * Value: An object that stores the inserted content's length and position. + */ + interval: Interval; +} +/** + * A method that will handle the ContentRemoved event. + */ +interface ASPxClientRichEditContentRemovedEventHandler { + /** + * A method that will handle the ContentRemoved event. + * @param source The event source + * @param e An ASPxClientRichEditContentRemovedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditContentRemovedEventArgs): void; +} +/** + * Provides data for the ContentRemoved event. + */ +interface ASPxClientRichEditContentRemovedEventArgs extends ASPxClientEventArgs { + /** + * Gets the active sub-document's identifier. + * Value: An integer value specifying the sub-document's identifier + */ + subDocumentId: number; + /** + * Gets the text buffer interval related to the removed content. + * Value: An object that stores the removed content's length and position. + */ + interval: Interval; +} +/** + * A method that will handle the CharacterPropertiesChanged event. + */ +interface ASPxClientRichEditCharacterPropertiesChangedEventHandler { + /** + * A method that will handle the CharacterPropertiesChanged event. + * @param source The event source + * @param e An ASPxClientRichEditCharacterPropertiesChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditCharacterPropertiesChangedEventArgs): void; +} +/** + * Provides data for the CharacterPropertiesChanged event. + */ +interface ASPxClientRichEditCharacterPropertiesChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the active sub-document's identifier. + * Value: An integer value specifying the sub-document's identifier. + */ + subDocumentId: number; + /** + * Gets the text buffer interval related to the changed characters. + * Value: An object that stores the changed character length and position. + */ + interval: Interval; +} +/** + * A method that will handle the ParagraphPropertiesChanged event. + */ +interface ASPxClientRichEditParagraphPropertiesChangedEventHandler { + /** + * A method that will handle the ParagraphPropertiesChanged event. + * @param source The event source. + * @param e An ASPxClientRichEditParagraphPropertiesChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditParagraphPropertiesChangedEventArgs): void; +} +/** + * Provides data for the ParagraphPropertiesChanged event. + */ +interface ASPxClientRichEditParagraphPropertiesChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the active sub-document's identifier. + * Value: An integer value specifying the sub-document's identifier + */ + subDocumentId: number; + /** + * Gets the changed paragraph's index. + * Value: An integer value specifying the changed paragraph's identifier. + */ + paragraphIndex: number; +} +/** + * A method that will handle the PopupMenuShowing event. + */ +interface ASPxClientRichEditPopupMenuShowingEventHandler { + /** + * A method that will handle the PopupMenuShowing event. + * @param source The event source. + * @param e An ASPxClientRichEditPopupMenuShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditPopupMenuShowingEventArgs): void; +} +/** + * Provides data for the PopupMenuShowing event. + */ +interface ASPxClientRichEditPopupMenuShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Provides access to a collection of menu items in the context menu being invoked. + * Value: A object representing the context menu's item collection. + */ + menuItems: ASPxClientRichEditPopupMenuItemCollection; +} /** * A client-side equivalent of the ASPxRichEdit object. */ interface ASPxClientRichEdit extends ASPxClientControl { /** * Provides access to document structural elements. - * Value: A object that lists RichEdit's document structural elements. + * Value: A object that lists a RichEdit document's structural elements. */ document: RichEditDocument; /** - * Provides access to RichEdit's client-side commands. - * Value: A object that lists RichEdit's client-side commands. + * Provides access to the RichEdit's client-side commands. + * Value: A object that lists the RichEdit's client-side commands. */ commands: RichEditCommands; /** - * Provides access to the client methods that changes the selection. + * Provides access to the client methods that change the selection. * Value: A object that lists methods to work with the selection. */ selection: RichEditSelection; @@ -10778,18 +11431,70 @@ interface ASPxClientRichEdit extends ASPxClientControl { * Fires on the client if any server error occurs during server-side processing of a callback sent by the RichEdit. */ CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when a document model is loaded into the control. + */ + DocumentLoaded: ASPxClientEvent>; /** * Fires if any change is made to the RichEdit's document on the client. */ DocumentChanged: ASPxClientEvent>; /** - * Occurs when a hyperlink is clicked within the document. + * Occurs when the active sub-document is substituted with another sub-document. + */ + ActiveSubDocumentChanged: ASPxClientEvent>; + /** + * Occurs when the control receives focus. + */ + GotFocus: ASPxClientEvent>; + /** + * Occurs when the control loses focus. + */ + LostFocus: ASPxClientEvent>; + /** + * Occurs when the mouse pointer is over the RichEdit's document and a mouse button is pressed. + */ + PointerDown: ASPxClientEvent>; + /** + * Occurs when the mouse button is released if it was pressed within the RichEdit's document. + */ + PointerUp: ASPxClientEvent>; + /** + * Occurs when a key is pressed while the ASPxRichEdit's document has focus. + */ + KeyDown: ASPxClientEvent>; + /** + * Occurs when a key is released while the ASPxRichEdit's document has focus. + */ + KeyUp: ASPxClientEvent>; + /** + * Occurs when a pop-up menu is about to be shown. + */ + PopupMenuShowing: ASPxClientEvent>; + /** + * Occurs when a hyperlink is activated within the document. */ HyperlinkClick: ASPxClientEvent>; /** * Occurs when the selection is changed within the document. */ SelectionChanged: ASPxClientEvent>; + /** + * Occurs when content is inserted into the document. + */ + ContentInserted: ASPxClientEvent>; + /** + * Occurs when content is removed from the document + */ + ContentRemoved: ASPxClientEvent>; + /** + * Occurs when the characters' formatting is changed. + */ + CharacterPropertiesChanged: ASPxClientEvent>; + /** + * Occurs when a paragraph's formatting is changed. + */ + ParagraphPropertiesChanged: ASPxClientEvent>; /** * Enables you to switch the full-screen mode of the Rich Text Editor. * @param fullscreen true to activate full-screen mode; false to deactivate full-screen mode. @@ -10823,6 +11528,123 @@ interface ASPxClientRichEdit extends ASPxClientControl { */ ReconnectToExternalRibbon(): void; } +/** + * Represents an individual item of the Rich Edit's context menu. + */ +interface ASPxClientRichEditPopupMenuItem { + /** + * Gets the immediate parent menu item to which the current menu item belongs. + * Value: A ASPxClientRichEditPopupMenuItem object representing the menu item's immediate parent. + */ + parent: ASPxClientRichEditPopupMenuItem; + /** + * Gets or sets the unique identifier name for the current menu item. + * Value: A string value that specifies the item's unique identifier name. + */ + name: string; + /** + * Gets or sets the text content of the current menu item. + * Value: A string value that specifies the text content of the menu item. + */ + text: string; + /** + * Gets or sets a value that indicates whether the menu item is enabled, allowing the item to respond to end-user interactions. + * Value: true if the item is enabled; otherwise, false. + */ + enabled: boolean; + /** + * Gets or sets the CSS class name defining the menu item's image. + * Value: A string value specifying the class name. + */ + imageClassName: string; + /** + * Gets or sets a URL which defines the navigation location. + * Value: A string value which represents a URL where the client web browser will navigate. + */ + navigateUrl: string; + /** + * Gets or sets the URL of the menu item's image. + * Value: A string value that specifies the location of an image. + */ + imageUrl: string; + /** + * Gets or sets a value that specifies whether the current menu item starts a group. + * Value: true if the current menu item starts a group; otherwise, false. + */ + beginGroup: boolean; + /** + * Gets or sets the current menu item's tooltip text. + * Value: A string which specifies the text content of the current menu item's tooltip. + */ + tooltip: string; + /** + * Gets or sets the window or frame at which to target the contents of the URL associated with the current menu item. + * Value: A string which identifies the window or frame at which to target the URL content. + */ + target: string; + /** + * Gets a collection that contains the submenu items of the current menu item. + */ + GetSubItems(): ASPxClientRichEditPopupMenuItemCollection; + /** + * Returns the menu item's sub-item with the specified index. + * @param index An integer value specifying the index of the sub-item within a collection of the current menu item's submenu items. + */ + GetItem(index: number): ASPxClientRichEditPopupMenuItem; + /** + * Returns the menu item's sub-item with the specified name property value. + * @param name A string value specifying the name property value of the sub-item to find. + */ + GetItemByName(name: string): ASPxClientRichEditPopupMenuItem; + /** + * Returns the total number of the menu item's child items (submenu items). + */ + GetItemCount(): number; +} +/** + * Represents a collection of items in the Rich Edit's context menu. + */ +interface ASPxClientRichEditPopupMenuItemCollection { + /** + * Adds the specified menu item to the end of the collection. + * @param item An ASPxClientRichEditPopupMenuItem object specifying the item to be added to the collection. + */ + Add(item: ASPxClientRichEditPopupMenuItem): void; + /** + * Removes a menu item specified by its index within the collection. + * @param index An integer value specifying the index of the menu item to remove. + */ + Remove(index: number): void; + /** + * Removes a menu item specified by its name. + * @param name A string value specifying the name property value of a menu item to remove from the collection. + */ + RemoveByName(name: string): void; + /** + * Adds the specified item to the specified position within the collection. + * @param index An integer value that specifies the zero-based index at which the specified item should be inserted. + * @param item An ASPxClientRichEditPopupMenuItem object to insert. + */ + Insert(index: number, item: ASPxClientRichEditPopupMenuItem): void; + /** + * Returns the total number of menu items in the collection. + */ + GetCount(): number; + /** + * Returns an item object with the specified name property value. + * @param name A string value representing the name property value of the required item. + */ + GetByName(name: string): ASPxClientRichEditPopupMenuItem; + /** + * Returns a menu item specified by its index in the collection. + * @param index An integer value that is the zero-based index of the to retrieve from the ASPxClientRichEditPopupMenuItemCollection. + */ + Get(index: number): ASPxClientRichEditPopupMenuItem; + /** + * Removes all menu items from the collection. + */ + Clear(): void; +} /** * Contains a set of the available client commands. */ @@ -10833,7 +11655,7 @@ interface RichEditCommands { */ fileNew: FileNewCommand; /** - * Gets a command to open the file, specifying its path. + * Gets a command to open a document stored in the specified file. * Value: A object that provides methods for executing the command and checking its state. */ fileOpen: FileOpenCommand; @@ -10843,22 +11665,22 @@ interface RichEditCommands { */ fileOpenDialog: FileOpenDialogCommand; /** - * Gets a command to save the document to a file. + * Gets a command to save the document at its original location on the server. * Value: A object that provides methods for executing the command and checking its state. */ fileSave: FileSaveCommand; /** - * Gets a command to download the document file, specifying its extension. + * Gets a command to download the document specifying the file's extension. * Value: A object that provides methods for executing the command and checking its state. */ fileDownload: FileDownloadCommand; /** - * Gets a command to invoke the Save As dialog that prompts for a file name and saves the current document in a file with the specified path. + * Gets a command to save a document in a file with the specified path. * Value: A object that provides methods for executing the command and checking its state. */ fileSaveAs: FileSaveAsCommand; /** - * Gets a command to open the file's Save As dialog. + * Gets a command to invoke the Save As dialog that prompts for a file name and saves the current document in a file with the specified path. * Value: A object that provides methods for executing the command and checking its state. */ fileSaveAsDialog: FileSaveAsDialogCommand; @@ -10898,17 +11720,17 @@ interface RichEditCommands { */ changeFontName: ChangeFontNameCommand; /** - * Gets a command to change the font size of characters in a selected range. + * Gets a command to change the font size (in points) of characters in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changeFontSize: ChangeFontSizeCommand; /** - * Gets a command to increase the font size of characters in a selected range to the closest larger predefined value. + * Gets a command to increase the font size of characters in a selected range to the closest larger predefined value (in points). * Value: A object that provides methods for executing the command and checking its state. */ increaseFontSize: IncreaseFontSizeCommand; /** - * Gets a command to decrease the selected range's font size to the closest smaller predefined value. + * Gets a command to decrease the selected range's font size to the closest smaller predefined value (in points). * Value: A object that provides methods for executing the command and checking its state. */ decreaseFontSize: DecreaseFontSizeCommand; @@ -10958,7 +11780,7 @@ interface RichEditCommands { */ changeFontSuperscript: ChangeFontSuperscriptCommand; /** - * Gets a command to change the subscript formatting of characters in the selected range. + * Gets a command to change the subscript formatting of characters in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changeFontSubscript: ChangeFontSubscriptCommand; @@ -10973,12 +11795,12 @@ interface RichEditCommands { */ changeFontBackColor: ChangeFontBackColorCommand; /** - * Gets a command to reset text and paragraph formatting in the selected range to default. + * Gets a command to reset textual and paragraph formatting in the selected range to default values. * Value: A object that provides methods for executing the command and checking its state. */ clearFormatting: ClearFormattingCommand; /** - * Gets a command to change the selected range's style. + * Gets a command to apply a character or paragraph style settings to text in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changeStyle: ChangeStyleCommand; @@ -11088,7 +11910,7 @@ interface RichEditCommands { */ openParagraphFormattingDialog: OpenParagraphFormattingDialogCommand; /** - * Gets a command to change the formatting of paragraphs in a selected range. + * Gets a command to apply formatting settings to paragraphs within a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changeParagraphFormatting: ChangeParagraphFormattingCommand; @@ -11103,7 +11925,7 @@ interface RichEditCommands { */ openInsertTableDialog: OpenInsertTableDialogCommand; /** - * Gets a command to insert a rectangle table of a specified size. + * Gets a command to insert a rectangular table of the specified size. * Value: A object that provides methods for executing the command and checking its state. */ insertTable: InsertTableCommand; @@ -11113,7 +11935,7 @@ interface RichEditCommands { */ openInsertPictureDialog: OpenInsertPictureDialogCommand; /** - * Gets a command to insert an inline picture stored by specifed web address. + * Gets a command to insert an inline picture stored by the specified web address. * Value: A object that provides methods for executing the command and checking its state. */ insertPicture: InsertPictureCommand; @@ -11143,7 +11965,7 @@ interface RichEditCommands { */ openInsertHyperlinkDialog: OpenInsertHyperlinkDialogCommand; /** - * Gets a command to insert a hyperlink at the current position in the document. + * Gets a command to insert and update a hyperlink field in place of a selected range. * Value: A object that provides methods for executing the command and checking its state. */ insertHyperlink: InsertHyperlinkCommand; @@ -11158,7 +11980,7 @@ interface RichEditCommands { */ deleteHyperlinks: DeleteHyperlinksCommand; /** - * Gets a command to navigate to the document bookmark or URI (uniform resource identifier) specified for the hyperlink. + * Gets a command to go to a bookmark or URI contained within the selected hyperlink. * Value: A object that provides methods for executing the command and checking its state. */ openHyperlink: OpenHyperlinkCommand; @@ -11168,12 +11990,12 @@ interface RichEditCommands { */ openInsertSymbolDialog: OpenInsertSymbolDialogCommand; /** - * Gets a command to insert a character into a document. + * Gets a command to insert characters into a document instead of a selected range. * Value: A object that provides methods for executing the command and checking its state. */ insertSymbol: InsertSymbolCommand; /** - * Gets a command to change page margin settings. + * Gets a command to apply page margins settings to sections located within a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changePageMargins: ChangePageMarginsCommand; @@ -11183,12 +12005,12 @@ interface RichEditCommands { */ openPageMarginsDialog: OpenPageMarginsDialogCommand; /** - * Gets a command to change the page orientation. + * Gets a command to apply page orientation settings to sections located within a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changePageOrientation: ChangePageOrientationCommand; /** - * Gets a command to define the page size dialog's settings. + * Gets a command to invoke the Page Setup dialog. * Value: A object that provides methods for executing the command and checking its state. */ setPageSizeDialog: SetPageSizeDialogCommand; @@ -11198,12 +12020,12 @@ interface RichEditCommands { */ openPagePaperSizeDialog: OpenPagePaperSizeDialogCommand; /** - * Gets a command to change the page size. + * Gets a command to apply page size settings to sections located within a selected range. * Value: A object that provides methods for executing the command and checking its state. */ changePageSize: ChangePageSizeCommand; /** - * Gets a command to change the number of section columns having the same width. + * Gets a command to change the number of columns having the same width in a section. * Value: A object that provides methods for executing the command and checking its state. */ changeSectionEqualColumnCount: ChangeSectionEqualColumnCountCommand; @@ -11213,7 +12035,7 @@ interface RichEditCommands { */ openSectionColumnsDialog: OpenSectionColumnsDialogCommand; /** - * Gets a command to change the settings of individual section columns. + * Gets a command to apply column layout settings to a section. * Value: A object that provides methods for executing the command and checking its state. */ changeSectionColumns: ChangeSectionColumnsCommand; @@ -11238,7 +12060,7 @@ interface RichEditCommands { */ insertSectionBreakOddPage: InsertSectionBreakOddPageCommand; /** - * Gets a command to set the background color of the page. + * Gets a command to set the background color of all pages contained in the document. * Value: A object that provides methods for executing the command and checking its state. */ changePageColor: ChangePageColorCommand; @@ -11263,12 +12085,12 @@ interface RichEditCommands { */ insertParagraph: InsertParagraphCommand; /** - * Gets a command to insert text at the current position in a document. + * Gets a command to insert text in place of a selected range. * Value: A object that provides methods for executing the command and checking its state. */ insertText: InsertTextCommand; /** - * Gets a command to delete the text in a selected range. + * Gets a command to delete text and in-line objects in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ delete: DeleteCommand; @@ -11283,7 +12105,7 @@ interface RichEditCommands { */ removeNextWord: RemoveNextWordCommand; /** - * Gets a command to move the cursor backwards and erase the character in that space. + * Gets a command to move the cursor backwards and erase characters in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ backspace: BackspaceCommand; @@ -11293,12 +12115,12 @@ interface RichEditCommands { */ insertLineBreak: InsertLineBreakCommand; /** - * Gets a command to scale pictures in a selected range. + * Gets a command to scale a selected in-line picture. * Value: A object that provides methods for executing the command and checking its state. */ changePictureScale: ChangePictureScaleCommand; /** - * Gets a command to increment the left indentation of paragraphs in a selected range. + * Gets a command to increment the left indent of paragraphs in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ incrementParagraphLeftIndent: IncrementParagraphLeftIndentCommand; @@ -11322,13 +12144,18 @@ interface RichEditCommands { * Value: A object that provides methods for executing the command and checking its state. */ insertTab: InsertTabCommand; + /** + * Gets a command to add a non-breaking space in place of a selected range + * Value: A object that provides methods for executing the command and checking its state. + */ + insertNonBreakingSpace: InsertNonBreakingSpaceCommand; /** * Gets a command to invoke the Tabs dialog window. * Value: A object that provides methods for executing the command and checking its state. */ openTabsDialog: OpenTabsDialogCommand; /** - * Gets a command to change the tab stop value of a document or selected paragraphs + * Gets a command to change the default tab stop value of a document and apply custom tab settings to the selected paragraphs. * Value: A object that provides methods for executing the command and checking its state. */ changeTabs: ChangeTabsCommand; @@ -11358,12 +12185,12 @@ interface RichEditCommands { */ decrementNumberingIndent: DecrementNumberingIndentCommand; /** - * Gets a command to create a field with an empty code and populate it with the selection (if it is not collapsed). + * Gets a command to create a field with an empty code and populate it with the characters in the selected range (if it is not collapsed). * Value: A object that provides methods for executing the command and checking its state. */ createField: CreateFieldCommand; /** - * Gets a command to update the field's result. + * Gets a command to update each field's result in the selection. * Value: A object that provides methods for executing the command and checking its state. */ updateField: UpdateFieldCommand; @@ -11388,12 +12215,12 @@ interface RichEditCommands { */ insertNumeration: InsertNumerationCommand; /** - * Gets a command to remove the selected numeration. + * Gets a command to exclude the selected paragraphs from the numbered list. * Value: A object that provides methods for executing the command and checking its state. */ removeNumeration: RemoveNumerationCommand; /** - * Gets a command to update all fields in the selected range. + * Gets a command to update all fields in the document. * Value: A object that provides methods for executing the command and checking its state. */ updateAllFields: UpdateAllFieldsCommand; @@ -11413,12 +12240,12 @@ interface RichEditCommands { */ createPageField: CreatePageFieldCommand; /** - * Gets a command to convert the text of all selected sentences to sentence case. + * Gets a command changing all selected text to the sentence case capitalization. * Value: A object that provides methods for executing the command and checking its state. */ makeTextSentenceCase: MakeTextSentenceCaseCommand; /** - * Gets a command to switch the text case at the current position in the document. + * Gets a command to switch the text capitalization in the selection. * Value: A object that provides methods for executing the command and checking its state. */ switchTextCase: SwitchTextCaseCommand; @@ -11438,7 +12265,7 @@ interface RichEditCommands { */ goToNextDataRecord: GoToNextDataRecordCommand; /** - * Gets a command to navigate to the next data record. + * Gets a command to open the specified data record. * Value: A object that provides methods for executing the command and checking its state. */ goToDataRecord: GoToDataRecordCommand; @@ -11478,12 +12305,12 @@ interface RichEditCommands { */ mailMergeAndSaveAs: MailMergeAndSaveAsCommand; /** - * Gets a command to activate the page header and begin editing. + * Gets a command to create a header sub-document (if it is not yet created) and set it as an active sub-document instead of the main sub-document. * Value: A object that provides methods for executing the command and checking its state. */ insertHeader: InsertHeaderCommand; /** - * Gets a command to activate the page footer and begin editing. + * Gets a command to create a footer sub-document (if it is not yet created) and set it as an active sub-document instead of the main sub-document. * Value: A object that provides methods for executing the command and checking its state. */ insertFooter: InsertFooterCommand; @@ -11493,37 +12320,37 @@ interface RichEditCommands { */ linkHeaderFooterToPrevious: LinkHeaderFooterToPreviousCommand; /** - * Gets a command to navigate to the page footer from the page header in the header/footer editing mode. + * Gets a command to substitute a header sub-document with a footer sub-document of the same page as an active sub-document. * Value: A object that provides methods for executing the command and checking its state. */ goToFooter: GoToFooterCommand; /** - * Gets a command to navigate to the page header from the page footer in the header/footer editing mode. + * Gets a command to substitute a footer sub-document with a header sub-document of the same page as an active sub-document. * Value: A object that provides methods for executing the command and checking its state. */ goToHeader: GoToHeaderCommand; /** - * Gets a command to navigate to the next page header or footer in the header/footer editing mode. + * Gets a command to substitute a current header/footer with a header/footer of the next section as an active sub-document. * Value: A object that provides methods for executing the command and checking its state. */ goToNextHeaderFooter: GoToNextHeaderFooterCommand; /** - * Gets a command to navigate to the previous page header or footer in the header/footer editing mode. + * Gets a command to substitute a current header/footer with a header/footer of the previous section as an active sub-document. * Value: A object that provides methods for executing the command and checking its state. */ goToPreviousHeaderFooter: GoToPreviousHeaderFooterCommand; /** - * Gets a command to change the header/footer edit mode, so it allows creation of a different header or footer for the first page of a document or section. + * Gets a command to enable (or disable if it is enabled) a different page header and footer for the first page of the current section. * Value: A object that provides methods for executing the command and checking its state. */ setDifferentFirstPageHeaderFooter: SetDifferentFirstPageHeaderFooterCommand; /** - * Gets a command to change the header/footer edit mode so it allows creation of a different header or footer for odd and even pages of a document or section. + * Gets a command to enable (or disable if it is enabled) a different page header and footer for odd and even pages of the current section. * Value: A object that provides methods for executing the command and checking its state. */ setDifferentOddAndEvenPagesHeaderFooter: SetDifferentOddAndEvenPagesHeaderFooterCommand; /** - * Gets a command to finish header/footer editing. + * Gets a command to substitute a header/footer sub-document with the main sub-document as an active sub-document. * Value: A object that provides methods for executing the command and checking its state. */ closeHeaderFooter: CloseHeaderFooterCommand; @@ -11553,7 +12380,7 @@ interface RichEditCommands { */ changeTableCellPreferredWidth: ChangeTableCellPreferredWidthCommand; /** - * Gets a command to toggle inside borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the inside borders for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellInsideBorders: ToggleTableCellInsideBordersCommand; @@ -11708,22 +12535,22 @@ interface RichEditCommands { */ changeTableStyle: ChangeTableStyleCommand; /** - * Gets a command to toggle top borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the top border for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellTopBorder: ToggleTableCellTopBorderCommand; /** - * Gets a command to toggle right borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the right border for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellRightBorder: ToggleTableCellRightBorderCommand; /** - * Gets a command to toggle bottom borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the bottom border for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellBottomBorder: ToggleTableCellBottomBorderCommand; /** - * Gets a command to toggle left borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the left border for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellLeftBorder: ToggleTableCellLeftBorderCommand; @@ -11733,22 +12560,22 @@ interface RichEditCommands { */ removeTableCellBorders: RemoveTableCellBordersCommand; /** - * Gets a command to toggle all borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings to all borders of the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellAllBorders: ToggleTableCellAllBordersCommand; /** - * Gets a command to toggle inner horizontal borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the inside horizontal borders for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellInsideHorizontalBorders: ToggleTableCellInsideHorizontalBordersCommand; /** - * Gets a command to toggle inner vertical borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the inside vertical borders for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellInsideVerticalBorders: ToggleTableCellInsideVerticalBordersCommand; /** - * Gets a command to toggle outer borders for selected cells on/off. + * Gets a command to apply (or cancel) border settings of the outside borders for the selected cells. * Value: A object that provides methods for executing the command and checking its state. */ toggleTableCellOutsideBorders: ToggleTableCellOutsideBordersCommand; @@ -11758,12 +12585,12 @@ interface RichEditCommands { */ changeTableLook: ChangeTableLookCommand; /** - * Gets a command to change the repository item's table border style. + * Gets a command to apply borders' drawing settings. * Value: A object that provides methods for executing the command and checking its state. */ changeTableBorderRepositoryItem: ChangeTableBorderRepositoryItemCommand; /** - * Gets a command to change cell shading in the selected table elements. + * Gets a command to change cell shading in selected table cells. * Value: A object that provides methods for executing the command and checking its state. */ changeTableCellShading: ChangeTableCellShadingCommand; @@ -11788,17 +12615,17 @@ interface RichEditCommands { */ findAll: FindAllCommand; /** - * Gets a command to hide the results of the search. + * Gets a command to hide the search results. * Value: A object that provides methods for executing the command and checking its state. */ hideFindResults: HideFindResultsCommand; /** - * Gets a command to search for a specific text and replace all matches in the document with the specified string. + * Gets a command to replace all matches of the specified text with new characters. * Value: A object that provides methods for executing the command and checking its state. */ replaceAll: ReplaceAllCommand; /** - * Gets a command to search for a specific text and replace the next match in the document with the specified string. + * Gets a command to find and replace a next match of the specified text after the cursor position with new characters. * Value: A object that provides methods for executing the command and checking its state. */ replaceNext: ReplaceNextCommand; @@ -11853,7 +12680,7 @@ interface RichEditCommands { */ changeFloatingObjectAbsoluteSize: ChangeFloatingObjectAbsoluteSizeCommand; /** - * Gets a command to modify a text box' relative size settings. + * Gets a command to modify a text box's relative size settings. * Value: A object that provides methods for executing the command and checking its state. */ changeTextBoxRelativeSize: ChangeTextBoxRelativeSizeCommand; @@ -11883,11 +12710,20 @@ interface RichEditCommands { */ changeFloatingObjectOutlineWidth: ChangeFloatingObjectOutlineWidthCommand; /** - * Gets a command to modify a text box' content margins. + * Gets a command to modify a text box's content margins. * Value: A object that provides methods for executing the command and checking its state. */ changeTextBoxContentMargins: ChangeTextBoxContentMarginsCommand; + /** + * Gets a command to resize the shape to fit the text in the text box. + * Value: A object that provides methods for executing the command and checking its state. + */ changeTextBoxResizeShapeToFitText: ChangeTextBoxResizeShapeToFitTextCommand; + /** + * Gets a command to add an HTML formatted content in place of a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertHtml: InsertHtmlCommand; } /** * Serves as a base for objects that implement different client command functionalities. @@ -11981,6 +12817,10 @@ interface RichEditDocument { * An abstract numbering list definition that defines the appearance and behavior of numbered paragraphs in a document. */ interface AbstractNumberingList { + /** + * Gets or sets a value indicating whether an abstract numbering list is deleted. + * Value: true, if the abstract numbering list is deleted; otherwise, false. + */ deleted: boolean; } /** @@ -12067,6 +12907,11 @@ interface Field { * Value: true, if the field code is displayed; false, if the field result is displayed. */ showCode: boolean; + /** + * Gets the index of the field + * Value: An integer value specifying the field's index + */ + index: number; } /** * Defines a bookmark in the document. @@ -12468,7 +13313,7 @@ interface SpellingInfo { spellCheckerState: any; /** * Provides access to an array containing misspelled intervals. - * Value: An array of objects. + * Value: An array of MisspelledInterval objects. */ misspelledIntervals: MisspelledInterval[]; } @@ -12635,6 +13480,26 @@ interface SubDocument { * Value: An integer that is the number of character positions in the document. */ length: number; + /** + * Returns a field if its interval includes the specified position. + * @param position An integer value specifying the target field's position. + */ + findFields(position: number): Field[]; + /** + * Returns all fields contained in the specified interval. + * @param interval A text buffer interval that contains the target fields. + */ + findFields(interval: Interval): Field[]; + /** + * Returns a table if its interval includes the specified position. + * @param position An integer value specifying the target table's position. + */ + findTables(position: number): Field[]; + /** + * Returns all tables contained in the specified interval. + * @param interval A text buffer interval that contains the target tables. + */ + findTables(interval: Interval): Field[]; } declare enum SubDocumentType { Main=0, @@ -12656,6 +13521,11 @@ interface Table { * Value: A integer value specifying the character length of the table. */ length: number; + /** + * Gets an index of the table. + * Value: An integer value specifying the table's index. + */ + index: number; /** * Gets the text buffer interval occupied by the current table element. * Value: An object specifying the interval settings. @@ -12809,7 +13679,7 @@ interface DeleteBookmarkCommand extends CommandWithSimpleStateBase { interface GoToBookmarkCommand extends CommandWithSimpleStateBase { /** * Executes the GoToBookmarkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param name + * @param name A string value specifying the bookmark's name */ execute(name: string): boolean; } @@ -12857,6 +13727,11 @@ interface UpdateFieldCommand extends CommandWithSimpleStateBase { * Executes the UpdateFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. */ execute(): boolean; + /** + * Executes the UpdateFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param callback A callback function that is performed when updating of all fields in the selection is completed. + */ + execute(callback: Function): boolean; } /** * A command to display the selected field's field codes. @@ -12894,6 +13769,11 @@ interface UpdateAllFieldsCommand extends CommandWithSimpleStateBase { * Executes the UpdateAllFieldsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. */ execute(): boolean; + /** + * Executes the UpdateAllFieldsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param callback A callback function that is performed when updating of all fields in the document is completed. + */ + execute(callback: Function): boolean; } /** * A command to insert a DATE field displaying the current date. @@ -12945,6 +13825,10 @@ interface DataRecordOptions { * Value: An integer value specifying the data record index. */ activeRecordIndex: number; + /** + * Gets or sets the count of data source records. + * Value: An integer value specifying the count of data source records. + */ recordCount: number; } /** @@ -13163,7 +14047,7 @@ interface FileSaveCommand extends CommandWithSimpleStateBase { interface FileSaveAsCommand extends CommandWithSimpleStateBase { /** * Executes the FileSaveAsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param path A string value specifying path to the saving file. + * @param path A string value specifying path to the saving file. Note that the path should be relative to the work directory. */ execute(path: string): boolean; /** @@ -13231,15 +14115,15 @@ interface FindAllCommand extends CommandWithSimpleStateBase { * Executes the FindAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. * @param text A string value specifying finding text. * @param matchCase true, to perform a case-sensitive search; otherwise, false. - * @param highlightResults true, to highlight result of search; otherwise, false. + * @param highlightResults true, to highlight the search results; otherwise, false. */ execute(text: string, matchCase: boolean, highlightResults: boolean): boolean; /** * Executes the FindAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. * @param text A string value specifying text to find. * @param matchCase true, to perform a case-sensitive search; otherwise, false. - * @param highlightResults true, to highlight result of search; otherwise, false. - * @param results An array of Interval objects containing the results of search. + * @param highlightResults true, to highlight the search results; otherwise, false. + * @param results An array of Interval objects containing the search results. */ execute(text: string, matchCase: boolean, highlightResults: boolean, results: Interval[]): boolean; } @@ -13259,7 +14143,7 @@ interface ReplaceAllCommand extends CommandWithSimpleStateBase { /** * Executes the ReplaceAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. * @param text A string value specifying a text to replace. - * @param replaceText A string value specifying the replacing text. + * @param replaceText A string value specifying the inserted text. * @param matchCase true, to perform a case-sensitive search; otherwise, false. */ execute(text: string, replaceText: string, matchCase: boolean): boolean; @@ -13270,8 +14154,8 @@ interface ReplaceAllCommand extends CommandWithSimpleStateBase { interface ReplaceNextCommand extends CommandWithSimpleStateBase { /** * Executes the ReplaceNextCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param text A string value specifying text to replace. - * @param replaceText A string value specifying replacing text. + * @param text A string value specifying a text to replace. + * @param replaceText A string value specifying the inserted text. * @param matchCase true, to perform a case-sensitive search; otherwise, false. */ execute(text: string, replaceText: string, matchCase: boolean): boolean; @@ -13325,7 +14209,7 @@ interface ChangeFloatingObjectAlignmentPositionCommand extends CommandBase { interface ChangeFloatingObjectAbsolutePositionCommand extends CommandBase { /** * Executes the ChangeFloatingObjectAbsolutePositionCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param settings A FloatingObjectAbsolutePositionSettings object specifying page margin settings. + * @param settings A FloatingObjectAbsolutePositionSettings object specifying object position settings. */ execute(settings: FloatingObjectAbsolutePositionSettings): boolean; /** @@ -13473,8 +14357,18 @@ interface ChangeTextBoxContentMarginsCommand extends CommandBase { */ getState(): any; } +/** + * A command to resize the shape to fit the text in the text box. + */ interface ChangeTextBoxResizeShapeToFitTextCommand extends CommandBase { + /** + * Executes the ChangeTextBoxResizeShapeToFitTextCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param resizeShapeToFitText true, to resize the shape to fit the text; otherwise, false. + */ execute(resizeShapeToFitText: boolean): boolean; + /** + * Gets information about the command state. + */ getState(): any; } /** @@ -13508,7 +14402,7 @@ interface FloatingObjectAlignmentPositionSettings { interface FloatingObjectAbsolutePositionSettings { /** * Gets or sets a floating object's horizontal position relative to an element specified by the horizontalPositionType property. - * Value: An integer value specifying the position. + * Value: An integer value specifying the position in twips. */ horizontalAbsolutePosition: number; /** @@ -13518,7 +14412,7 @@ interface FloatingObjectAbsolutePositionSettings { horizontalPositionType: any; /** * Gets or sets a floating object's vertical position relative to an element specified by the verticalPositionType property. - * Value: An integer value specifying the position. + * Value: An integer value specifying the position in twips. */ verticalAbsolutePosition: number; /** @@ -13533,7 +14427,7 @@ interface FloatingObjectAbsolutePositionSettings { interface FloatingObjectRelativePositionSettings { /** * Gets or sets the horizontal distance between the edge of a floating object and the element specified by the horizontalRelativePosition property - * Value: An integer value specifying the horizontal position. + * Value: An integer value specifying the horizontal position in twips. */ horizontalRelativePosition: number; /** @@ -13543,7 +14437,7 @@ interface FloatingObjectRelativePositionSettings { horizontalPositionType: any; /** * Gets or sets the horizontal distance between the edge of a floating object and the element specified by the verticalRelativePosition property - * Value: An integer value specifying the vertical position. + * Value: An integer value specifying the vertical position in twips. */ verticalRelativePosition: number; /** @@ -13568,22 +14462,22 @@ interface FloatingObjectTextWrappingSettings { floatingObjectTextWrapSide: any; /** * Gets or sets the left offset of text wrapping. - * Value: An integer value specifying the left offset. + * Value: An integer value specifying the left offset in twips. */ leftDistance: number; /** * Gets or sets the right offset of text wrapping. - * Value: An integer value specifying the right offset. + * Value: An integer value specifying the right offset in twips. */ rightDistance: number; /** * Gets or sets the top offset of text wrapping. - * Value: An integer value specifying the top offset. + * Value: An integer value specifying the top offset in twips. */ topDistance: number; /** * Gets or sets the bottom offset of text wrapping. - * Value: An integer value specifying the bottom offset. + * Value: An integer value specifying the bottom offset in twips. */ bottomDistance: number; } @@ -13593,12 +14487,12 @@ interface FloatingObjectTextWrappingSettings { interface FloatingObjectAbsoluteSizeSettings { /** * Gets or sets a floating object's absolute width. - * Value: An integer value specifying the width. + * Value: An integer value specifying the width in twips. */ absoluteWidth: number; /** * Gets or sets a floating object's absolute height. - * Value: An integer value specifying the height. + * Value: An integer value specifying the height in twips. */ absoluteHeight: number; } @@ -13710,6 +14604,16 @@ interface RedoCommand extends CommandWithSimpleStateBase { */ execute(): boolean; } +/** + * A command to add an HTML formatted content in place of a selected range. + */ +interface InsertHtmlCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertHtmlCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param html A string that specifies the inserted HTML code. + */ + execute(html: string): boolean; +} /** * A command to invoke the Hyperlink dialog. */ @@ -13725,7 +14629,7 @@ interface OpenInsertHyperlinkDialogCommand extends CommandWithSimpleStateBase { interface InsertHyperlinkCommand extends CommandBase { /** * Executes the InsertHyperlinkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param settings A HyperLinkSettings object specifying hyperlink settings. + * @param settings A HyperlinkSettings object specifying hyperlink settings. */ execute(settings: HyperlinkSettings): boolean; /** @@ -14204,8 +15108,8 @@ interface ChangePictureScaleCommand extends CommandBase { execute(scale: Scale): boolean; /** * Executes the ChangePictureScaleCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param x An interger number specifying width of the picture - * @param y An interger number specifying height of the picture + * @param x An integer number specifying the scaling value for the width of the picture as a percentage. + * @param y An integer number specifying the scaling value for the height of the picture as a percentage. */ execute(x: number, y: number): boolean; /** @@ -14229,7 +15133,7 @@ interface MoveContentCommand extends CommandWithSimpleStateBase { interface CopyContentCommand extends CommandWithSimpleStateBase { /** * Executes the CopyContentCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param position An integer number value specifying position for pasting selected text. + * @param position An integer value specifying a position of the inserted text. */ execute(position: number): boolean; } @@ -14242,6 +15146,15 @@ interface InsertTabCommand extends CommandWithSimpleStateBase { */ execute(): boolean; } +/** + * A command to add a non-breaking space in place of a selected range. + */ +interface InsertNonBreakingSpaceCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertNonBreakingSpaceCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} /** * Defines the scaling settings. */ @@ -14263,10 +15176,10 @@ interface Scale { interface ChangePageMarginsCommand extends CommandBase { /** * Executes the ChangePageMarginsCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param left An integer number specifying left margin of the page. - * @param top An integer number specifying top margin of the page. - * @param right An integer number specifying right margin of the page. - * @param bottom An integer number specifying bottom margin of the page. + * @param left An integer number specifying left margin of the page in twips. + * @param top An integer number specifying top margin of the page in twips. + * @param right An integer number specifying right margin of the page in twips. + * @param bottom An integer number specifying bottom margin of the page in twips. */ execute(left: number, top: number, right: number, bottom: number): boolean; /** @@ -14326,8 +15239,8 @@ interface SetPageSizeDialogCommand extends CommandWithSimpleStateBase { interface ChangePageSizeCommand extends CommandBase { /** * Executes the ChangePageSizeCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param width An integer number specifying width of the page. - * @param height An integer number specifying height of the page. + * @param width An integer number specifying width of the page in twips. + * @param height An integer number specifying height of the page in twips. */ execute(width: number, height: number): boolean; /** @@ -14383,7 +15296,7 @@ interface ChangeSectionColumnsCommand extends CommandBase { interface ChangePageColorCommand extends CommandBase { /** * Executes the ChangePageColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying a background color the page. May be specified as a color name or a hex color value. + * @param color A string specifying a background color of all pages contained in the document. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -14497,12 +15410,12 @@ interface CloseHeaderFooterCommand extends CommandWithSimpleStateBase { interface SectionColumn { /** * Gets or sets the width of the section column. - * Value: An integer value specifying the section column width. + * Value: An integer value specifying the section column width in twips. */ width: number; /** * Gets or sets the amount of space between adjacent section columns. - * Value: An integer value specifying the spacing between section columns. + * Value: An integer value specifying the spacing after a column in twips. */ spacing: number; } @@ -14511,12 +15424,12 @@ interface SectionColumn { */ interface Size { /** - * Gets or sets the width value. + * Gets or sets the width value in twips. * Value: An integer value specifying the width. */ width: number; /** - * Gets or sets the height value. + * Gets or sets the height value in twips. * Value: An integer value specifying the height. */ height: number; @@ -14527,22 +15440,22 @@ interface Size { interface Margins { /** * Gets or sets the left margin. - * Value: An integer value specifying the left margin. + * Value: An integer value specifying the left margin in twips. */ left: number; /** * Gets or sets the top margin. - * Value: An integer value specifying the top margin. + * Value: An integer value specifying the top margin in twips. */ top: number; /** * Gets or sets the right margin. - * Value: An integer value specifying the right margin. + * Value: An integer value specifying the right margin in twips. */ right: number; /** * Gets or sets the bottom margin. - * Value: An integer value specifying the bottom margin. + * Value: An integer value specifying the bottom margin in twips. */ bottom: number; } @@ -14829,17 +15742,17 @@ interface ParagraphFormattingSettings { */ outlineLevel: number; /** - * Gets or sets the right indent value for the specified paragraph. + * Gets or sets the right indent value for the specified paragraph (in twips). * Value: An integer value specifying the right indent. */ rightIndent: number; /** - * Gets or sets the spacing before the current paragraph. + * Gets or sets the spacing before each selected paragraph (in twips). * Value: An integer value specifying the spacing before the paragraph. */ spacingBefore: number; /** - * Gets or sets the spacing after the current paragraph. + * Gets or sets the spacing after each selected paragraph (in twips). * Value: An integer value specifying the spacing after the paragraph. */ spacingAfter: number; @@ -14854,7 +15767,7 @@ interface ParagraphFormattingSettings { */ firstLineIndentType: any; /** - * Gets or sets a value specifying the indent of the first line of a paragraph. + * Gets or sets a value specifying the indent of the first line of a paragraph (in twips). * Value: An integer value specifying the indent of the first line. */ firstLineIndent: number; @@ -14874,12 +15787,12 @@ interface ParagraphFormattingSettings { */ pageBreakBefore: boolean; /** - * Gets or sets the left indent for text within a paragraph. + * Gets or sets the left indent for text within a paragraph (in twips). * Value: An integer value specifying the left indent. */ leftIndent: number; /** - * Gets or sets a line spacing value. + * Gets or sets a line spacing value (in twips). * Value: An integer value specifying the line spacing. */ lineSpacing: number; @@ -14914,10 +15827,10 @@ declare enum ParagraphFirstLineIndent { interface AssignShortcutCommand extends CommandWithSimpleStateBase { /** * Executes the AssignShortcutCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param keyCode An integer value specifying the code uniquely identifying the key combination. - * @param callback A callback function to execute on pressing the shortcut. + * @param keyCode A specifically generated code that uniquely identifies the combination of keys specified for a shortcut. This code is specified using the GetShortcutCode method. + * @param callback A callback function to execute when a shortcut is activated. */ - execute(keyCode: number, callback: (arg1: string) => void): boolean; + execute(keyCode: number, callback: Function): boolean; } /** * A command to invoke the Spelling dialog window. @@ -15529,7 +16442,7 @@ interface TableBorderSettings { */ color: string; /** - * Gets or sets the border line width. + * Gets or sets the border line width in twips. * Value: An integer value defining the border line width. */ width: number; @@ -15752,22 +16665,22 @@ interface TableCellFormattingSettings { */ noWrap: boolean; /** - * Gets or sets a table cell's left margin. + * Gets or sets a table cell's left margin in twips. * Value: An integer value specifying the left margin. */ marginLeft: number; /** - * Gets or sets a table cell's right margin. + * Gets or sets a table cell's right margin in twips. * Value: An integer value specifying the right margin. */ marginRight: number; /** - * Gets or sets a table cell's top margin. + * Gets or sets a table cell's top margin in twips. * Value: An integer value specifying the top margin. */ marginTop: number; /** - * Gets or sets a table cell's bottom margin. + * Gets or sets a table cell's bottom margin in twips. * Value: An integer value specifying the bottom margin. */ marginBottom: number; @@ -15798,12 +16711,12 @@ interface TableFormattingSettings { */ alignment: any; /** - * Gets or sets the table's left indent. + * Gets or sets the table's left indent in twips. * Value: An integer value specifying the indent. */ indent: number; /** - * Gets or sets the spacing between table cells. + * Gets or sets the spacing between table cells in twips. * Value: An integer value specifying the spacing. */ spacingBetweenCells: number; @@ -15818,22 +16731,22 @@ interface TableFormattingSettings { */ resizeToFitContent: boolean; /** - * Gets or sets the default left margin for cells in the table. + * Gets or sets the default left margin for cells in the table in twips. * Value: An integer value specifying the margin value. */ defaultCellMarginLeft: number; /** - * Gets or sets the default right margin for cells in the table. + * Gets or sets the default right margin for cells in the table in twips. * Value: An integer value specifying the margin value. */ defaultCellMarginRight: number; /** - * Gets or sets the default top margin for cells in the table. + * Gets or sets the default top margin for cells in the table in twips. * Value: An integer value specifying the margin value. */ defaultCellMarginTop: number; /** - * Gets or sets the default bottom margin for cells in the table. + * Gets or sets the default bottom margin for cells in the table in twips. * Value: An integer value specifying the margin value. */ defaultCellMarginBottom: number; @@ -15843,7 +16756,7 @@ interface TableFormattingSettings { */ interface TableWidthUnit { /** - * Gets or sets the table width value. + * Gets or sets the table width value in twips. * Value: An integer value specifying the table width. */ value: number; @@ -15858,7 +16771,7 @@ interface TableWidthUnit { */ interface TableHeightUnit { /** - * Gets or sets the table height value. + * Gets or sets the table height value in twips. * Value: An integer value specifying the table height. */ value: number; @@ -15907,7 +16820,7 @@ interface ChangeFontNameCommand extends CommandBase { interface ChangeFontSizeCommand extends CommandBase { /** * Executes the ChangeFontSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param fontSize An integer number specifying the font size. + * @param fontSize An integer number specifying the font size in points. */ execute(fontSize: number): boolean; /** @@ -16161,7 +17074,7 @@ interface FontFormattingSettings { */ fontName: string; /** - * Gets or sets the character(s) font size. + * Gets or sets the character(s) font size (in points). * Value: An integer value specifying the font size. */ size: number; @@ -16197,7 +17110,7 @@ interface FontFormattingSettings { italic: boolean; /** * Gets or sets a value specifying whether the strikeout formatting is applied to a character(s). - * Value: true if the strikeout formatting is applied; otherwise, false. + * Value: true, if the strikeout formatting is applied; otherwise, false. */ strikeout: boolean; /** @@ -16972,7 +17885,7 @@ interface YearlyRecurrenceValuesAccessor extends DefaultRecurrenceRuleValuesAcce GetWeekOfMonth(): ASPxClientWeekOfMonth; } /** - * Provides base functionality for ASPxClientScheduler's forms. + * Provides base functionality for the ASPxClientScheduler's forms. */ interface ASPxClientFormBase { /** @@ -17201,6 +18114,10 @@ interface ASPxClientScheduler extends ASPxClientControl { * Client-side event that fires before an appointment is deleted. */ AppointmentDeleting: ASPxClientEvent>; + /** + * Fires on the client side before the appointment tooltip is shown. + */ + AppointmentToolTipShowing: ASPxClientEvent>; /** * Client-side scripting method that gets the active View. */ @@ -17265,6 +18182,24 @@ interface ASPxClientScheduler extends ASPxClientControl { * Client-side function that returns the time interval, selected in the scheduler. */ GetSelectedInterval(): ASPxClientTimeInterval; + /** + * Selects time cells which encompass the specified time interval on the client side. + * @param interval An ASPxClientTimeInterval object that specifies the time interval to select. + */ + SetSelection(interval: ASPxClientTimeInterval): void; + /** + * Selects time cells which encompass the specified time interval on the client side. + * @param interval An ASPxClientTimeInterval object that specifies the time interval to select. + * @param resourceId An integer value specifying the ID of the resource to which the specified time interval belongs. + */ + SetSelection(interval: ASPxClientTimeInterval, resourceId: string): void; + /** + * Selects time cells which encompass the specified time interval on the client side. + * @param interval An ASPxClientTimeInterval object that specifies the time interval to select. + * @param resourceId An integer value specifying the ID of the resource to which the specified time interval belongs. + * @param scrollToSelection true, to scroll the scheduler's contents to make the selection visible; otherwise, false. + */ + SetSelection(interval: ASPxClientTimeInterval, resourceId: string, scrollToSelection: boolean): void; /** * Client-side function that returns the ResourceId of selected time cell's resource. */ @@ -17292,6 +18227,12 @@ interface ASPxClientScheduler extends ASPxClientControl { * @param aptId An appointment's identifier. */ SelectAppointmentById(aptId: Object): void; + /** + * Selects the appointment with the specified ID. + * @param aptId An integer value specifying the appointment ID. + * @param scrollToSelection true, to scroll to the selected appointment; otherwise, false. + */ + SelectAppointmentById(aptId: Object, scrollToSelection: boolean): void; /** * Enables obtaining appointment property values in a client-side script. Executes the callback command with the AppointmentData identifier. * @param aptId An integer, representing the appointment ID. @@ -17439,6 +18380,42 @@ interface ASPxClientScheduler extends ASPxClientControl { * Client-side scripting method that changes the alert time for the selected reminder to the specified interval. */ ReminderFormSnooze(): void; + /** + * Specifies whether the toolbar is visible. + * @param visible true, to make the toolbar visible; otherwise, false. + */ + SetToolbarVisible(visible: boolean): void; + /** + * Returns a value specifying whether a toolbar is displayed. + */ + GetToolbarVisible(): boolean; + /** + * Specifies whether the Resource Navigator is visible. + * @param visible true, to make the Resource Navigator visible; otherwise, false. + */ + SetResourceNavigatorVisible(visible: boolean): void; + /** + * Returns a value specifying whether the Resource Navigator is displayed. + */ + GetResourceNavigatorVisible(): boolean; + /** + * Returns the value specifying the Scheduler's scrollable area height. + */ + GetScrollAreaHeight(): number; + /** + * Specifies the All-Day Area area height. + * @param height An integer value specifying the all-day area height. + */ + SetAllDayAreaHeight(height: number): void; + /** + * Gets the All-Day Area area height. + */ + GetAllDayAreaHeight(): number; + /** + * Sets the Scheduler's height. + * @param height An integer value specifying the scheduler's height. + */ + SetHeight(height: number): void; } /** * Represents a client-side equivalent of the SchedulerViewType object. @@ -17923,6 +18900,27 @@ interface CellClickEventArgs extends ASPxClientEventArgs { */ resource: string; } +/** + * A method that will handle the client AppointmentToolTipShowing event. + */ +interface ASPxClientAppointmentToolTipShowingEventHandler { + /** + * A method that will handle the corresponding client event. + * @param source The event source. + * @param e An ASPxClientAppointmentToolTipShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentToolTipShowingEventArgs): void; +} +/** + * Provides data for the AppointmentToolTipShowing event. + */ +interface ASPxClientAppointmentToolTipShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the appointment. + * Value: An ASPxClientAppointment object representing the appointment. + */ + appointment: ASPxClientAppointment; +} /** * Contains information about a client tooltip. */ @@ -17968,13 +18966,13 @@ interface ASPxClientToolTipBase { */ CalculatePosition(bounds: Object): ASPxClientPoint; /** - * Displays the Appointment Menu in the position of the tooltip. - * @param eventObject An object containing information about the event on which the menu is displayed. + * Displays the Appointment Menu at the position of the tooltip. + * @param eventObject An object containing information about the event in which the menu is displayed. */ ShowAppointmentMenu(eventObject: Object): void; /** - * Displays the View Menu in the position of the tooltip. - * @param eventObject An object containing information about the event on which the menu is displayed. + * Displays the View Menu at the position of the tooltip. + * @param eventObject An object containing information about the event in which the menu is displayed. */ ShowViewMenu(eventObject: Object): void; /** @@ -18579,6 +19577,20 @@ interface ASPxClientTreeList extends ASPxClientControl { * Occurs after a column's width has been changed by an end-user. */ ColumnResized: ASPxClientEvent>; + /** + * Hides the Filter Control. + */ + CloseFilterControl(): void; + /** + * Enables or disables the current filter. + * @param isFilterEnabled true to enable the current filter; otherwise, false. + */ + SetFilterEnabled(isFilterEnabled: boolean): void; + /** + * Specifies a custom editor for the search panel on the client side. + * @param editor An ASPxClientEdit object representing a custom editor. + */ + SetSearchPanelCustomEditor(editor: ASPxClientEdit): void; /** * Sets input focus to the ASPxTreeList. */ @@ -18973,6 +19985,66 @@ interface ASPxClientTreeList extends ASPxClientControl { * @param position An integer value specifying the horizontal scroll position. */ SetHorizontalScrollPosition(position: number): void; + /** + * Exports tree list data to a file in the specified format. + * @param format An ASPxClientTreeListExportFormat object specifying the export format. + */ + ExportTo(format: ASPxClientTreeListExportFormat): void; + /** + * Applies the specified filter expression to the tree list. + * @param filterExpression A string value that specifies the filter expression. + */ + ApplyFilter(filterExpression: string): void; + /** + * Clears the filter expression applied to a client Tree List. + */ + ClearFilter(): void; + /** + * Applies a filter specified in the filter row to the ASPxTreeList. + */ + ApplyOnClickRowFilter(): void; + /** + * Applies the specified search panel filter criterion to tree list data. + * @param value A string value that specifies the filter criterion. + */ + ApplySearchPanelFilter(value: string): void; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param column An ASPxClientTreeListColumn object that represents the data column within the ASPxTreeList. + */ + GetAutoFilterEditor(column: ASPxClientTreeListColumn): Object; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param columnIndex An integer value that identifies the data column by its index. + */ + GetAutoFilterEditor(columnIndex: number): Object; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param columnFieldNameOrId A string value that specifies the column's name or its data base field name. + */ + GetAutoFilterEditor(columnFieldNameOrId: string): Object; + /** + * Applies a filter to the specified data column. + * @param column An ASPxClientTreeListColumn object that represents the data column within the client Tree List. + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(column: ASPxClientTreeListColumn, val: string): void; + /** + * Applies a filter to the specified data column. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(columnIndex: number, val: string): void; + /** + * Applies a filter to the specified data column. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(columnFieldNameOrId: string, val: string): void; + /** + * Displays the Filter Control. + */ + ShowFilterControl(): void; } /** * Represents a client column. @@ -18994,6 +20066,11 @@ interface ASPxClientTreeListColumn { */ fieldName: string; } +/** + * Lists values that specify the document formats available for export from the tree list. + */ +interface ASPxClientTreeListExportFormat { +} /** * Provides data for the CustomDataCallback event. */ @@ -19227,8 +20304,8 @@ interface ASPxClientTreeListToolbarItemClickEventArgs extends ASPxClientProcessi */ toolbarName: string; /** - * Gets the toolbar item related to the event. - * Value: An ASPxClientMenuItem object that is the toolbar item. + * Gets the clicked menu item + * Value: An ASPxClientMenu value that is the menu item. */ item: ASPxClientMenuItem; /** @@ -19252,7 +20329,241 @@ interface ASPxClientTreeListToolbarItemClickEventHandler { * Represents a client-side equivalent of the BootstrapAccordion control. */ interface BootstrapClientAccordion extends ASPxClientNavBar { + /** + * Returns a group specified by its index. + * @param index An integer value specifying the zero-based index of the group object to retrieve. + */ + GetGroup(index: number): BootstrapClientAccordionGroup; + /** + * Returns a group specified by its name. + * @param name A string value specifying the name of the group. + */ + GetGroupByName(name: string): BootstrapClientAccordionGroup; + /** + * Returns the Accordion control's active group. + */ + GetActiveGroup(): BootstrapClientAccordionGroup; + /** + * Makes the specified group active. + * @param group A BootstrapClientAccordionGroup object that specifies the active group. + */ + SetActiveGroup(group: BootstrapClientAccordionGroup): void; + /** + * Returns an item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): BootstrapClientAccordionItem; + /** + * Returns the selected item within the Accordion control. + */ + GetSelectedItem(): BootstrapClientAccordionItem; + /** + * Selects the specified item within the Accordion control on the client side. + * @param item A BootstrapClientAccordionItem object specifying the item to select. + */ + SetSelectedItem(item: BootstrapClientAccordionItem): void; + /** + * Makes the specified group active. + * @param group A ASPxClientNavBarGroup object that specifies the active group. + */ + SetActiveGroup(group: ASPxClientNavBarGroup): void; + /** + * Selects the specified item within the navbar control on the client side. + * @param item An ASPxClientNavBarItem object specifying the item to select. + */ + SetSelectedItem(item: ASPxClientNavBarItem): void; } +/** + * Represents a client-side equivalent of the Accordion's BootstrapAccordionGroup object. + */ +interface BootstrapClientAccordionGroup extends ASPxClientNavBarGroup { + /** + * Gets the BootstrapClientAccordion object to which the current group belongs. + * Value: A object that is the group's owner. + */ + navBar: BootstrapClientAccordion; + /** + * Returns the group's item specified by its index. + * @param index An integer value specifying the zero-based index of the item to be retrieved. + */ + GetItem(index: number): BootstrapClientAccordionItem; + /** + * Returns a group item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): BootstrapClientAccordionItem; + /** + * Gets the text displayed within an accordion group header badge. + */ + GetHeaderBadgeText(): string; + /** + * Sets the text displayed within an accordion group header badge. + * @param text A String specifying the badge text. + */ + SetHeaderBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within an accordion group header badge. + */ + GetHeaderBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within an accordion group header badge. + * @param cssClass A String containing the name of a CSS class. + */ + SetHeaderBadgeIconCssClass(cssClass: string): void; +} +/** + * Represents a client-side equivalent of the Accordion's BootstrapAccordionItem object. + */ +interface BootstrapClientAccordionItem extends ASPxClientNavBarItem { + /** + * Gets the BootstrapClientAccordion object to which the current item belongs. + * Value: A object that is the item's owner. + */ + navBar: BootstrapClientAccordion; + /** + * Gets the group to which the current item belongs. + * Value: A object representing the group to which the item belongs. + */ + group: BootstrapClientAccordionGroup; + /** + * Gets the text displayed within the accordion item badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the accordion item badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the accordion item badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the accordion item badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; + /** + * Specifies the URL which points to the image displayed within the item. + */ + GetImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the item. + * @param value + */ + SetImageUrl(value: string): void; + /** + * Gets the CSS class of the icon displayed by the Accordion item. + */ + GetIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed by the Accordion item. + * @param cssClass A string containing the name of a CSS class. + */ + SetIconCssClass(cssClass: string): void; +} +/** + * A method that will handle the Accordion control's client events concerning manipulations with an item. + */ +interface BootstrapClientAccordionItemEventHandler { + /** + * A method that will handle the Accordion control's client events concerning manipulations with an item. + * @param source An object representing the event source. Identifies the BootstrapClientAccordion control that raised the event. + * @param e An BootstrapClientAccordionItemEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientAccordionItemEventArgs): void; +} +/** + * Provides data for events related to manipulations on items. + */ +interface BootstrapClientAccordionItemEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the item object related to the event. + * Value: A BootstrapClientAccordionItem object, manipulations on which forced the event to be raised. + */ + item: BootstrapClientAccordionItem; + /** + * Gets an HTML object that contains the processed Accordion item. + * Value: An HTML object. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: A DHTML event object. + */ + htmlEvent: Object; +} +/** + * A method that will handle the Accordion control's client events concerning manipulations with a group. + */ +interface BootstrapClientAccordionGroupEventHandler { + /** + * A method that will handle the Accordion control's client events concerning manipulations with a group. + * @param source An object representing the event source. Identifies the BootstrapClientAccordion control that raised the event. + * @param e An BootstrapClientAccordionGroupEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientAccordionGroupEventArgs): void; +} +/** + * Provides data for events related to manipulations on groups. + */ +interface BootstrapClientAccordionGroupEventArgs extends ASPxClientEventArgs { + /** + * Gets the group object related to the event. + * Value: A BootstrapClientAccordionGroup object, manipulations on which forced the event to be raised. + */ + group: BootstrapClientAccordionGroup; +} +/** + * A method that will handle the Accordion control's cancelable client events concerning manipulations with a group. + */ +interface BootstrapClientAccordionGroupCancelEventHandler { + /** + * A method that will handle the Accordion control's cancelable client events concerning manipulations with a group. + * @param source An object representing the event source. Identifies the BootstrapClientAccordion control that raised the event. + * @param e An BootstrapClientAccordionGroupCancelEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientAccordionGroupCancelEventArgs): void; +} +/** + * Provides data for events related to manipulations on accordion groups. + */ +interface BootstrapClientAccordionGroupCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the group object related to the event. + * Value: A BootstrapClientAccordionGroup object, manipulations on which forced the event to be raised. + */ + group: BootstrapClientAccordionGroup; +} +/** + * A method that will handle the Accordion control's client events concerning clicks on groups. + */ +interface BootstrapClientAccordionGroupClickEventHandler { + /** + * A method that will handle the Accordion control's client events concerning clicks on groups. + * @param source An object representing the event source. Identifies the BootstrapClientAccordion control that raised the event. + * @param e An BootstrapClientAccordionGroupClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientAccordionGroupClickEventArgs): void; +} +/** + * Provides data for events related to clicking on the control's group headers. + */ +interface BootstrapClientAccordionGroupClickEventArgs extends BootstrapClientAccordionGroupCancelEventArgs { + /** + * Gets an HTML object that contains the processed Accordion group. + * Value: An HTML object. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: A DHTML event object. + */ + htmlEvent: Object; +} +/** + * Represents the client-side equivalent of the BootstrapBinaryImage control. + */ interface BootstrapClientBinaryImage extends ASPxClientHyperLink { } /** @@ -19268,6 +20579,24 @@ interface BootstrapClientButton extends ASPxClientButton { * @param value A string value specifying the text to be displayed within the button. */ SetText(value: string): void; + /** + * Gets the text displayed within the button badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the button badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the button badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the button badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; } /** * Represents a client-side equivalent of the BootstrapCalendar control. @@ -19320,92 +20649,12 @@ interface BootstrapClientCallbackPanel extends ASPxClientControl { */ GetEnabled(): boolean; } -/** - * Serves as the base type for the BootstrapClientPieChart objects. - */ -interface BootstrapClientChartBase extends ASPxClientControl { - Done: ASPxClientEvent>; - LegendClick: ASPxClientEvent>; - PointClick: ASPxClientEvent>; - PointHoverChanged: ASPxClientEvent>; - PointSelectionChanged: ASPxClientEvent>; - TooltipHidden: ASPxClientEvent>; - TooltipShown: ASPxClientEvent>; - ArgumentAxisClick: ASPxClientEvent>; - SeriesClick: ASPxClientEvent>; - SeriesHoverChanged: ASPxClientEvent>; - SeriesSelectionChanged: ASPxClientEvent>; -} -/** - * Represents a client-side equivalent of the BootstrapChart control. - */ -interface BootstrapClientChart extends BootstrapClientChartBase { - ZoomStart: ASPxClientEvent>; - ZoomEnd: ASPxClientEvent>; -} -/** - * Represents a client-side equivalent of the BootstrapPolarChart control. - */ -interface BootstrapClientPolarChart extends BootstrapClientChartBase { -} -/** - * Represents a client-side equivalent of the BootstrapPieChart control. - */ -interface BootstrapClientPieChart extends BootstrapClientChartBase { -} -interface BootstrapClientChartBaseDoneEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; -} -interface BootstrapClientChartBaseLegendClickEventHandler { - (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; -} -interface BootstrapClientCoordinateSystemChartArgumentAxisClickEventHandler { - (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; -} -interface BootstrapClientChartBasePointClickEventHandler { - (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; -} -interface BootstrapClientChartBasePointHoverChangedEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientChartBasePointSelectionChangedEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientChartBaseTooltipHiddenEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientChartBaseTooltipShownEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientCoordinateSystemChartSeriesClickEventHandler { - (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; -} -interface BootstrapClientCoordinateSystemChartSeriesHoverChangedEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientCoordinateSystemChartSeriesSelectionChangedEventHandler { - (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; -} -interface BootstrapClientChartZoomStartEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; -} -interface BootstrapClientChartZoomEndEventHandler { - (source: S, e: BootstrapClientChartZoomEndEventArgs): void; -} -interface BootstrapUIWidgetEventArgsBase extends ASPxClientEventArgs { - component: Object; - element: Object; -} -interface BootstrapClientChartZoomEndEventArgs extends BootstrapUIWidgetEventArgsBase { - rangeStart: Object; - rangeEnd: Object; -} /** * Represents a client-side equivalent of the BootstrapCheckBox control. */ interface BootstrapClientCheckBox extends ASPxClientEdit { /** - * Occurs on the client side when the editor's checked state is changed. + * Occurs on the client side when the editor's checked state has been changed. */ CheckedChanged: ASPxClientEvent>; /** @@ -19414,7 +20663,7 @@ interface BootstrapClientCheckBox extends ASPxClientEdit { GetChecked(): boolean; /** * Sets a value which specifies the checked status of the check box editor. - * @param isChecked + * @param isChecked true if the check box editor is checked; otherwise, false. */ SetChecked(isChecked: boolean): void; /** @@ -19427,12 +20676,12 @@ interface BootstrapClientCheckBox extends ASPxClientEdit { GetCheckState(): string; /** * Sets a value specifying the state of a check box. - * @param checkState + * @param checkState A string value matches one of the CheckState enumeration values. */ SetCheckState(checkState: string): void; /** * Sets the text to be displayed within the editor. - * @param text + * @param text A string value specifying the text to be displayed within the editor. */ SetText(text: string): void; } @@ -19450,103 +20699,125 @@ interface BootstrapClientComboBox extends ASPxClientComboBox { */ GetSelectedItem(): BootstrapClientListBoxItem; /** - * Sets the combo box editor's selected item. - * @param item + * Sets the list editor's selected item. + * @param item A BootstrapClientListBoxItem object that specifies the item to select. */ SetSelectedItem(item: BootstrapClientListBoxItem): void; /** * Returns an item specified by its index within the combo box editor's item collection. - * @param index + * @param index An integer value specifying the zero-based index of the item to search for. */ GetItem(index: number): BootstrapClientListBoxItem; /** * Returns a combo box item by its text. - * @param text + * @param text A string that specifies the item's text. */ FindItemByText(text: string): BootstrapClientListBoxItem; /** * Returns a combo box item by its value. - * @param value + * @param value An object that specifies the item's value. */ FindItemByValue(value: Object): BootstrapClientListBoxItem; /** - * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * Adds a new item to the end of the editor's items collection, specifying the item's display text, and returns the index of the added item. * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. */ AddItem(texts: string[]): number; /** * Adds a new item to the end of the control's items collection. - * @param texts - * @param value + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. */ AddItem(texts: string[], value: Object): number; /** * Adds a new item to the end of the control's items collection. - * @param texts - * @param value - * @param iconCssClass + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ AddItem(texts: string[], value: Object, iconCssClass: string): number; /** - * Adds a new item to the editor specifying the item's display text and returns the index of the added item. - * @param text + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param text A string value specifying the item's display text. */ AddItem(text: string): number; /** - * Adds a new item to the editor specifying the item's display text and associated value, and returns the index of the added item. - * @param text - * @param value + * Adds a new item to the editor, specifying the item's display text and associated value, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. */ AddItem(text: string, value: Object): number; /** - * Adds a new item to the editor specifying the item's display text, associated value and displayed image, and returns the index of the added item. - * @param text - * @param value - * @param iconCssClass + * Adds a new item to the editor, specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ AddItem(text: string, value: Object, iconCssClass: string): number; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts - * @param value - * @param iconCssClass + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding field within the editor's Fields collection. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ InsertItem(index: number, texts: string[], value: Object, iconCssClass: string): void; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts - * @param value + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. */ InsertItem(index: number, texts: string[], value: Object): void; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. */ InsertItem(index: number, texts: string[]): void; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param text - * @param value - * @param iconCssClass + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ InsertItem(index: number, text: string, value: Object, iconCssClass: string): void; /** - * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. - * @param index - * @param text - * @param value + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. */ InsertItem(index: number, text: string, value: Object): void; /** - * Inserts a new item specified by its display text into the editor's item collection, at the position specified. - * @param index - * @param text + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. */ InsertItem(index: number, text: string): void; + /** + * Gets the text displayed within a Combo Box item badge. + * @param index The index of a Combo Box item. + */ + GetItemBadgeText(index: number): string; + /** + * Sets the text displayed within a Combo Box item badge. + * @param index The index of a Combo Box item. + * @param text A String specifying the badge text. + */ + SetItemBadgeText(index: number, text: string): void; + /** + * Gets the CSS class of the icon displayed within a Combo Box item badge. + * @param index The index of a Combo Box item. + */ + GetItemBadgeIconCssClass(index: number): string; + /** + * Sets the CSS class of the icon displayed within a Combo Box item badge. + * @param index The index of a Combo Box item. + * @param cssClass A String containing the name of a CSS class. + */ + SetItemBadgeIconCssClass(index: number, cssClass: string): void; /** * Sets the list editor's selected item. * @param item An ASPxClientListEditItem object that specifies the item to select. @@ -19572,7 +20843,28 @@ interface BootstrapClientFormLayout extends ASPxClientFormLayout { * Represents a client-side equivalent of the BootstrapHyperLink control. */ interface BootstrapClientHyperLink extends ASPxClientHyperLink { + /** + * Gets the text displayed within the hyperlink badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the hyperlink badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the hyperlink badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the hyperlink badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; } +/** + * Represents the client-side equivalent of the BootstrapImage control. + */ interface BootstrapClientImage extends ASPxClientImage { } /** @@ -19583,6 +20875,10 @@ interface BootstrapClientListBoxItem extends ASPxClientListEditItem { * This member is not in effect for this class. It is overridden only for the purpose of preventing it from appearing in Microsoft Visual Studio designer tools. */ imageUrl: string; + /** + * Gets the CSS class of the icon displayed by the list box item. + * Value: A string containing the name of a CSS class. + */ iconCssClass: string; /** * @@ -19595,13 +20891,13 @@ interface BootstrapClientListBoxItem extends ASPxClientListEditItem { */ GetColumnText(columnName: string): string; /** - * - * @param fieldIndex + * Returns the list item's text value that corresponds to a data field specified by its index. + * @param fieldIndex An integer value that specifies the field's index within the editor's Fields collection. */ GetFieldText(fieldIndex: number): string; /** - * - * @param fieldName + * Returns the list item's text value that corresponds to a data field specified by its name. + * @param fieldName A string value that specifies the data field's name defined via a FieldName property. */ GetFieldText(fieldName: string): string; } @@ -19610,17 +20906,17 @@ interface BootstrapClientListBoxItem extends ASPxClientListEditItem { */ interface BootstrapClientListBox extends ASPxClientListBox { /** - * Returns the list box editor's selected item. + * Returns the list editor's selected item. */ GetSelectedItem(): BootstrapClientListBoxItem; /** - * Sets the list box editor's selected item. - * @param item + * Sets the list editor's selected item. + * @param item A BootstrapClientListBoxItem object that specifies the item to select. */ SetSelectedItem(item: BootstrapClientListBoxItem): void; /** * Returns an item specified by its index within the list box editor's item collection. - * @param index + * @param index An integer value specifying the zero-based index of the item to search for. */ GetItem(index: number): BootstrapClientListBoxItem; /** @@ -19629,102 +20925,124 @@ interface BootstrapClientListBox extends ASPxClientListBox { GetSelectedItems(): BootstrapClientListBoxItem[]; /** * Selects the specified items within a list box. - * @param items + * @param items An array of BootstrapClientListBoxItem objects that represent the items. */ SelectItems(items: BootstrapClientListBoxItem[]): void; /** * Unselects an array of the specified list box items. - * @param items + * @param items An array of BootstrapClientListBoxItem objects that represent the items. */ UnselectItems(items: BootstrapClientListBoxItem[]): void; /** * Returns a list box item by its text. - * @param text + * @param text A string that specifies the item's text. */ FindItemByText(text: string): BootstrapClientListBoxItem; /** * Returns a list box item by its value. - * @param value + * @param value An object that specifies the item's value. */ FindItemByValue(value: Object): BootstrapClientListBoxItem; /** * Adds a new item to the end of the editor's items collection, specifying the item's display text, and returns the index of the added item. - * @param texts + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. */ AddItem(texts: string[]): number; /** * Adds a new item to the end of the control's items collection. - * @param texts - * @param value + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. */ AddItem(texts: string[], value: Object): number; /** * Adds a new item to the end of the control's items collection. - * @param texts - * @param value - * @param iconCssClass + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ AddItem(texts: string[], value: Object, iconCssClass: string): number; /** * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. - * @param text + * @param text A string value specifying the item's display text. */ AddItem(text: string): number; /** * Adds a new item to the editor, specifying the item's display text and associated value, and returns the index of the added item. - * @param text - * @param value + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. */ AddItem(text: string, value: Object): number; /** * Adds a new item to the editor, specifying the item's display text, associated value and displayed image, and returns the index of the added item. - * @param text - * @param value - * @param iconCssClass + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ AddItem(text: string, value: Object, iconCssClass: string): number; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts - * @param value - * @param iconCssClass + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding field within the editor's Fields collection. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ InsertItem(index: number, texts: string[], value: Object, iconCssClass: string): void; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts - * @param value + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + * @param value An object that represents the item's associated value. */ InsertItem(index: number, texts: string[], value: Object): void; /** - * Adds a new item to the control's items collection at the specified index. - * @param index - * @param texts + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. */ InsertItem(index: number, texts: string[]): void; /** * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. - * @param index - * @param text - * @param value - * @param iconCssClass + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. */ InsertItem(index: number, text: string, value: Object, iconCssClass: string): void; /** * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. - * @param index - * @param text - * @param value + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. */ InsertItem(index: number, text: string, value: Object): void; /** * Inserts a new item specified by its display text into the editor's item collection, at the position specified. - * @param index - * @param text + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. */ InsertItem(index: number, text: string): void; + /** + * Gets the text displayed within a List Box item badge. + * @param index The index of a List Box item. + */ + GetItemBadgeText(index: number): string; + /** + * Sets the text displayed within a List Box item badge. + * @param index The index of a List Box item. + * @param text A String specifying the badge text. + */ + SetItemBadgeText(index: number, text: string): void; + /** + * Gets the CSS class of the icon displayed within a List Box item badge. + * @param index The index of a List Box item. + */ + GetItemBadgeIconCssClass(index: number): string; + /** + * Sets the CSS class of the icon displayed within a List Box item badge. + * @param index The index of a List Box item. + * @param cssClass A String containing the name of a CSS class. + */ + SetItemBadgeIconCssClass(index: number, cssClass: string): void; /** * Selects the specified items within a list box. * @param items An array of ASPxClientListEditItem objects that represent the items. @@ -19751,10 +21069,162 @@ interface BootstrapClientCheckBoxList extends ASPxClientCheckBoxList { */ interface BootstrapClientRadioButtonList extends ASPxClientRadioButtonList { } +/** + * Represents a client-side equivalent of the menu's BootstrapMenuItem object. + */ +interface BootstrapClientMenuItem extends ASPxClientMenuItem { + /** + * Gets the immediate parent item to which the current item belongs. + * Value: A BootstrapClientMenuItem object representing the item's immediate parent. + */ + parent: BootstrapClientMenuItem; + /** + * Returns the current menu item's immediate subitem specified by its index. + * @param index An integer value specifying the zero-based index of the submenu item to be retrieved. + */ + GetItem(index: number): BootstrapClientMenuItem; + /** + * Returns the current menu item's subitem specified by its name. + * @param name A string value specifying the name of the menu item. + */ + GetItemByName(name: string): BootstrapClientMenuItem; + /** + * Gets the text displayed within the menu item badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the menu item badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the menu item badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the menu item badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; + /** + * Returns the URL pointing to the image displayed within the menu item. + */ + GetImageUrl(): string; + /** + * Sets the URL which points to the image displayed within the menu item. + * @param value + */ + SetImageUrl(value: string): void; + /** + * Gets the CSS class of the icon displayed by the menu item. + */ + GetIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed by the menu item. + * @param cssClass A string containing the name of a CSS class. + */ + SetIconCssClass(cssClass: string): void; +} /** * Represents a client-side equivalent of the BootstrapMenu control. */ interface BootstrapClientMenu extends ASPxClientMenu { + /** + * Returns the menu's root menu item specified by its index. + * @param index An integer value specifying the zero-based index of the root menu item to be retrieved. + */ + GetItem(index: number): BootstrapClientMenuItem; + /** + * Returns a menu item specified by its name. + * @param name A string value specifying the name of the menu item. + */ + GetItemByName(name: string): BootstrapClientMenuItem; + /** + * Returns the selected item within the menu control. + */ + GetSelectedItem(): BootstrapClientMenuItem; + /** + * Selects the specified menu item within the Menu control on the client side. + * @param item A BootstrapClientMenuItem object specifying the menu item to select. + */ + SetSelectedItem(item: BootstrapClientMenuItem): void; + /** + * Returns a root menu item. + */ + GetRootItem(): BootstrapClientMenuItem; + /** + * Selects the specified menu item within a menu control on the client side. + * @param item An ASPxClientMenuItem object specifying the menu item to select. + */ + SetSelectedItem(item: ASPxClientMenuItem): void; +} +/** + * A method that will handle the menu's client events concerning manipulations with an item. + */ +interface BootstrapClientMenuItemEventHandler { + /** + * A method that will handle the menu's client events concerning manipulations with an item. + * @param source An object representing the event source. Identifies the BootstrapMenu control that raised the event. + * @param e An BootstrapClientMenuItemEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientMenuItemEventArgs): void; +} +/** + * Provides data for events related to manipulations on menu items. + */ +interface BootstrapClientMenuItemEventArgs extends ASPxClientEventArgs { + /** + * Gets the menu item object related to the event. + * Value: A BootstrapClientMenuItem object, manipulations on which forced the event to be raised. + */ + item: BootstrapClientMenuItem; +} +/** + * A method that will handle the ItemMouseOver events. + */ +interface BootstrapClientMenuItemMouseEventHandler { + /** + * A method that will handle the ItemMouseOver events. + * @param source An object representing the event source. Identifies the BootstrapMenu control that raised the event. + * @param e An BootstrapClientMenuItemMouseEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientMenuItemMouseEventArgs): void; +} +/** + * Provides data for client events related to mouse hovering over menu items. + */ +interface BootstrapClientMenuItemMouseEventArgs extends BootstrapClientMenuItemEventArgs { +} +/** + * A method that will handle client ItemClick events. + */ +interface BootstrapClientMenuItemClickEventHandler { + /** + * A method that will handle client ItemClick events. + * @param source An object representing the event source. Identifies the BootstrapMenu control that raised the event. + * @param e An BootstrapClientMenuItemClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientMenuItemClickEventArgs): void; +} +/** + * Provides data for events related to clicking on the control's items. + */ +interface BootstrapClientMenuItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the menu item object related to the event. + * Value: A BootstrapClientMenuItem object, manipulations on which forced the event to be raised. + */ + item: BootstrapClientMenuItem; + /** + * Gets an HTML object that contains the processed Menu item. + * Value: An HTML object. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: A DHTML event object. + */ + htmlEvent: Object; } /** * Represents a client-side equivalent of the BootstrapPager control. @@ -19766,8 +21236,8 @@ interface BootstrapClientPager extends ASPxClientPager { */ interface BootstrapClientPopupControl extends ASPxClientPopupControl { /** - * - * @param selector + * Sets the CSS selector of a web control or HTML element with which the current popup window is associated. + * @param selector A string value specifying the CSS selector of the web control or HTML element with which the popup window is associated. */ SetPopupElementCssSelector(selector: string): void; } @@ -19776,10 +21246,38 @@ interface BootstrapClientPopupControl extends ASPxClientPopupControl { */ interface BootstrapClientPopupMenu extends ASPxClientPopupMenu { /** - * - * @param selector + * Returns the popup menu's root menu item specified by its index. + * @param index An integer value specifying the zero-based index of the root menu item to be retrieved. + */ + GetItem(index: number): BootstrapClientMenuItem; + /** + * Returns a menu item specified by its name. + * @param name A string value specifying the name of the menu item. + */ + GetItemByName(name: string): BootstrapClientMenuItem; + /** + * Returns the selected item within the menu control. + */ + GetSelectedItem(): BootstrapClientMenuItem; + /** + * Selects the specified menu item within a the Popup Menu control on the client side. + * @param item A BootstrapClientMenuItem object specifying the menu item to select. + */ + SetSelectedItem(item: BootstrapClientMenuItem): void; + /** + * Returns a root menu item. + */ + GetRootItem(): BootstrapClientMenuItem; + /** + * Sets the CSS selector of a web control or HTML element with which the current popup menu is associated. + * @param selector A string value specifying the CSS selector of the web control or HTML element with which the popup menu is associated. */ SetPopupElementCssSelector(selector: string): void; + /** + * Selects the specified menu item within a menu control on the client side. + * @param item An ASPxClientMenuItem object specifying the menu item to select. + */ + SetSelectedItem(item: ASPxClientMenuItem): void; } /** * Represents a client-side equivalent of the BootstrapProgressBar control. @@ -19791,15 +21289,472 @@ interface BootstrapClientProgressBar extends ASPxClientProgressBar { */ interface BootstrapClientSpinEdit extends ASPxClientSpinEdit { } +/** + * Represents the client-side equivalent of the BootstrapClientTimeEdit control. + */ +interface BootstrapClientTimeEdit extends ASPxClientTimeEdit { +} /** * Represents a client-side equivalent of the BootstrapTabControl control. */ interface BootstrapClientTabControl extends ASPxClientTabControl { + /** + * Returns the active tab within the Tab Control. + */ + GetActiveTab(): BootstrapClientTab; + /** + * Makes the specified tab active within the Tab Control on the client side. + * @param tab A BootstrapClientTab object specifying the tab to select. + */ + SetActiveTab(tab: BootstrapClientTab): void; + /** + * Returns a tab specified by its index. + * @param index An integer value specifying the zero-based index of the tab object to retrieve. + */ + GetTab(index: number): BootstrapClientTab; + /** + * Returns a tab specified by its name. + * @param name A string value specifying the name of the tab. + */ + GetTabByName(name: string): BootstrapClientTab; + /** + * Makes the specified tab active within the tab control on the client side. + * @param tab An ASPxClientTab object specifying the tab to select. + */ + SetActiveTab(tab: ASPxClientTab): void; } /** * Represents a client-side equivalent of the BootstrapPageControl control. */ interface BootstrapClientPageControl extends ASPxClientPageControl { + /** + * Returns the active tab within the Page Control. + */ + GetActiveTab(): BootstrapClientTab; + /** + * Makes the specified tab active within the Page Control on the client side. + * @param tab A BootstrapClientTab object specifying the tab to select. + */ + SetActiveTab(tab: BootstrapClientTab): void; + /** + * Returns a tab specified by its index. + * @param index An integer value specifying the zero-based index of the tab object to retrieve. + */ + GetTab(index: number): BootstrapClientTab; + /** + * Returns a tab specified by its name. + * @param name A string value specifying the name of the tab. + */ + GetTabByName(name: string): BootstrapClientTab; + /** + * Returns the HTML code that represents the contents of the specified page within the page control. + * @param tab An BootstrapClientTab object that specifies the required page. + */ + GetTabContentHTML(tab: BootstrapClientTab): string; + /** + * Defines the HTML content for a specific tab page within the page control. + * @param tab A BootstrapClientTab object that specifies the required tab page. + * @param html A string value that represents the HTML code defining the content of the specified page. + */ + SetTabContentHTML(tab: BootstrapClientTab, html: string): void; + /** + * Returns the HTML code that represents the contents of the specified page within the page control. + * @param tab An ASPxClientTab object that specifies the required page. + */ + GetTabContentHTML(tab: ASPxClientTab): string; + /** + * Defines the HTML content for a specific tab page within the page control. + * @param tab An ASPxClientTab object that specifies the required tab page. + * @param html A string value that represents the HTML code defining the content of the specified page. + */ + SetTabContentHTML(tab: ASPxClientTab, html: string): void; + /** + * Makes the specified tab active within the tab control on the client side. + * @param tab An ASPxClientTab object specifying the tab to select. + */ + SetActiveTab(tab: ASPxClientTab): void; +} +/** + * Represents a client-side equivalent of a tab control's BootstrapTabPage object. + */ +interface BootstrapClientTab extends ASPxClientTab { + /** + * Gets the text displayed within the tab badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the tab badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the tab badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the tab badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; + /** + * Returns the URL pointing to the image displayed within the tab. + */ + GetImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the tab. + * @param value + */ + SetImageUrl(value: string): void; + /** + * Returns the URL pointing to the image displayed within the active tab. + */ + GetActiveImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the active tab. + * @param value + */ + SetActiveImageUrl(value: string): void; + /** + * Gets the CSS class of the icon displayed by the tab. + */ + GetIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed by the tab. + * @param cssClass A string containing the name of a CSS class. + */ + SetIconCssClass(cssClass: string): void; + /** + * Gets the CSS class of an icon displayed by the tab when it is active. + */ + GetActiveIconCssClass(): string; + /** + * Sets the CSS class of an icon displayed by the tab when it is active. + * @param cssClass A String containing the name of a CSS class. + */ + SetActiveIconCssClass(cssClass: string): void; +} +/** + * A method that will handle a tab control's client events concerning manipulations with a tab. + */ +interface BootstrapClientTabControlTabEventHandler { + /** + * A method that will handle a tab control's client events concerning manipulations with a tab. + * @param source An object representing the event source. Identifies the BootstrapClientTabControl that raised the event. + * @param e An BootstrapClientTabControlTabEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTabControlTabEventArgs): void; +} +/** + * Provides data for events related to manipulations on tabs. + */ +interface BootstrapClientTabControlTabEventArgs extends ASPxClientEventArgs { + /** + * Gets the tab object related to the event. + * Value: A BootstrapClientTab object, manipulations on which forced the event to be raised. + */ + tab: BootstrapClientTab; +} +/** + * A method that will handle a tab control's cancelable client events concerning manipulations with a tab. + */ +interface BootstrapClientTabControlTabCancelEventHandler { + /** + * A method that will handle a tab control's cancelable client events concerning manipulations with a tab. + * @param source An object representing the event source. Identifies the BootstrapTabControl that raised the event. + * @param e An BootstrapClientTabControlTabCancelEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTabControlTabCancelEventArgs): void; +} +/** + * Provides data for cancellable events related to manipulations on tabs. + */ +interface BootstrapClientTabControlTabCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the tab object related to the event. + * Value: A BootstrapClientTab object representing the tab manipulations on which forced the tab control to raise the event. + */ + tab: BootstrapClientTab; + /** + * Gets or sets a value specifying whether a callback should be sent to the server to reload the content of the page being activated. + * Value: true, to reload the page's content; otherwise, false. + */ + reloadContentOnCallback: boolean; +} +/** + * A method that will handle client events concerning clicks on tabs. + */ +interface BootstrapClientTabControlTabClickEventHandler { + /** + * A method that will handle client events concerning clicks on tabs. + * @param source An object representing the event source. Identifies the BootstrapTabControl that raised the event. + * @param e An BootstrapClientTabControlTabClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTabControlTabClickEventArgs): void; +} +/** + * Provides data for events related to clicking on the control's tabs. + */ +interface BootstrapClientTabControlTabClickEventArgs extends BootstrapClientTabControlTabCancelEventArgs { + /** + * Gets an HTML object that contains the processed tab. + * Value: An HTML object. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: A DHTML event object. + */ + htmlEvent: Object; +} +/** + * A client-side equivalent of the BootstrapTagBox object. + */ +interface BootstrapClientTagBox extends ASPxClientTokenBox { + /** + * Use the TagsChanged event instead. + */ + TokensChanged: ASPxClientEvent>; + /** + * Fires on the client side after the tag collection has been changed. + */ + TagsChanged: ASPxClientEvent>; + /** + * Adds a new token with the specified text to the end of the control's token collection. + * @param text + */ + AddToken(text: string): void; + /** + * Adds a new tag with the specified text to the end of the control's tag collection. + * @param text A string value specifying the tag's text. + */ + AddTag(text: string): void; + /** + * Use the RemoveTagByText method instead. + * @param text + */ + RemoveTokenByText(text: string): void; + /** + * Removes a tag specified by its text from the tag box on the client. + * @param text A string value that is the text of the tag to be removed. + */ + RemoveTagByText(text: string): void; + /** + * Use the RemoveTag method instead. + * @param index + */ + RemoveToken(index: number): void; + /** + * Removes a tag specified by its index from the tag box on the client. + * @param index An integer value that is the index of the tag to be removed. + */ + RemoveTag(index: number): void; + /** + * Returns an HTML span element that corresponds to the specified token. + * @param index + */ + GetTokenHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified tag. + * @param index An integer value that is the tag index. + */ + GetTagHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified token's text. + * @param index + */ + GetTokenTextHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified tag's text. + * @param index An integer value that is the tag index. + */ + GetTagTextHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified token's remove button. + * @param index + */ + GetTokenRemoveButtonHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified tag's remove button. + * @param index An integer value that is the tag index. + */ + GetTagRemoveButtonHtmlElement(index: number): Object; + /** + * Returns a collection of tokens. + */ + GetTokenCollection(): string[]; + /** + * Returns a collection of tags. + */ + GetTagCollection(): string[]; + /** + * Returns a collection of tokens. + * @param collection + */ + SetTokenCollection(collection: string[]): void; + /** + * Sets a collection of tags. + * @param collection An object that is the collection of tags. + */ + SetTagCollection(collection: string[]): void; + /** + * Use the ClearTagCollection method instead. + */ + ClearTokenCollection(): void; + /** + * Removes all tags contained in the tag box. + */ + ClearTagCollection(): void; + /** + * Returns the index of a token specified by its text. + * @param text + */ + GetTokenIndexByText(text: string): number; + /** + * Returns the index of a tag specified by its text. + * @param text A string value that specifies the text of the tag. + */ + GetTagIndexByText(text: string): number; + /** + * Use the IsCustomTag method instead. + * @param text + * @param caseSensitive + */ + IsCustomToken(text: string, caseSensitive: boolean): boolean; + /** + * Returns a value that indicates if the specified tag (string) is a custom tag. + * @param text A string value that is a tag. + * @param caseSensitive true, if tags are case sensitive; otherwise, false. + */ + IsCustomTag(text: string, caseSensitive: boolean): boolean; + /** + * Returns the editor's selected item. + */ + GetSelectedItem(): BootstrapClientListBoxItem; + /** + * Sets the list editor's selected item. + * @param item A BootstrapClientListBoxItem object that specifies the item to select. + */ + SetSelectedItem(item: BootstrapClientListBoxItem): void; + /** + * Returns an item specified by its index within the tag box editor's item collection. + * @param index An integer value specifying the zero-based index of the item to search for. + */ + GetItem(index: number): BootstrapClientListBoxItem; + /** + * Returns an item by its text. + * @param text A string that specifies the item's text. + */ + FindItemByText(text: string): BootstrapClientListBoxItem; + /** + * Returns a list item by its value. + * @param value An object that specifies the item's value. + */ + FindItemByValue(value: Object): BootstrapClientListBoxItem; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param texts + */ + AddItem(texts: string[]): number; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param texts + * @param value + */ + AddItem(texts: string[], value: Object): number; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param texts + * @param value + * @param iconCssClass + */ + AddItem(texts: string[], value: Object, iconCssClass: string): number; + /** + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param text A string value specifying the item's display text. + */ + AddItem(text: string): number; + /** + * Adds a new item to the editor, specifying the item's display text and associated value, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + */ + AddItem(text: string, value: Object): number; + /** + * Adds a new item to the editor, specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. + */ + AddItem(text: string, value: Object, iconCssClass: string): number; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param index + * @param texts + * @param value + * @param iconCssClass + */ + InsertItem(index: number, texts: string[], value: Object, iconCssClass: string): void; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param index + * @param texts + * @param value + */ + InsertItem(index: number, texts: string[], value: Object): void; + /** + * This method is not in effect for the BootstrapClientTagBox class. + * @param index + * @param texts + */ + InsertItem(index: number, texts: string[]): void; + /** + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + * @param iconCssClass A String value specifying the CSS class of the image displayed by the list item. + */ + InsertItem(index: number, text: string, value: Object, iconCssClass: string): void; + /** + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + * @param value An object that represents the item's associated value. + */ + InsertItem(index: number, text: string, value: Object): void; + /** + * Inserts a new item into the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param text A string value specifying the item's display text. + */ + InsertItem(index: number, text: string): void; + /** + * Gets the text displayed within a Tag Box item badge. + * @param index The index of a Tag Box item. + */ + GetItemBadgeText(index: number): string; + /** + * Sets the text displayed within a Tag Box item badge. + * @param index The index of a Tag Box item. + * @param text A String specifying the badge text. + */ + SetItemBadgeText(index: number, text: string): void; + /** + * Gets the CSS class of the icon displayed within a Tag Box item badge. + * @param index The index of a Tag Box item. + */ + GetItemBadgeIconCssClass(index: number): string; + /** + * Sets the CSS class of the icon displayed within a Tag Box item badge. + * @param index The index of a Tag Box item. + * @param cssClass A String containing the name of a CSS class. + */ + SetItemBadgeIconCssClass(index: number, cssClass: string): void; + /** + * Sets the list editor's selected item. + * @param item An ASPxClientListEditItem object that specifies the item to select. + */ + SetSelectedItem(item: ASPxClientListEditItem): void; } /** * Represents a client-side equivalent of the BootstrapTextBox control. @@ -19816,79 +21771,741 @@ interface BootstrapClientMemo extends ASPxClientMemo { */ interface BootstrapClientButtonEdit extends ASPxClientButtonEdit { } +/** + * Represents the client-side equivalent of the BootstrapToolbar control. + */ +interface BootstrapClientToolbar extends BootstrapClientMenu { +} /** * Represents a client-side equivalent of the BootstrapTreeView control. */ interface BootstrapClientTreeView extends ASPxClientTreeView { + /** + * Returns a node specified by its index within the Tree View's node collection. + * @param index An integer value specifying the zero-based index of the node to be retrieved. + */ + GetNode(index: number): BootstrapClientTreeViewNode; + /** + * Returns a node specified by its name. + * @param name A string value specifying the name of the node. + */ + GetNodeByName(name: string): BootstrapClientTreeViewNode; + /** + * Returns a node specified by its text. + * @param text A string value specifying the text content of the node. + */ + GetNodeByText(text: string): BootstrapClientTreeViewNode; + /** + * Returns the selected node within the Tree View control on the client side. + */ + GetSelectedNode(): BootstrapClientTreeViewNode; + /** + * Selects the specified node within the Tree View control on the client side. + * @param node A BootstrapClientTreeViewNode object specifying the node to select. + */ + SetSelectedNode(node: BootstrapClientTreeViewNode): void; + /** + * Gets the root node of the Tree View control. + */ + GetRootNode(): BootstrapClientTreeViewNode; + /** + * Selects the specified node within the ASPxTreeView control on the client side. + * @param node An ASPxClientTreeViewNode object specifying the node to select. + */ + SetSelectedNode(node: ASPxClientTreeViewNode): void; } -interface BootstrapUIWidgetBase extends ASPxClientControl { - Init: ASPxClientEvent>; - Drawn: ASPxClientEvent>; - Disposing: ASPxClientEvent>; - OptionChanged: ASPxClientEvent>; - Exporting: ASPxClientEvent>; - Exported: ASPxClientEvent>; - FileSaving: ASPxClientEvent>; - IncidentOccurred: ASPxClientEvent>; - GetInstance(): Object; - SetOptions(options: Object): void; - SetDataSource(dataSource: Object): void; - GetDataSource(): Object; - ExportTo(format: string, fileName: string): void; - Print(): void; +/** + * Represents a client-side equivalent of the TreeView's BootstrapTreeViewNode object. + */ +interface BootstrapClientTreeViewNode extends ASPxClientTreeViewNode { + /** + * Gets the BootstrapClientTreeView object to which the current node belongs. + * Value: A object that is the node's owner. + */ + treeView: BootstrapClientTreeView; + /** + * Gets the current node's parent node. + * Value: A BootstrapClientTreeViewNode object representing the node's immediate parent. + */ + parent: BootstrapClientTreeViewNode; + /** + * Returns the current node's immediate child node specified by its index. + * @param index An integer value specifying the zero-based index of the node to be retrieved. + */ + GetNode(index: number): BootstrapClientTreeViewNode; + /** + * Returns the current node's child node specified by its name. + * @param name A string value specifying the name of the node. + */ + GetNodeByName(name: string): BootstrapClientTreeViewNode; + /** + * Returns the current node's child node specified by its text. + * @param text A string value specifying the text content of the node. + */ + GetNodeByText(text: string): BootstrapClientTreeViewNode; + /** + * Gets the text displayed within the node badge. + */ + GetBadgeText(): string; + /** + * Sets the text displayed within the node badge. + * @param text A String specifying the badge text. + */ + SetBadgeText(text: string): void; + /** + * Gets the CSS class of the icon displayed within the node badge. + */ + GetBadgeIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed within the node badge. + * @param cssClass A string containing the name of a CSS class. + */ + SetBadgeIconCssClass(cssClass: string): void; + /** + * Returns the URL pointing to the image displayed within the node. + */ + GetImageUrl(): string; + /** + * Sets the URL which points to the image displayed within the node. + * @param value + */ + SetImageUrl(value: string): void; + /** + * Gets the CSS class of the icon displayed by the node. + */ + GetIconCssClass(): string; + /** + * Sets the CSS class of the icon displayed by the node. + * @param cssClass A string containing the name of a CSS class. + */ + SetIconCssClass(cssClass: string): void; } -interface BootstrapUIWidgetInitializedEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; +/** + * A method that will handle the client events concerned with node processing. + */ +interface BootstrapClientTreeViewNodeProcessingModeEventHandler { + /** + * A method that will handle the client events concerned with node processing. + * @param source An object representing the event source. Identifies the BootstrapClientTreeView control that raised the event. + * @param e An BootstrapClientTreeViewNodeProcessingModeEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTreeViewNodeProcessingModeEventArgs): void; } -interface BootstrapUIWidgetDrawnEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; +/** + * Provides data for the client events related to node processing, and allowing the event's processing to be passed to the server side. + */ +interface BootstrapClientTreeViewNodeProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets a node object related to the event. + * Value: A BootstrapClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: BootstrapClientTreeViewNode; } -interface BootstrapUIWidgetDisposingEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; +/** + * A method that will handle the NodeClick event. + */ +interface BootstrapClientTreeViewNodeClickEventHandler { + /** + * A method that will handle the NodeClick event. + * @param source An object representing the event source. Identifies the BootstrapClientTreeView control that raised the event. + * @param e An BootstrapClientTreeViewNodeClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTreeViewNodeClickEventArgs): void; } -interface BootstrapUIWidgetExportedEventHandler { - (source: S, e: BootstrapUIWidgetEventArgsBase): void; +/** + * Provides data for the NodeClick event. + */ +interface BootstrapClientTreeViewNodeClickEventArgs extends BootstrapClientTreeViewNodeProcessingModeEventArgs { + /** + * Gets an HTML object that contains the processed Tree View node. + * Value: An HTML object. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: A DHTML event object. + */ + htmlEvent: Object; } -interface BootstrapUIWidgetOptionChangedEventHandler { - (source: S, e: BootstrapUIWidgetOptionChangedEventArgs): void; +/** + * A method that will handle the Tree View control's client events, concerning manipulations with a node. + */ +interface BootstrapClientTreeViewNodeEventHandler { + /** + * A method that will handle the Tree View control's client events, concerning manipulations with a node. + * @param source An object representing the event source. Identifies the BootstrapClientTreeView control that raised the event. + * @param e An BootstrapClientTreeViewNodeEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTreeViewNodeEventArgs): void; } -interface BootstrapUIWidgetOptionChangedEventArgs extends BootstrapUIWidgetEventArgsBase { - fullName: string; - name: string; - previousValue: Object; - value: Object; +/** + * Provides data for the ExpandedChanged events. + */ +interface BootstrapClientTreeViewNodeEventArgs extends ASPxClientEventArgs { + /** + * Gets a node object related to the event. + * Value: A BootstrapClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: BootstrapClientTreeViewNode; } -interface BootstrapUIWidgetExportingEventHandler { - (source: S, e: BootstrapUIWidgetExportEventArgs): void; +/** + * A method that will handle the Tree View's cancelable client events, concerning manipulations with nodes. + */ +interface BootstrapClientTreeViewNodeCancelEventHandler { + /** + * A method that will handle the Tree View's cancelable client events, concerning manipulations with nodes. + * @param source An object representing the event source. Identifies the BootstrapClientTreeView control that raised the event. + * @param e An BootstrapClientTreeViewNodeCancelEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientTreeViewNodeCancelEventArgs): void; } -interface BootstrapUIWidgetFileSavingEventHandler { - (source: S, e: BootstrapUIWidgetExportEventArgs): void; -} -interface BootstrapUIWidgetExportEventArgs extends BootstrapUIWidgetEventArgsBase { - cancel: boolean; - data: Object; - fileName: string; - format: string; -} -interface BootstrapUIWidgetErrorEventHandler { - (source: S, e: BootstrapUIWidgetErrorEventArgs): void; -} -interface BootstrapUIWidgetErrorEventArgs extends BootstrapUIWidgetEventArgsBase { - target: Object; -} -interface BootstrapUIWidgetElementActionEventArgs extends BootstrapUIWidgetEventArgsBase { - target: Object; -} -interface BootstrapUIWidgetElementClickEventArgs extends BootstrapUIWidgetElementActionEventArgs { - jQueryEvent: Object; +/** + * Provides data for the ExpandedChanging event. + */ +interface BootstrapClientTreeViewNodeCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets a node object related to the event. + * Value: A BootstrapClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: BootstrapClientTreeViewNode; } /** * Represents a client-side equivalent of the BootstrapUploadControl. */ interface BootstrapClientUploadControl extends ASPxClientUploadControl { } +/** + * Represents the client BootstrapGridView. + */ interface BootstrapClientGridView extends ASPxClientGridView { } +/** + * Represents the client BootstrapCardView. + */ +interface BootstrapClientCardView extends ASPxClientGridView { +} +/** + * Represents a client-side equivalent of the BootstrapWebClientUIWidget class. + */ +interface BootstrapUIWidgetBase extends ASPxClientControl { + /** + * Fires once, after the widget is initialized. + */ + Init: ASPxClientEvent>; + /** + * Fires when the widget has finished drawing itself. + */ + Drawn: ASPxClientEvent>; + /** + * Fires when the widget is removed from the DOM using the remove(), empty(), or html() jQuery methods only. + */ + Disposing: ASPxClientEvent>; + /** + * Fires after an option of the widget has been changed. + */ + OptionChanged: ASPxClientEvent>; + /** + * Fires before data from the widget is exported. + */ + Exporting: ASPxClientEvent>; + /** + * Fires after data from the widget is exported. + */ + Exported: ASPxClientEvent>; + /** + * Raised before a file with exported data is saved on the user's local storage. + */ + FileSaving: ASPxClientEvent>; + /** + * Fires when an error or warning appears in the widget. + */ + IncidentOccurred: ASPxClientEvent>; + /** + * Gets an instance of the widget. + */ + GetInstance(): Object; + /** + * Sets the widget's options to values specified in the passed object. + * @param options An object containing key-value pairs specifying new option values. + */ + SetOptions(options: Object): void; + /** + * Gets the client data source instance. + * @param dataSource A DevExtreme DataSource object. + */ + SetDataSource(dataSource: Object): void; + /** + * Gets the client data source instance. + */ + GetDataSource(): Object; + /** + * Exports the widget. + * @param format A string specifying the target file format. + * @param fileName A string specifying the file name. + */ + ExportTo(format: string, fileName: string): void; + /** + * Invokes the browser's Print window to print the widget's contents. + */ + Print(): void; +} +/** + * Represents a client-side equivalent of the BootstrapChartBase class. + */ +interface BootstrapClientChartBase extends BootstrapUIWidgetBase { + /** + * Fires when the Series and Points chart elements are ready to be accessed. + */ + Done: ASPxClientEvent>; + /** + * Fires when an item on the chart legend is clicked. + */ + LegendClick: ASPxClientEvent>; + /** + * Fires when a user clicks a series point. + */ + PointClick: ASPxClientEvent>; + /** + * Fires when the hover state of a series point has been changed. + */ + PointHoverChanged: ASPxClientEvent>; + /** + * Fires when the selection state of a series point has been changed. + */ + PointSelectionChanged: ASPxClientEvent>; + /** + * Fires when a point's tooltip becomes hidden. + */ + TooltipHidden: ASPxClientEvent>; + /** + * Fires when a point's tooltip appears. + */ + TooltipShown: ASPxClientEvent>; + /** + * Fires when a user clicks a label on the argument axis. + */ + ArgumentAxisClick: ASPxClientEvent>; + /** + * Fires when a user clicks a series. + */ + SeriesClick: ASPxClientEvent>; + /** + * Fires when the hover state of a series has been changed. + */ + SeriesHoverChanged: ASPxClientEvent>; + /** + * Fires when the selection state of a series has been changed. + */ + SeriesSelectionChanged: ASPxClientEvent>; +} +/** + * Represents a client-side equivalent of the Chart control. + */ +interface BootstrapClientChart extends BootstrapClientChartBase { + /** + * Fires when a chart zooming or scrolling begins. + */ + ZoomStart: ASPxClientEvent>; + /** + * Fires when a chart zooming or scrolling ends. + */ + ZoomEnd: ASPxClientEvent>; +} +/** + * Represents a client-side equivalent of the BootstrapPolarChart control. + */ +interface BootstrapClientPolarChart extends BootstrapClientChartBase { +} +/** + * Represents a client-side equivalent of the BootstrapPieChart control. + */ +interface BootstrapClientPieChart extends BootstrapClientChartBase { +} +/** + * A method that will handle the Done event. + */ +interface BootstrapClientChartBaseDoneEventHandler { + /** + * A method that will handle the Done event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the LegendClick event. + */ +interface BootstrapClientChartBaseLegendClickEventHandler { + /** + * A method that will handle the LegendClick event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +/** + * A method that will handle the Invoke event. + */ +interface BootstrapClientCoordinateSystemChartArgumentAxisClickEventHandler { + /** + * A method that will handle the Invoke event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +/** + * A method that will handle the PointClick event. + */ +interface BootstrapClientChartBasePointClickEventHandler { + /** + * A method that will handle the PointClick event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +/** + * A method that will handle the PointHoverChanged event. + */ +interface BootstrapClientChartBasePointHoverChangedEventHandler { + /** + * A method that will handle the PointHoverChanged event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the PointSelectionChanged event. + */ +interface BootstrapClientChartBasePointSelectionChangedEventHandler { + /** + * A method that will handle the PointSelectionChanged event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the TooltipHidden event. + */ +interface BootstrapClientChartBaseTooltipHiddenEventHandler { + /** + * A method that will handle the TooltipHidden event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the TooltipShown event. + */ +interface BootstrapClientChartBaseTooltipShownEventHandler { + /** + * A method that will handle the TooltipShown event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the SeriesClick event. + */ +interface BootstrapClientCoordinateSystemChartSeriesClickEventHandler { + /** + * A method that will handle the SeriesClick event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementClickEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +/** + * A method that will handle the SeriesHoverChanged event. + */ +interface BootstrapClientCoordinateSystemChartSeriesHoverChangedEventHandler { + /** + * A method that will handle the SeriesHoverChanged event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the SeriesSelectionChanged event. + */ +interface BootstrapClientCoordinateSystemChartSeriesSelectionChangedEventHandler { + /** + * A method that will handle the SeriesSelectionChanged event. + * @param source The event source. + * @param e A BootstrapUIWidgetElementActionEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +/** + * A method that will handle the ZoomStart event. + */ +interface BootstrapClientChartZoomStartEventHandler { + /** + * A method that will handle the ZoomStart event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the ZoomEnd event. + */ +interface BootstrapClientChartZoomEndEventHandler { + /** + * A method that will handle the ZoomEnd event. + * @param source The event source. + * @param e A BootstrapClientChartZoomEndEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientChartZoomEndEventArgs): void; +} +/** + * Provides base data for the client-side events. + */ +interface BootstrapUIWidgetEventArgsBase extends ASPxClientEventArgs { + /** + * The widget instance. + * Value: An object specifying the widget instance. + */ + component: Object; + /** + * The widget's container. + * Value: An object specifying the widget's container. + */ + element: Object; +} +/** + * Provides data for the ZoomEnd event. + */ +interface BootstrapClientChartZoomEndEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * The value that became the start of the argument axis after zooming or scrolling ended. + * Value: An object specifying the start of the argument axis. + */ + rangeStart: Object; + /** + * The value that became the end of the argument axis after zooming or scrolling ended. + * Value: An object specifying the end of the argument axis. + */ + rangeEnd: Object; +} +/** + * Represents a client-side equivalent of the Range Selector control. + */ +interface BootstrapClientRangeSelector extends BootstrapUIWidgetBase { + /** + * Fires after the selected range has been changed by moving one of the sliders. + */ + ValueChanged: ASPxClientEvent>; + /** + * Gets the Range Selector's selected value range. + */ + GetValue(): Object[]; + /** + * Gets the Range Selector's selected value range. + * @param value An array containing the value range. + */ + SetValue(value: Object[]): void; +} +/** + * Provides data for events which concern manipulations on the selected range. + */ +interface BootstrapClientRangeSelectorValueChangedEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * The value currently specified for the RangeSelector control. + * Value: A System.Object instance defining the current value specified for a RangeSelector control. + */ + value: Object; + /** + * The previous value of a RangeSelector control. + * Value: A System.Object type defining the previous value specified for a RangeSelector control. + */ + previousValue: Object; +} +/** + * A method that will handle the ValueChanged event. + */ +interface BootstrapClientRangeSelectorValueChangedEventHandler { + /** + * A method that will handle the ValueChanged event. + * @param source The event source. + * @param e A BootstrapClientRangeSelectorValueChangedEventArgs object that contains event data. + */ + (source: S, e: BootstrapClientRangeSelectorValueChangedEventArgs): void; +} +/** + * A method that will handle the Init event. + */ +interface BootstrapUIWidgetInitializedEventHandler { + /** + * A method that will handle the Init event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the Drawn event. + */ +interface BootstrapUIWidgetDrawnEventHandler { + /** + * A method that will handle the Drawn event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the Disposing event. + */ +interface BootstrapUIWidgetDisposingEventHandler { + /** + * A method that will handle the Disposing event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the Exported event. + */ +interface BootstrapUIWidgetExportedEventHandler { + /** + * A method that will handle the Exported event. + * @param source The event source. + * @param e A BootstrapUIWidgetEventArgsBase object that contains event data. + */ + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +/** + * A method that will handle the OptionChanged event. + */ +interface BootstrapUIWidgetOptionChangedEventHandler { + /** + * A method that will handle the OptionChanged event. + * @param source The event source. + * @param e A BootstrapUIWidgetOptionChangedEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetOptionChangedEventArgs): void; +} +/** + * Provides data for client events raised in response to changing the widget's options. + */ +interface BootstrapUIWidgetOptionChangedEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * The option's full name. + * Value: A string value specifying the option's full name. + */ + fullName: string; + /** + * The option's short name. + * Value: A string value specifying the option's short name. + */ + name: string; + /** + * The option's old value. + * Value: An object that is the option's old value. + */ + previousValue: Object; + /** + * The option's new value. + * Value: An object that is the option's new value. + */ + value: Object; +} +/** + * A method that will handle the Exporting event. + */ +interface BootstrapUIWidgetExportingEventHandler { + /** + * A method that will handle the Exporting event. + * @param source The event source. + * @param e A BootstrapUIWidgetExportEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetExportEventArgs): void; +} +/** + * A method that will handle the FileSaving event. + */ +interface BootstrapUIWidgetFileSavingEventHandler { + /** + * A method that will handle the FileSaving event. + * @param source The event source. + * @param e A BootstrapUIWidgetExportEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetExportEventArgs): void; +} +/** + * Provides data for events related to saving files in the built-in dialogs. + */ +interface BootstrapUIWidgetExportEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * Allows you to cancel file saving. + * Value: true, to cancel the file saving; otherwise, false. + */ + cancel: boolean; + /** + * Gets the saved data as a BLOB object. + * Value: A BLOB object containing saved data. + */ + data: Object; + /** + * Gets a name of a saved file. + * Value: A string value specifying the saved file's name. + */ + fileName: string; + /** + * Gets the saved file's format. + * Value: A string value specifying the saved file's format. + */ + format: string; +} +/** + * A method that will handle the IncidentOccurred event. + */ +interface BootstrapUIWidgetErrorEventHandler { + /** + * A method that will handle the IncidentOccurred event. + * @param source The event source. + * @param e A BootstrapUIWidgetErrorEventArgs object that contains event data. + */ + (source: S, e: BootstrapUIWidgetErrorEventArgs): void; +} +/** + * Provides data for client events raised in response to widget errors. + */ +interface BootstrapUIWidgetErrorEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * Contains information on the error that occurred. + * Value: An object containing information on the error that occurred. + */ + target: Object; +} +/** + * Provides data for client events related to actions performed on the widget's visual elements. + */ +interface BootstrapUIWidgetElementActionEventArgs extends BootstrapUIWidgetEventArgsBase { + /** + * The DOM element that initiated the event. + * Value: An object that initiated the event. + */ + target: Object; +} +/** + * Provides data for the client-side clicking events. + */ +interface BootstrapUIWidgetElementClickEventArgs extends BootstrapUIWidgetElementActionEventArgs { + /** + * The jQuery event that caused the handler execution. + * Value: An object of the jQuery.Event type. + */ + jQueryEvent: Object; +} /** * A client-side counterpart of the Calendar and CalendarFor extensions. */ @@ -20343,7 +22960,7 @@ interface MVCxClientPopupControl extends ASPxClientPopupControl { */ PerformWindowCallback(window: ASPxClientPopupWindow, data: Object): void; /** - * + * Sends a callback with parameters to update the popup window by processing the related popup window. * @param window * @param parameter */ @@ -20849,6 +23466,27 @@ interface MVCxClientVerticalGrid extends ASPxClientVerticalGrid { */ interface MVCxClientWebDocumentViewer extends ASPxClientWebDocumentViewer { } +interface ANCxClientBeginCallbackEventHandler { + (source: S, e: ANCxClientBeginCallbackEventArgs): void; +} +/** + * Serves as the base class for arguments of the web controls' client-side events. + */ +interface ASPxClientEventArgs { +} +/** + * Provides data for client events related to the beginning of a callback processing round trip. + */ +interface ASPxClientBeginCallbackEventArgs extends ASPxClientEventArgs { + /** + * Gets a command name that identifies which client action forced a callback to be occurred. + * Value: A string value that represents the name of the command which initiated a callback. + */ + command: string; +} +interface ANCxClientBeginCallbackEventArgs extends ASPxClientBeginCallbackEventArgs { + customArgs: Object; +} /** * Serves as the base type for all the objects included in the client-side object model. */ @@ -20871,6 +23509,10 @@ interface ASPxClientControlBase { * @param message A String value that specifies a text. */ SendMessageToAssistiveTechnology(message: string): void; + /** + * Returns a client instance of the control that is the parent for a specified control. + */ + GetParentControl(): Object; /** * Returns a value specifying whether a control is displayed. */ @@ -20969,11 +23611,6 @@ interface ASPxClientCallbackCompleteEventHandler { */ (source: S, e: ASPxClientCallbackCompleteEventArgs): void; } -/** - * Serves as the base class for arguments of the web controls' client-side events. - */ -interface ASPxClientEventArgs { -} /** * Provides data for events concerning the final processing of a callback. */ @@ -21195,11 +23832,6 @@ interface ASPxClientProcessingModeCancelEventArgs extends ASPxClientProcessingMo */ interface KnockoutObservableBoolean { } -/** - * Provides access to observable arrays that allow you to detect and respond to changes in a collection of things. - */ -interface KnockoutObservableArray { -} /** * Represents a JavaScript function which receives callback data obtained via a call to a specific client method (such as the PerformDataCallback). */ @@ -21262,16 +23894,6 @@ interface ASPxClientBeginCallbackEventHandler { */ (source: S, e: ASPxClientBeginCallbackEventArgs): void; } -/** - * Provides data for client events related to the beginning of a callback processing round trip. - */ -interface ASPxClientBeginCallbackEventArgs extends ASPxClientEventArgs { - /** - * Gets a command name that identifies which client action forced a callback to be occurred. - * Value: A string value that represents the name of the command which initiated a callback. - */ - command: string; -} /** * A method that will handle the BeginCallback event. */ @@ -22478,6 +25100,10 @@ interface ASPxClientFileManagerItem { * @param skipRootFolder true, to skip the root folder; otherwise, false. */ GetFullName(separator: string, skipRootFolder: boolean): string; + /** + * Gets the current item's metadata. + */ + GetMetadata(): Object; } /** * Represents the client-side equivalent of the FileManagerFile object. @@ -23523,6 +26149,11 @@ interface ASPxClientHintOptions { * Value: true, to display a hint in a callout box; otherwise, false. */ showCallout: boolean; + /** + * Gets or sets a value that specifies whether a hint's title is displayed. + * Value: true, to display the hint's title; otherwise, false. + */ + showTitle: boolean; /** * Gets or sets where a hint should be positioned. * Value: A string value that specifies a hint position. @@ -24596,7 +27227,7 @@ interface ASPxClientPopupControl extends ASPxClientPopupControlBase { */ GetWindowPopUpReasonMouseEvent(window: ASPxClientPopupWindow): Object; /** - * + * Sends a callback with parameters to update the popup window by processing the related popup window. * @param window * @param parameter */ @@ -24749,6 +27380,103 @@ interface ASPxClientPopupControl extends ASPxClientPopupControlBase { * @param html A string value that represents the HTML code defining the content of the specified popup window. */ SetWindowContentHtml(window: ASPxClientPopupWindow, html: string): void; + /** + * Stretches the popup window in adaptive mode vertically to the full height of the browser window. + */ + StretchVertically(): void; + /** + * Stretches the specified popup window in adaptive mode vertically to the full height of the browser window. + * @param window A ASPxClientPopupWindow object representing the required popup window. + */ + WindowStretchVertically(window: ASPxClientPopupWindow): void; + /** + * Sets the minimum width of the popup window in adaptive mode. + * @param minWidth An integer value specifying the minimum width of the popup window in adaptive mode. + */ + SetAdaptiveMinWidth(minWidth: number): void; + /** + * Sets the minimum width of the popup window in adaptive mode. + * @param minWidth A string value specifying the minimum width of the popup window in adaptive mode as a percentage of the browser window inner width value. + */ + SetAdaptiveMinWidth(minWidth: string): void; + /** + * Sets the minimum width of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param minWidth An integer value specifying the minimum width of the popup window in adaptive mode. + */ + SetWindowAdaptiveMinWidth(window: ASPxClientPopupWindow, minWidth: number): void; + /** + * Sets the minimum width of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param minWidth An integer value specifying the minimum width of the popup window in adaptive mode as a percentage of the browser window inner width value. + */ + SetWindowAdaptiveMinWidth(window: ASPxClientPopupWindow, minWidth: string): void; + /** + * Sets the maximum width of the popup window in adaptive mode. + * @param maxWidth An integer value specifying the maximum width of the popup window in adaptive mode. + */ + SetAdaptiveMaxWidth(maxWidth: number): void; + /** + * Sets the maximum width of the popup window in adaptive mode. + * @param maxWidth A string value specifying the maximum width of the popup window in adaptive mode as a percentage of the browser window inner width value. + */ + SetAdaptiveMaxWidth(maxWidth: string): void; + /** + * Sets the maximum width of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param maxWidth An integer value specifying the maximum width of the popup window in adaptive mode. + */ + SetWindowAdaptiveMaxWidth(window: ASPxClientPopupWindow, maxWidth: number): void; + /** + * Sets the maximum width of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param maxWidth An integer value specifying the maximum width of the popup window in adaptive mode as a percentage of the browser window inner width value. + */ + SetWindowAdaptiveMaxWidth(window: ASPxClientPopupWindow, maxWidth: string): void; + /** + * Sets the minimum height of the popup window in adaptive mode. + * @param minHeight An integer value specifying the minimum height of the popup window in adaptive mode. + */ + SetAdaptiveMinHeight(minHeight: number): void; + /** + * Sets the minimum height of the popup window in adaptive mode. + * @param minHeight A string value specifying the minimum height of the popup window in adaptive mode as a percentage of the browser window inner height value. + */ + SetAdaptiveMinHeight(minHeight: string): void; + /** + * Sets the minimum height of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param minHeight An integer value specifying the minimum height of the popup window in adaptive mode. + */ + SetWindowAdaptiveMinHeight(window: ASPxClientPopupWindow, minHeight: number): void; + /** + * Sets the minimum height of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param minHeight An integer value specifying the minimum height of the popup window in adaptive mode as a percentage of the browser window inner height value. + */ + SetWindowAdaptiveMinHeight(window: ASPxClientPopupWindow, minHeight: string): void; + /** + * Sets the maximum height of the popup window in adaptive mode. + * @param maxHeight An integer value specifying the maximum height of the popup window in adaptive mode. + */ + SetAdaptiveMaxHeight(maxHeight: number): void; + /** + * Sets the maximum height of the popup window in adaptive mode. + * @param maxHeight A string value specifying the maximum height of the popup window in adaptive mode as a percentage of the browser window inner height value. + */ + SetAdaptiveMaxHeight(maxHeight: string): void; + /** + * Sets the maximum height of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param maxHeight An integer value specifying the maximum height of the popup window in adaptive mode. + */ + SetWindowAdaptiveMaxHeight(window: ASPxClientPopupWindow, maxHeight: number): void; + /** + * Sets the maximum height of the specified popup window in adaptive mode. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param maxHeight An integer value specifying the maximum height of the popup window in adaptive mode as a percentage of the browser window inner height value. + */ + SetWindowAdaptiveMaxHeight(window: ASPxClientPopupWindow, maxHeight: string): void; /** * Returns an iframe object containing a web page specified via the specified popup window's SetWindowContentUrl client method). * @param window A ASPxClientPopupWindow object representing the required popup window. @@ -28890,7 +31618,7 @@ interface ASPxClientDocumentViewer extends ASPxClientControl { */ EndCallback: ASPxClientEvent>; /** - * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientDocumentViewer. + * Fires on the client if any server error occurs during server-side processing of a callback sent by ASPxClientDocumentViewer. */ CallbackError: ASPxClientEvent>; /** @@ -29011,13 +31739,17 @@ interface ASPxClientQueryBuilder extends ASPxClientControl { */ EndCallback: ASPxClientEvent>; /** - * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientQueryBuilder. + * Fires on the client if any server error occurs during server-side processing of a callback sent by ASPxClientQueryBuilder. */ CallbackError: ASPxClientEvent>; /** * Enables you to customize the menu actions of a Query Builder. */ CustomizeToolbarActions: ASPxClientEvent>; + /** + * Enables you to customize the Query Builder's localization strings. + */ + CustomizeLocalization: ASPxClientEvent>; /** * Occurs when executing the Save command on the client. */ @@ -29034,7 +31766,7 @@ interface ASPxClientQueryBuilder extends ASPxClientControl { */ PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; /** - * Updates the localization settings of the ASPxClientQueryBuilder properties. + * Updates the ASPxClientQueryBuilder properties' localization settings. * @param localization A dictionary containing the property names, along with their localized equivalents. */ UpdateLocalization(localization: { [key: string]: string; }): void; @@ -29091,6 +31823,16 @@ interface ASPxClientQueryBuilderCustomizeToolbarActionsEventHandler { */ (source: S, e: ASPxClientCustomizeMenuActionsEventArgs): void; } +/** + * A method that will handle the CustomizeLocalization event. + */ +interface ASPxClientQueryBuilderCustomizeLocalizationEventHandler { + /** + * A method that will handle the CustomizeLocalization event. + * @param source The event sender. + */ + (source: S): void; +} /** * The client-side equivalent of the Web Report Designer control. */ @@ -29104,7 +31846,7 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ EndCallback: ASPxClientEvent>; /** - * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientReportDesigner. + * Fires on the client if any server error occurs during server-side processing of a callback sent by ASPxClientReportDesigner. */ CallbackError: ASPxClientEvent>; /** @@ -29112,7 +31854,7 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ SaveCommandExecute: ASPxClientEvent>; /** - * Enables you to customize the menu actions of the Web Report Designer. + * Enables you to customize the Web Report Designer's menu actions. */ CustomizeMenuActions: ASPxClientEvent>; /** @@ -29143,6 +31885,14 @@ interface ASPxClientReportDesigner extends ASPxClientControl { * Occurs when a report has been opened in the Web Report Designer. */ ReportOpened: ASPxClientEvent>; + /** + * Occurs when a report tab is about to be closed in the Web Report Designer. + */ + ReportTabClosing: ASPxClientEvent>; + /** + * Occurs when a report tab was closed in the Web Report Designer. + */ + ReportTabClosed: ASPxClientEvent>; /** * Occurs on the client each time a server-side error raises. */ @@ -29152,7 +31902,7 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ ComponentAdded: ASPxClientEvent>; /** - * Enables you to customize UI elements of the Web Report Designer. + * Enables you to customize the Web Report Designer's UI elements. */ CustomizeElements: ASPxClientEvent>; /** @@ -29176,7 +31926,7 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ PreviewDocumentReady: ASPxClientEvent>; /** - * Occurs each time a value of an editing field changes in Print Preview. + * Occurs each time an editing field's value changes in Print Preview. */ PreviewEditingFieldChanged: ASPxClientEvent>; /** @@ -29188,17 +31938,25 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ PreviewCustomizeMenuActions: ASPxClientEvent>; /** - * Occurs when the left mouse button has been clicked over a report document in Print Preview. + * Occurs when the left mouse button is clicked on a report document in Print Preview. */ PreviewClick: ASPxClientEvent>; /** - * Occurs after report parameter values have been reset to their default values in Print Preview. + * Occurs after report parameter values are reset to their default values in Print Preview. */ PreviewParametersReset: ASPxClientEvent>; /** - * Occurs after report parameter values have been submitted in Print Preview. + * Occurs after report parameter values are submitted in Print Preview. */ PreviewParametersSubmitted: ASPxClientEvent>; + /** + * Enables you to customize the Web Report Designer's localization strings. + */ + CustomizeLocalization: ASPxClientEvent>; + /** + * Occurs before the Web Report Designer UI is initialized. + */ + BeforeRender: ASPxClientEvent>; /** * Sends a callback to the server with the specified argument. * @param arg A String value, specifying the callback argument. @@ -29211,18 +31969,18 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; /** - * Updates the localization settings of the ASPxClientReportDesigner properties. + * Updates the Report Designer properties' localization settings. * @param localization A dictionary containing the property names, along with their localized equivalents. */ UpdateLocalization(localization: { [key: string]: string; }): void; /** - * Returns the object model of a Web Report Designer. + * Provides access to a client-side model of a Web Report Designer. */ GetDesignerModel(): Object; /** - * Provides access to the preview model of the ASPxClientReportDesigner. + * Provides access to the Document Viewer's client-side model. */ - GetPreviewModel(): Object; + GetPreviewModel(): ASPxClientSidePreviewModel; /** * Returns information about the specified property of the specified control. * @param controlType A string that specifies the control type. @@ -29313,7 +32071,7 @@ interface ASPxClientReportDesigner extends ASPxClientControl { */ ReportStorageGetUrls(): any; /** - * Opens the specified report on the client side of the Web Report Designer. + * Opens the specified report on the Web Report Designer's client side. * @param url A string that specifies the URL of a report to be opened. */ OpenReport(url: string): void; @@ -29362,12 +32120,42 @@ interface ASPxClientReportDesignerDialogEventArgs extends ASPxClientEventArgs { * Value: An object that specifies the report currently being processed. */ Report: Object; +} +/** + * Provides data for the events related to opening and saving reports in the Web Report Designer. + */ +interface ASPxClientReportDesignerDialogCancelEventArgs extends ASPxClientReportDesignerDialogEventArgs { /** * Specifies whether or not the operation performed with a report should be canceled. * Value: true, if the operation should be canceled; otherwise, false. */ Cancel: boolean; } +/** + * Provides data for the ReportTabClosed event. + */ +interface ASPxClientReportDesignerTabEventArgs extends ASPxClientEventArgs { + /** + * Specifies the report tab currently being processed. + * Value: An object that specifies the report tab currently being processed. + */ + Tab: ASPxDesignerNavigateTab; +} +/** + * Provides data for the ReportTabClosing event. + */ +interface ASPxClientReportDesignerTabClosingEventArgs extends ASPxClientReportDesignerTabEventArgs { + /** + * Specifies whether or not the event was handled. + * Value: true, if the event was handled and no other processing should occur; otherwise, false. + */ + Handled: boolean; + /** + * Specifies the JQueryDeferred object, which when resolved, forces the report tab to be closed. + * Value: A JQueryDeferred object. + */ + ReadyToClose: JQueryDeferred; +} /** * Provides data for the OnServerError event. */ @@ -29513,9 +32301,9 @@ interface ASPxClientReportDesignerReportSavingEventHandler { /** * A method that will handle the ReportSaving event. * @param source The event sender. - * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + * @param e An ASPxClientReportDesignerDialogCancelEventArgs object that contains data related to the event. */ - (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; + (source: S, e: ASPxClientReportDesignerDialogCancelEventArgs): void; } /** * A method that will handle the ReportSaved event. @@ -29535,9 +32323,9 @@ interface ASPxClientReportDesignerReportOpeningEventHandler { /** * A method that will handle the ReportOpening event. * @param source The event sender. - * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + * @param e An ASPxClientReportDesignerDialogCancelEventArgs object that contains data related to the event. */ - (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; + (source: S, e: ASPxClientReportDesignerDialogCancelEventArgs): void; } /** * A method that will handle the ReportOpened event. @@ -29550,6 +32338,28 @@ interface ASPxClientReportDesignerReportOpenedEventHandler { */ (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; } +/** + * A method that will handle the ReportTabClosing event. + */ +interface ASPxClientReportDesignerReportTabClosingEventHandler { + /** + * A method that will handle the ReportTabClosing event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerTabClosingEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerTabClosingEventArgs): void; +} +/** + * A method that will handle the ReportTabClosed event. + */ +interface ASPxClientReportDesignerReportTabClosedEventHandler { + /** + * A method that will handle the ReportTabClosed event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerTabEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerTabEventArgs): void; +} /** * A method that will handle the OnServerError event. */ @@ -29616,6 +32426,27 @@ interface ASPxClientReportDesignerCustomizeToolboxEventHandler { */ (source: S, e: ASPxClientReportDesignerCustomizeToolboxEventArgs): void; } +/** + * A method that will handle the CustomizeLocalization event. + */ +interface ASPxClientReportDesignerCustomizeLocalizationEventHandler { + /** + * A method that will handle the CustomizeLocalization event. + * @param source The event sender. + */ + (source: S): void; +} +/** + * A method that will handle the BeforeRender event. + */ +interface ASPxClientReportDesignerBeforeRenderEventHandler { + /** + * A method that will handle the BeforeRender event. + * @param source The event sender. + * @param designerModel A client-side Report Designer model. + */ + (source: S, designerModel: Object): void; +} /** * Provides information about a value editor used in the Property Grid. */ @@ -29994,7 +32825,7 @@ interface ASPxClientReportViewer extends ASPxClientControl { */ EndCallback: ASPxClientEvent>; /** - * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientReportViewer. + * Fires on the client if any server error occurs during server-side processing of a callback sent by ASPxClientReportViewer. */ CallbackError: ASPxClientEvent>; /** @@ -30147,10 +32978,10 @@ interface ASPxClientMenuAction { */ hotKey: ASPxClientMenuActionHotKey; /** - * Provides access to the value that specifies whether or not the command has a visual separator. + * Specifies whether or not the command has a visual separator. * Value: true, if the command has a visual separator; otherwise, false. */ - hasSeparator: string; + hasSeparator: boolean; /** * Provides access to a value that specifies the command location. * Value: A string that specifies the command location. @@ -30505,6 +33336,11 @@ interface ASPxClientPreviewClickEventArgs extends ASPxClientEventArgs { * Returns a string providing additional information on the Brick. */ GetBrickValue(): string; + /** + * Returns a string providing additional information about the current Brick by the specified key. + * @param key A string that specifies a unique key. + */ + GetBrickValue(key: string): string; } /** * Provides information about a visual brick used to render a report control to construct a document in the Web Document Viewer. @@ -30571,19 +33407,19 @@ interface ASPxClientWebDocumentViewerBrickNavigation { */ interface ASPxClientWebDocumentViewer extends ASPxClientControl { /** - * Occurs after a report document has been loaded to the Web Document Viewer. + * Occurs after the Web Document Viewer loads a report document. */ DocumentReady: ASPxClientEvent>; /** - * Occurs each time a value of an editing field changes. + * Occurs each time an editing field's value changes. */ EditingFieldChanged: ASPxClientEvent>; /** - * Enables you to customize UI elements of the Web Document Viewer. + * Allows you to customize the Web Document Viewer's UI elements. */ CustomizeElements: ASPxClientEvent>; /** - * Enables you to customize the menu actions of a Web Document Viewer. + * Enables you to customize the Web Document Viewer's menu actions. */ CustomizeMenuActions: ASPxClientEvent>; /** @@ -30595,27 +33431,44 @@ interface ASPxClientWebDocumentViewer extends ASPxClientControl { */ CustomizeParameterLookUpSource: ASPxClientEvent>; /** - * Occurs when the left mouse button has been clicked over a report document. + * Occurs when the left mouse button is clicked on a report document. */ PreviewClick: ASPxClientEvent>; /** - * Occurs after report parameter values have been reset to their default values. + * Occurs after report parameter values are reset to their default values. */ ParametersReset: ASPxClientEvent>; /** - * Occurs after report parameter values have been submitted. + * Occurs after report parameter values are submitted. */ ParametersSubmitted: ASPxClientEvent>; /** - * Provides access to the preview model of the ASPxClientWebDocumentViewer. + * Enables you to customize the Web Document Viewer's localization strings. */ - GetPreviewModel(): Object; + CustomizeLocalization: ASPxClientEvent>; /** - * Returns a model for a report parameter. + * Occurs before the Web Document Viewer UI is initialized. */ - GetParametersModel(): Object; + BeforeRender: ASPxClientEvent>; /** - * Opens the specified report on the client side of the Web Document Viewer. + * Provides access to the Document Viewer's client-side model. + */ + GetPreviewModel(): ASPxClientSidePreviewModel; + /** + * Provides access to the report preview. + */ + GetReportPreview(): ASPxClientReportPreview; + /** + * Provide access to the report parameters' client-side model. + */ + GetParametersModel(): ASPxClientSideParametersModel; + /** + * Enables navigation between drill-through reports on the client-side. + * @param customData Provides access to custom client data associated with a currently previewed report. + */ + DrillThrough(customData: string): any; + /** + * Opens the specified report on the Web Document Viewer's client side. * @param url A string that specifies the URL of a report to be opened. */ OpenReport(url: string): any; @@ -30644,7 +33497,7 @@ interface ASPxClientWebDocumentViewer extends ASPxClientControl { */ ExportTo(format: string, inlineResult: boolean): void; /** - * Returns the zero-based index of the currently displayed page. + * Returns the current page's zero-based index. */ GetCurrentPageIndex(): number; /** @@ -30653,11 +33506,11 @@ interface ASPxClientWebDocumentViewer extends ASPxClientControl { */ GoToPage(pageIndex: number): void; /** - * Closes the document currently being opened in the Web Document Viewer. + * Closes the document which is currently opened in the Web Document Viewer. */ Close(): void; /** - * Resets the values of report parameters to their default values. + * Resets the report parameter values to the default values. */ ResetParameters(): void; /** @@ -30665,7 +33518,22 @@ interface ASPxClientWebDocumentViewer extends ASPxClientControl { */ StartBuild(): void; /** - * Updates the localization settings of the ASPxClientWebDocumentViewer properties. + * Performs a custom operation with a currently opened document on the client side. + */ + PerformCustomDocumentOperation(): any; + /** + * Performs a custom operation with a currently opened document on the client-side. + * @param customData Provides access to custom client data associated with a target document operation. + */ + PerformCustomDocumentOperation(customData: string): any; + /** + * Performs a custom operation with a currently opened document on the client-side. + * @param customData Provides access to custom client data associated with a target document operation. + * @param hideMessageFromUser true, to hide a message with the operation result from a user; otherwise, false. + */ + PerformCustomDocumentOperation(customData: string, hideMessageFromUser: boolean): any; + /** + * Updates the Web Document Viewer properties' localization settings. * @param localization A dictionary containing the property names, along with their localized equivalents. */ UpdateLocalization(localization: { [key: string]: string; }): void; @@ -30769,6 +33637,219 @@ interface ASPxClientWebDocumentViewerParametersSubmittedEventHandler { */ (source: S, e: ASPxClientParametersSubmittedEventArgs): void; } +/** + * A method that will handle the CustomizeLocalization event. + */ +interface ASPxClientWebDocumentViewerCustomizeLocalizationEventHandler { + /** + * A method that will handle the CustomizeLocalization event. + * @param source The event sender. + */ + (source: S): void; +} +/** + * A method that will handle the BeforeRender event. + */ +interface ASPxClientWebDocumentViewerBeforeRenderEventHandler { + /** + * A method that will handle the BeforeRender event. + * @param source The event sender. + * @param previewModel A client-side Document Viewer model. + */ + (source: S, previewModel: Object): void; +} +/** + * Provides information about the result of preforming a custom document operation on the client side. + */ +interface ASPxClientWebDocumentViewerDocumentOperationResponse { + /** + * Specifies whether a document operation has been successfully performed. + * Value: true, if the document operation has been successfully performed; otherwise, false. + */ + succeeded: boolean; + /** + * Specifies the error message to display if performing a document operation fails. + * Value: A string specifying the text of the error message. + */ + message: string; + /** + * Specifies custom data associated with the performed document operation. + * Value: A string containing information associated with the document operation. + */ + customData: string; + /** + * Specifies the document ID. + * Value: A string that specifies the document ID. + */ + documentId: string; +} +/** + * Provides information a client-side Document Preview model. + */ +interface ASPxClientSidePreviewModel { + /** + * Provides access to the report preview. + * Value: An object that specifies the report preview. + */ + reportPreview: ASPxClientReportPreview; + /** + * Provides access to a panel at the right of the Document Viewer. + * Value: An object that specifies the panel at the right of the Document Viewer. + */ + tabPanel: ASPxClientDocumentPreviewTabPanel; + /** + * Opens the specified report on the Web Document Viewer's client side. + * @param url A string that specifies the URL of a report to be opened. + */ + OpenReport(url: string): any; + /** + * Prints the current document. + */ + Print(): void; + /** + * Prints the document's page with the specified index. + * @param pageIndex An index of the page to be printed. + */ + Print(pageIndex: number): void; + /** + * Exports the document to a PDF file. + */ + ExportTo(): void; + /** + * Exports the document to a specified file format. + * @param format A String value, specifying the export format. The following formats are currently supported: 'csv', 'html', 'image', 'mht', 'pdf', 'rtf', 'docx', 'txt', 'xls', and 'xlsx'. + */ + ExportTo(format: string): void; + /** + * Exports the document to a specified file format. + * @param format A String value that specifies the export format. The following formats are currently supported: 'csv', 'html', 'image', 'mht', 'pdf', 'rtf', 'docx', 'txt', 'xls', and 'xlsx'. + * @param inlineResult true, to try opening the result file in a new browser tab without a download; otherwise, false. + */ + ExportTo(format: string, inlineResult: boolean): void; + /** + * Returns the current page's zero-based index. + */ + GetCurrentPageIndex(): number; + /** + * Displays the report page with the specified page index. + * @param pageIndex A zero-based integer value that specifies the index of a page to be displayed. + */ + GoToPage(pageIndex: number): void; + /** + * Closes the document which is currently opened in the Web Document Viewer. + */ + Close(): void; + /** + * Resets the report parameter values to the default values. + */ + ResetParameters(): void; + /** + * Starts building a report document. + */ + StartBuild(): void; + /** + * Provide access to the report parameters' client-side model. + */ + GetParametersModel(): ASPxClientSideParametersModel; +} +/** + * Provides information about the Document Viewer's tab panel. + */ +interface ASPxClientDocumentPreviewTabPanel { + /** + * Specifies the width of the panel at the right of the Document Viewer. + * Value: A knockout observable object that specifies the tab panel width. + */ + width: any; + /** + * Specifies whether the panel at the right of the Document Viewer is collapsed. + * Value: A knockout observable object that specifies whether the tab panel is collapsed. + */ + collapsed: any; + /** + * Provides access to the tabs of the panel at the right of the Document Viewer. + * Value: A collection of ASPxClientDocumentPreviewTab objects. + */ + tabs: ASPxClientDocumentPreviewTab[]; +} +/** + * Provides information about a tab available in the Document Viewer. + */ +interface ASPxClientDocumentPreviewTab { + /** + * Provides access to the name of an HTML template used by a tab. + * Value: A knockout observable string that specifies the name of the HTML template used by the tab. + */ + template: string; + /** + * Provides access to the tab text. + * Value: A string that specifies the tab text. + */ + text: string; + /** + * Provides access to a tab model. + * Value: An object that specifies the tab model. + */ + model: Object; + /** + * Provides access to the value that specifies whether a tab is active. + * Value: A knockout observable object that specifies whether the tab is active. + */ + active: any; + /** + * Provides access to the value that specifies whether a tab is visible. + * Value: A knockout observable object that specifies whether the tab is visible. + */ + visible: any; +} +/** + * Provides information about the report parameters' client-side model. + */ +interface ASPxClientSideParametersModel { + /** + * Provides information about the tab for specifying parameter values. + * Value: An object that provides information about the Parameters tab. + */ + tabInfo: ASPxClientDocumentPreviewTab; + /** + * Initiates passing parameter values and generating the report document. + */ + submit(): void; + /** + * Serializes report parameters before passing them to the server. + */ + serializeParameters(): void; +} +/** + * Provides information about a report preview. + */ +interface ASPxClientReportPreview { + /** + * Zooms the Document Viewer's current document. + * Value: A knockout observable object that specifies the zoom factor. + */ + zoom: any; + /** + * Enables the Document Viewer's multi-page mode. + * Value: A knockout observable object that specifies whether the multi-page mode is enabled. + */ + showMultipagePreview: any; + /** + * Provides access to the current document page's index. + * Value: A knockout observable object that specifies the zero-based index of the current page. + */ + pageIndex: any; + /** + * Provides access to document pages. + * Value: An array of objects that specify document pages. + */ + pages: any; + /** + * Provides access to a value that specifies whether the document is currently building. + * Value: A knockout observable object that specifies whether the document is building. + */ + documentBuilding: any; +} interface MVCxClientDashboardViewerStatic extends ASPxClientDashboardViewerStatic { } @@ -30812,7 +33893,7 @@ interface DashboardSpecialValuesStatic { */ OthersValue: string; /** - * Represents an error value for calculated fields. + * Represents an error value (for instance, this can be a calculated field value that cannot be evaluated). */ ErrorValue: string; /** @@ -30890,6 +33971,20 @@ interface DashboardExportScaleModeStatic { */ AutoFitWithinOnePage: string; } +interface DashboardExportDocumentScaleModeStatic { + /** + * The dashboard / dashboard item on the exported page retains its original size. + */ + None: string; + /** + * The size of the dashboard / dashboard item on the exported page is changed according to the scale factor value (ScaleFactor). + */ + UseScaleFactor: string; + /** + * The size of the dashboard / dashboard item is changed according to the width of the exported pages. + */ + AutoFitToPagesWidth: string; +} interface DashboardExportFilterStateStatic { /** * The filter state is not included in the exported document. @@ -31156,6 +34251,18 @@ interface ASPxClientEditStatic extends ASPxClientEditBaseStatic { * Verifies whether visible editors on a page are valid. */ AreEditorsValid(): boolean; + /** + * Attaches a handler to the ASPxClientEdit's event indicating whether the editor has been changed since the previous state. + * @param handler An object representing a handler. + * @param predicate An ASPxClientControlPredicate object representing the predicate criteria. + */ + AttachEditorModificationListener(handler: Object, predicate: ASPxClientControlPredicate): void; + /** + * Detaches a handler from the editor's event if the editor meets the predicate criteria. + * @param handler An object representing a handler. + * @param predicate An ASPxClientControlPredicate object representing a predicate criteria. + */ + DetachEditorModificationListener(handler: Object, predicate: ASPxClientControlPredicate): void; } interface ASPxClientBinaryImageStatic extends ASPxClientEditStatic { /** @@ -31538,11 +34645,41 @@ interface ASPxClientGridViewCallbackCommandStatic { * Default value: "TOOLBAR" */ Toolbar: string; + /** + * Default value: "EXPORT" + */ + Export: string; /** * Default value: "CUSTOMVALUES" */ CustomValues: string; } +interface ASPxClientGridExportFormatStatic { + /** + * Identifies Portable Document Format (.pdf). + */ + Pdf: string; + /** + * Identifies DOCX format (.docx). + */ + Docx: string; + /** + * Identifies Rich Text Format (.rtf). + */ + Rtf: string; + /** + * Identifies Comma Separated Values format (.csv). + */ + Csv: string; + /** + * Identifies Excel Binary File format (.xls). + */ + Xls: string; + /** + * Identifies XML spreadsheet file format (.xlsx). + */ + Xlsx: string; +} interface ASPxClientGridLookupStatic extends ASPxClientDropDownEditBaseStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -31557,6 +34694,8 @@ interface ASPxClientCardViewStatic extends ASPxClientGridBaseStatic { */ Cast(obj: Object): ASPxClientCardView; } +interface ASPxClientCardViewExportFormatStatic extends ASPxClientGridExportFormatStatic { +} interface ASPxClientGridViewStatic extends ASPxClientGridBaseStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -31564,6 +34703,8 @@ interface ASPxClientGridViewStatic extends ASPxClientGridBaseStatic { */ Cast(obj: Object): ASPxClientGridView; } +interface ASPxClientGridViewExportFormatStatic extends ASPxClientGridExportFormatStatic { +} interface ASPxClientVerticalGridStatic extends ASPxClientGridBaseStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -31577,6 +34718,8 @@ interface ASPxClientVerticalGridCallbackCommandStatic { */ ExpandRow: string; } +interface ASPxClientVerticalGridExportFormatStatic extends ASPxClientGridExportFormatStatic { +} interface ASPxClientCommandConstsStatic { /** * Identifies a command that shows a search panel. @@ -32106,6 +35249,27 @@ interface ASPxClientHtmlEditorStatic extends ASPxClientControlStatic { * @param data An object representing custom data associated with a custom dialog. */ CustomDialogComplete(status: Object, data: Object): void; + /** + * Highlights the text. + * @param text A string value specifying the text to be highlighted. + * @param searchContainer An object specifying the container where the specified text should be searched. + */ + HighlightText(text: string, searchContainer: Object): void; + /** + * Highlights the text with the specified settings. + * @param text A string value specifying the text to be highlighted. + * @param searchContainer An object specifying the container where the specified text should be searched. + * @param className A string value specifying the text color. + */ + HighlightText(text: string, searchContainer: Object, className: string): void; + /** + * Highlights the text with the specified text color and background color. + * @param text A string value specifying the text to be highlighted. + * @param searchContainer An object specifying the container where the specified text should be searched. + * @param color A string value specifying the text color. + * @param backgroundColor A string value specifying the background color. + */ + HighlightText(text: string, searchContainer: Object, color: string, backgroundColor: string): void; } interface ASPxClientHtmlEditorMediaPreloadModeStatic { /** @@ -32229,6 +35393,28 @@ interface ASPxClientTreeListStatic extends ASPxClientControlStatic { */ Cast(obj: Object): ASPxClientTreeList; } +interface ASPxClientTreeListExportFormatStatic { + /** + * Identifies Portable Document Format (.pdf). + */ + Pdf: string; + /** + * Identifies DOCX format (.docx). + */ + Docx: string; + /** + * Identifies Rich Text Format (.rtf). + */ + Rtf: string; + /** + * Identifies Excel Binary File format (.xls). + */ + Xls: string; + /** + * Identifies XML spreadsheet file format (.xlsx). + */ + Xlsx: string; +} interface BootstrapClientAccordionStatic extends ASPxClientNavBarStatic { } interface BootstrapClientBinaryImageStatic extends ASPxClientHyperLinkStatic { @@ -32239,14 +35425,6 @@ interface BootstrapClientCalendarStatic extends ASPxClientCalendarStatic { } interface BootstrapClientCallbackPanelStatic extends ASPxClientControlStatic { } -interface BootstrapClientChartBaseStatic extends ASPxClientControlStatic { -} -interface BootstrapClientChartStatic extends BootstrapClientChartBaseStatic { -} -interface BootstrapClientPolarChartStatic extends BootstrapClientChartBaseStatic { -} -interface BootstrapClientPieChartStatic extends BootstrapClientChartBaseStatic { -} interface BootstrapClientCheckBoxStatic extends ASPxClientEditStatic { } interface BootstrapClientRadioButtonStatic extends BootstrapClientCheckBoxStatic { @@ -32281,24 +35459,45 @@ interface BootstrapClientProgressBarStatic extends ASPxClientProgressBarStatic { } interface BootstrapClientSpinEditStatic extends ASPxClientSpinEditStatic { } +interface BootstrapClientTimeEditStatic extends ASPxClientTimeEditStatic { +} interface BootstrapClientTabControlStatic extends ASPxClientTabControlStatic { } interface BootstrapClientPageControlStatic extends ASPxClientPageControlStatic { } +interface BootstrapClientTagBoxStatic extends ASPxClientTokenBoxStatic { +} interface BootstrapClientTextBoxStatic extends ASPxClientTextBoxStatic { } interface BootstrapClientMemoStatic extends ASPxClientMemoStatic { } interface BootstrapClientButtonEditStatic extends ASPxClientButtonEditStatic { } -interface BootstrapClientTreeViewStatic extends ASPxClientTreeViewStatic { +interface BootstrapClientToolbarStatic extends BootstrapClientMenuStatic { } -interface BootstrapUIWidgetBaseStatic extends ASPxClientControlStatic { +interface BootstrapClientTreeViewStatic extends ASPxClientTreeViewStatic { } interface BootstrapClientUploadControlStatic extends ASPxClientUploadControlStatic { } +interface BootstrapClientUtilsStatic { + UpdateDefaultStyles(): void; +} interface BootstrapClientGridViewStatic extends ASPxClientGridViewStatic { } +interface BootstrapClientCardViewStatic extends ASPxClientGridViewStatic { +} +interface BootstrapUIWidgetBaseStatic extends ASPxClientControlStatic { +} +interface BootstrapClientChartBaseStatic extends BootstrapUIWidgetBaseStatic { +} +interface BootstrapClientChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientPolarChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientPieChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientRangeSelectorStatic extends BootstrapUIWidgetBaseStatic { +} interface MVCxClientCalendarStatic extends ASPxClientCalendarStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -32728,6 +35927,28 @@ interface ASPxClientFileManagerErrorConstsStatic { */ AlreadyExists: number; } +interface ASPxClientFileManagerCallbackCommandStatic { + GetAllItems: string; + GetFileList: string; + Refresh: string; + DeleteItems: string; + MoveItems: string; + CopyItems: string; + RenameItem: string; + Download: string; + ShowFolderBrowserDialog: string; + ShowCreateFolderEditorInTreeView: string; + CreateFolder: string; + SelectedFileOpened: string; + FoldersTreeView: string; + FolderBrowserTreeView: string; + GridView: string; + ChangeFolder: string; + ChangeFolderInTreeView: string; + CustomCallback: string; + VirtualScrolling: string; + GridViewVirtualScrolling: string; +} interface ASPxClientFormLayoutStatic extends ASPxClientControlStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -33384,10 +36605,10 @@ interface ASPxClientUtilsStatic { DeleteCookie(name: string): void; /** * Returns a specifically generated code that uniquely identifies the combination of keys specified via the parameters. - * @param keyCode An integer value that specifies the code of the key. - * @param isCtrlKey true if the CTRL key should be included into the key combination; otherwise, false. - * @param isShiftKey true if the SHIFT key should be included into the key combination; otherwise, false. - * @param isAltKey true if the ALT key should be included into the key combination; otherwise, false. + * @param keyCode An integer value that specifies the code of the key. Codes are available via the ASPx.KeyCode client object's members. + * @param isCtrlKey true, if the CTRL key should be included into the key combination; otherwise, false. + * @param isShiftKey true, if the SHIFT key should be included into the key combination; otherwise, false. + * @param isAltKey true, if the ALT key should be included into the key combination; otherwise, false. */ GetShortcutCode(keyCode: number, isCtrlKey: boolean, isShiftKey: boolean, isAltKey: boolean): number; /** @@ -33415,6 +36636,17 @@ interface ASPxClientUtilsStatic { * @param str A string value representing the string for trimming. */ TrimEnd(str: string): string; + /** + * Returns values of editors located in the specified container. + * @param containerOrId A container of editors, or its ID. + */ + GetEditorValuesInContainer(containerOrId: Object): Object; + /** + * Returns values of editors located in the specified container. + * @param containerOrId A container of editors, or its ID. + * @param processInvisibleEditors true to process both visible and invisible editors that belong to the specified container; false to process only visible editors. + */ + GetEditorValuesInContainer(containerOrId: Object, processInvisibleEditors: boolean): Object; /** * Specifies the text that Assistive Technologies (screen readers or braille display, for example) will provide to a user. * @param message A String value that specifies a text. @@ -33488,6 +36720,7 @@ declare var DashboardSpecialValues: DashboardSpecialValuesStatic; declare var DashboardExportPageLayout: DashboardExportPageLayoutStatic; declare var DashboardExportPaperKind: DashboardExportPaperKindStatic; declare var DashboardExportScaleMode: DashboardExportScaleModeStatic; +declare var DashboardExportDocumentScaleMode: DashboardExportDocumentScaleModeStatic; declare var DashboardExportFilterState: DashboardExportFilterStateStatic; declare var DashboardStateExportPosition: DashboardStateExportPositionStatic; declare var DashboardStateExcelExportPosition: DashboardStateExcelExportPositionStatic; @@ -33541,11 +36774,15 @@ declare var ASPxClientValidationSummary: ASPxClientValidationSummaryStatic; declare var ASPxClientGaugeControl: ASPxClientGaugeControlStatic; declare var ASPxClientGridBase: ASPxClientGridBaseStatic; declare var ASPxClientGridViewCallbackCommand: ASPxClientGridViewCallbackCommandStatic; +declare var ASPxClientGridExportFormat: ASPxClientGridExportFormatStatic; declare var ASPxClientGridLookup: ASPxClientGridLookupStatic; declare var ASPxClientCardView: ASPxClientCardViewStatic; +declare var ASPxClientCardViewExportFormat: ASPxClientCardViewExportFormatStatic; declare var ASPxClientGridView: ASPxClientGridViewStatic; +declare var ASPxClientGridViewExportFormat: ASPxClientGridViewExportFormatStatic; declare var ASPxClientVerticalGrid: ASPxClientVerticalGridStatic; declare var ASPxClientVerticalGridCallbackCommand: ASPxClientVerticalGridCallbackCommandStatic; +declare var ASPxClientVerticalGridExportFormat: ASPxClientVerticalGridExportFormatStatic; declare var ASPxClientCommandConsts: ASPxClientCommandConstsStatic; declare var ASPxClientHtmlEditor: ASPxClientHtmlEditorStatic; declare var ASPxClientHtmlEditorMediaPreloadMode: ASPxClientHtmlEditorMediaPreloadModeStatic; @@ -33567,15 +36804,12 @@ declare var ASPxClientSpellChecker: ASPxClientSpellCheckerStatic; declare var ASPxClientSpellCheckerStopCheckingReason: ASPxClientSpellCheckerStopCheckingReasonStatic; declare var ASPxClientSpreadsheet: ASPxClientSpreadsheetStatic; declare var ASPxClientTreeList: ASPxClientTreeListStatic; +declare var ASPxClientTreeListExportFormat: ASPxClientTreeListExportFormatStatic; declare var BootstrapClientAccordion: BootstrapClientAccordionStatic; declare var BootstrapClientBinaryImage: BootstrapClientBinaryImageStatic; declare var BootstrapClientButton: BootstrapClientButtonStatic; declare var BootstrapClientCalendar: BootstrapClientCalendarStatic; declare var BootstrapClientCallbackPanel: BootstrapClientCallbackPanelStatic; -declare var BootstrapClientChartBase: BootstrapClientChartBaseStatic; -declare var BootstrapClientChart: BootstrapClientChartStatic; -declare var BootstrapClientPolarChart: BootstrapClientPolarChartStatic; -declare var BootstrapClientPieChart: BootstrapClientPieChartStatic; declare var BootstrapClientCheckBox: BootstrapClientCheckBoxStatic; declare var BootstrapClientRadioButton: BootstrapClientRadioButtonStatic; declare var BootstrapClientComboBox: BootstrapClientComboBoxStatic; @@ -33593,15 +36827,25 @@ declare var BootstrapClientPopupControl: BootstrapClientPopupControlStatic; declare var BootstrapClientPopupMenu: BootstrapClientPopupMenuStatic; declare var BootstrapClientProgressBar: BootstrapClientProgressBarStatic; declare var BootstrapClientSpinEdit: BootstrapClientSpinEditStatic; +declare var BootstrapClientTimeEdit: BootstrapClientTimeEditStatic; declare var BootstrapClientTabControl: BootstrapClientTabControlStatic; declare var BootstrapClientPageControl: BootstrapClientPageControlStatic; +declare var BootstrapClientTagBox: BootstrapClientTagBoxStatic; declare var BootstrapClientTextBox: BootstrapClientTextBoxStatic; declare var BootstrapClientMemo: BootstrapClientMemoStatic; declare var BootstrapClientButtonEdit: BootstrapClientButtonEditStatic; +declare var BootstrapClientToolbar: BootstrapClientToolbarStatic; declare var BootstrapClientTreeView: BootstrapClientTreeViewStatic; -declare var BootstrapUIWidgetBase: BootstrapUIWidgetBaseStatic; declare var BootstrapClientUploadControl: BootstrapClientUploadControlStatic; +declare var BootstrapClientUtils: BootstrapClientUtilsStatic; declare var BootstrapClientGridView: BootstrapClientGridViewStatic; +declare var BootstrapClientCardView: BootstrapClientCardViewStatic; +declare var BootstrapUIWidgetBase: BootstrapUIWidgetBaseStatic; +declare var BootstrapClientChartBase: BootstrapClientChartBaseStatic; +declare var BootstrapClientChart: BootstrapClientChartStatic; +declare var BootstrapClientPolarChart: BootstrapClientPolarChartStatic; +declare var BootstrapClientPieChart: BootstrapClientPieChartStatic; +declare var BootstrapClientRangeSelector: BootstrapClientRangeSelectorStatic; declare var MVCxClientCalendar: MVCxClientCalendarStatic; declare var MVCxClientCallbackPanel: MVCxClientCallbackPanelStatic; declare var MVCxClientCardView: MVCxClientCardViewStatic; @@ -33651,6 +36895,7 @@ declare var ASPxClientDockZone: ASPxClientDockZoneStatic; declare var ASPxClientFileManager: ASPxClientFileManagerStatic; declare var ASPxClientFileManagerCommandConsts: ASPxClientFileManagerCommandConstsStatic; declare var ASPxClientFileManagerErrorConsts: ASPxClientFileManagerErrorConstsStatic; +declare var ASPxClientFileManagerCallbackCommand: ASPxClientFileManagerCallbackCommandStatic; declare var ASPxClientFormLayout: ASPxClientFormLayoutStatic; declare var ASPxClientHiddenField: ASPxClientHiddenFieldStatic; declare var ASPxClientHint: ASPxClientHintStatic; diff --git a/types/devexpress-web/v171/devexpress-web-tests.ts b/types/devexpress-web/v171/devexpress-web-tests.ts new file mode 100644 index 0000000000..ef7eb8de37 --- /dev/null +++ b/types/devexpress-web/v171/devexpress-web-tests.ts @@ -0,0 +1,418 @@ +declare var hiddenField: ASPxClientHiddenField; +declare var mainCallbackPanel: ASPxClientCallbackPanel; +declare var loginPopup: ASPxClientPopupControl; +declare var searchButton: ASPxClientButton; +declare var searchComboBox: ASPxClientComboBox; +declare var roomsNumberSpinEdit: ASPxClientSpinEdit; +declare var adultsNumberSpinEdit: ASPxClientSpinEdit; +declare var childrenNumberSpinEdit: ASPxClientSpinEdit; +declare var checkInDateEdit: ASPxClientDateEdit; +declare var checkOutDateEdit: ASPxClientDateEdit; +declare var backSlider: ASPxClientImageSlider; +declare var locationComboBox: ASPxClientComboBox; +declare var nightyRateTrackBar: ASPxClientTrackBar; +declare var customerRatingTrackBar: ASPxClientTrackBar; +declare var ourRatingCheckBoxList: ASPxClientCheckBoxList; +declare var startFilterPopupControl: ASPxClientPopupControl; +declare var imagePopupControl: ASPxClientPopupControl; +declare var emailTextBox: ASPxClientTextBox; +declare var creditCardEmailTextBox: ASPxClientTextBox; +declare var accountEmailTextBox: ASPxClientTextBox; +declare var bookingPageControl: ASPxClientPageControl; +declare var paymentTypePageControl: ASPxClientPageControl; +declare var offerFormPopup: ASPxClientPopupControl; +declare var roomsSpinEdit: ASPxClientSpinEdit; +declare var adultsSpinEdit: ASPxClientSpinEdit; +declare var childrenSpinEdit: ASPxClientSpinEdit; +declare var hotelDetailsCallbackPanel: ASPxClientCallbackPanel; +declare var leftPanel: ASPxClientPanel; +declare var menuButton: ASPxClientButton; +declare var aboutWindow: ASPxClientPopupControl; +declare var offersZone: ASPxClientDockZone; + +module DXDemo { + function showPage(page: string, params: { [key: string]: any }, skipHistory?: boolean): void { + var queryString = getQueryString(params || {}); + hiddenField.Set("page", page); + hiddenField.Set("parameters", queryString); + hideMenu(); + var uri = queryString.length ? (page + "?" + queryString) : page; + try { + if (!skipHistory && window.history && window.history.pushState) + window.history.pushState(uri, "", uri || "Default.aspx"); + } catch (e) { } + mainCallbackPanel.PerformCallback(uri); + }; + + export function onMainMenuItemClick(s: ASPxClientMenu, e: ASPxClientMenuItemClickEventArgs): void { + switch (e.item.name) { + case "login": + hideMenu(); + setTimeout(function () { loginPopup.ShowAtElementByID("MainCallbackPanel_ContentPane"); }, 300); + break; + case "offers": + showPage("SpecialOffers", {}); + break; + default: + hideMenu(); + setTimeout(function () { showAboutWindow(); }, 300); + break; + } + }; + + export function onLoginButtonClick(s: ASPxClientButton, e: ASPxClientButtonClickEventArgs): void { + loginPopup.Hide(); + showAboutWindow(); + }; + + export function onSearchButtonClick(): void { + if (ASPxClientEdit.ValidateGroup("DateEditors")) { + showPage("ShowHotels", { + location: searchComboBox.GetValue(), + checkin: getFormattedDate(checkInDateEdit.GetValue()), + checkout: getFormattedDate(checkOutDateEdit.GetValue()), + rooms: roomsNumberSpinEdit.GetValue() || 1, + adults: adultsNumberSpinEdit.GetValue() || 1, + children: childrenNumberSpinEdit.GetValue() || 0 + }); + } + }; + + export function onSearchComboBoxIndexChanged(s: ASPxClientComboBox, e: ASPxClientProcessingModeEventArgs): void { + hideMenu(); + searchButton.AdjustControl(); + }; + + export function onIndexOfferCloseClick(index: number): void { + var panel = ASPxClientControl.GetControlCollection().GetByName("OfferDockPanel" + index); + var sibPanel = ASPxClientControl.GetControlCollection().GetByName("OfferDockPanel" + (index == 1 ? 2 : 1)); + panel.Hide(); + sibPanel.MakeFloat(); + sibPanel.SetWidth(offersZone.GetWidth()); + sibPanel.Dock(offersZone); + }; + + export function onLogoClick(): void { + showPage("", null, false); + }; + + export function onMenuNavButtonCheckedChanged(s: ASPxClientCheckBox, e: ASPxClientProcessingModeEventArgs): void { + var mainContainer = mainCallbackPanel.GetMainElement(); + if (s.GetChecked()) { + backSlider.Pause(); + showMenu(); + } + else { + hideMenu(); + backSlider.Play(); + } + }; + + export function onBackNavButtonClick(s: ASPxClientButton, e: ASPxClientButtonClickEventArgs): void { + var params = getCurrentQueryParams(); + switch (getCurrentPage()) { + case "PrintInvoice": + showPage("Booking", params, false); + break; + case "Booking": + if (bookingPageControl.GetActiveTabIndex() > 0) + bookingPageControl.SetActiveTabIndex(bookingPageControl.GetActiveTabIndex() - 1); + else + showPage("ShowRooms", params, false); + break; + case "ShowRooms": + showPage("ShowHotels", params, false); + break; + case "ShowDetails": + showPage("ShowHotels", params, false); + break; + case "ShowHotels": + case "SpecialOffers": + showPage("", null, false); + break; + } + }; + + export function updateSearchResults(): void { + var params = getCurrentQueryParams(); + params["location"] = locationComboBox.GetValue(); + params["minprice"] = nightyRateTrackBar.GetPositionStart(); + params["maxprice"] = nightyRateTrackBar.GetPositionEnd(); + params["custrating"] = customerRatingTrackBar.GetPosition(); + params["ourrating"] = ourRatingCheckBoxList.GetSelectedValues().join(","); + showPage("ShowHotels", params); + }; + + export function onBookHotelButtonClick(hotelID: string): void { + var queryParams = getCurrentQueryParams(); + queryParams["hotelID"] = hotelID; + showPage("ShowRooms", queryParams); + }; + + export function onDetailsHotelButtonClick(hotelID: string): void { + var queryParams = getCurrentQueryParams(); + queryParams["hotelID"] = hotelID; + showPage("ShowDetails", queryParams); + }; + + export function onShowStartFilterButtonClick(s: ASPxClientButton, e: ASPxClientButtonClickEventArgs): void { + startFilterPopupControl.ShowAtElementByID("MainCallbackPanel_ContentPane"); + }; + + export function onChangeStartFilterButtonClick(s: ASPxClientButton, e: ASPxClientButtonClickEventArgs): void { + if (ASPxClientEdit.ValidateGroup("DateEditors")) { + var params = getCurrentQueryParams(); + params["checkin"] = getFormattedDate(checkInDateEdit.GetValue()); + params["checkout"] = getFormattedDate(checkOutDateEdit.GetValue()); + params["rooms"] = roomsNumberSpinEdit.GetValue() || 1; + params["adults"] = adultsNumberSpinEdit.GetValue() || 1; + params["children"] = childrenNumberSpinEdit.GetValue() || 0; + startFilterPopupControl.Hide(); + showPage(hiddenField.Get("page").toString(), params); + } + }; + + export function onBookRoomButtonClick(roomID: string): void { + var params = getCurrentQueryParams(); + params["roomID"] = roomID; + showPage("Booking", params); + }; + + export function onShowRoomsButtonClick(): void { + var queryParams = getCurrentQueryParams(); + showPage("ShowRooms", queryParams); + }; + + export function onShowDetailsButtonClick(): void { + var queryParams = getCurrentQueryParams(); + showPage("ShowDetails", queryParams); + }; + + export function onRoomImageNavItemClick(roomID: string, pictureName: string): void { + setTimeout(function () { + imagePopupControl.PerformCallback(roomID + "|" + pictureName); + imagePopupControl.ShowAtElementByID("MainCallbackPanel_ContentPane"); + }, 500); + }; + + export function onRoomsNavBarExpandedChanged(s: ASPxClientNavBar, e: ASPxClientNavBarGroupEventArgs): void { + ASPxClientControl.AdjustControls(s.GetMainElement()); + }; + + export function onNextBookingStepButtonClick(step: number): void { + var valid = true; + var validationGroup = ""; + if (step == 1) + validationGroup = "Account"; + if (step == 2) + validationGroup = "RoomDetails"; + if (step == 3) + validationGroup = "PaymentDetails"; + + switch (step) { + case 1: + valid = ASPxClientEdit.ValidateEditorsInContainer(bookingPageControl.GetMainElement(), "Account"); + if (valid) { + emailTextBox.SetValue(accountEmailTextBox.GetValue()); + creditCardEmailTextBox.SetValue(accountEmailTextBox.GetValue()); + showPage("Booking", getCurrentQueryParams()); + return; + } + break; + case 2: + valid = ASPxClientEdit.ValidateEditorsInContainer(bookingPageControl.GetMainElement(), "RoomDetails"); + emailTextBox.SetValue(accountEmailTextBox.GetValue()); + break; + case 3: + var paymentType = paymentTypePageControl.GetActiveTabIndex(); + if (paymentType == 0) + valid = ASPxClientEdit.ValidateEditorsInContainer(bookingPageControl.GetMainElement(), "CreditCard"); + else if (paymentType == 1) + valid = ASPxClientEdit.ValidateEditorsInContainer(bookingPageControl.GetMainElement(), "Cash"); + else if (paymentType == 2) + valid = ASPxClientEdit.ValidateEditorsInContainer(bookingPageControl.GetMainElement(), "PayPal"); + break; + } + if (valid) { + bookingPageControl.GetTab(step).SetEnabled(true); + bookingPageControl.SetActiveTabIndex(step); + } + }; + + export function onAccountCaptchaHiddenFieldInit(s: ASPxClientHiddenField, e: ASPxClientEventArgs): void { + if (s.Get("IsCaptchaValid")) { + bookingPageControl.GetTab(1).SetEnabled(true); + bookingPageControl.SetActiveTabIndex(1); + } + }; + + export function onFinishBookingStepButtonClick(): void { + showAboutWindow(); + }; + + export function OnPrintInvoiceButtonClick(): void { + showPage("PrintInvoice", getCurrentQueryParams()); + }; + + export function onOfferClick(offerID: string): void { + offerFormPopup.SetContentHtml(""); + offerFormPopup.PerformCallback(offerID); + var panel = ASPxClientControl.GetControlCollection().GetByName("DockPanel" + offerID); + var panelElement = panel.GetMainElement(); + if (panelElement.offsetWidth < 330 || panelElement.offsetHeight < 250) { + offerFormPopup.SetWidth(400); + offerFormPopup.SetHeight(280); + offerFormPopup.ShowAtElementByID("SpecialOffersContainer"); + } + else { + offerFormPopup.SetWidth(panelElement.offsetWidth); + offerFormPopup.SetHeight(panelElement.offsetHeight); + offerFormPopup.ShowAtElement(panelElement); + } + }; + + export function onSpecialOfferCheckButtonClick(hotelID: string, locationID: string): void { + if (ASPxClientEdit.ValidateGroup("DateEditors")) { + var queryParams: { [key: string]: any } = { + location: locationID, + hotelID: hotelID, + checkin: getFormattedDate(checkInDateEdit.GetValue()), + checkout: getFormattedDate(checkOutDateEdit.GetValue()), + rooms: roomsSpinEdit.GetValue() || 1, + adults: adultsSpinEdit.GetValue() || 1, + children: childrenSpinEdit.GetValue() || 0 + }; + showPage("ShowRooms", queryParams); + } + }; + + export function onIndexOfferClick(): void { + showPage("SpecialOffers", {}); + }; + + export function onControlsInit(): void { + ASPxClientUtils.AttachEventToElement(window, 'popstate', onHistoryPopState); + var pathParts = document.location.href.split("/"); + var url = pathParts[pathParts.length - 1]; + try { + if (window.history) + window.history.replaceState(url, ""); + } catch (e) { } + ASPxClientUtils.AttachEventToElement(window, "resize", onWindowResize); + if (ASPxClientUtils.iOSPlatform) { + // animate + } + }; + + export function updateRatingLabels(ratingControl: ASPxClientTrackBar) { + var start = ratingControl.GetPositionStart().toString(); + var end = ratingControl.GetPositionEnd().toString(); + document.getElementById("cpLeftLabelID").innerHTML = start + " " + end; + }; + + export function onRatingControlItemClick(s: ASPxClientRatingControl, e: ASPxClientRatingControlItemClickEventArgs): void { + hotelDetailsCallbackPanel.PerformCallback(s.GetValue().toString()); + }; + + export function onInputKeyDown(s: ASPxClientTextBox, e: ASPxClientEditKeyEventArgs): void { + var keyCode = ASPxClientUtils.GetKeyCode(e.htmlEvent); + if (keyCode == 13) + (s.GetInputElement()).blur(); + }; + + function getCurrentPage(): string { + var hfPage = hiddenField.Get("page"); + if (hfPage) + return hfPage; + var pathParts = document.location.pathname.split("/"); + return pathParts[pathParts.length - 1]; + }; + + function showAboutWindow(): void { + aboutWindow.ShowAtElementByID("MainCallbackPanel_ContentPane"); + }; + + function hideMenu(): void { + leftPanel.Collapse(); + if (menuButton.GetMainElement() && menuButton.GetChecked()) + menuButton.SetChecked(false); + }; + + function showMenu(): void { + leftPanel.Expand(); + }; + + var _resizeSpecialOffersTimeoutID = -1; + function onWindowResize(): void { + switch (hiddenField.Get("page")) { + case "SpecialOffers": + if (_resizeSpecialOffersTimeoutID == -1) + _resizeSpecialOffersTimeoutID = setTimeout(resizeSpecialOffers, 200); + break; + } + hidePopups("AboutWindow", "StartFilterPopupControl", "LoginPopup", "OfferFormPopup", "ImagePopupControl"); + }; + + function hidePopups(...names: string[]): void { + for (var i = 0; i < names.length; i++) { + var popupControl = ASPxClientControl.GetControlCollection().GetByName(names[i]); + popupControl.Hide(); + } + }; + + function resizeSpecialOffers(): void { + for (var i = 1; i <= 4; i++) { + var panel = ASPxClientControl.GetControlCollection().GetByName("DockPanel" + i); + if (panel && panel.IsVisible()) { + var zone = panel.GetOwnerZone(); + zone.SetWidth(((zone.GetMainElement()).parentNode).offsetWidth) + } + } + _resizeSpecialOffersTimeoutID = -1; + }; + + function getFormattedDate(date: Date): string { + return (date.getMonth() + 1) + "-" + date.getDate() + "-" + date.getFullYear(); + }; + + function getCurrentQueryParams(): { [key:string]: any } { + var hfParams = hiddenField.Get("parameters"); + if (hfParams) + return getParamsByQueryString(hfParams); + var query = document.location.search; + if (query[0] === "?") + query = query.substr(1); + return getParamsByQueryString(query); + }; + + function getQueryString(params: { [key:string]: any }): string { + var queryItems: any[] = []; + for (var key in params) { + if (!params.hasOwnProperty(key)) continue; + queryItems.push(key + "=" + params[key]); + } + if (queryItems.length > 0) + return queryItems.join("&"); + return ""; + }; + + function getParamsByQueryString(queryString: string): { [key: string]: string } { + var result: { [key: string]: any } = {}; + if (queryString) { + var queryStringArray = queryString.split("&"); + for (var i = 0; i < queryStringArray.length; i++) { + var part = queryStringArray[i].split('='); + if (part.length != 2) continue; + result[part[0]] = decodeURIComponent(part[1].replace(/\+/g, " ")); + } + } + return result; + }; + + function onHistoryPopState(evt: any): void { + if (evt.state !== null && evt.state !== undefined) { + var uriParts = evt.state.split("?"); + showPage(uriParts[0], getParamsByQueryString(uriParts[1]), true); + } + }; +} \ No newline at end of file diff --git a/types/devexpress-web/v171/index.d.ts b/types/devexpress-web/v171/index.d.ts new file mode 100644 index 0000000000..50aac382b1 --- /dev/null +++ b/types/devexpress-web/v171/index.d.ts @@ -0,0 +1,33698 @@ +// Type definitions for DevExpress ASP.NET v171.4 +// Project: http://devexpress.com/ +// Definitions by: DevExpress Inc. +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * A client-side counterpart of the DashboardViewer extension. + */ +interface MVCxClientDashboardViewer extends ASPxClientDashboardViewer { +} +/** + * Represents a list of records from the dashboard data source. + */ +interface ASPxClientDashboardItemUnderlyingData { + /** + * Gets the number of rows in the underlying data set. + */ + GetRowCount(): number; + /** + * Returns the value of the specified cell within the underlying data set. + * @param rowIndex An integer value that specifies the zero-based index of the required row. + * @param dataMember A String that specifies the required data member. + */ + GetRowValue(rowIndex: number, dataMember: string): Object; + /** + * Returns an array of data members available in a data source. + */ + GetDataMembers(): string[]; + /** + * Returns whether or not a request for underlying data was successful. + */ + IsDataReceived(): boolean; + /** + * Returns a callstack containing the error caused by an unsuccessful request for underlying data. + */ + GetRequestDataError(): string; +} +/** + * Contains parameters used to obtain the underlying data for the dashboard item. + */ +interface ASPxClientDashboardItemRequestUnderlyingDataParameters { + /** + * Gets or sets an array of data member identifiers used to obtain underlying data. + * Value: An array of string values that specify data member identifiers. + */ + DataMembers: string[]; + /** + * Gets or sets axis points used to obtain the underlying data. + * Value: An array of ASPxClientDashboardItemDataAxisPoint objects that represent axis points. + */ + AxisPoints: ASPxClientDashboardItemDataAxisPoint[]; + /** + * Gets or sets the dimension value used to obtain the underlying data. + * Value: The dimension value. + */ + ValuesByAxisName: Object; + /** + * Gets or sets the unique dimension value used to obtain the underlying data. + * Value: The unique dimension value. + */ + UniqueValuesByAxisName: Object; +} +/** + * References a method executed after an asynchronous request is complete. + */ +interface ASPxClientDashboardItemRequestUnderlyingDataCompleted { + /** + * References a method executed after an asynchronous request is completed. + * @param data An ASPxClientDashboardItemUnderlyingData object that represents a list of records from the dashboard data source. + */ + (data: ASPxClientDashboardItemUnderlyingData): void; +} +/** + * References a method that will handle the ItemClick events. + */ +interface ASPxClientDashboardItemClickEventHandler { + /** + * References a method that will handle the ItemClick events. + * @param source The event source. + * @param e A ASPxClientDashboardItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemClickEventArgs): void; +} +/** + * Provides data for the ItemClick events. + */ +interface ASPxClientDashboardItemClickEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dashboard item for which the event has been raised. + * Value: A string value that is the dashboard item name. + */ + ItemName: string; + /** + * Gets the dashboard item's client data. + */ + GetData(): ASPxClientDashboardItemData; + /** + * Returns the axis point corresponding to the clicked visual element. + * @param axisName A string value returned by the DashboardDataAxisNames class that specifies the name of the data axis. + */ + GetAxisPoint(axisName: string): ASPxClientDashboardItemDataAxisPoint; + /** + * Gets measures corresponding to the clicked visual element. + */ + GetMeasures(): ASPxClientDashboardItemDataMeasure[]; + /** + * Gets deltas corresponding to the clicked visual element. + */ + GetDeltas(): ASPxClientDashboardItemDataDelta[]; + /** + * Gets the dimensions used to create a hierarchy of axis points for the specified axis. + * @param axisName A string value returned by the DashboardDataAxisNames class that specifies the name of the data axis. + */ + GetDimensions(axisName: string): ASPxClientDashboardItemDataDimension[]; + /** + * Requests underlying data corresponding to the clicked visual element. + * @param onCompleted A ASPxClientDashboardItemRequestUnderlyingDataCompleted object that references a method executed after the request is completed. + * @param dataMembers An array of string values that specify data members used to obtain underlying data. + */ + RequestUnderlyingData(onCompleted: ASPxClientDashboardItemRequestUnderlyingDataCompleted, dataMembers: string[]): void; +} +/** + * References a method that will handle the ItemVisualInteractivity events. + */ +interface ASPxClientDashboardItemVisualInteractivityEventHandler { + /** + * References a method that will handle the ItemVisualInteractivity events. + * @param source The event source. + * @param e A ASPxClientDashboardItemVisualInteractivityEventArgs object containing event data. + */ + (source: S, e: ASPxClientDashboardItemVisualInteractivityEventArgs): void; +} +/** + * Provides data for the ItemVisualInteractivity events. + */ +interface ASPxClientDashboardItemVisualInteractivityEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item for which the event was raised. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; + /** + * Gets the selection mode for dashboard item elements. + */ + GetSelectionMode(): string; + /** + * Sets the selection mode for dashboard item elements. + * @param selectionMode A String that specifies the selection mode. + */ + SetSelectionMode(selectionMode: string): void; + /** + * Returns whether or not highlighting is enabled for the current dashboard item. + */ + IsHighlightingEnabled(): boolean; + /** + * Enables highlighting for the current dashboard item. + * @param enableHighlighting true, to enable highlighting; otherwise, false. + */ + EnableHighlighting(enableHighlighting: boolean): void; + /** + * Gets data axes used to perform custom interactivity actions. + */ + GetTargetAxes(): string[]; + /** + * Sets data axes used to perform custom interactivity actions. + * @param targetAxes An array of String objects that specify names of data axes. + */ + SetTargetAxes(targetAxes: string[]): void; + /** + * Gets the default selection for the current dashboard item. + */ + GetDefaultSelection(): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Sets the default selection for the current dashboard item. + * @param values An array of ASPxClientDashboardItemDataAxisPointTuple objects specifying axis point tuples used to select default elements. + */ + SetDefaultSelection(values: ASPxClientDashboardItemDataAxisPointTuple[]): void; +} +/** + * References a method that will handle the ItemSelectionChanged events. + */ +interface ASPxClientDashboardItemSelectionChangedEventHandler { + /** + * References a method that will handle the ItemSelectionChanged events. + * @param source The event source. + * @param e A ASPxClientDashboardItemSelectionChangedEventArgs object containing event data. + */ + (source: S, e: ASPxClientDashboardItemSelectionChangedEventArgs): void; +} +/** + * Provides data for the ItemSelectionChanged events. + */ +interface ASPxClientDashboardItemSelectionChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item for which the event was raised. + * Value: A string that is the component name of the dashboard item. + */ + ItemName: string; + /** + * Gets currently selected elements. + */ + GetCurrentSelection(): ASPxClientDashboardItemDataAxisPointTuple[]; +} +/** + * References a method that will handle the ItemElementCustomColor event. + */ +interface ASPxClientDashboardItemElementCustomColorEventHandler { + /** + * References a method that will handle the ItemElementCustomColor events. + * @param source The event source. + * @param e An ASPxClientDashboardItemElementCustomColorEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemElementCustomColorEventArgs): void; +} +/** + * Provides data for the ItemElementCustomColor events. + */ +interface ASPxClientDashboardItemElementCustomColorEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item for which the event was raised. + * Value: A string value that is the component name of the dashboard item for which the event was raised. + */ + ItemName: string; + /** + * Gets the axis point tuple that corresponds to the current dashboard item element. + */ + GetTargetElement(): ASPxClientDashboardItemDataAxisPointTuple; + /** + * Gets the color of the current dashboard item element. + */ + GetColor(): string; + /** + * Sets the color of the current dashboard item element. + * @param color A String that specifies the color of the current dashboard item element. + */ + SetColor(color: string): void; + /** + * Gets measures corresponding to the current dashboard item element. + */ + GetMeasures(): ASPxClientDashboardItemDataMeasure[]; +} +/** + * References a method that will handle the ItemWidgetCreated events. + */ +interface ASPxClientDashboardItemWidgetCreatedEventHandler { + /** + * References a method that will handle the ItemWidgetCreated events. + * @param source The event source. + * @param e A ASPxClientDashboardItemWidgetEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemWidgetEventArgs): void; +} +/** + * References a method that will handle the ItemWidgetUpdating event. + */ +interface ASPxClientDashboardItemWidgetUpdatingEventHandler { + /** + * References a method that will handle the ItemWidgetUpdating event. + * @param source The event source. + * @param e A ASPxClientDashboardItemWidgetEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemWidgetEventArgs): void; +} +/** + * References a method that will handle the ItemWidgetUpdated event. + */ +interface ASPxClientDashboardItemWidgetUpdatedEventHandler { + /** + * References a method that will handle the ItemWidgetUpdated event. + * @param source The event source. + * @param e A ASPxClientDashboardItemWidgetEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemWidgetEventArgs): void; +} +/** + * References a method that will handle the ItemBeforeWidgetDisposed events. + */ +interface ASPxClientDashboardItemBeforeWidgetDisposedEventHandler { + /** + * References a method that will handle the ItemBeforeWidgetDisposed events. + * @param source The event source. + * @param e A ASPxClientDashboardItemWidgetEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemWidgetEventArgs): void; +} +/** + * Provides data for events related to client widgets used to visualize data in dashboard items. + */ +interface ASPxClientDashboardItemWidgetEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item for which the event was raised. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; + /** + * Returns an underlying widget corresponding to the current dashboard item. + */ + GetWidget(): Object; +} +/** + * Represents multidimensional data visualized in the dashboard item. + */ +interface ASPxClientDashboardItemData { + /** + * Gets the names of the axes that constitute the current ASPxClientDashboardItemData. + */ + GetAxisNames(): string[]; + /** + * Returns the specified data axis. + * @param axisName A string value returned by the DashboardDataAxisNames class that specifies the name of the data axis. + */ + GetAxis(axisName: string): ASPxClientDashboardItemDataAxis; + /** + * Gets the dimensions used to create a hierarchy of axis points for the specified axis. + * @param axisName A string value returned by the DashboardDataAxisNames class that specifies the name of the data axis. + */ + GetDimensions(axisName: string): ASPxClientDashboardItemDataDimension[]; + /** + * Gets the measures for the current ASPxClientDashboardItemData object. + */ + GetMeasures(): ASPxClientDashboardItemDataMeasure[]; + /** + * Gets the deltas for the current ASPxClientDashboardItemData object. + */ + GetDeltas(): ASPxClientDashboardItemDataDelta[]; + /** + * Gets the slice of the current ASPxClientDashboardItemData object by the specified axis point tuple. + * @param tuple A ASPxClientDashboardItemDataAxisPointTuple object that is a tuple of axis points. + */ + GetSlice(tuple: ASPxClientDashboardItemDataAxisPointTuple): ASPxClientDashboardItemData; + /** + * Gets the slice of the current ASPxClientDashboardItemData object by the specified axis point. + * @param axisPoint An ASPxClientDashboardItemDataAxisPoint object that is the data point in a multidimensional space. + */ + GetSlice(axisPoint: ASPxClientDashboardItemDataAxisPoint): ASPxClientDashboardItemData; + /** + * Returns a total summary value for the specified measure. + * @param measureId A String that is the measure identifier. + */ + GetMeasureValue(measureId: string): ASPxClientDashboardItemDataMeasureValue; + /** + * Gets the summary value for the specified delta. + * @param deltaId A String that is the data item identifier. + */ + GetDeltaValue(deltaId: string): ASPxClientDashboardItemDataDeltaValue; + /** + * Returns an array of data members available in a data source. + */ + GetDataMembers(): string[]; + /** + * Creates a tuple based on the specified axes names and corresponding values. + * @param values An array of name-value pairs containing the axis name and corresponding values. + */ + CreateTuple(values: Object[]): ASPxClientDashboardItemDataAxisPointTuple; + /** + * Creates a tuple based on the specified axis points. + * @param axisPoints An array of ASPxClientDashboardItemDataAxisPoint objects that specify axis points belonging to different data axes. + */ + CreateTuple(axisPoints: ASPxClientDashboardItemDataAxisPoint[]): ASPxClientDashboardItemDataAxisPointTuple; +} +/** + * An axis that contains data points corresponding to the specified value hierarchy. + */ +interface ASPxClientDashboardItemDataAxis { + /** + * Gets the dimensions used to create a hierarchy of axis points belonging to the current axis. + */ + GetDimensions(): ASPxClientDashboardItemDataDimension[]; + /** + * Gets the root axis point belonging to the current ASPxClientDashboardItemDataAxis. + */ + GetRootPoint(): ASPxClientDashboardItemDataAxisPoint; + /** + * Returns axis points corresponding to values of the last-level dimension. + */ + GetPoints(): ASPxClientDashboardItemDataAxisPoint[]; + /** + * Returns axis points corresponding to the specified dimension. + * @param dimensionId A String that is the dimension identifier. + */ + GetPointsByDimension(dimensionId: string): ASPxClientDashboardItemDataAxisPoint[]; + /** + * Returns the data point for the specified axis by unique values. + * @param uniqueValues A hierarchy of unique values identifying the required data point. + */ + GetPointByUniqueValues(uniqueValues: Object[]): ASPxClientDashboardItemDataAxisPoint; +} +/** + * Contains the dimension metadata. + */ +interface ASPxClientDashboardItemDataDimension { + /** + * Gets the dimension identifier. + * Value: A string value that is the dimension identifier. + */ + Id: string; + /** + * Gets or sets the name of the dimension. + * Value: A string value that is the name of the dimension. + */ + Name: string; + /** + * Gets the data member identifier for the current dimension. + * Value: A string value that identifies a data member. + */ + DataMember: string; + /** + * Gets the group interval for date-time values for the current dimension. + * Value: A string value that represents how date-time values are grouped. + */ + DateTimeGroupInterval: string; + /** + * Gets the group interval for string values. + * Value: A string value that specifies the group interval for string values. + */ + TextGroupInterval: string; + /** + * Formats the specified value using format settings of the current dimension. + * @param value A value to be formatted. + */ + Format(value: Object): string; +} +/** + * Contains the measure metadata. + */ +interface ASPxClientDashboardItemDataMeasure { + /** + * Gets the measure identifier. + * Value: A string value that is the measure identifier. + */ + Id: string; + /** + * Gets the name of the measure. + * Value: A string value that is the name of the measure. + */ + Name: string; + /** + * Gets the data member that identifies the data source list used to provide data for the current measure. + * Value: A string value that identifies the data source list used to provide data for the current measure. + */ + DataMember: string; + /** + * Gets the type of summary function calculated against the current measure. + * Value: A string value that identifies the type of summary function calculated against the current measure. + */ + SummaryType: string; + /** + * Formats the specified value using format settings of the current measure. + * @param value A value to be formatted. + */ + Format(value: Object): string; +} +/** + * Contains the delta metadata. + */ +interface ASPxClientDashboardItemDataDelta { + /** + * Gets the data item identifier. + * Value: A string that is the data item identifier. + */ + Id: string; + /** + * Gets the name of the data item container. + * Value: A string value that is the name of the data item container. + */ + Name: string; + /** + * Gets the identifier for the measure that provides actual values. + * Value: A string value that is the measure identifier. + */ + ActualMeasureId: string; + /** + * Gets the identifier for the measure that provides target values. + * Value: A string value that is the measure identifier. + */ + TargetMeasureId: string; +} +/** + * Provides dimension values at the specified axis point. + */ +interface ASPxClientDashboardItemDataDimensionValue { + /** + * Gets the current dimension value. + */ + GetValue(): Object; + /** + * Gets the unique value for the current dimension value. + */ + GetUniqueValue(): Object; + /** + * Gets the display text for the current dimension value. + */ + GetDisplayText(): string; +} +/** + * Provides the measure value and display text. + */ +interface ASPxClientDashboardItemDataMeasureValue { + /** + * Gets the measure value. + */ + GetValue(): Object; + /** + * Gets the measure display text. + */ + GetDisplayText(): string; +} +/** + * Provides delta element values. + */ +interface ASPxClientDashboardItemDataDeltaValue { + /** + * Provides access to the actual value displayed within the delta element. + */ + GetActualValue(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the target value. + */ + GetTargetValue(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the absolute difference between the actual and target values. + */ + GetAbsoluteVariation(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the percent of variation between the actual and target values. + */ + GetPercentVariation(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the percentage of the actual value in the target value. + */ + GetPercentOfTarget(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the main delta value. + */ + GetDisplayValue(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the first additional delta value. + */ + GetDisplaySubValue1(): ASPxClientDashboardItemDataMeasureValue; + /** + * Provides access to the second additional delta value. + */ + GetDisplaySubValue2(): ASPxClientDashboardItemDataMeasureValue; + /** + * Gets the value specifying the condition for displaying the delta indication. + */ + GetIsGood(): ASPxClientDashboardItemDataMeasureValue; + /** + * Gets the type of delta indicator. + */ + GetIndicatorType(): ASPxClientDashboardItemDataMeasureValue; +} +/** + * A point on the data axis. + */ +interface ASPxClientDashboardItemDataAxisPoint { + /** + * Gets the name of the axis to which the current axis point belongs. + */ + GetAxisName(): string; + /** + * Gets the last level dimension corresponding to the current axis point. + */ + GetDimension(): ASPxClientDashboardItemDataDimension; + /** + * Gets the collection of dimensions used to create a hierarchy of axis points from the root point to the current axis point. + */ + GetDimensions(): ASPxClientDashboardItemDataDimension[]; + /** + * Gets the value corresponding to the current axis point. + */ + GetValue(): Object; + /** + * Gets the display text corresponding to the current axis point. + */ + GetDisplayText(): string; + /** + * Gets the unique value corresponding to the current axis point. + */ + GetUniqueValue(): Object; + /** + * Gets the dimension values at the specified axis point. + */ + GetDimensionValue(): ASPxClientDashboardItemDataDimensionValue; + /** + * Gets the dimension value at the current axis point. + * @param dimensionId A String value that specifies the dimension identifier. + */ + GetDimensionValue(dimensionId: string): ASPxClientDashboardItemDataDimensionValue; + /** + * Gets the child axis points for the current axis point. + */ + GetChildren(): ASPxClientDashboardItemDataAxisPoint[]; + /** + * Gets the parent axis point for the current axis point. + */ + GetParent(): ASPxClientDashboardItemDataAxisPoint; +} +/** + * Represents a tuple of axis points. + */ +interface ASPxClientDashboardItemDataAxisPointTuple { + /** + * Returns the axis point belonging to the default data axis. + */ + GetAxisPoint(): ASPxClientDashboardItemDataAxisPoint; + /** + * Returns the axis point belonging to the specified data axis. + * @param axisName A string value returned by the DashboardDataAxisNames class that specifies the name of the data axis. + */ + GetAxisPoint(axisName: string): ASPxClientDashboardItemDataAxisPoint; +} +/** + * A range in the Range Filter dashboard item. + */ +interface ASPxClientDashboardRangeFilterSelection { + /** + * Gets or sets a maximum value in the range of the Range Filter dashboard item. + * Value: A maximum value in the range of the Range Filter dashboard item. + */ + Maximum: Object; + /** + * Gets or sets a minimum value in the range of the Range Filter dashboard item. + * Value: A minimum value in the range of the Range Filter dashboard item. + */ + Minimum: Object; +} +/** + * A collection of ASPxClientDashboardParameter objects. + */ +interface ASPxClientDashboardParameters { + /** + * Returns an array of dashboard parameters from the ASPxClientDashboardParameters collection. + */ + GetParameterList(): ASPxClientDashboardParameter[]; + /** + * Returns a dashboard parameter by its name. + * @param name A String object that specifies the parameter name. + */ + GetParameterByName(name: string): ASPxClientDashboardParameter; + /** + * Returns a dashboard parameter by its index in the ASPxClientDashboardParameters collection. + * @param index An integer value that specifies the parameter index. + */ + GetParameterByIndex(index: number): ASPxClientDashboardParameter; +} +/** + * A client-side dashboard parameter. + */ +interface ASPxClientDashboardParameter { + /** + * Gets the dashboard parameter name on the client side. + * Value: A string value that is the dashboard parameter name on the client side. + */ + Name: string; + /** + * Gets the dashboard parameter value on the client side. + * Value: A string value that specifies the dashboard parameter value on the client side. + */ + Value: Object; + /** + * Returns a parameter name. + */ + GetName(): string; + /** + * Returns a current parameter value(s). + */ + GetValue(): Object; + /** + * Specifies the current parameter value(s). + * @param value The current parameter value(s). + */ + SetValue(value: Object): void; + /** + * Returns a default parameter value. + */ + GetDefaultValue(): Object; + /** + * Returns the parameter's description displayed to an end-user. + */ + GetDescription(): string; + /** + * Returns a parameter type. + */ + GetType(): string; + /** + * Returns possible parameter values. + */ + GetValues(): ASPxClientDashboardParameterValue[]; +} +/** + * Provides access to the parameter value and display text. + */ +interface ASPxClientDashboardParameterValue { + /** + * Returns the parameter display text. + */ + GetDisplayText(): string; + /** + * Returns a parameter value. + */ + GetValue(): Object; +} +/** + * Contains settings that specify parameters affecting how the dashboard or dashboard item is exported in Image format. + */ +interface ImageFormatOptions { + /** + * Gets or sets an image format in which the dashboard (dashboard item) is exported. + * Value: A value returned by the DashboardExportImageFormat class that specifies an image format in which the dashboard (dashboard item) is exported. + */ + Format: string; + /** + * Gets or sets the resolution (in dpi) used to export a dashboard (dashboard item) in Image format. + * Value: An integer value that specifies the resolution (in dpi) used to export a dashboard (dashboard item) in Image format. + */ + Resolution: number; +} +/** + * Contains options which define how the dashboard item is exported to Excel format. + */ +interface ExcelFormatOptions { + /** + * Gets or sets the Excel format in which the dashboard item is exported. + * Value: A value returned by the DashboardExportExcelFormat class that specifies the Excel format in which the dashboard item is exported. + */ + Format: string; + /** + * Gets or sets a character used to separate values in a CSV document. + * Value: A string value that specifies the character used to separate values in a CSV document. + */ + CsvValueSeparator: string; +} +/** + * Contains settings that specify parameters affecting how the Grid dashboard item is exported. + */ +interface GridExportOptions { + /** + * Gets or sets whether the size of the Grid dashboard item is changed according to the width of the exported page. + * Value: true, to change the size of the Grid dashboard item according to the width of the exported page; otherwise, false. + */ + FitToPageWidth: boolean; + /** + * Gets or sets whether to print column headers of the Grid dashboard item on every page. + * Value: true, to print column headers on every page; otherwise, false. + */ + PrintHeadersOnEveryPage: boolean; +} +/** + * Contains settings that specify parameters affecting how the Pivot dashboard item is exported. + */ +interface PivotExportOptions { + /** + * Gets or sets whether to print the column headers of the Pivot dashboard item on every page. + * Value: true, to print column headers on every page; otherwise, false. + */ + PrintHeadersOnEveryPage: boolean; +} +/** + * Contains settings that specify parameters affecting how the Pie dashboard item is exported. + */ +interface PieExportOptions { + /** + * Gets or sets whether dashboard item elements are arranged automatically on the exported page. + * Value: true, to arrange dashboard item elements automatically on the exported page; otherwise, false. + */ + AutoArrangeContent: boolean; +} +/** + * Contains settings that specify parameters affecting how the Gauge dashboard item is exported. + */ +interface GaugeExportOptions { + /** + * Gets or sets whether dashboard item elements are arranged automatically on the exported page. + * Value: true, to arrange dashboard item elements automatically on the exported page; otherwise, false. + */ + AutoArrangeContent: boolean; +} +/** + * Contains settings that specify parameters affecting how the Card dashboard item is exported. + */ +interface CardExportOptions { + /** + * Gets or sets whether dashboard item elements are arranged automatically on the exported page. + * Value: true, to arrange dashboard item elements automatically on the exported page; otherwise, false. + */ + AutoArrangeContent: boolean; +} +/** + * Contains settings that specify parameters affecting how the Range Filter dashboard item is exported. + */ +interface RangeFilterExportOptions { + /** + * Gets or sets whether the page orientation used to export a Range Filter dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export a Range Filter dashboard item; otherwise, false. + */ + AutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Range Filter dashboard item. + * Value: A value returned by the RangeFilterExportSizeMode class that specifies the export size mode for the Range Filter dashboard item. + */ + SizeMode: string; +} +/** + * Contains settings that specify parameters affecting how Chart dashboard items are exported. + */ +interface ChartExportOptions { + /** + * Gets or sets whether the page orientation used to export a Chart dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export a Chart dashboard item; otherwise, false. + */ + AutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Chart dashboard item. + * Value: A value returned by the ChartExportSizeMode class that specifies the export size mode for the Chart dashboard item. + */ + SizeMode: string; +} +/** + * Contains settings that specify parameters affecting how Map dashboard items are exported. + */ +interface MapExportOptions { + /** + * Gets or sets whether the page orientation used to export a map dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export a map dashboard item; otherwise, false. + */ + AutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the map dashboard item. + * Value: A value returned by the MapExportSizeMode class that specifies specifies the export size mode for the map dashboard item. + */ + SizeMode: string; +} +/** + * Contains settings that specify parameters affecting how the dashboard (dashboard item) is exported. + */ +interface ASPxClientDashboardExportOptions { + /** + * Gets or sets the standard paper size. + * Value: A string value returned by the DashboardExportPaperKind class that specifies the standard paper size. + */ + PaperKind: string; + /** + * Gets or sets the page orientation used to export a dashboard (dashboard item). + * Value: A string value returned by the DashboardExportPageLayout class that specifies the page orientation used to export a dashboard (dashboard item). + */ + PageLayout: string; + /** + * Gets or sets the mode for scaling when exporting a dashboard (dashboard item). + * Value: A string value returned by the DashboardExportScaleMode class that specifies the mode for scaling when exporting a dashboard (dashboard item). + */ + ScaleMode: string; + /** + * Gets or sets the scale factor (in fractions of 1) by which a dashboard (dashboard item) is scaled. + * Value: A Single value that specifies the scale factor by which a dashboard (dashboard item) is scaled. + */ + ScaleFactor: number; + /** + * Gets or sets the number of horizontal/vertical pages spanning the total width/height of a dashboard (dashboard item). + * Value: An integer value that specifies the number of horizontal/vertical pages spanning the total width/height of a dashboard (dashboard item). + */ + AutoFitPageCount: number; + /** + * Gets or sets the title of the exported document. + * Value: A string value that specifies the title of the exported document. + */ + Title: string; + /** + * Gets or sets whether a dashboard title (or dashboard item's caption) is included as the exported document title. + * Value: A boolean value that specifies whether a dashboard title (or dashboard item's caption) is included as the exported document title. + */ + ShowTitle: boolean; + /** + * Gets or sets the filter state's location on the exported document. + * Value: A string value returned by the DashboardExportFilterState class that specifies the filter state's location on the exported document. + */ + FilterState: string; + /** + * Provides access to options for exporting a dashboard or individual items in Image format. + * Value: An ImageFormatOptions object containing settings that specify parameters affecting how the dashboard or dashboard item is exported in Image format. + */ + ImageOptions: ImageFormatOptions; + /** + * Provides access to options for exporting individual dashboard items in Excel format. + * Value: An ExcelFormatOptions object containing settings that specify parameters affecting how the dashboard item is exported in Excel format. + */ + ExcelOptions: ExcelFormatOptions; + /** + * Provides access to options for exporting a Grid dashboard item. + * Value: A GridExportOptions object containing settings that specify parameters that affect how Grid dashboard items are exported. + */ + GridOptions: GridExportOptions; + /** + * Provides access to options for exporting a Pivot dashboard item. + * Value: A PivotExportOptions object containing settings that specify parameters that affect how Pivot dashboard items are exported. + */ + PivotOptions: PivotExportOptions; + /** + * Provides access to options for exporting a Pie dashboard item. + * Value: A PieExportOptions object containing settings that specify parameters that affect how Pie dashboard items are exported. + */ + PieOptions: PieExportOptions; + /** + * Provides access to options for exporting a Gauge dashboard item. + * Value: A GaugeExportOptions object containing settings that specify parameters that affect how Gauge dashboard items are exported. + */ + GaugeOptions: GaugeExportOptions; + /** + * Provides access to options for exporting a Card dashboard item. + * Value: A CardExportOptions object containing settings that specify parameters that affect how Card dashboard items are exported. + */ + CardOptions: CardExportOptions; + /** + * Provides access to options for exporting a Range Filter dashboard item. + * Value: A RangeFilterExportOptions object containing settings that specify parameters affecting how the Range Filter dashboard item is exported. + */ + RangeFilterOptions: RangeFilterExportOptions; + /** + * Provides access to options for exporting a Chart dashboard item. + * Value: A ChartExportOptions object containing settings that specify parameters that affect how Chart dashboard items are exported. + */ + ChartOptions: ChartExportOptions; + /** + * Provides access to options for exporting map dashboard items. + * Value: A MapExportOptions object containing settings that specify parameters that affect how map dashboard items are exported. + */ + MapOptions: MapExportOptions; +} +/** + * Contains options related to exporting a dashboard/dashboard item to the PDF format. + */ +interface DashboardPdfExportOptions { + /** + * Gets or sets the type of paper for the exported document. + * Value: A DashboardExportPaperKind value that specifies the type of paper for the exported document. + */ + PaperKind: string; + /** + * Gets or sets the page orientation used to export a dashboard/dashboard item. + * Value: A DashboardExportPageLayout value that specifies the page orientation used to export a dashboard/dashboard item. + */ + PageLayout: string; + /** + * Gets or sets the mode for scaling a dashboard/dashboard item in the exported document. + * Value: A DashboardExportScaleMode value that specifies the mode for scaling a dashboard/dashboard item in the exported document. + */ + ScaleMode: string; + /** + * Gets or sets the scale factor (in fractions of 1), by which a dashboard/dashboard item is scaled in the exported document. + * Value: A Single value that specifies the scale factor by which a dashboard/dashboard item is scaled in the exported document. + */ + ScaleFactor: number; + /** + * Gets or sets the number of horizontal/vertical pages spanning the total width/height of a dashboard/dashboard item. + * Value: An integer value that specifies the number of horizontal/vertical pages spanning the total width/height of a dashboard/dashboard item. + */ + AutoFitPageCount: number; + /** + * Gets or sets the title of the exported document. + * Value: A string value that specifies the title of the exported document. + */ + Title: string; + /** + * Gets or sets whether a dashboard title (or dashboard item's caption) is included as the exported document title. + * Value: A boolean value that specifies whether a dashboard title (or dashboard item's caption) is included as the exported document title. + */ + ShowTitle: boolean; + /** + * Gets or sets whether to add the state of master filter items to the exported document. + * Value: true, to add the state of master filter items to the exported document; otherwise, false. + */ + ExportFilters: boolean; + /** + * Gets or sets whether to add current parameter values to the exported document. + * Value: true, to add current parameter values to the exported document; otherwise, false. + */ + ExportParameters: boolean; + /** + * Gets or sets whether to add current values of a hidden parameter to the exported document. + * Value: true, to add current values of a hidden parameter to the exported document; otherwise, false. + */ + IncludeHiddenParameters: boolean; + /** + * Gets or sets a position of the dashboard state (such as master filter or current parameter values) in the exported document. + * Value: A DashboardStateExportPosition object that specifies the position of the dashboard state in the exported document. + */ + DashboardStatePosition: string; + /** + * Gets or sets whether cards within the Card dashboard item are arranged automatically on the exported page. + * Value: true, to arrange cards automatically on the exported page; otherwise, false. + */ + CardAutoArrangeContent: boolean; + /** + * Gets or sets whether the page orientation used to export the Chart dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export the Chart dashboard item; otherwise, false. + */ + ChartAutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Chart dashboard item. + * Value: A ChartExportSizeMode value that specifies the export size mode for the Chart dashboard item. + */ + ChartSizeMode: string; + /** + * Gets or sets whether gauges within the Gauge dashboard item are arranged automatically on the exported page. + * Value: true, to arrange gauges automatically on the exported page; otherwise, false. + */ + GaugeAutoArrangeContent: boolean; + /** + * Gets or sets whether the size of the Grid dashboard item is changed according to the width of the exported page. + * Value: true, to change the size of the Grid dashboard item according to the width of the exported page; otherwise, false. + */ + GridFitToPageWidth: boolean; + /** + * Gets or sets whether to add column headers of the Grid dashboard item to every page. + * Value: true, to add column headers to every page; otherwise, false. + */ + GridPrintHeadersOnEveryPage: boolean; + /** + * Gets or sets whether the page orientation used to export the Map dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export the Map dashboard item; otherwise, false. + */ + MapAutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Map dashboard item. + * Value: A MapExportSizeMode value that specifies the export size mode for the Map dashboard item. + */ + MapSizeMode: string; + /** + * Gets or sets whether pies within the Pie dashboard item are arranged automatically on the exported page. + * Value: true, to arrange pies automatically on the exported page; otherwise, false. + */ + PieAutoArrangeContent: boolean; + /** + * Gets or sets whether to add column headers of the Pivot dashboard item to every page. + * Value: true, to add column headers to every page; otherwise, false. + */ + PivotPrintHeadersOnEveryPage: boolean; + /** + * Gets or sets whether the page orientation used to export the Range Filter dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export the Range Filter dashboard item; otherwise, false. + */ + RangeFilterAutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Range Filter dashboard item. + * Value: A RangeFilterExportSizeMode value that specifies the export size mode for the Range Filter dashboard item. + */ + RangeFilterSizeMode: string; + /** + * Gets or sets whether the page orientation used to export the Treemap dashboard item is selected automatically. + * Value: true, to automatically select the page orientation used to export the Treemap dashboard item; otherwise, false. + */ + TreemapAutomaticPageLayout: boolean; + /** + * Gets or sets the export size mode for the Treemap dashboard item. + * Value: A TreemapExportSizeMode value that specifies the export size mode for the Treemap dashboard item. + */ + TreemapSizeMode: string; +} +/** + * Contains options related to exporting a dashboard/dashboard item to an image. + */ +interface DashboardImageExportOptions { + /** + * Gets or sets a title of the exported document. + * Value: A string value that specifies the title of the exported document. + */ + Title: string; + /** + * Gets or sets whether a dashboard title (or dashboard item's caption) is included as the exported document title. + * Value: true, to include a dashboard title (or dashboard item's caption) as the exported document title; otherwise, false. + */ + ShowTitle: boolean; + /** + * Gets or sets whether to add the state of master filter items to the exported document. + * Value: true, to add the state of master filter items to the exported document; otherwise, false. + */ + ExportFilters: boolean; + /** + * Gets or sets whether to add current parameter values to the exported document. + * Value: true, to add current parameter values to the exported document; otherwise, false. + */ + ExportParameters: boolean; + /** + * Gets or sets whether to add current values of a hidden parameter to the exported document. + * Value: true, to add current values of a hidden parameter to the exported document; otherwise, false. + */ + IncludeHiddenParameters: boolean; + /** + * Gets or sets an image format in which the dashboard/dashboard item is exported. + * Value: A DashboardExportImageFormat value that specifies an image format in which the dashboard/dashboard item is exported. + */ + Format: string; + /** + * Gets or sets the resolution (in dpi) used to export a dashboard/dashboard item to an image. + * Value: An integer value that specifies the resolution (in dpi) used to export a dashboard/dashboard item to an image. + */ + Resolution: number; + /** + * Gets or sets the scale factor (in fractions of 1), by which a dashboard/dashboard item is scaled in the exported document. + * Value: A string value that specifies the scale factor by which a dashboard/dashboard item is scaled in the exported document. + */ + ScaleFactor: number; +} +/** + * Contains options related to exporting a dashboard/dashboard item to the Excel format. + */ +interface DashboardExcelExportOptions { + /** + * Gets or sets the Excel format in which the dashboard item is exported. + * Value: A DashboardExportExcelFormat value that specifies the Excel format in which the dashboard item is exported. + */ + Format: string; + /** + * Gets or sets a character used to separate values in a CSV document. + * Value: A string value that specifies the character used to separate values in a CSV document. + */ + CsvValueSeparator: string; + /** + * Gets or sets whether to add the state of master filter items to the exported document. + * Value: true, to add the state of master filter items to the exported document; otherwise, false. + */ + ExportFilters: boolean; + /** + * Gets or sets whether to add current parameter values to the exported document. + * Value: true, to add current parameter values to the exported document; otherwise, false. + */ + ExportParameters: boolean; + /** + * Gets or sets whether to add current values of a hidden parameter to the exported document. + * Value: true, to add current values of a hidden parameter to the exported document; otherwise, false. + */ + IncludeHiddenParameters: boolean; + /** + * Gets or sets the position of the dashboard state (such as master filter or current parameter values) in the exported document. + * Value: A DashboardStateExcelExportPosition object that specifies the position of the dashboard state in the exported document. + */ + DashboardStatePosition: string; +} +/** + * A client-side equivalent of the ASPxDashboard control. + */ +interface ASPxClientDashboard extends ASPxClientControl { + /** + * Fires when a round trip to the server has been initiated by a call to the client PerformDataCallback method. + */ + CustomDataCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs after the state of the dashboard displayed in the ASPxClientDashboard is changed. + */ + DashboardStateChanged: ASPxClientEvent>; + /** + * Occurs after a new dashboard is displayed in the ASPxClientDashboard. + */ + DashboardChanged: ASPxClientEvent>; + /** + * For internal use. + */ + CustomizeMenuItems: ASPxClientEvent>; + /** + * Occurs before any element in the Web Dashboard control has been rendered. + */ + BeforeRender: ASPxClientEvent>; + /** + * Occurs when an end-user clicks a dashboard item. + */ + ItemClick: ASPxClientEvent>; + /** + * Allows you to provide custom visual interactivity for data-bound dashboard items that support element selection and highlighting. + */ + ItemVisualInteractivity: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetCreated: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetUpdating: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetUpdated: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemBeforeWidgetDisposed: ASPxClientEvent>; + /** + * Occurs after the selection within the dashboard item is changed. + */ + ItemSelectionChanged: ASPxClientEvent>; + /** + * Allows you to color the required dashboard item elements using the specified colors. + */ + ItemElementCustomColor: ASPxClientEvent>; + /** + * Occurs when a master filter state is changed. + */ + ItemMasterFilterStateChanged: ASPxClientEvent>; + /** + * Occurs when a drill-down/drill-up is performed. + */ + ItemDrillDownStateChanged: ASPxClientEvent>; + /** + * Occurs after the available interactivity actions have changed for the specific dashboard item. + */ + ActionAvailabilityChanged: ASPxClientEvent>; + /** + * Occurs after parameter values provided using a Dynamic List are loaded. + */ + DynamicLookUpValuesLoaded: ASPxClientEvent>; + /** + * Occurs when a dashboard item update is initiated. + */ + ItemBeginUpdate: ASPxClientEvent>; + /** + * Occurs after the dashboard item update is performed. + */ + ItemEndUpdate: ASPxClientEvent>; + /** + * Occurs when a dashboard update is initiated. + */ + DashboardBeginUpdate: ASPxClientEvent>; + /** + * Occurs after the dashboard update is performed. + */ + DashboardEndUpdate: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientDataCallback object that represents the JavaScript function which receives the callback data as a parameter. + */ + PerformDataCallback(parameter: string, onCallback: ASPxClientDataCallback): void; + /** + * Gets an inner part of the ASPxClientDashboard control. + */ + GetDashboardControl(): DashboardControl; + /** + * Switches the ASPxClientDashboard to the viewer mode. + */ + SwitchToViewer(): void; + /** + * Switches the ASPxClientDashboard to the designer mode. + */ + SwitchToDesigner(): void; + /** + * Gets the current working mode of the Web Dashboard. + */ + GetWorkingMode(): string; + /** + * Gets the identifier of the dashboard that is displayed in the ASPxClientDashboard. + */ + GetDashboardId(): string; + /** + * Gets the name of the dashboard that is displayed in the ASPxClientDashboard. + */ + GetDashboardName(): string; + /** + * Gets the state of the dashboard displayed in the ASPxClientDashboard. + */ + GetDashboardState(): string; + /** + * Sets the state of the dashboard displayed in the ASPxClientDashboard. + * @param dashboardState A JSON object that specifies the dashboard state. + */ + SetDashboardState(dashboardState: Object): void; + /** + * Sets the state of the dashboard displayed in the ASPxClientDashboard. + * @param dashboardStateString A string value that specifies the state of the dashboard displayed in the ASPxClientDashboard. + */ + SetDashboardState(dashboardStateString: string): void; + /** + * Loads a dashboard with the specified identifier from the dashboard storage. + * @param dashboardId A string value that specifies the dashboard identifier. + */ + LoadDashboard(dashboardId: string): void; + /** + * Saves a current dashboard to the dashboard storage. + */ + SaveDashboard(): void; + /** + * Invokes the Dashboard Parameters dialog. + */ + ShowParametersDialog(): void; + /** + * Closes the Dashboard Parameters dialog. + */ + HideParametersDialog(): void; + /** + * Returns dashboard parameter settings and metadata. + */ + GetParameters(): ASPxClientDashboardParameters; + /** + * Invokes the dialog that allows end-users to export the entire dashboard to the specified format. + * @param format A string value that specifies the format. For instance, you can use 'PDF' or 'Image'. + */ + ShowExportDashboardDialog(format: string): void; + /** + * Invokes the dialog that allows end-users to export the dashboard item to the specified format. + * @param itemComponentName A string value that specifies the component name of the dashboard item to export. + * @param format A string value that specifies the format. For instance, you can use 'PDF, 'Image' or 'Excel'. Note that some items (i.e., ImageDashboardItem) do not support exporting to the 'Excel' format. + */ + ShowExportDashboardItemDialog(itemComponentName: string, format: string): void; + /** + * Hides the dialog that allows end-users to export the dashboard/dashboard item. + */ + HideExportDialog(): void; + /** + * Returns settings that specify parameters affecting how the dashboard is exported. + */ + GetExportOptions(): ASPxClientDashboardExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to the PDF format. + */ + GetPdfExportOptions(): DashboardPdfExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to an image. + */ + GetImageExportOptions(): DashboardImageExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to the Excel format. + */ + GetExcelExportOptions(): DashboardExcelExportOptions; + /** + * Specifies settings that specify parameters affecting how the dashboard is exported. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + SetExportOptions(options: ASPxClientDashboardExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to the PDF format. + * @param options A DashboardPdfExportOptions object containing options related to exporting a dashboard/dashboard item to the PDF format. + */ + SetPdfExportOptions(options: DashboardPdfExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to an image. + * @param options A DashboardImageExportOptions object containing options related to exporting a dashboard/dashboard item to an image. + */ + SetImageExportOptions(options: DashboardImageExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to the Excel format. + * @param options A DashboardExcelExportOptions object containing options related to exporting a dashboard item to the Excel format. + */ + SetExcelExportOptions(options: DashboardExcelExportOptions): void; + /** + * Exports a dashboard to a PDF file and writes it to the Response. + */ + ExportToPdf(): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + */ + ExportToPdf(options: DashboardPdfExportOptions): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToPdf(options: DashboardPdfExportOptions, fileName: string): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + ExportToPdf(options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToPdf(options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard to an Image file and writes it to the Response. + */ + ExportToImage(): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A DashboardImageExportOptions object containing image-specific export options. + */ + ExportToImage(options: DashboardImageExportOptions): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A DashboardImageExportOptions object containing image-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToImage(options: DashboardImageExportOptions, fileName: string): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + ExportToImage(options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToImage(options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports dashboard data to the specified file in Excel format. + */ + ExportToExcel(): void; + /** + * Exports dashboard data to the specified file in Excel format. + * @param options A DashboardExcelExportOptions object containing Excel-specific options. + */ + ExportToExcel(options: DashboardExcelExportOptions): void; + /** + * Exports dashboard data to the specified file in Excel format. + * @param options A DashboardExcelExportOptions object containing Excel-specific options. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportToExcel(options: DashboardExcelExportOptions, fileName: string): void; + /** + * Exports a dashboard item to a PDF file and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToPdf(itemName: string): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + */ + ExportDashboardItemToPdf(itemName: string, options: DashboardPdfExportOptions): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportDashboardItemToPdf(itemName: string, options: DashboardPdfExportOptions, fileName: string): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToPdf(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + * @param fileName A string that specifies the name of the exported file. + */ + ExportDashboardItemToPdf(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Image file and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToImage(itemName: string): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardImageExportOptions object containing image-specific export options. + */ + ExportDashboardItemToImage(itemName: string, options: DashboardImageExportOptions): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardImageExportOptions object containing image-specific export options. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportDashboardItemToImage(itemName: string, options: DashboardImageExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToImage(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportDashboardItemToImage(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Excel file and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToExcel(itemName: string): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardExcelExportOptions object containing Excel export options. + */ + ExportDashboardItemToExcel(itemName: string, options: DashboardExcelExportOptions): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardExcelExportOptions object containing Excel export options. + * @param fileName A string that specifies the name of the exported Excel file. + */ + ExportDashboardItemToExcel(itemName: string, options: DashboardExcelExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToExcel(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + * @param fileName A string that specifies the name of the exported Excel file. + */ + ExportDashboardItemToExcel(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Returns whether or not master filtering can be applied in the current state of the specified master filter item. + * @param itemName A string that specifies the component name of the master filter item. + */ + CanSetMasterFilter(itemName: string): boolean; + /** + * Returns whether or not the specified master filter can be cleared in the current state. + * @param itemName A string that specifies the component name of the master filter item. + */ + CanClearMasterFilter(itemName: string): boolean; + /** + * Returns whether or not drill down is possible in the current state of the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + */ + CanPerformDrillDown(itemName: string): boolean; + /** + * Returns whether or not drill up is possible in the current state of the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + */ + CanPerformDrillUp(itemName: string): boolean; + /** + * Selects required elements by their values in the specified master filter item. + * @param itemName A String that specifies the component name of the master filter item. + * @param values Values that will be used to select elements in the master filter item. + */ + SetMasterFilter(itemName: string, values: Object[][]): void; + /** + * Selects the required elements in the specified master filter item. + * @param itemName A String that species the component name of the master filter item. + * @param axisPointTuples An array of ASPxClientDashboardItemDataAxisPointTuple objects used to identify master filter elements. + */ + SetMasterFilter(itemName: string, axisPointTuples: ASPxClientDashboardItemDataAxisPointTuple[]): void; + /** + * Performs a drill-down into the required element by its value. + * @param itemName A String that species the component name of the dashboard item. + * @param value A value that will be used to perform a drill-down for the required element. + */ + PerformDrillDown(itemName: string, value: Object): void; + /** + * Performs a drill-down into the required element. + * @param itemName A String that specifies the component name of the dashboard item. + * @param axisPointTuple A ASPxClientDashboardItemDataAxisPointTuple object representing a set of axis points. + */ + PerformDrillDown(itemName: string, axisPointTuple: ASPxClientDashboardItemDataAxisPointTuple): void; + /** + * Clears the specified master filter item. + * @param itemName A string that specifies the component name of the master filter item. + */ + ClearMasterFilter(itemName: string): void; + /** + * Performs a drill-up for the specified dashboard item. + * @param itemName A String that specifies the component name of the dashboard item. + */ + PerformDrillUp(itemName: string): void; + /** + * Returns axis point tuples identifying elements that can be used to perform drill-down in the specified dashboard item. + * @param itemName A String that is the component name of the dashboard item. + */ + GetAvailableDrillDownValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns the axis point tuple identifying the current drill-down state. + * @param itemName A String that is the component name of the dashboard item. + */ + GetCurrentDrillDownValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple; + /** + * Returns axis point tuples identifying elements that can be selected in the current state of the master filter item. + * @param itemName A String that is the component name of the master filter item. + */ + GetAvailableFilterValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns axis point tuples identifying currently selected elements in the master filter item. + * @param itemName A String that is the component name of the master filter item. + */ + GetCurrentFilterValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns currently selected elements in the master filter item. + * @param itemName A String that specifies a component name of the master filter item. + */ + GetCurrentSelection(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns the client data for the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + */ + GetItemData(itemName: string): ASPxClientDashboardItemData; + /** + * Refreshes an entire dashboard displayed in the Web Dashboard control. + */ + Refresh(): void; + /** + * Refreshes the specific item from the dashboard displayed in the Web Dashboard control. + * @param itemName A string value that specifies the component name of the dashboard item to be refreshed. + */ + Refresh(itemName: string): void; + /** + * Refreshes specific items from the dashboard displayed in the Web Dashboard control. + * @param itemName An array of string values that specify the component names of the dashboard items to be refreshed. + */ + Refresh(itemName: string[]): void; + /** + * Requests underlying data for the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + * @param args A ASPxClientDashboardItemRequestUnderlyingDataParameters object containing parameters used to obtain the underlying data. + * @param onCompleted A ASPxClientDashboardItemRequestUnderlyingDataCompleted object that references a method executed after the request is completed. + */ + RequestUnderlyingData(itemName: string, args: ASPxClientDashboardItemRequestUnderlyingDataParameters, onCompleted: ASPxClientDashboardItemRequestUnderlyingDataCompleted): void; + /** + * Returns the currently selected range in the specified Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter dashboard item. + */ + GetCurrentRange(itemName: string): ASPxClientDashboardRangeFilterSelection; + /** + * Returns the visible range for the specified Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter dashboard item. + */ + GetEntireRange(itemName: string): ASPxClientDashboardRangeFilterSelection; + /** + * Selects the required range in the specified Range Filter dashboard item. + * @param itemName A String that specifies the component name of the Range Filter dashboard item. + * @param range A ASPxClientDashboardRangeFilterSelection object that specifies a range to be selected. + */ + SetRange(itemName: string, range: ASPxClientDashboardRangeFilterSelection): void; + /** + * Selects a predefined range in the Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter. + * @param dateTimePeriodName A String value that specifies the predefined range name. + */ + SetPredefinedRange(itemName: string, dateTimePeriodName: string): void; + /** + * Returns names of the predefined ranges available for the specified Range Filter. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetAvailablePredefinedRanges(itemName: string): string[]; + /** + * Returns the name of the currently selected predefined range. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetCurrentPredefinedRange(itemName: string): string; +} +/** + * References a method that will handle the DashboardStateChanged event. + */ +interface ASPxClientDashboardStateChangedEventHandler { + /** + * References a method that will handle the DashboardStateChanged event. + * @param source The event source. + * @param e A ASPxClientDashboardStateChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardStateChangedEventArgs): void; +} +/** + * Provides data for the DashboardStateChanged event. + */ +interface ASPxClientDashboardStateChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the current state of the dashboard. + * Value: A string value that is the current state of the dashboard. + */ + DashboardState: string; +} +/** + * References a method that will handle the DashboardChanged event. + */ +interface ASPxClientDashboardChangedEventHandler { + /** + * References a method that will handle the DashboardChanged event. + * @param source The event source. + * @param e A ASPxClientDashboardChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardChangedEventArgs): void; +} +/** + * Provides data for the DashboardChanged event. + */ +interface ASPxClientDashboardChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the identifier of a newly opened dashboard. + * Value: A string value that is an identifier of newly opened dashboard. + */ + DashboardId: string; + /** + * Gets the name of a newly opened dashboard. + * Value: A string value that is the name of newly opened dashboard. + */ + DashboardName: string; +} +interface ASPxClientDashboardCustomizeMenuItemsEventHandler { + (source: S, e: ASPxClientDashboardCustomizeMenuItemsEventArgs): void; +} +interface ASPxClientDashboardMenuItem { + id: string; + title: string; + template: string; + selected: boolean; + disabled: boolean; + hasSeparator: boolean; + click: Function; + hotKey: number; +} +interface ASPxClientDashboardCustomizeMenuItemsEventArgs extends ASPxClientEventArgs { + Items: ASPxClientDashboardMenuItem[]; + FindById(itemId: string): ASPxClientDashboardMenuItem; +} +/** + * References a method that will handle the BeforeRender event. + */ +interface ASPxClientDashboardBeforeRenderEventHandler { + /** + * References a method that will handle the BeforeRender event. + * @param source The event source. + * @param e An ASPxClientEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEventArgs): void; +} +/** + * Serves as the base class for classes that provide data for client-side events related to dashboard items. + */ +interface ASPxClientDashboardItemEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; + /** + * Returns whether or not the specified value is null. + * @param value The specified value. + */ + IsNullValue(value: Object): boolean; + /** + * Returns whether or not the specified value is 'others'. + * @param value The specified value. + */ + IsOthersValue(value: Object): boolean; +} +/** + * References a method that will handle the ItemMasterFilterStateChanged event. + */ +interface ASPxClientDashboardItemMasterFilterStateChangedEventHandler { + /** + * References a method that will handle the ItemMasterFilterStateChanged event. + * @param source The event source. + * @param e An ASPxClientDashboardItemMasterFilterStateChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemMasterFilterStateChangedEventArgs): void; +} +/** + * Provides data for the ItemMasterFilterStateChanged event. + */ +interface ASPxClientDashboardItemMasterFilterStateChangedEventArgs extends ASPxClientDashboardItemEventArgs { + /** + * Gets the currently selected values. + * Value: An array of objects that are the currently selected values. + */ + Values: Object[][]; +} +/** + * References a method that will handle the ItemDrillDownStateChanged event. + */ +interface ASPxClientDashboardItemDrillDownStateChangedEventHandler { + /** + * References a method that will handle the ItemDrillDownStateChanged event. + * @param source The event source. + * @param e An ASPxClientDashboardItemDrillDownStateChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardItemDrillDownStateChangedEventArgs): void; +} +/** + * Provides data for the ItemDrillDownStateChanged event. + */ +interface ASPxClientDashboardItemDrillDownStateChangedEventArgs extends ASPxClientDashboardItemEventArgs { + /** + * Gets the drill-down action performed in the dashboard item. + * Value: A string value that is the drill-down action performed in the dashboard item. + */ + Action: string; + /** + * Gets values from the current drill-down hierarchy. + * Value: An array of values from the current drill-down hierarchy. + */ + Values: Object[]; +} +/** + * References a method that will handle the ActionAvailabilityChanged event. + */ +interface ASPxClientActionAvailabilityChangedEventHandler { + /** + * References a method that will handle the ActionAvailabilityChanged event. + * @param source The event source. + * @param e A ASPxClientActionAvailabilityChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientActionAvailabilityChangedEventArgs): void; +} +/** + * Provides data for the ActionAvailabilityChanged event. + */ +interface ASPxClientActionAvailabilityChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; +} +/** + * References a method that will handle the DynamicLookUpValuesLoaded event. + */ +interface ASPxClientDynamicLookUpValuesLoadedEventHandler { + /** + * References a method that will handle the DynamicLookUpValuesLoaded event. + * @param source The event source. + * @param e A ASPxClientDynamicLookUpValuesLoadedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDynamicLookUpValuesLoadedEventArgs): void; +} +/** + * Provides data for the DynamicLookUpValuesLoaded event. + */ +interface ASPxClientDynamicLookUpValuesLoadedEventArgs extends ASPxClientEventArgs { + /** + * Gets the dashboard parameter name whose values have been loaded. + * Value: A string value that is the dashboard parameter name whose values have been loaded. + */ + ParameterName: string; +} +/** + * References a method that will handle the ItemBeginUpdate event. + */ +interface ASPxClientItemBeginUpdateEventHandler { + /** + * References a method that will handle the ItemBeginUpdate event. + * @param source The event source. + * @param e A ASPxClientItemBeginUpdateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientItemBeginUpdateEventArgs): void; +} +/** + * Provides data for the ItemBeginUpdate event. + */ +interface ASPxClientItemBeginUpdateEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; +} +/** + * References a method that will handle the ItemEndUpdate event. + */ +interface ASPxClientItemEndUpdateEventHandler { + /** + * References a method that will handle the ItemEndUpdate event. + * @param source The event source. + * @param e A ASPxClientItemEndUpdateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientItemEndUpdateEventArgs): void; +} +/** + * Provides data for the ItemEndUpdate event. + */ +interface ASPxClientItemEndUpdateEventArgs extends ASPxClientEventArgs { + /** + * Gets the component name of the dashboard item. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; +} +/** + * References a method that will handle the DashboardBeginUpdate event. + */ +interface ASPxClientDashboardBeginUpdateEventHandler { + /** + * References a method that will handle the DashboardBeginUpdate event. + * @param source The event source. + * @param e A ASPxClientDashboardBeginUpdateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardBeginUpdateEventArgs): void; +} +/** + * Provides data for the DashboardBeginUpdate event. + */ +interface ASPxClientDashboardBeginUpdateEventArgs extends ASPxClientEventArgs { + /** + * Gets the identifier of the dashboard for which the event was raised. + * Value: A string value that is the dashboard identifier. + */ + DashboardId: string; +} +/** + * References a method that will handle the DashboardEndUpdate event. + */ +interface ASPxClientDashboardEndUpdateEventHandler { + /** + * References a method that will handle the DashboardEndUpdate event. + * @param source The event source. + * @param e An ASPxClientDashboardEndUpdateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardEndUpdateEventArgs): void; +} +/** + * Provides data for the DashboardEndUpdate event. + */ +interface ASPxClientDashboardEndUpdateEventArgs extends ASPxClientEventArgs { + /** + * Gets the identifier of the dashboard for which the event was raised. + * Value: A string value that is the dashboard identifier. + */ + DashboardId: string; +} +/** + * A client-side equivalent of the ASPxDashboardViewer control. + */ +interface ASPxClientDashboardViewer extends ASPxClientControl { + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs after the available interactivity actions have changed. + */ + ActionAvailabilityChanged: ASPxClientEvent>; + /** + * Occurs when an end-user changes the state of the master filter. + */ + MasterFilterSet: ASPxClientEvent>; + /** + * Occurs when an end-user clears the selection in the master filter item. + */ + MasterFilterCleared: ASPxClientEvent>; + /** + * Provides the capability to handle data loading errors in the ASPxClientDashboardViewer. + */ + DataLoadingError: ASPxClientEvent>; + /** + * Occurs after a drill-down is performed. + */ + DrillDownPerformed: ASPxClientEvent>; + /** + * Occurs after a drill-up is performed. + */ + DrillUpPerformed: ASPxClientEvent>; + /** + * Occurs after the ASPxClientDashboardViewer is loaded. + */ + Loaded: ASPxClientEvent>; + /** + * Occurs when an end-user clicks a dashboard item. + */ + ItemClick: ASPxClientEvent>; + /** + * Allows you to provide custom visual interactivity for data-bound dashboard items that support element selection and highlighting. + */ + ItemVisualInteractivity: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetCreated: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetUpdating: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemWidgetUpdated: ASPxClientEvent>; + /** + * Allows you to access underlying UI/Data Visualization widgets. + */ + ItemBeforeWidgetDisposed: ASPxClientEvent>; + /** + * Occurs after the selection within the dashboard item is changed. + */ + ItemSelectionChanged: ASPxClientEvent>; + /** + * Allows you to color the required dashboard item elements using the specified colors. + */ + ItemElementCustomColor: ASPxClientEvent>; + /** + * Reloads data in the data sources. + */ + ReloadData(): void; + /** + * Reloads data in the data sources. + * @param parameters An array of ASPxClientDashboardParameter objects that specify dashboard parameters on the client side. + */ + ReloadData(parameters: ASPxClientDashboardParameter[]): void; + /** + * Returns dashboard parameter settings and metadata. + */ + GetParameters(): ASPxClientDashboardParameters; + /** + * Locks the EndUpdateParameters method call. + */ + BeginUpdateParameters(): void; + /** + * Unlocks the BeginUpdateParameters method and applies changes made to the parameter settings. + */ + EndUpdateParameters(): void; + /** + * Returns the currently selected range in the specified Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter dashboard item. + */ + GetCurrentRange(itemName: string): ASPxClientDashboardRangeFilterSelection; + /** + * Returns the visible range for the specified Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter dashboard item. + */ + GetEntireRange(itemName: string): ASPxClientDashboardRangeFilterSelection; + /** + * Selects the required range in the specified Range Filter dashboard item. + * @param itemName A String that specifies the component name of the Range Filter dashboard item. + * @param range A ASPxClientDashboardRangeFilterSelection object that specifies a range to be selected. + */ + SetRange(itemName: string, range: ASPxClientDashboardRangeFilterSelection): void; + /** + * Selects a predefined range in the Range Filter dashboard item. + * @param itemName A String value that specifies the component name of the Range Filter. + * @param dateTimePeriodName A String value that specifies the predefined range name. + */ + SetPredefinedRange(itemName: string, dateTimePeriodName: string): void; + /** + * Returns names of the predefined ranges available for the specified Range Filter. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetAvailablePredefinedRanges(itemName: string): string[]; + /** + * Returns the name of the currently selected predefined range. + * @param itemName A string value that specifies the component name of the Range Filter dashboard item. + */ + GetCurrentPredefinedRange(itemName: string): string; + /** + * Returns axis point tuples identifying elements that can be used to perform drill-down in the specified dashboard item. + * @param itemName A String that is the component name of the dashboard item. + */ + GetAvailableDrillDownValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns the axis point tuple identifying the current drill-down state. + * @param itemName A String that is the component name of the dashboard item. + */ + GetCurrentDrillDownValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple; + /** + * Returns axis point tuples identifying elements that can be selected in the current state of the master filter item. + * @param itemName A String that is the component name of the master filter item. + */ + GetAvailableFilterValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns axis point tuples identifying currently selected elements in the master filter item. + * @param itemName A String that is the component name of the master filter item. + */ + GetCurrentFilterValues(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Returns currently selected elements in the master filter item. + * @param itemName A String that specifies a component name of the master filter item. + */ + GetCurrentSelection(itemName: string): ASPxClientDashboardItemDataAxisPointTuple[]; + /** + * Requests underlying data for the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + * @param args A ASPxClientDashboardItemRequestUnderlyingDataParameters object containing parameters used to obtain the underlying data. + * @param onCompleted A ASPxClientDashboardItemRequestUnderlyingDataCompleted object that references a method executed after the request is completed. + */ + RequestUnderlyingData(itemName: string, args: ASPxClientDashboardItemRequestUnderlyingDataParameters, onCompleted: ASPxClientDashboardItemRequestUnderlyingDataCompleted): void; + /** + * Invokes the Dashboard Parameters dialog. + */ + ShowParametersDialog(): void; + /** + * Closes the Dashboard Parameters dialog. + */ + HideParametersDialog(): void; + /** + * Returns settings that specify parameters affecting how the dashboard is exported. + */ + GetExportOptions(): ASPxClientDashboardExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to the PDF format. + */ + GetPdfExportOptions(): DashboardPdfExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to an image. + */ + GetImageExportOptions(): DashboardImageExportOptions; + /** + * Allows you to obtain options related to exporting a dashboard/dashboard item to the Excel format. + */ + GetExcelExportOptions(): DashboardExcelExportOptions; + /** + * Specifies settings that specify parameters affecting how the dashboard is exported. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + SetExportOptions(options: ASPxClientDashboardExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to the PDF format. + * @param options A DashboardPdfExportOptions object containing options related to exporting a dashboard/dashboard item to the PDF format. + */ + SetPdfExportOptions(options: DashboardPdfExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to an image. + * @param options A DashboardImageExportOptions object containing options related to exporting a dashboard/dashboard item to an image. + */ + SetImageExportOptions(options: DashboardImageExportOptions): void; + /** + * Allows you to specify options related to exporting a dashboard/dashboard item to the Excel format. + * @param options A DashboardExcelExportOptions object containing options related to exporting a dashboard item to the Excel format. + */ + SetExcelExportOptions(options: DashboardExcelExportOptions): void; + /** + * Exports a dashboard to a PDF file and writes it to the Response. + */ + ExportToPdf(): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + */ + ExportToPdf(options: DashboardPdfExportOptions): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToPdf(options: DashboardPdfExportOptions, fileName: string): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + ExportToPdf(options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard to a PDF file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToPdf(options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard to an Image file and writes it to the Response. + */ + ExportToImage(): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A DashboardImageExportOptions object containing image-specific export options. + */ + ExportToImage(options: DashboardImageExportOptions): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A DashboardImageExportOptions object containing image-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToImage(options: DashboardImageExportOptions, fileName: string): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + */ + ExportToImage(options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard to an Image file with the specified export options and writes it to the Response. + * @param options A ASPxClientDashboardExportOptions object containing settings that specify parameters affecting how the dashboard is exported. + * @param fileName A string that specifies the name of the exported file. + */ + ExportToImage(options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports dashboard data to the specified file in Excel format. + */ + ExportToExcel(): void; + /** + * Exports dashboard data to the specified file in Excel format. + * @param options A DashboardExcelExportOptions object containing Excel-specific options. + */ + ExportToExcel(options: DashboardImageExportOptions): void; + /** + * Exports dashboard data to the specified file in Excel format. + * @param options A DashboardExcelExportOptions object containing Excel-specific options. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportToExcel(options: DashboardImageExportOptions, fileName: string): void; + /** + * Exports a dashboard item to a PDF file and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToPdf(itemName: string): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + */ + ExportDashboardItemToPdf(itemName: string, options: DashboardPdfExportOptions): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardPdfExportOptions object containing PDF-specific export options. + * @param fileName A string that specifies the name of the exported file. + */ + ExportDashboardItemToPdf(itemName: string, options: DashboardPdfExportOptions, fileName: string): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToPdf(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to a PDF file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + * @param fileName A string that specifies the name of the exported file. + */ + ExportDashboardItemToPdf(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Image file and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToImage(itemName: string): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardImageExportOptions object containing image-specific export options. + */ + ExportDashboardItemToImage(itemName: string, options: DashboardImageExportOptions): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardImageExportOptions object containing image-specific export options. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportDashboardItemToImage(itemName: string, options: DashboardImageExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToImage(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to an Image file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + * @param fileName A string value that specifies the name of the exported file. + */ + ExportDashboardItemToImage(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Excel file and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + */ + ExportDashboardItemToExcel(itemName: string): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardExcelExportOptions object containing Excel export options. + */ + ExportDashboardItemToExcel(itemName: string, options: DashboardExcelExportOptions): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options A DashboardExcelExportOptions object containing Excel export options. + * @param fileName A string that specifies the name of the exported Excel file. + */ + ExportDashboardItemToExcel(itemName: string, options: DashboardExcelExportOptions, fileName: string): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A String that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options to be applied to the exported dashboard item. + */ + ExportDashboardItemToExcel(itemName: string, options: ASPxClientDashboardExportOptions): void; + /** + * Exports a dashboard item to an Excel file with the specified export options and writes it to the Response. + * @param itemName A string that is the component name of the dashboard item to be exported. + * @param options An ASPxClientDashboardExportOptions object containing export options. + * @param fileName A string that specifies the name of the exported Excel file. + */ + ExportDashboardItemToExcel(itemName: string, options: ASPxClientDashboardExportOptions, fileName: string): void; + /** + * Returns the dashboard width. + */ + GetWidth(): number; + /** + * Returns the dashboard height. + */ + GetHeight(): number; + /** + * Specifies the dashboard width. + * @param width An integer value that specifies the dashboard width. + */ + SetWidth(width: number): void; + /** + * Specifies the dashboard height. + * @param height An integer value that specifies the dashboard height. + */ + SetHeight(height: number): void; + /** + * Specifies the dashboard size. + * @param width An integer value that specifies the dashboard width. + * @param height An integer value that specifies the dashboard height. + */ + SetSize(width: number, height: number): void; + /** + * Selects required elements by their values in the specified master filter item. + * @param itemName A String that species the component name of the master filter item. + * @param values Values that will be used to select elements in the master filter item. + */ + SetMasterFilter(itemName: string, values: Object[][]): void; + /** + * Selects the required elements in the specified master filter item. + * @param itemName A String that specifies the component name of the master filter item. + * @param axisPointTuples An array of ASPxClientDashboardItemDataAxisPointTuple objects used to identify master filter elements. + */ + SetMasterFilter(itemName: string, axisPointTuples: ASPxClientDashboardItemDataAxisPointTuple[]): void; + /** + * Performs a drill-down for the required element by its value. + * @param itemName A String that species the component name of the dashboard item. + * @param value A value that will be used to perform a drill-down for the required element. + */ + PerformDrillDown(itemName: string, value: Object): void; + /** + * Performs a drill-down for the required element. + * @param itemName A String that specifies the component name of the dashboard item. + * @param axisPointTuple A ASPxClientDashboardItemDataAxisPointTuple object representing a set of axis points. + */ + PerformDrillDown(itemName: string, axisPointTuple: ASPxClientDashboardItemDataAxisPointTuple): void; + /** + * Clears the specified master filter item. + * @param itemName A String that specifies the component name of the master filter item. + */ + ClearMasterFilter(itemName: string): void; + /** + * Performs a drill-up for the specified dashboard item. + * @param itemName A String that specifies the component name of the dashboard item. + */ + PerformDrillUp(itemName: string): void; + /** + * Returns whether or not the specified master filter item allows selecting one or more elements. + * @param itemName A String that specifies the component name of the master filter item. + */ + CanSetMasterFilter(itemName: string): boolean; + /** + * Returns whether or not the specified master filter can be cleared in the current state. + * @param itemName A String that specifies the component name of the master filter item. + */ + CanClearMasterFilter(itemName: string): boolean; + /** + * Returns whether or not drill down is possible in the current state of the specified dashboard item. + * @param itemName A String that specifies the component name of the dashboard item. + */ + CanPerformDrillDown(itemName: string): boolean; + /** + * Returns whether or not drill up is possible in the current state of the specified dashboard item. + * @param itemName A String that specifies the component name of the dashboard item. + */ + CanPerformDrillUp(itemName: string): boolean; + /** + * Returns the client data for the specified dashboard item. + * @param itemName A string that specifies the component name of the dashboard item. + */ + GetItemData(itemName: string): ASPxClientDashboardItemData; +} +/** + * References a method that will handle the ActionAvailabilityChanged event. + */ +interface ASPxClientDashboardActionAvailabilityChangedEventHandler { + /** + * References a method that will handle the ActionAvailabilityChanged event. + * @param source The event source. + * @param e A ASPxClientDashboardActionAvailabilityChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardActionAvailabilityChangedEventArgs): void; +} +/** + * Provides data for the ActionAvailabilityChanged event. + */ +interface ASPxClientDashboardActionAvailabilityChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets whether or not data reloading is available in the current state of dashboard item. + * Value: true, if data reloading is available in the current state of dashboard item; otherwise, false. + */ + IsReloadDataAvailable: boolean; + /** + * Gets interactivity actions currently available for the dashboard item. + * Value: An array of ASPxClientDashboardItemAction objects that represent interactivity actions currently available for the dashboard item. + */ + ItemActions: ASPxClientDashboardItemAction[]; +} +/** + * References a method that will handle the DataLoadingError event. + */ +interface ASPxClientDashboardDataLoadingErrorEventHandler { + /** + * References a method that will handle the DataLoadingError event. + * @param source The event source. + * @param e A ASPxClientDashboardDataLoadingErrorEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardDataLoadingErrorEventArgs): void; +} +/** + * Provides data for the DataLoadingError event. + */ +interface ASPxClientDashboardDataLoadingErrorEventArgs extends ASPxClientEventArgs { + /** + * Allows you to determine whether or not the error message will be shown. + */ + IsErrorMessageShown(): boolean; + /** + * Allows you to specify whether to show the error message. + * @param value true, to show the error message; otherwise, false. + */ + ShowErrorMessage(value: boolean): void; + /** + * Allows you to obtain the displayed error message. + */ + GetError(): string; + /** + * Allows you to specify the displayed error message. + * @param value A string value that specifies the displayed error message. + */ + SetError(value: string): void; +} +/** + * Represents an interactivity action in the dashboard item. + */ +interface ASPxClientDashboardItemAction { + /** + * Gets the name of the dashboard item. + * Value: A string that specifies the name of the dashboard item. + */ + ItemName: string; + /** + * Gets interactivity actions performed on a dashboard item. + * Value: An array of ASPxClientDashboardAction values that specify interactivity actions performed on a dashboard item. + */ + Actions: any[]; +} +declare enum ASPxClientDashboardAction { + SetMasterFilter=0, + ClearMasterFilter=1, + DrillDown=2, + DrillUp=3 +} +/** + * References a method that will handle the MasterFilterSet event. + */ +interface ASPxClientDashboardMasterFilterSetEventHandler { + /** + * References a method that will handle the MasterFilterSet event. + * @param source The event source. + * @param e A ASPxClientDashboardMasterFilterSetEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardMasterFilterSetEventArgs): void; +} +/** + * Provides data for the MasterFilterSet event. + */ +interface ASPxClientDashboardMasterFilterSetEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dashboard item. + * Value: A string value that specifies the component name of the dashboard item. + */ + ItemName: string; + /** + * Gets values of currently selected elements in the master filter item. + * Value: Values of currently selected elements in the master filter item. + */ + Values: Object[][]; + /** + * Returns whether or not the specified value is NullValue. + * @param value The specified value. + */ + IsNullValue(value: Object): boolean; + /** + * Returns whether or not the specified value is OthersValue. + * @param value The specified value. + */ + IsOthersValue(value: Object): boolean; +} +/** + * References a method that will handle the MasterFilterCleared event. + */ +interface ASPxClientDashboardMasterFilterClearedEventHandler { + /** + * References a method that will handle the MasterFilterCleared event. + * @param source The event source. + * @param e A ASPxClientDashboardMasterFilterClearedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardMasterFilterClearedEventArgs): void; +} +/** + * Provides data for the MasterFilterCleared event. + */ +interface ASPxClientDashboardMasterFilterClearedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dashboard item. + * Value: A string value that is the component name of the dashboard item. + */ + ItemName: string; +} +/** + * References a method that will handle the DrillDownPerformed event. + */ +interface ASPxClientDashboardDrillDownPerformedEventHandler { + /** + * References a method that will handle the DrillDownPerformed event. + * @param source The event source. + * @param e A ASPxClientDashboardDrillDownPerformedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardDrillDownPerformedEventArgs): void; +} +/** + * Provides data for the DrillDownPerformed event. + */ +interface ASPxClientDashboardDrillDownPerformedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dashboard item. + * Value: A string that specifies the name of the dashboard item. + */ + ItemName: string; + /** + * Gets values from the current drill-down hierarchy. + * Value: An array of values from the current drill-down hierarchy. + */ + Values: Object[]; + /** + * Returns whether or not the specified value is NullValue. + * @param value The specified value. + */ + IsNullValue(value: Object): boolean; + /** + * Returns whether or not the specified value is OthersValue. + * @param value The specified value. + */ + IsOthersValue(value: Object): boolean; +} +/** + * References a method that will handle the DrillUpPerformed event. + */ +interface ASPxClientDashboardDrillUpPerformedEventHandler { + /** + * References a method that will handle the DrillUpPerformed event. + * @param source The event source. + * @param e A ASPxClientDashboardDrillUpPerformedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDashboardDrillUpPerformedEventArgs): void; +} +/** + * Provides data for the DrillUpPerformed event. + */ +interface ASPxClientDashboardDrillUpPerformedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dashboard item. + * Value: A string that is the name of the dashboard item. + */ + ItemName: string; +} +interface CardWidgetCustomizeTextEventArgs { + getValue(): Object; + getDefaultText(): string; +} +/** + * A Card widget that visualizes a Card dashboard item's data. + */ +interface CardWidget { + /** + * Gets or sets the background color for a card. + * Value: A string that specifies the HTML color used to paint a card's background. + */ + cardBackColor: string; + onCustomizeText: Object; +} +/** + * When implemented, represents the Web Dashboard extension. + */ +interface IExtension { + /** + * Gets a unique name of a Web Dashboard extension. + * Value: A string value that is a unique name of a Web Dashboard extension. + */ + name: string; + /** + * Contains code that will be invoked when you register the dashboard extension. + */ + start(): void; + /** + * Contains code that will be invoked when you unregister the dashboard extension. + */ + stop(): void; +} +/** + * An inner part of the ASPxClientDashboard control. + */ +interface DashboardControl { + /** + * Gets or sets knockout templates that you can use in the Web Dashboard. + * Value: A object that is a knockout template collection. + */ + customTemplates: KnockoutObservableArray; + /** + * Provides an access to the collection of registered dashboard extensions. + * Value: An array of IExtension objects that are dashboard extensions. + */ + extensions: IExtension[]; + /** + * Initializes a new dashboard with the specified name and JSON model. + * @param id A string value that is a unique name of the created dashboard. + * @param dashboardJson A dashboard model encoded in the specified JSON string. + */ + initializeDashboard(id: string, dashboardJson: string): void; + /** + * Initializes a new dashboard with the specified name, JSON model and initial state. + * @param id A string value that is a unique name of the created dashboard. + * @param dashboardJson A dashboard model encoded in the specified JSON string. + * @param initialState A JSON object that specifies the dashboard state. + */ + initializeDashboard(id: string, dashboardJson: string, initialState: Object): void; + /** + * Allows you to register a dashboard extension to add its functionality to the Web Dashboard. + * @param extension An IExtension object that is a dashboard extension. + */ + registerExtension(extension: IExtension): void; + /** + * Allows you to get access to the extension. + * @param extensionName A string value that is the dashboard extension name. + */ + findExtension(extensionName: string): IExtension; + /** + * Allows you to unregister a dashboard extension to disable its functionality in the Web Dashboard. + * @param extensionName A string value that is a dashboard extension name. + */ + unregisterExtension(extensionName: string): void; +} +interface DashboardParameterDialogExtension extends IExtension { +} +interface DashboardExportExtension extends IExtension { +} +interface DashboardClientApiExtension extends IExtension { +} +interface DashboardCurrencyEditorExtension extends IExtension { +} +interface DataSourceBrowserExtension extends IExtension { +} +interface DataSourceWizardExtension extends IExtension { +} +interface DashboadItemMenuExtension extends IExtension { +} +/** + * A Web Dashboard extension that allows you to keep track of all user actions, and cancel or repeat them. + */ +interface UndoRedoExtension extends IExtension { + /** + * Allows you to track whether the Web Dashboard has unsaved changes. + */ + isChanged(): boolean; +} +/** + * An extension that is the dashboard item's Binding menu allowing you to create and modify data binding. + */ +interface BindingPanelExtension extends IExtension { +} +/** + * A Web Dashboard extension that allows you to configure color schemes. + */ +interface DashboardColorSchemeEditorExtension extends IExtension { +} +/** + * An extension that is the dashboard item's Convert To menu allowing you to convert or duplicate the current item. + */ +interface ConversionPanelExtension extends IExtension { +} +/** + * A Web Dashboard extension that allows you to save the current dashboard. + */ +interface SaveDashboardExtension extends IExtension { + /** + * Allows you to save the current dashboard with a specified unique name and JSON model. + * @param dashboardId A string value that is a unique name of the created dashboard. + * @param dashboardJson A dashboard model encoded in the specified JSON string. + */ + performSaveDashboard(dashboardId: string, dashboardJson: string): void; + /** + * Allows you to invoke a custom function while you save a dashboard. + * @param action A custom function that is invoked when the dashboard is about to be saved. + */ + ensureDashboardSaved(action: Function): void; + /** + * Saves the opened dashboard. + */ + saveDashboard(): void; +} +/** + * A Web Dashboard extension that allows you to create a new dashboard. + */ +interface CreateDashboardExtension extends IExtension { + /** + * Creates a new dashboard with a specified name and JSON model. + * @param dashboardName A string value that is the name of the created dashboard. + * @param dashboardJson A dashboard model encoded in the specified JSON string. + */ + performCreateDashboard(dashboardName: string, dashboardJson: string): void; +} +/** + * A Web Dashboard extension that allows you to open the created dashboards. + */ +interface OpenDashboardExtension extends IExtension { + /** + * Loads a dashboard with the specified identifier from the dashboard storage. + * @param id A String value that specifies the unique dashboard name. + */ + loadDashboard(id: string): void; +} +/** + * An extension that is the dashboard item's Interactivity menu containing settings that affect on interaction between various dashboard items. + */ +interface InteractivityPanelExtension extends IExtension { +} +/** + * An extension that is the dashboard item's Options menu containing specific options and settings related to the current dashboard item. + */ +interface OptionsPanelExtension extends IExtension { +} +/** + * An extension that is the Web Dashboard title editor. + */ +interface DashboardTitleEditorExtension extends IExtension { +} +/** + * The Dashboard Panel extension that displays a list of available dashboards and lets you switch between the designer and viewer modes. + */ +interface DashboardPanelExtension extends IExtension { + /** + * Gets or sets the width of the Dashboard Panel extension. + * Value: An integer value that specifies the Dashboard Panel's width. + */ + panelWidth: number; + /** + * Gets or sets whether the Dashboard Panel is visible. + * Value: true, to display the Dashboard Panel; otherwise, false. + */ + visible: KnockoutObservableBoolean; + /** + * Gets or sets whether you can switch into the designer mode. + * Value: true, to display the Edit in Designer button on the dashboard panel; otherwise, false. + */ + allowSwitchToDesigner: KnockoutObservableBoolean; +} +/** + * An extension that is a list of available data sources used to provide data to the Web Dashboard. + */ +interface AvailableDataSourcesExtension extends IExtension { +} +/** + * A dashboard menu item. + */ +interface DashboardMenuItem { + /** + * Gets or sets a unique identifier of a dashboard menu item. + * Value: A string value that is a menu item's unique identifier. + */ + id: string; + /** + * Gets or sets a dashboard menu item title. + * Value: A string value that is a dashboard menu item title. + */ + title: string; + /** + * Gets or sets a position of the dashboard menu item within the dashboard menu. + * Value: A zero-based integer specifying the position of the current dashboard menu item. + */ + index: number; + /** + * Gets or sets a code of the key used in the keyboard shortcut. This shortcut allows you to invoke the current menu item. + * Value: An integer value that specifies a key code. + */ + hotKey: number; + /** + * Gets or sets a custom function that is invoked when a click occurs. + * Value: A custom function that is invoked when a click occurs. + */ + click: Function; + /** + * Gets or sets a knockout template for the extension. + * Value: A string value that is an id of the knockout template. + */ + template: string; + /** + * Gets or sets whether the dashboard menu item is selected. + * Value: true, if the dashboard menu item is selected; otherwise, false; + */ + selected: KnockoutObservableBoolean; + /** + * Gets whether a dashboard menu item is disabled. + * Value: true, if a dashboard menu item should be disabled; otherwise, false. + */ + disabled: KnockoutObservableBoolean; + /** + * Gets or sets whether a dashboard menu item has a separator. + * Value: true, if a dashboard menu item has a separator; otherwise, false. + */ + hasSeparator: boolean; + /** + * Gets or sets data that is used by a menu item. + * Value: An object that contains data used by a menu item. + */ + data: Object; +} +/** + * A toolbox item of the specified dashboard toolbox group. + */ +interface DashboardToolboxItem { + /** + * Gets or sets a dashboard item type. + * Value: A string value that is a dashboard item type. + */ + type: string; + /** + * Gets or sets an icon of the dashboard toolbox item. + * Value: A string value that is the icon id from the SVG definition. + */ + icon: string; + /** + * Gets or sets a unique name of the dashboard toolbox item. + * Value: A string value that is a toolbox item's unique name. + */ + name: string; + /** + * Gets or sets a dashboard toolbox item title. + * Value: A string value that is a dashboard toolbox item title. + */ + title: string; + /** + * Gets or sets whether a toolbox item should be disabled. + * Value: true, if a toolbox item should be disabled; otherwise, false. + */ + disabled: KnockoutObservableBoolean; + /** + * Gets or sets a custom function that is invoked when a click occurs. + * Value: A custom function that is invoked when a click occurs. + */ + click: Function; +} +/** + * A toolbar item of the specified dashboard toolbar group. + */ +interface DashboardToolbarItem { + /** + * Gets or sets an icon of the dashboard toolbar item. + * Value: A string value that is the icon id from the SVG definition. + */ + icon: string; + /** + * Gets or sets a unique name of the dashboard toolbar item. + * Value: A string value that is a unique toolbar item name. + */ + name: string; + /** + * Gets or sets a dashboard toolbar item title. + * Value: A string value that is a dashboard toolbar item title. + */ + title: string; + /** + * Gets or sets whether a toolbar item should be disabled. + * Value: true, if a toolbar item is disabled; otherwise, false. + */ + disabled: KnockoutObservableBoolean; + /** + * Gets or sets a knockout extension template. + * Value: A string value that is an id of the knockout template. + */ + template: string; + /** + * Gets or sets a custom function that is invoked when a click occurs. + * Value: A custom function that is invoked when a click occurs. + */ + click: Function; +} +/** + * A toolbox group that contains dashboard toolbox items. + */ +interface DashboardToolboxGroup { + /** + * Gets or sets a unique name of the dashboard toolbox group. + * Value: A string value that is a unique toolbox group name. + */ + name: string; + /** + * Gets or sets a dashboard toolbox group title. + * Value: A string value that is a dashboard toolbox group title. + */ + title: string; + /** + * Gets or sets a position of the toolbox group within the Toolbox. + * Value: A zero-based integer specifying the position of the current toolbox group. + */ + index: number; + /** + * Provide an access to the collection of toolbox items obtained from the specified toolbox group. + * Value: A object that is an array of items obtained from the specified toolbox group. + */ + items: KnockoutObservableArray; +} +/** + * A toolbar group that contains dashboard toolbar items. + */ +interface DashboardToolbarGroup { + /** + * Gets or sets a unique name of the dashboard toolbar group. + * Value: A string value that is a unique toolbar group name. + */ + name: string; + /** + * Gets or sets a dashboard toolbar group title. + * Value: A string value that is a dashboard toolbar group title. + */ + title: string; + /** + * Gets or sets a position of the toolbar group within the Toolbox. + * Value: A zero-based integer specifying the position of the current toolbar group. + */ + index: number; + /** + * Provide an access to the collection of toolbox items obtained from the specified toolbar group. + * Value: A object that is an array of items obtained from the specified toolbar group. + */ + items: KnockoutObservableArray; +} +/** + * The Web Dashboard Toolbox extension that provides access to the dashboard menu and allows you to add dashboard items, as well as undo or repeat user actions. + */ +interface ToolboxExtension extends IExtension { + /** + * Gets or sets the visibility of the dashboard menu. + * Value: true, to display the dashboard menu; otherwise, false. + */ + menuVisible: KnockoutObservableBoolean; + /** + * Provide an access to the collection of menu items obtained from the dashboard menu. + * Value: A object that is a collection the dashboard menu items . + */ + menuItems: KnockoutObservableArray; + /** + * Provide an access to the collection of toolbox groups obtained from the Toolbox. + * Value: A object that is a collection the toolbox groups. + */ + toolboxGroups: KnockoutObservableArray; + /** + * Provide an access to the collection of toolbar groups obtained from the Toolbox. + * Value: A object that is a collection the toolbar groups. + */ + toolbarGroups: KnockoutObservableArray; + /** + * Allows you to add a specified menu item to the dashboard menu. + * @param menuItem A DashboardMenuItem object that is a dashboard menu item. + */ + addMenuItem(menuItem: DashboardMenuItem): void; + /** + * Removes the specified dashboard item from the dashboard menu. + * @param menuItemId A string value that is a unique dashboard item name. + */ + removeMenuItem(menuItemId: string): void; + /** + * Simulates a dashboard menu item selection. + * @param menuItem A DashboardMenuItem object that is a dashboard menu item. + */ + selectMenuItem(menuItem: DashboardMenuItem): void; + /** + * Allows you to add a specified toolbox item into a specified toolbox group. + * @param groupName A string value that is a toolbox group name. To get a toolbox group name, use the name property. + * @param toolboxItem A DashboardToolboxItem object that is a dashboard toolbox item. + */ + addToolboxItem(groupName: string, toolboxItem: DashboardToolboxItem): void; + /** + * Removes the specified toolbox item from the specified toolbox group. + * @param groupName A string value that is a unique toolbox group name. + * @param toolboxItemName A string value that is a unique toolbox item name. + */ + removeToolboxItem(groupName: string, toolboxItemName: string): void; + /** + * Allows you to add a specified toolbar item into a specified toolbar group. + * @param groupName A string value that is a toolbar group name. To get a toolbar group name, use the name property. + * @param toolbarItem A DashboardToolbarItem object that is a dashboard toolbar item. + */ + addToolbarItem(groupName: string, toolbarItem: DashboardToolbarItem): void; + /** + * Removes the specified toolbar item from the specified toolbar group. + * @param groupName A string value that is a unique toolbar group name. + * @param toolbarItemName A string value that is a unique toolbar item name. + */ + removeToolbarItem(groupName: string, toolbarItemName: string): void; +} +/** + * A Web Dashboard extension that allows you to create and edit dashboard parameters. + */ +interface DashboardParameterEditorExtension extends IExtension { +} +/** + * Serves as the base object for all the editors included in the client-side object model. + */ +interface ASPxClientEditBase extends ASPxClientControl { + /** + * Returns the editor's value. + */ + GetValue(): Object; + /** + * Changes the editor's value. + * @param value An object representing the data to be assigned to the editor's edit value. + */ + SetValue(value: Object): void; + /** + * Returns a value indicating whether an editor is enabled. + */ + GetEnabled(): boolean; + /** + * Specifies whether an editor is enabled. + * @param value true to enable the editor; otherwise, false. + */ + SetEnabled(value: boolean): void; + /** + * Returns the text displayed in the editor caption. + */ + GetCaption(): string; + /** + * Specifies the text displayed in the editor caption. + * @param caption A string value specifying the editor caption. + */ + SetCaption(caption: string): void; +} +/** + * Serves as the base object for all the editors that support validation. + */ +interface ASPxClientEdit extends ASPxClientEditBase { + /** + * Fires on the client side when the editor receives input focus. + */ + GotFocus: ASPxClientEvent>; + /** + * Fires on the client side when the editor loses input focus. + */ + LostFocus: ASPxClientEvent>; + /** + * Allows you to specify whether the value entered into the editor is valid, and whether the editor is allowed to lose focus. + */ + Validation: ASPxClientEvent>; + /** + * Fires after the editor's value has been changed by end-user interactions. + */ + ValueChanged: ASPxClientEvent>; + /** + * Returns an HTML element that represents the control's input element. + */ + GetInputElement(): Object; + /** + * Sets input focus to the editor. + */ + Focus(): void; + /** + * Gets a value that indicates whether the editor's value passes validation. + */ + GetIsValid(): boolean; + /** + * Gets the error text to be displayed within the editor's error frame if the editor's validation fails. + */ + GetErrorText(): string; + /** + * Sets a value that specifies whether the editor's value is valid. + * @param isValid True if the editor's value is valid; otherwise, False. + */ + SetIsValid(isValid: boolean): void; + /** + * Sets the error text to be displayed within the editor's error frame if the editor's validation fails. + * @param errorText A string value representing the error text. + */ + SetErrorText(errorText: string): void; + /** + * Performs the editor's validation. + */ + Validate(): void; +} +/** + * Represents the client-side equivalent of the ASPxBinaryImage control. + */ +interface ASPxClientBinaryImage extends ASPxClientEdit { + /** + * Occurs on the client side after an image is clicked. + */ + Click: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client side if any server error occurs during server-side processing of a callback sent by the ASPxClientBinaryImage. + */ + CallbackError: ASPxClientEvent>; + /** + * Sets the size of the image editor. + * @param width An integer value that specifies the control's width. + * @param height An integer value that specifies the control's height. + */ + SetSize(width: number, height: number): void; + /** + * For internal use only. + */ + GetValue(): Object; + /** + * For internal use only. + * @param value + */ + SetValue(value: Object): void; + /** + * Removes an image from the editor content. + */ + Clear(): void; + /** + * Returns a name of the last uploaded file. + */ + GetUploadedFileName(): string; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * Represents the client-side equivalent of the ASPxButton control. + */ +interface ASPxClientButton extends ASPxClientControl { + /** + * Occurs on the client side when the button's checked state is changed. + */ + CheckedChanged: ASPxClientEvent>; + /** + * Fires on the client side when the button receives input focus. + */ + GotFocus: ASPxClientEvent>; + /** + * Fires on the client side when the button loses input focus. + */ + LostFocus: ASPxClientEvent>; + /** + * Occurs on the client side after a button is clicked. + */ + Click: ASPxClientEvent>; + /** + * Simulates a mouse click action on the button control. + */ + DoClick(): void; + /** + * Returns a value indicating whether the button is checked. + */ + GetChecked(): boolean; + /** + * Sets a value that specifies the button's checked status. + * @param value true if the button is checked; otherwise, false. + */ + SetChecked(value: boolean): void; + /** + * Returns the text displayed within the button. + */ + GetText(): string; + /** + * Sets the text to be displayed within the button. + * @param value A string value specifying the text to be displayed within the button. + */ + SetText(value: string): void; + /** + * Returns the URL pointing to the image displayed within the button. + */ + GetImageUrl(): string; + /** + * Sets the URL pointing to the image displayed within the button. + * @param value A string value that is the URL to the image displayed within the button. + */ + SetImageUrl(value: string): void; + /** + * Sets a value specifying whether the button is enabled. + * @param value true to enable the button; false to disable it. + */ + SetEnabled(value: boolean): void; + /** + * Returns a value indicating whether the button is enabled. + */ + GetEnabled(): boolean; + /** + * Sets input focus to the button. + */ + Focus(): void; +} +/** + * A method that will handle the client Click event. + */ +interface ASPxClientButtonClickEventHandler { + /** + * A method that will handle the client Click event. + * @param source An object that is the event's source. + * @param e An ASPxClientButtonClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientButtonClickEventArgs): void; +} +/** + * Provides data for the Click event. + */ +interface ASPxClientButtonClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Specifies whether both the event's default action and the event's bubbling upon the hierarchy of event handlers should be canceled. + * Value: true to cancel the event's default action and the event's bubbling upon the hierarchy of event handlers; otherwise, false. + */ + cancelEventAndBubble: boolean; +} +/** + * Represents the client-side equivalent of the ASPxCalendar control. + */ +interface ASPxClientCalendar extends ASPxClientEdit { + /** + * Fires on the client side after the selected date has been changed within the calendar. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the month displayed within the calendar is changed. + */ + VisibleMonthChanged: ASPxClientEvent>; + /** + * Allows you to disable the calendar's days. + */ + CustomDisabledDate: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user presses a key while the editor has focus. + */ + KeyDown: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user presses and releases a key while the editor has focus. + */ + KeyPress: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user releases a pressed key while the editor has focus. + */ + KeyUp: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after the callback server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientCalendar. + */ + CallbackError: ASPxClientEvent>; + /** + * Tests whether the specified date is selected. + * @param date A date-time value that specifies the date to test. + */ + IsDateSelected(date: Date): boolean; + /** + * Sets the date that specifies the month and year to be displayed in the calendar. + * @param date The date that specifies calendar's visible month and year. + */ + SetVisibleDate(date: Date): void; + /** + * Sets the calendar's selected date. + * @param date A date object that specifies the calendar's selected date. + */ + SetSelectedDate(date: Date): void; + /** + * Returns the calendar's selected date. + */ + GetSelectedDate(): Date; + /** + * Gets the date that determines the month and year that are currently displayed in the calendar. + */ + GetVisibleDate(): Date; + /** + * Selects the specified date within the calendar. + * @param date A date-time value that specifies the selected date. + */ + SelectDate(date: Date): void; + /** + * Selects the specified range of dates within the calendar. + * @param start A date-time value that specifies the range's first date. + * @param end A date-time value that specifies the range's last date. + */ + SelectRange(start: Date, end: Date): void; + /** + * Deselects the specified date within the calendar. + * @param date A date-time value that specifies the date to deselect. + */ + DeselectDate(date: Date): void; + /** + * Deselects the specified range of dates within the calendar. + * @param start A date-time value that specifies the range's first date. + * @param end A date-time value that specifies the range's last date. + */ + DeselectRange(start: Date, end: Date): void; + /** + * Deselects all the selected dates within the calendar. + */ + ClearSelection(): void; + /** + * Returns a list of dates which are selected within the calendar. + */ + GetSelectedDates(): Date[]; + /** + * Gets the minimum date on the calendar. + */ + GetMinDate(): Date; + /** + * Sets the minimum date of the calendar. + * @param date A DateTime object representing the minimum date. + */ + SetMinDate(date: Date): void; + /** + * Gets the maximum date on the calendar. + */ + GetMaxDate(): Date; + /** + * Sets the maximum date of the calendar. + * @param date A DateTime object representing the maximum date. + */ + SetMaxDate(date: Date): void; +} +/** + * Provides data for the CustomDisabledDate event. + */ +interface ASPxClientCalendarCustomDisabledDateEventArgs extends ASPxClientEventArgs { + /** + * Gets the date processed in the calendar. + * Value: A DateTime value containing processed data. + */ + date: Date; + /** + * Gets or sets a value specifying whether selection of the processed calendar date is disabled. + * Value: true, if the date is disabled; otherwise, false. + */ + isDisabled: boolean; +} +/** + * A method that will handle the client CustomDisabledDate event. + */ +interface ASPxClientCalendarCustomDisabledDateEventHandler { + /** + * A method that will handle the client CustomDisabledDate event. + * @param source The event source. + * @param e An ASPxClientCalendarCustomDisabledDateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCalendarCustomDisabledDateEventArgs): void; +} +/** + * Represents the client-side equivalent of the ASPxCaptcha control. + */ +interface ASPxClientCaptcha extends ASPxClientControl { + /** + * Sets input focus to the control's text box. + */ + Focus(): void; + /** + * Refreshes the code displayed within the editor's challenge image. + */ + Refresh(): void; +} +/** + * Represents the client-side equivalent of the ASPxCheckBox control. + */ +interface ASPxClientCheckBox extends ASPxClientEdit { + /** + * Occurs on the client side when the editor's checked state is changed. + */ + CheckedChanged: ASPxClientEvent>; + /** + * Returns a value indicating whether the check box editor is checked. + */ + GetChecked(): boolean; + /** + * Sets a value which specifies the checked status of the check box editor. + * @param isChecked true if the check box editor is checked; otherwise, false. + */ + SetChecked(isChecked: boolean): void; + /** + * Returns the text displayed within the editor. + */ + GetText(): string; + /** + * Returns a value which specifies a check box checked state. + */ + GetCheckState(): string; + /** + * Sets a value specifying the state of a check box. + * @param checkState A string value matches one of the CheckState enumeration values. + */ + SetCheckState(checkState: string): void; + /** + * Sets the text to be displayed within the editor. + * @param text A string value specifying the text to be displayed within the editor. + */ + SetText(text: string): void; +} +/** + * Represents the client-side equivalent of the ASPxRadioButton control. + */ +interface ASPxClientRadioButton extends ASPxClientCheckBox { + /** + * Returns a value indicating whether the radio button is checked. + */ + GetChecked(): boolean; + /** + * Sets a value which specifies the radio button's checked status. + * @param isChecked true if the radio button is checked; otherwise, false. + */ + SetChecked(isChecked: boolean): void; +} +/** + * Represents a base for client-side objects which allow single-line text input. + */ +interface ASPxClientTextEdit extends ASPxClientEdit { + /** + * Occurs on the client-side when an end-user presses a key while the editor has focus. + */ + KeyDown: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user presses and releases a key while the editor has focus. + */ + KeyPress: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user releases a pressed key while the editor has focus. + */ + KeyUp: ASPxClientEvent>; + /** + * Fires on the client side when the editor's text is changed and focus moves out of the editor by end-user interactions. + */ + TextChanged: ASPxClientEvent>; + /** + * Returns the text displayed within the editor. + */ + GetText(): string; + /** + * Sets the text to be displayed within the editor. + * @param text A string value specifying the text to be displayed within the editor. + */ + SetText(text: string): void; + /** + * Selects all text in the text editor. + */ + SelectAll(): void; + /** + * Sets the caret position within the edited text. + * @param position An integer value that specifies the zero-based index of a text character that shall precede the caret. + */ + SetCaretPosition(position: number): void; + /** + * Obtains the caret position within the edited text. + */ + GetCaretPosition(): number; + /** + * Selects the specified portion of the editor's text. + * @param startPos A zero-based integer value specifying the selection's starting position. + * @param endPos A zero-based integer value specifying the selection's ending position. + * @param scrollToSelection true to scroll the editor's contents to make the selection visible; otherwise, false. + */ + SetSelection(startPos: number, endPos: number, scrollToSelection: boolean): void; +} +/** + * Represents a base for client-side editors which are capable of displaying and editing text data in their edit regions. + */ +interface ASPxClientTextBoxBase extends ASPxClientTextEdit { +} +/** + * Represents a base for client button editor objects. + */ +interface ASPxClientButtonEditBase extends ASPxClientTextBoxBase { + /** + * Occurs on the client side after an editor button is clicked. + */ + ButtonClick: ASPxClientEvent>; + /** + * Specifies whether the button is visible. + * @param number An integer value specifying the button's index within the Buttons collection. + * @param value true, to make the button visible; otherwise, false. + */ + SetButtonVisible(number: number, value: boolean): void; + /** + * Returns a value specifying whether a button is displayed. + * @param number An integer value specifying the button's index within the Buttons collection. + */ + GetButtonVisible(number: number): boolean; +} +/** + * Represents a base class for the editors that contain a drop down window. + */ +interface ASPxClientDropDownEditBase extends ASPxClientButtonEditBase { + /** + * Occurs on the client-side when the drop down window is opened. + */ + DropDown: ASPxClientEvent>; + /** + * Occurs on the client side when the drop down window is closed. + */ + CloseUp: ASPxClientEvent>; + /** + * Occurs on the client side before the drop down window is closed and allows you to cancel the operation. + */ + QueryCloseUp: ASPxClientEvent>; + /** + * Modifies the size of the drop down window in accordance with its content. + */ + AdjustDropDownWindow(): void; + /** + * Invokes the editor's drop down window. + */ + ShowDropDown(): void; + /** + * Closes the opened drop down window of the editor. + */ + HideDropDown(): void; +} +/** + * Represents the client-side equivalent of the ASPxColorEdit control. + */ +interface ASPxClientColorEdit extends ASPxClientDropDownEditBase { + /** + * Fires after the selected color has been changed within the color editor via end-user interaction. + */ + ColorChanged: ASPxClientEvent>; + /** + * This event is not in effect for the ASPxClientColorEdit. Use the ColorChanged event instead. + */ + TextChanged: ASPxClientEvent>; + /** + * Returns the color editor's value. + */ + GetColor(): string; + /** + * Specifies the color value for the color editor. + * @param value A string value specifying the editor color. + */ + SetColor(value: string): void; + /** + * Indicates whether the automatic color item is selected. + */ + IsAutomaticColorSelected(): boolean; +} +/** + * Represent the client-side equivalent of the ASPxComboBox control. + */ +interface ASPxClientComboBox extends ASPxClientDropDownEditBase { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientComboBox. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side after a different item in the list has been selected (focus has been moved from one item to another). + */ + SelectedIndexChanged: ASPxClientEvent>; + /** + * Specifies the text displayed within the editor's edit box. + * @param text A string value specifying the editor's text. + */ + SetText(text: string): void; + /** + * Adds a new item to the editor specifying the item's display text and returns the index of the added item. + * @param text A string value specifying the item's display text. + */ + AddItem(text: string): number; + /** + * Adds a new item to the editor specifying the item's display text and associated value, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + */ + AddItem(text: string, value: Object): number; + /** + * Adds a new item to the editor specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + * @param imageUrl A string value specifying the path to the image displayed by the item. + */ + AddItem(text: string, value: Object, imageUrl: string): number; + /** + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + * @param imageUrl A string value specifying the path to the image displayed by the item. + */ + InsertItem(index: number, text: string, value: Object, imageUrl: string): void; + /** + * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + */ + InsertItem(index: number, text: string, value: Object): void; + /** + * Inserts a new item specified by its display text into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + */ + InsertItem(index: number, text: string): void; + /** + * Removes an item specified by its index from the client list editor. + * @param index An integer value representing the index of the list item to be removed. + */ + RemoveItem(index: number): void; + /** + * Removes all items from the client combo box editor. + */ + ClearItems(): void; + /** + * Prevents the client combobox editor from being rendered until the EndUpdate method is called. + */ + BeginUpdate(): void; + /** + * Re-enables editor render operations after a call to the BeginUpdate method and forces an immediate re-rendering. + */ + EndUpdate(): void; + /** + * Scrolls the editor's item list, so that the specified item becomes visible. + * @param index An integer value that specifies the item's index within the editor's client item list. + */ + MakeItemVisible(index: number): void; + /** + * Returns an item specified by its index within the combo box editor's item collection. + * @param index An integer value specifying the zero-based index of the item to search for. + */ + GetItem(index: number): ASPxClientListEditItem; + /** + * Returns a combo box item by its text. + * @param text A string that specifies the item's text. + */ + FindItemByText(text: string): ASPxClientListEditItem; + /** + * Returns a combo box item by its value. + * @param value An object that specifies the item's value. + */ + FindItemByValue(value: Object): ASPxClientListEditItem; + /** + * Gets the number of items contained in the editor's item collection. + */ + GetItemCount(): number; + /** + * Returns the index of the selected item within the combo box editor. + */ + GetSelectedIndex(): number; + /** + * Sets the combobox editor's selected item specified by its index. + * @param index An integer value specifying the zero-based index of the item to select. + */ + SetSelectedIndex(index: number): void; + /** + * Returns the combo box editor's selected item. + */ + GetSelectedItem(): ASPxClientListEditItem; + /** + * Sets the list editor's selected item. + * @param item An ASPxClientListEditItem object that specifies the item to select. + */ + SetSelectedItem(item: ASPxClientListEditItem): void; + /** + * Gets the text displayed in the editor's edit box. + */ + GetText(): string; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + */ + AddItem(texts: string[]): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + */ + AddItem(texts: string[], value: Object): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + * @param imageUrl A string value specifying the path to the image displayed by the item. + */ + AddItem(texts: string[], value: Object, imageUrl: string): number; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + * @param imageUrl A String value specifying the path to the image displayed by the item. + */ + InsertItem(index: number, texts: string[], value: Object, imageUrl: string): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + */ + InsertItem(index: number, texts: string[], value: Object): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + */ + InsertItem(index: number, texts: string[]): void; + /** + * Determines whether the drop-down content is loaded; if not - loads the content. + * @param callbackFunction An object that is the JavaScript function that receives the callback data as a parameter. The function is performed after the combo box content is loaded. + */ + EnsureDropDownLoaded(callbackFunction: Object): void; + /** + * Defines the HTML content for the specified combo box item. + * @param index An integer value specifying the zero-based index of the item. + * @param html A string value that is the HTML code defining the content of the combo box item. + */ + SetItemHtml(index: number, html: string): void; + /** + * Sets the tooltip text for the combo box editor's item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param tooltip A string value specifying the tooltip text. + */ + SetItemTooltip(index: number, tooltip: string): void; + /** + * Sets the CSS class for a combo box item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param className A string value specifying the CSS class name. + */ + AddItemCssClass(index: number, className: string): void; + /** + * Removes the CSS class from a combo box item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param className A string value specifying the CSS class name. + */ + RemoveItemCssClass(index: number, className: string): void; + /** + * Defines the HTML content for the specified combo box item's text cell. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param html A string value that is the HTML code defining the content of the combo box item. + */ + SetItemTextCellHtml(itemIndex: number, textCellIndex: number, html: string): void; + /** + * Sets the tooltip text for the text cell of the editor's item specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param tooltip A string value specifying the tooltip text. + */ + SetItemTextCellTooltip(itemIndex: number, textCellIndex: number, tooltip: string): void; + /** + * Sets the CSS class for a combo box item's text cell specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param className A string value specifying the CSS class name. + */ + AddItemTextCellCssClass(itemIndex: number, textCellIndex: number, className: string): void; + /** + * Removes the CSS class from a combo box item's text cell specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param className A string value specifying the CSS class name. + */ + RemoveItemTextCellCssClass(itemIndex: number, textCellIndex: number, className: string): void; +} +/** + * Represents the client-side equivalent of the ASPxDateEdit control. + */ +interface ASPxClientDateEdit extends ASPxClientDropDownEditBase { + /** + * Fires after the selected date has been changed within the date editor. + */ + DateChanged: ASPxClientEvent>; + /** + * Enables you to convert the value entered by an end user into the value that will be stored by the date editor. + */ + ParseDate: ASPxClientEvent>; + /** + * Allows you to disable the calendar's days. + */ + CalendarCustomDisabledDate: ASPxClientEvent>; + /** + * This event is not in effect for the ASPxClientDateEdit. Use the DateChanged event instead. + */ + TextChanged: ASPxClientEvent>; + /** + * Returns the calendar of the date editor. + */ + GetCalendar(): ASPxClientCalendar; + /** + * Returns the built-in time edit control. + */ + GetTimeEdit(): ASPxClientTimeEdit; + /** + * Specifies the date for the editor. + * @param date A DateTime object that is the date. + */ + SetDate(date: Date): void; + /** + * Gets the date that is the editor's value. + */ + GetDate(): Date; + /** + * Returns the number of days in a range selected within a date edit. + */ + GetRangeDayCount(): number; + /** + * Gets the minimum date of the editor. + */ + GetMinDate(): Date; + /** + * Sets the minimum date of the editor. + * @param date A DateTime object representing the minimum date. + */ + SetMinDate(date: Date): void; + /** + * Gets the maximum date of the editor. + */ + GetMaxDate(): Date; + /** + * Sets the maximum date of the editor. + * @param date A DateTime object representing the maximum date. + */ + SetMaxDate(date: Date): void; +} +/** + * Provides data for the ParseDate client-side event that parses a string entered into a date editor. + */ +interface ASPxClientParseDateEventArgs extends ASPxClientEventArgs { + /** + * Gets the value entered into the date editor by an end user. + * Value: The string value entered into the date editor by an end user. + */ + value: string; + /** + * Gets or sets the edit value of the date editor. + * Value: A date/time value representing the edit value of the date editor. + */ + date: Date; + /** + * Gets or sets a value specifying whether the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * A method that will handle the client ParseDate event, that parses a date editor's value when entered. + */ +interface ASPxClientParseDateEventHandler { + /** + * A method that will handle the ParseDate event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientParseDateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientParseDateEventArgs): void; +} +/** + * Represents a base for client editor objects realizing the dropdown editor functionality. + */ +interface ASPxClientDropDownEdit extends ASPxClientDropDownEditBase { + /** + * Obtains the key value associated with the text displayed within the editor's edit box. + */ + GetKeyValue(): string; + /** + * Specifies the key value associated with the text displayed within the editor's edit box. + * @param keyValue A string specifying the key value associated with the editor's value (displayed text). + */ + SetKeyValue(keyValue: string): void; +} +/** + * A method that will handle the client events involving a keyboard key being pressed or released. + */ +interface ASPxClientEditKeyEventHandler { + /** + * A method that will handle the client events concerning a keyboard key being pressed. + * @param source The event source. This parameter identifies the editor which raised the event. + * @param e An ASPxClientEditKeyEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEditKeyEventArgs): void; +} +/** + * Provides data for the client events involved with a key being pressed or released. + */ +interface ASPxClientEditKeyEventArgs extends ASPxClientEventArgs { + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle client validation events. + */ +interface ASPxClientEditValidationEventHandler { + /** + * A method that will handle client validation events. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientEditValidationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEditValidationEventArgs): void; +} +/** + * Provides data for the client events that are related to data validation (see Validate). + */ +interface ASPxClientEditValidationEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets the error description. + * Value: A string representing the error description. + */ + errorText: string; + /** + * Gets or sets a value specifying whether the validated value is valid. + * Value: true if the value is valid; otherwise, false. + */ + isValid: boolean; + /** + * Gets or sets the editor's value being validated. + * Value: An object that represents the validated value. + */ + value: string; +} +/** + * Represents the client ASPxFilterControl. + */ +interface ASPxClientFilterControl extends ASPxClientControl { + /** + * Occurs after a new filter expression has been applied. + */ + Applied: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientFilterControl. + */ + CallbackError: ASPxClientEvent>; + /** + * Returns the filter expression. + */ + GetFilterExpression(): string; + /** + * Returns the applied filter expression. + */ + GetAppliedFilterExpression(): string; + /** + * Returns the editor used to edit operand values for the specified filter column. + * @param editorIndex An integer value that identifies the filter column by its index within the collection. + */ + GetEditor(editorIndex: number): ASPxClientEditBase; + /** + * Returns a value indicating whether the filter expression being currently composed on the client side is valid - all expression conditions are filled. + */ + IsFilterExpressionValid(): boolean; + /** + * Applies a filter constructed by an end-user. + */ + Apply(): void; + /** + * Resets the current filter expression to a previously applied filter expression. + */ + Reset(): void; +} +/** + * A method that will handle the Applied event. + */ +interface ASPxClientFilterAppliedEventHandler { + /** + * A method that will handle the Applied event. + * @param source The event source. + * @param e An ASPxClientFilterAppliedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFilterAppliedEventArgs): void; +} +/** + * Provides data for the Applied event. + */ +interface ASPxClientFilterAppliedEventArgs extends ASPxClientEventArgs { + /** + * Gets the filter expression currently being applied. + * Value: A string value that specifies the filter expression currently being applied. + */ + filterExpression: string; +} +/** + * Represents a base for client editor objects that display a list of items. + */ +interface ASPxClientListEdit extends ASPxClientEdit { + /** + * Occurs on the client side after a different item in the list has been selected (focus has been moved from one item to another). + */ + SelectedIndexChanged: ASPxClientEvent>; + /** + * Returns the list editor's selected item. + */ + GetSelectedItem(): ASPxClientListEditItem; + /** + * Returns the index of the selected item within the list editor. + */ + GetSelectedIndex(): number; + /** + * Sets the list editor's selected item. + * @param item An ASPxClientListEditItem object that specifies the item to select. + */ + SetSelectedItem(item: ASPxClientListEditItem): void; + /** + * Sets the list editor's selected item specified by its index. + * @param index An integer value specifying the zero-based index of the item to select. + */ + SetSelectedIndex(index: number): void; +} +/** + * Represents the client-side equivalent of the ListEditItem object. + */ +interface ASPxClientListEditItem { + /** + * Gets a value that indicates whether a list edit item is selected. + * Value: true if a list edit item is selected; otherwise, false. + */ + selected: boolean; + /** + * Gets an editor to which the current item belongs. + * Value: An ASPxClientListEdit object that represents the item's owner editor. + */ + listEditBase: ASPxClientListEdit; + /** + * Gets the item's index. + * Value: An integer value that represents the item's index within the corresponding editor's item collection. + */ + index: number; + /** + * Gets the item's associated image. + * Value: A string value that represents the path to the image displayed by the item. + */ + imageUrl: string; + /** + * Gets the item's display text. + * Value: A string value that represents the item's display text. + */ + text: string; + /** + * Gets the item's associated value. + * Value: An object that represents the value associated with the item. + */ + value: Object; + /** + * Returns the list item's value that corresponds to a column specified by its index. + * @param columnIndex An integer value that specifies the column's index within the editor's Columns collection. + */ + GetColumnText(columnIndex: number): string; + /** + * Returns the list item's value that corresponds to a column specified by its field name. + * @param columnName A string value that specifies the column's field name defined via the FieldName property. + */ + GetColumnText(columnName: string): string; +} +/** + * Represents the client-side equivalent of the ASPxListBox control. + */ +interface ASPxClientListBox extends ASPxClientListEdit { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientListBox. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when an end-user presses a key while the editor has focus. + */ + KeyDown: ASPxClientEvent>; + /** + * Occurs on the client side when an end-user presses and releases a key while the editor has focus. + */ + KeyPress: ASPxClientEvent>; + /** + * Occurs on the client side when an end-user releases a pressed key while the editor has focus. + */ + KeyUp: ASPxClientEvent>; + /** + * Occurs on the client side after a different item in the list box has been selected (focus has been moved from one item to another). + */ + SelectedIndexChanged: ASPxClientEvent>; + /** + * Occurs on the client when the editor's item is double clicked. + */ + ItemDoubleClick: ASPxClientEvent>; + /** + * Gets the number of items contained in the editor's item collection. + */ + GetItemCount(): number; + /** + * Returns an item specified by its index within the list box editor's item collection. + * @param index An integer value specifying the zero-based index of the item to search for. + */ + GetItem(index: number): ASPxClientListEditItem; + /** + * Returns an array of the list editor's selected items indices. + */ + GetSelectedIndices(): number[]; + /** + * Returns an array of the list editor's selected items values. + */ + GetSelectedValues(): Object[]; + /** + * Returns an array of the list editor's selected items. + */ + GetSelectedItems(): ASPxClientListEditItem[]; + /** + * Selects all list box items. + */ + SelectAll(): void; + /** + * Unselects all list box items. + */ + UnselectAll(): void; + /** + * Selects the items with the specified indices within a list box. + * @param indices An array of integer values that represent the items indices. + */ + SelectIndices(indices: number[]): void; + /** + * Unselects an array of the list box items with the specified indices. + * @param indices An array of integer values that represent the indices. + */ + UnselectIndices(indices: number[]): void; + /** + * Selects the specified items within a list box. + * @param items An array of ASPxClientListEditItem objects that represent the items. + */ + SelectItems(items: ASPxClientListEditItem[]): void; + /** + * Unselects an array of the specified list box items. + * @param items An array of ASPxClientListEditItem objects that represent the items. + */ + UnselectItems(items: ASPxClientListEditItem[]): void; + /** + * Select the items with the specified values within a list box. + * @param values An array of Object[] objects that represent the item's values. + */ + SelectValues(values: Object[]): void; + /** + * Unselects an array of the list box items with the specified values. + * @param values An array of Object[] objects that represent the values. + */ + UnselectValues(values: Object[]): void; + /** + * Scrolls the editor's item list, so that the specified item becomes visible. + * @param index An integer value that specifies the item's index within the editor's client item list. + */ + MakeItemVisible(index: number): void; + /** + * Initializes the ASPxClientListBox client object when its parent container becomes visible dynamically, on the client side. + */ + InitOnContainerMadeVisible(): void; + /** + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param text A string value specifying the item's display text. + */ + AddItem(text: string): number; + /** + * Adds a new item to the editor, specifying the item's display text and associated value, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + */ + AddItem(text: string, value: Object): number; + /** + * Adds a new item to the editor, specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + * @param imageUrl A string value specifying the path to the image displayed by the item. + */ + AddItem(text: string, value: Object, imageUrl: string): number; + /** + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + * @param imageUrl A string value specifying the path to the image displayed by the item. + */ + InsertItem(index: number, text: string, value: Object, imageUrl: string): void; + /** + * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + * @param value An object specifying the value associated with the item. + */ + InsertItem(index: number, text: string, value: Object): void; + /** + * Inserts a new item specified by its display text into the editor's item collection, at the position specified. + * @param index An integer value representing the zero-based index of the position where the item should be inserted. + * @param text A string value specifying the item's display text. + */ + InsertItem(index: number, text: string): void; + /** + * Prevents the client list box editor from being rendered until the EndUpdate method is called. + */ + BeginUpdate(): void; + /** + * Re-enables editor render operations after a call to the BeginUpdate method, and forces an immediate re-rendering. + */ + EndUpdate(): void; + /** + * Removes all items from the client list box editor. + */ + ClearItems(): void; + /** + * Removes an item specified by its index from the client list editor. + * @param index An integer value representing the index of the list item to be removed. + */ + RemoveItem(index: number): void; + /** + * Returns a list box item by its text. + * @param text A string that specifies the item's text. + */ + FindItemByText(text: string): ASPxClientListEditItem; + /** + * Returns a list box item by its value. + * @param value An object that specifies the item's value. + */ + FindItemByValue(value: Object): ASPxClientListEditItem; + /** + * Sends a callback to the server, and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Adds a new item to the end of the editor's items collection, specifying the item's display text, and returns the index of the added item. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + */ + AddItem(texts: string[]): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + */ + AddItem(texts: string[], value: Object): number; + /** + * Adds a new item to the end of the editor's items collection, specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + * @param imageUrl A String value specifying the path to the image displayed by the item. + */ + AddItem(texts: string[], value: Object, imageUrl: string): number; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + * @param imageUrl A String value specifying the path to the image displayed by the item. + */ + InsertItem(index: number, texts: string[], value: Object, imageUrl: string): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + * @param value An object that represents the item's associated value. + */ + InsertItem(index: number, texts: string[], value: Object): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index An integer value that represents the index position. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding columns within the editor's Columns collection. + */ + InsertItem(index: number, texts: string[]): void; + /** + * Defines the HTML content for the specified list box item. + * @param index An integer value specifying the zero-based index of the item. + * @param html A string value that is the HTML code defining the content of the list box item. + */ + SetItemHtml(index: number, html: string): void; + /** + * Sets the tooltip text for the list box editor's item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param tooltip A string value specifying the tooltip text. + */ + SetItemTooltip(index: number, tooltip: string): void; + /** + * Sets the CSS class for a list box item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param className A string value specifying the CSS class name. + */ + AddItemCssClass(index: number, className: string): void; + /** + * Removes the CSS class from a list box item specified by its index. + * @param index An integer value specifying the zero-based index of the item. + * @param className A string value specifying the CSS class name. + */ + RemoveItemCssClass(index: number, className: string): void; + /** + * Defines the HTML content for the specified list box item's text cell. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param html A string value that is the HTML code defining the content of the list box item. + */ + SetItemTextCellHtml(itemIndex: number, textCellIndex: number, html: string): void; + /** + * Sets the tooltip text for the text cell of the editor's item specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param tooltip A string value specifying the tooltip text. + */ + SetItemTextCellTooltip(itemIndex: number, textCellIndex: number, tooltip: string): void; + /** + * Sets the CSS class for a list box item's text cell specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param className A string value specifying the CSS class name. + */ + AddItemTextCellCssClass(itemIndex: number, textCellIndex: number, className: string): void; + /** + * Removes the CSS class from a list box item's text cell specified by its index. + * @param itemIndex An integer value specifying the zero-based index of the item. + * @param textCellIndex An integer value specifying the zero-based index of the item's text cell. + * @param className A string value specifying the CSS class name. + */ + RemoveItemTextCellCssClass(itemIndex: number, textCellIndex: number, className: string): void; +} +/** + * Serves as the base type for the ASPxClientRadioButtonList objects. + */ +interface ASPxClientCheckListBase extends ASPxClientListEdit { + /** + * Gets the number of items contained in the editor's item collection. + */ + GetItemCount(): number; + /** + * Returns the editor's item specified by its index. + * @param index An integer value specifying the zero-based index of the item to be retrieved. + */ + GetItem(index: number): ASPxClientListEditItem; +} +/** + * Represents the client-side equivalent of the ASPxRadioButtonList control. + */ +interface ASPxClientRadioButtonList extends ASPxClientCheckListBase { +} +/** + * A client-side equivalent of the ASPxCheckBoxList object. + */ +interface ASPxClientCheckBoxList extends ASPxClientCheckListBase { + /** + * Occurs on the client side after a different item in the check box list has been selected (focus has been moved from one item to another). + */ + SelectedIndexChanged: ASPxClientEvent>; + /** + * Returns an array of the check box list editor's selected items indices. + */ + GetSelectedIndices(): number[]; + /** + * Returns an array of the check box list editor's selected items values. + */ + GetSelectedValues(): Object[]; + /** + * Returns an array of the check box list editor's selected items. + */ + GetSelectedItems(): ASPxClientListEditItem[]; + /** + * Selects all check box list items. + */ + SelectAll(): void; + /** + * Unselects all check box list items. + */ + UnselectAll(): void; + /** + * Selects items with the specified indices within a check box list. + * @param indices An array of integer values that are the item indices. + */ + SelectIndices(indices: number[]): void; + /** + * Selects the specified items within a check box list. + * @param items An array of ASPxClientListEditItem objects that are the items. + */ + SelectItems(items: ASPxClientListEditItem[]): void; + /** + * Selects items with the specified values within a check box list. + * @param values An array of Object[] objects that are the item values. + */ + SelectValues(values: Object[]): void; + /** + * Unselects items with the specified indices within a check box list. + * @param indices An array of integer values that are the item indices. + */ + UnselectIndices(indices: number[]): void; + /** + * Unselects the specified items within a check box list. + * @param items An array of ASPxClientListEditItem objects that are the items. + */ + UnselectItems(items: ASPxClientListEditItem[]): void; + /** + * Unselects items with the specified values within a check box list. + * @param values An array of Object[] objects that are the item values. + */ + UnselectValues(values: Object[]): void; +} +/** + * A method that will handle the SelectedIndexChanged event. + */ +interface ASPxClientListEditItemSelectedChangedEventHandler { + /** + * A method that will handle the SelectedIndexChanged event. + * @param source The event source. + * @param e An ASPxClientListEditItemSelectedChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientListEditItemSelectedChangedEventArgs): void; +} +/** + * Provides data for the SelectedIndexChanged event. + */ +interface ASPxClientListEditItemSelectedChangedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the index of the item related to the event. + * Value: An integer value that represents the item's index within the corresponding editor's item collection. + */ + index: number; + /** + * Gets whether the item has been selected. + * Value: true if the item is selected; otherwise, false. + */ + isSelected: boolean; +} +/** + * Represents a client-side equivalent of the ASPxProgressBar control. + */ +interface ASPxClientProgressBar extends ASPxClientEditBase { + /** + * Sets the position of the operation's progress. + * @param position An integer value specifying the progress position. + */ + SetPosition(position: number): void; + /** + * Gets the position of the operation's progress. + */ + GetPosition(): number; + /** + * Sets the pattern used to format the displayed text for the progress bar. + * @param text A value that is the format pattern. + */ + SetCustomDisplayFormat(text: string): void; + /** + * Returns the text displayed within the progress bar. + */ + GetDisplayText(): string; + /** + * Sets the percentage representation of the progress position. + */ + GetPercent(): number; + /** + * Sets the minimum range value of the progress bar. + * @param min An integer value specifying the minimum value of the progress bar range. + */ + SetMinimum(min: number): void; + /** + * Sets the maximum range value of the progress bar. + * @param max An integer value specifying the maximum value of the progress bar range. + */ + SetMaximum(max: number): void; + /** + * Gets the minimum range value of the progress bar. + */ + GetMinimum(): number; + /** + * Gets the maximum range value of the progress bar. + */ + GetMaximum(): number; + /** + * Sets the minimum and maximum range values of the progress bar. + * @param minValue An integer value specifying the minimum value of the progress bar range. + * @param maxValue An integer value specifying the maximum value of the progress bar range. + */ + SetMinMaxValues(minValue: number, maxValue: number): void; +} +/** + * Represents a base class for the ASPxClientSpinEdit object. + */ +interface ASPxClientSpinEditBase extends ASPxClientButtonEditBase { + /** + * This event is not in effect for the ASPxClientSpinEditBase. Use the ASPxClientTimeEdit. + */ + TextChanged: ASPxClientEvent>; +} +/** + * Represents the client-side equivalent of the ASPxSpinEdit control. + */ +interface ASPxClientSpinEdit extends ASPxClientSpinEditBase { + /** + * Occurs on the client side when the editor's value is altered in any way. + */ + NumberChanged: ASPxClientEvent>; + /** + * Specifies the value of the spin edit control on the client side. + * @param number A Decimal value specifying the control value. + */ + SetValue(number: number): void; + /** + * Sets the spin editor's value. + * @param number A decimal number specifying the value to assign to the spin editor. + */ + SetNumber(number: number): void; + /** + * Gets a number which represents the spin editor's value. + */ + GetNumber(): number; + /** + * Returns the text displayed within the editor. + */ + GetText(): string; + /** + * Sets the minimum value of the editor. + * @param value A decimal value specifying the minimum value of the editor. + */ + SetMinValue(value: number): void; + /** + * Gets the minimum value of the editor. + */ + GetMinValue(): number; + /** + * Sets the maximum value of the editor. + * @param value A decimal value specifying the maximum value of the editor. + */ + SetMaxValue(value: number): void; + /** + * Gets the maximum value of the editor. + */ + GetMaxValue(): number; + /** + * Changes the editor's value. + * @param value An object representing the data to be assigned to the editor's edit value. + */ + SetValue(value: Object): void; +} +/** + * Represents the client-side equivalent of the ASPxTimeEdit control. + */ +interface ASPxClientTimeEdit extends ASPxClientSpinEditBase { + /** + * Fires after the selected date has been changed within the time editor. + */ + DateChanged: ASPxClientEvent>; + /** + * Specifies the date for the editor. + * @param date A DateTime object that is the date. + */ + SetDate(date: Date): void; + /** + * Gets the date that is the editor's value. + */ + GetDate(): Date; +} +/** + * Represents a base for client-side static editors whose values cannot be visually changed by end users. + */ +interface ASPxClientStaticEdit extends ASPxClientEditBase { + /** + * Occurs on the client side after an end-user clicks within a static editor. + */ + Click: ASPxClientEvent>; +} +/** + * A method that will handle client-side events which concern clicking within editors. + */ +interface ASPxClientEditEventHandler { + /** + * A method that will handle client-side events which concern clicking within editors. + * @param source An object representing the event source. Identifies the editor that raised the event. + * @param e An ASPxClientEditClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEditClickEventArgs): void; +} +/** + * Provides data for the client-side events which concern clicking within editors. + */ +interface ASPxClientEditClickEventArgs extends ASPxClientEventArgs { + /** + * Gets the HTML element related to the event. + * Value: An object that represents the clicked HTML element. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Represents the client-side equivalent of the ASPxHyperLink control. + */ +interface ASPxClientHyperLink extends ASPxClientStaticEdit { + /** + * Gets an URL which defines the navigation location for the editor's hyperlink. + */ + GetNavigateUrl(): string; + /** + * Specifies an URL which defines the navigation location for the editor's hyperlink. + * @param url A string value which specifies an URL to where the client web browser will navigate when a hyperlink in the editor is clicked. + */ + SetNavigateUrl(url: string): void; + /** + * Gets the text caption displayed for the hyperlink in the hyperlink editor. + */ + GetText(): string; + /** + * Specifies the text caption displayed for the hyperlink in the hyperlink editor. + * @param text A string value specifying the text caption for the hyperlink in the editor. + */ + SetText(text: string): void; +} +/** + * Represents a base for client-side editors which are capable of displaying images. + */ +interface ASPxClientImageBase extends ASPxClientStaticEdit { + /** + * Sets the size of the image displayed within the image editor. + * @param width An integer value that specifies the image's width. + * @param height An integer value that specifies the image's height. + */ + SetSize(width: number, height: number): void; +} +/** + * Represents the client-side equivalent of the ASPxImage control. + */ +interface ASPxClientImage extends ASPxClientImageBase { + /** + * Returns the URL pointing to the image displayed within the image editor. + */ + GetImageUrl(): string; + /** + * Sets the URL which points to the image displayed within the image editor. + * @param url A string value specifying the URL to the image displayed within the editor. + */ + SetImageUrl(url: string): void; +} +/** + * Represents the client-side equivalent of the ASPxLabel control. + */ +interface ASPxClientLabel extends ASPxClientStaticEdit { + /** + * Returns the text displayed within the editor. + */ + GetText(): string; + /** + * Sets the text to be displayed within the editor. + * @param text A string value specifying the text to be displayed within the editor. + */ + SetText(text: string): void; +} +/** + * Represents the client-side equivalent of the ASPxTextBox control. + */ +interface ASPxClientTextBox extends ASPxClientTextBoxBase { +} +/** + * Represents the client-side equivalent of the ASPxMemo control. + */ +interface ASPxClientMemo extends ASPxClientTextEdit { +} +/** + * Represents the client-side equivalent of the ASPxButtonEdit control. + */ +interface ASPxClientButtonEdit extends ASPxClientButtonEditBase { +} +/** + * A method that will handle the ButtonClick event. + */ +interface ASPxClientButtonEditClickEventHandler { + /** + * A method that will handle the ButtonClick event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientButtonEditClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientButtonEditClickEventArgs): void; +} +/** + * Provides data for the ButtonClick event. + */ +interface ASPxClientButtonEditClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the index of the clicked button. + * Value: An integer value representing the index of the clicked button within the editor's Buttons collection. + */ + buttonIndex: number; +} +/** + * A client-side equivalent of the ASPxTokenBox object. + */ +interface ASPxClientTokenBox extends ASPxClientComboBox { + /** + * Fires on the client side after the token collection has been changed. + */ + TokensChanged: ASPxClientEvent>; + /** + * Adds a new token with the specified text to the end of the control's token collection. + * @param text A string value specifying the token's text. + */ + AddToken(text: string): void; + /** + * Removes a token specified by its text from the client token box. + * @param text A string value that is the text of the token to be removed. + */ + RemoveTokenByText(text: string): void; + /** + * Removes a token specified by its index from the client token box. + * @param index An integer value that is the index of the token to be removed. + */ + RemoveToken(index: number): void; + /** + * Returns an HTML span element that corresponds to the specified token. + * @param index An integer value that is the token index. + */ + GetTokenHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified token's text. + * @param index An integer value that is the token index. + */ + GetTokenTextHtmlElement(index: number): Object; + /** + * Returns an HTML span element that corresponds to the specified token's remove button. + * @param index An integer value that is the token index. + */ + GetTokenRemoveButtonHtmlElement(index: number): Object; + /** + * Returns a collection of tokens. + */ + GetTokenCollection(): string[]; + /** + * Sets a collection of tokens. + * @param collection A object that is the collection of tokens. + */ + SetTokenCollection(collection: string[]): void; + /** + * Removes all tokens contained in the token box. + */ + ClearTokenCollection(): void; + /** + * Returns the index of a token specified by its text. + * @param text A string value that specifies the text of the token. + */ + GetTokenIndexByText(text: string): number; + /** + * Gets the token texts, separated with a sign, specified by the TextSeparator property. + */ + GetText(): string; + /** + * Sets the token texts, separated with a sign, specified by the TextSeparator property. + * @param text A string value that is the token texts separated with a text separator. + */ + SetText(text: string): void; + /** + * Gets the editor value. + */ + GetValue(): string; + /** + * Sets the editor value. + * @param value A string that is the editor value. + */ + SetValue(value: string): void; + /** + * Returns a value that indicates if the specified token (string) is a custom token. + * @param text A string value that is a token. + * @param caseSensitive true, if tokens are case sensitive; otherwise, false. + */ + IsCustomToken(text: string, caseSensitive: boolean): boolean; + /** + * Changes the editor's value. + * @param value An object representing the data to be assigned to the editor's edit value. + */ + SetValue(value: Object): void; +} +/** + * The client-side equivalent of the ASPxTrackBar control. + */ +interface ASPxClientTrackBar extends ASPxClientEdit { + /** + * Fires on the client side before a track bar position is changed and allows you to cancel the action. + */ + PositionChanging: ASPxClientEvent>; + /** + * Fires after the editor's position has been changed. + */ + PositionChanged: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user moves a cursor while the drag handle is held down. + */ + Track: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user presses a drag handle and moves it. + */ + TrackStart: ASPxClientEvent>; + /** + * Occurs on the client-side when an end-user releases a drag handle after moving it. + */ + TrackEnd: ASPxClientEvent>; + /** + * Returns a track bar item index by the item's value. + * @param value An object that specifies the item's value. + */ + GetItemIndexByValue(value: Object): number; + /** + * Returns a track bar item's associated value. + * @param index An integer value that specifies the required item's index. + */ + GetItemValue(index: number): Object; + /** + * Returns a track bar item text. + * @param index An integer value that specifies the required item's index. + */ + GetItemText(index: number): string; + /** + * Returns a track bar item's tooltip text. + * @param index An integer value that specifies the required item's index. + */ + GetItemToolTip(index: number): string; + /** + * Returns the number of the track bar items that are maintained by the item collection. + */ + GetItemCount(): number; + /** + * Specifies the secondary drag handle position. + * @param position A value that specifies the position. + */ + SetPositionEnd(position: number): void; + /** + * Specifies the main drag handle position. + * @param position A value that specifies the position. + */ + SetPositionStart(position: number): void; + /** + * Returns the secondary drag handle position. + */ + GetPositionEnd(): number; + /** + * Returns the main drag handle position. + */ + GetPositionStart(): number; + /** + * Gets a drag handle position. + */ + GetPosition(): number; + /** + * Specifies a drag handle position. + * @param position A value that specifies the position. + */ + SetPosition(position: number): void; +} +/** + * A method that will handle the client PositionChanging event. + */ +interface ASPxClientTrackBarPositionChangingEventHandler { + /** + * A method that will handle the PositionChanging event. + * @param source The event source. Identifies the ASPxTrackBar control that raised the event. + * @param e A ASPxClientTrackBarPositionChangingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTrackBarPositionChangingEventArgs): void; +} +/** + * Provides data for the PositionChanging event. + */ +interface ASPxClientTrackBarPositionChangingEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; + /** + * Gets the current drag handle position. + * Value: A value that is the drag handle position. + */ + currentPosition: number; + /** + * Gets the current secondary drag handle position. + * Value: A value that is the drag handle position. + */ + currentPositionEnd: number; + /** + * Gets the current main drag handle position. + * Value: A value that is the drag handle position. + */ + currentPositionStart: number; + /** + * Gets a position where the drag handle is being moved. + * Value: A value that is the drag handle position. + */ + newPosition: number; + /** + * Gets a position where the secondary drag handle is being moved. + * Value: A value that is the drag handle position. + */ + newPositionEnd: number; + /** + * Gets a position where the main drag handle is being moved. + * Value: A value that is the drag handle position. + */ + newPositionStart: number; +} +/** + * Represents the client-side equivalent of the ASPxValidationSummary control. + */ +interface ASPxClientValidationSummary extends ASPxClientControl { + /** + * Occurs on the client side when the validation summary's visibility is changed. + */ + VisibilityChanged: ASPxClientEvent>; +} +/** + * A method that will handle the VisibilityChanged event. + */ +interface ASPxClientValidationSummaryVisibilityChangedEventHandler { + /** + * A method that will handle the VisibilityChanged client event. + * @param source An object representing the event source. + * @param e A ASPxClientValidationSummaryVisibilityChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientValidationSummaryVisibilityChangedEventArgs): void; +} +/** + * Provides data for the VisibilityChanged event. + */ +interface ASPxClientValidationSummaryVisibilityChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether the editor is visible on the client. + * Value: true if the editor is visible; otherwise, false. + */ + visible: boolean; +} +/** + * Represents the client ASPxGaugeControl. + */ +interface ASPxClientGaugeControl extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires when errors have occurred during callback processing. + */ + CallbackError: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * Lists values that specify the position relative to the target column in which a moved column should be placed. + */ +interface ASPxClientGridColumnMovingTargetPosition { + /** + * A moved column should be placed to the right of the target column. + */ + Right: number; + /** + * A moved column should be placed to the left of the target column. + */ + Left: number; + /** + * A moved column should be placed at the top of the target column. + */ + Top: number; + /** + * A moved column should be placed at the bottom of the target column. + */ + Bottom: number; +} +/** + * Represents the client ASPxGridView. + */ +interface ASPxClientGridBase extends ASPxClientControl { + /** + * Fires after a toolbar item has been clicked. + */ + ToolbarItemClick: ASPxClientEvent>; + /** + * Returns a toolbar specified by its name. + * @param name A string value specifying the toolbar name. + */ + GetToolbarByName(name: string): ASPxClientMenu; + /** + * Returns a grid's toolbar specified by its index. + * @param index An integer value specifying the zero-based index of the toolbar object to retrieve. + */ + GetToolbar(index: number): ASPxClientMenu; +} +/** + * Serves as a base object implementing the client column functionality. + */ +interface ASPxClientGridColumnBase { +} +/** + * A method that will handle the ToolbarItemClick event. + */ +interface ASPxClientGridToolbarItemClickEventHandler { + /** + * A method that will handle the ToolbarItemClick event. + * @param source The event source. + * @param e An ASPxClientGridToolbarItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridToolbarItemClickEventArgs): void; +} +/** + * Provides data for the ToolbarItemClick event. + */ +interface ASPxClientGridToolbarItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the toolbar index. + * Value: An integer value that is the toolbar index. + */ + toolbarIndex: number; + /** + * Gets the toolbar name. + * Value: A string value that is the toolbar name. + */ + toolbarName: string; + /** + * Gets the clicked toolbar item. + * Value: A ASPxClientMenuItem object that is the toolbar item. + */ + item: ASPxClientMenuItem; + /** + * Specifies whether a postback or a callback is used to finally process the event on the server side. + * Value: true to perform the round trip to the server side via postback; false to perform the round trip to the server side via callback. + */ + usePostBack: boolean; +} +/** + * The client-side equivalent of the ASPxGridLookup control. + */ +interface ASPxClientGridLookup extends ASPxClientDropDownEditBase { + /** + * Fires on the client when a data row is clicked within the built-in dropdown grid. + */ + RowClick: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Returns a client object representing the built-in dropdown grid. + */ + GetGridView(): ASPxClientGridView; + /** + * Confirms the current selection made by an end-user within the editor's dropdown grid. + */ + ConfirmCurrentSelection(): void; + /** + * Cancels the current selection made by an end-user within the editor's dropdown grid and rolls back to the last confirmed selection. The selection can be confirmed by either pressing the Enter key or calling the ConfirmCurrentSelection method. + */ + RollbackToLastConfirmedSelection(): void; +} +/** + * Represents the client ASPxCardView. + */ +interface ASPxClientCardView extends ASPxClientGridBase { + /** + * Provides access to the batch editing client API. + * Value: A object that exposes the batch editing client API methods. + */ + batchEditApi: ASPxClientCardViewBatchEditApi; + /** + * Occurs when a custom command button has been clicked. + */ + CustomButtonClick: ASPxClientEvent>; + /** + * Fires after the selection has been changed. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Enables you to prevent columns from being sorted. + */ + ColumnSorting: ASPxClientEvent>; + /** + * Occurs when a grid switches to batch edit mode. + */ + BatchEditStartEditing: ASPxClientEvent>; + /** + * Occurs when a grid leaves batch edit mode. + */ + BatchEditEndEditing: ASPxClientEvent>; + /** + * Enables you to prevent a batch edit confirmation message from being displayed. + */ + BatchEditConfirmShowing: ASPxClientEvent>; + /** + * Enables you to provide navigation for editors contained in a templated cell in Batch Edit mode. + */ + BatchEditTemplateCellFocused: ASPxClientEvent>; + /** + * Enables you to specify whether card data is valid and provide an error text. + */ + BatchEditCardValidating: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are saved in batch edit mode. + */ + BatchEditChangesSaving: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are canceled in batch edit mode. + */ + BatchEditChangesCanceling: ASPxClientEvent>; + /** + * Occurs on the client side before a card is inserted in batch edit mode. + */ + BatchEditCardInserting: ASPxClientEvent>; + /** + * Occurs on the client side before a card is deleted in batch edit mode. + */ + BatchEditCardDeleting: ASPxClientEvent>; + /** + * Occurs on the client side when the focused cell is about to be changed. + */ + FocusedCellChanging: ASPxClientEvent>; + /** + * Fires on the client when a card is clicked. + */ + CardClick: ASPxClientEvent>; + /** + * Fires on the client when a card is double clicked. + */ + CardDblClick: ASPxClientEvent>; + /** + * Fires in response to changing card focus. + */ + FocusedCardChanged: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any unhandled server error occurs during server-side processing of a callback sent by the ASPxClientCardView. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires after the customization window has been closed. + */ + CustomizationWindowCloseUp: ASPxClientEvent>; + /** + * Returns the value of the specified edit cell. + * @param column An ASPxClientCardViewColumn object that represents the data column within the client grid. + */ + GetEditValue(column: ASPxClientCardViewColumn): string; + /** + * Returns the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column within the grid's column collection. + */ + GetEditValue(columnIndex: number): string; + /** + * Returns the value of the specified edit cell. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GetEditValue(columnFieldNameOrId: string): string; + /** + * Moves focus to the specified edit cell within the edited card. + * @param column An ASPxClientCardViewColumn object that represents the data column within the client grid. + */ + FocusEditor(column: ASPxClientCardViewColumn): void; + /** + * Moves focus to the specified edit cell within the edited card. + * @param columnIndex An integer value that specifies the column's position within the columns collection. + */ + FocusEditor(columnIndex: number): void; + /** + * Moves focus to the specified edit cell within the edited card. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + FocusEditor(columnFieldNameOrId: string): void; + /** + * Sets the value of the specified edit cell. + * @param column An ASPxClientCardViewColumn object that represents the data column within the client grid. + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(column: ASPxClientCardViewColumn, value: string): void; + /** + * Sets the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column within the grid's column collection. + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(columnIndex: number, value: string): void; + /** + * Sets the value of the specified edit cell. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(columnFieldNameOrId: string, value: string): void; + /** + * Displays the Filter Control. + */ + ShowFilterControl(): void; + /** + * Hides the Filter Control. + */ + CloseFilterControl(): void; + /** + * Enables or disables the current filter. + * @param isFilterEnabled true to enable the current filter; otherwise, false. + */ + SetFilterEnabled(isFilterEnabled: boolean): void; + /** + * Returns the current vertical scroll position of the grid's content. + */ + GetVerticalScrollPosition(): number; + /** + * Specifies the vertical scroll position for the grid's content. + * @param position An integer value specifying the vertical scroll position. + */ + SetVerticalScrollPosition(position: number): void; + /** + * Gets information about a focused cell. + */ + GetFocusedCell(): ASPxClientCardViewCellInfo; + /** + * Focuses the specified cell. + * @param cardVisibleIndex An value that specifies the visible index of the card. + * @param columnIndex A zero-based index that identifies the column in the column collection (the column's Index property value). + */ + SetFocusedCell(cardVisibleIndex: number, columnIndex: number): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientCardViewColumn object that represents the data column. + */ + SortBy(column: ASPxClientCardViewColumn): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + SortBy(columnIndex: number): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + SortBy(columnFieldNameOrId: string): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientCardViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(column: ASPxClientCardViewColumn, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(columnIndex: number, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(columnFieldNameOrId: string, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientCardViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(column: ASPxClientCardViewColumn, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(columnIndex: number, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(columnFieldNameOrId: string, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param column An ASPxClientCardViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex + */ + SortBy(column: ASPxClientCardViewColumn, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based column's index among the sorted columns. -1 if data is not sorted by this column. + */ + SortBy(columnIndex: number, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based column's index among the sorted columns. -1 if data is not sorted by this column. + */ + SortBy(columnFieldNameOrId: string, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Hides the specified column. + * @param column An ASPxClientCardViewColumn object that represents the column to hide. + */ + MoveColumn(column: ASPxClientCardViewColumn): void; + /** + * Hides the specified column. + * @param columnIndex An integer value that specifies the absolute index of the column to hide. + */ + MoveColumn(columnIndex: number): void; + /** + * Hides the specified column. + * @param columnFieldNameOrId A string value that identifies the column to be hidden by the name of the data source field to which the column is bound, or by the column's name. + */ + MoveColumn(columnFieldNameOrId: string): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param column An ASPxClientCardViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the ASPxCardView. + */ + MoveColumn(column: ASPxClientCardViewColumn, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the ASPxCardView. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param column An ASPxClientCardViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the CardView. + * @param moveBefore true, to move the column before the target column; otherwise, false. + */ + MoveColumn(column: ASPxClientCardViewColumn, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Moves the specified column to the specified visual position within the ASPxCardView. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Returns the key value of the specified card. + * @param visibleIndex An integer value that specifies the card's visible index. + */ + GetCardKey(visibleIndex: number): string; + /** + * Switches the CardView to edit mode. + * @param visibleIndex A zero-based integer that identifies a card to be edited. + */ + StartEditCard(visibleIndex: number): void; + /** + * Switches the ASPxCardView to edit mode. + * @param key An object that uniquely identifies a card to be edited. + */ + StartEditCardByKey(key: Object): void; + /** + * Indicates whether or not a new card is being edited. + */ + IsNewCardEditing(): boolean; + /** + * Adds a new record. + */ + AddNewCard(): void; + /** + * Deletes the specified card. + * @param visibleIndex An integer value that identifies the card. + */ + DeleteCard(visibleIndex: number): void; + /** + * Deletes a card with the specified key value. + * @param key An object that uniquely identifies the card. + */ + DeleteCardByKey(key: Object): void; + /** + * Returns the focused card's index. + */ + GetFocusedCardIndex(): number; + /** + * Moves focus to the specified card. + * @param visibleIndex An integer value that specifies the focused card's index. + */ + SetFocusedCardIndex(visibleIndex: number): void; + /** + * Selects all the unselected cards within the CardView. + */ + SelectCards(): void; + /** + * Selects the specified card displayed within the CardView. + * @param visibleIndex A zero-based integer value that specifies the card's visible index. + */ + SelectCards(visibleIndex: number): void; + /** + * Selects the specified cards within the CardView. + * @param visibleIndices An array of zero-based indices that identify data cards within the grid. + */ + SelectCards(visibleIndices: number[]): void; + /** + * Selects or deselects the specified cards within the CardView. + * @param visibleIndices An array of zero-based indices that identify data cards within the grid. + * @param selected true to select the specified cards; false to deselect the cards. + */ + SelectCards(visibleIndices: number[], selected: boolean): void; + /** + * Selects or deselects the specified card within the GridView. + * @param visibleIndex An integer zero-based index that identifies the data card within the grid. + * @param selected true to select the specified card; false to deselect the card. + */ + SelectCards(visibleIndex: number, selected?: boolean): void; + /** + * Selects or deselects the specified cards displayed within the CardView. + * @param keys An array of objects that uniquely identify the cards. + * @param selected true to select the specified cards; false to deselect the cards. + */ + SelectCardsByKey(keys: Object[], selected?: boolean): void; + /** + * Selects or deselects the specified card displayed within the CardView. + * @param key An object that uniquely identifies the card. + * @param selected true to select the specified card; false to deselect the card. + */ + SelectCardsByKey(key: Object, selected?: boolean): void; + /** + * Selects the specified cards displayed within the CardView. + * @param keys An array of objects that uniquely identify the cards. + */ + SelectCardsByKey(keys: Object[]): void; + /** + * Selects a card displayed within the CardView by its key. + * @param key An object that uniquely identifies the card. + */ + SelectCardsByKey(key: Object): void; + /** + * Deselects the specified cards displayed within the ASPxCardView. + * @param keys An array of objects that uniquely identify the cards. + */ + UnselectCardsByKey(keys: Object[]): void; + /** + * Deselects the specified card displayed within the ASPxCardView. + * @param key An object that uniquely identifies the card. + */ + UnselectCardsByKey(key: Object): void; + /** + * Deselects all the selected cards within the ASPxCardView. + */ + UnselectCards(): void; + /** + * Deselects the specified cards (if selected) within the ASPxCardView. + * @param visibleIndices An array of zero-based indices that identify data cards within the grid. + */ + UnselectCards(visibleIndices: number[]): void; + /** + * Deselects the specified cards (if selected) within the ASPxCardView. + * @param visibleIndex A zero-based integer value that specifies the card's visible index. + */ + UnselectCards(visibleIndex: number): void; + /** + * Deselects all grid cards that match the filter criteria currently applied to the CardView. + */ + UnselectFilteredCards(): void; + /** + * Selects the specified card displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the card's visible index. + */ + SelectCardOnPage(visibleIndex: number): void; + /** + * Selects or deselects the specified card displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the card's visible index. + * @param selected true to select the specified card; false to deselect the card. + */ + SelectCardOnPage(visibleIndex: number, selected?: boolean): void; + /** + * Deselects the specified cards (if selected) displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the card's visible index. + */ + UnselectCardOnPage(visibleIndex: number): void; + /** + * Selects all unselected cards displayed on the current page. + */ + SelectAllCardsOnPage(): void; + /** + * Allows you to select or deselect all cards displayed on the current page based on the parameter passed. + * @param selected true to select all unselected cards displayed on the current page; false to deselect all selected cards on the page. + */ + SelectAllCardsOnPage(selected: boolean): void; + /** + * Deselects all selected cards displayed on the current page. + */ + UnselectAllCardsOnPage(): void; + /** + * Returns the number of selected cards. + */ + GetSelectedCardCount(): number; + /** + * Indicates whether or not the specified card is selected within the current page. + * @param visibleIndex An integer value that identifies the card by its visible index. + */ + IsCardSelectedOnPage(visibleIndex: number): boolean; + /** + * Applies the specified search panel filter criterion to grid data. + * @param value A string value that specifies the filter criterion. + */ + ApplySearchPanelFilter(value: string): void; + /** + * Applies the specified filter expression to the grid. + * @param filterExpression A string value that specifies the filter expression. + */ + ApplyFilter(filterExpression: string): void; + /** + * Clears the filter expression applied to a client CardView. + */ + ClearFilter(): void; + /** + * Gets the Popup Edit Form. + */ + GetPopupEditForm(): ASPxClientPopupControl; + /** + * Sets input focus to the grid. + */ + Focus(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Selects the specified page. + * @param pageIndex An integer value that specifies the active page's index. + */ + GotoPage(pageIndex: number): void; + /** + * Gets the index of the page currently being selected. + */ + GetPageIndex(): number; + /** + * Gets the number of pages to which the grid's data is divided. + */ + GetPageCount(): number; + /** + * Activates the next page. + */ + NextPage(): void; + /** + * Activates the previous page. + */ + PrevPage(): void; + /** + * Returns the index of the first card displayed within the grid's active page. + */ + GetTopVisibleIndex(): number; + /** + * Indicates whether the grid is in edit mode. + */ + IsEditing(): boolean; + /** + * Saves all the changes made and switches the grid to browse mode. + */ + UpdateEdit(): void; + /** + * Cancels all the changes made and switches the CardView to browse mode. + */ + CancelEdit(): void; + /** + * Updates data displayed within the grid. + */ + Refresh(): void; + /** + * Indicates whether the customization window is displayed. + */ + IsCustomizationWindowVisible(): boolean; + /** + * Invokes the customization window. + */ + ShowCustomizationWindow(): void; + /** + * Invokes the customization window and displays it over the specified HTML element. + * @param showAtElement An object that specifies the HTML element relative to whose position the customization window is invoked. + */ + ShowCustomizationWindow(showAtElement?: Object): void; + /** + * Closes the customization window. + */ + HideCustomizationWindow(): void; + /** + * Returns the number of columns within the client grid. + */ + GetColumnCount(): number; + /** + * Returns the card values displayed within all selected cards. + * @param fieldNames The names of data source fields separated via a semicolon, whose values within the selected cards are returned. + * @param onCallback An ASPxClientCardViewValuesCallback object that represents the JavaScript function which receives the list of card values as a parameter. + */ + GetSelectedFieldValues(fieldNames: string, onCallback: ASPxClientCardViewValuesCallback): void; + /** + * Returns key values of selected cards displayed within the current page. + */ + GetSelectedKeysOnPage(): Object[]; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback An ASPxClientCardViewValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientCardViewValuesCallback): void; + /** + * Returns the values of the specified data source fields within the specified card. + * @param visibleIndex An integer value that identifies the data card. + * @param fieldNames The names of data source fields separated via a semicolon, whose values within the specified card are returned. + * @param onCallback An ASPxClientCardViewValuesCallback object that represents the JavaScript function which receives the list of card values as a parameter. + */ + GetCardValues(visibleIndex: number, fieldNames: string, onCallback: ASPxClientCardViewValuesCallback): void; + /** + * Returns the card values displayed within the current page. + * @param fieldNames The names of data source fields whose values are returned. + * @param onCallback An ASPxClientCardViewValuesCallback object that represents the JavaScript function which receives the list of card values as a parameter. + */ + GetPageCardValues(fieldNames: string, onCallback: ASPxClientCardViewValuesCallback): void; + /** + * Returns the number of cards actually displayed within the active page. + */ + GetVisibleCardsOnPage(): number; + /** + * Returns the client column that resides at the specified position within the column collection. + * @param columnIndex A zero-based index that identifies the column within the column collection (the column's Index property value). + */ + GetColumn(columnIndex: number): ASPxClientCardViewColumn; + /** + * Returns the column with the specified unique identifier. + * @param columnId A string value that specifies the column's unique identifier (the column's Name property value). + */ + GetColumnById(columnId: string): ASPxClientCardViewColumn; + /** + * Returns the client column which is bound to the specified data source field. + * @param columnFieldName A string value that specifies the name of the data source field to which the column is bound (the column's FieldName property value). + */ + GetColumnByField(columnFieldName: string): ASPxClientCardViewColumn; + /** + * Returns the editor used to edit the specified column's values. + * @param column An ASPxClientCardViewColumn object that specifies the required column within the client grid. + */ + GetEditor(column: ASPxClientCardViewColumn): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + GetEditor(columnIndex: number): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GetEditor(columnFieldNameOrId: string): ASPxClientEdit; +} +/** + * Represents a client column. + */ +interface ASPxClientCardViewColumn extends ASPxClientGridColumnBase { + /** + * Gets the name that uniquely identifies the column. + * Value: A string value assigned to the column's Name property. + */ + name: string; + /** + * Gets the column's position within the collection. + * Value: An integer zero-bazed index that specifies the column's position within the collection. + */ + index: number; + /** + * Gets the name of the database field assigned to the current column. + * Value: A string value that specifies the name of a data field. + */ + fieldName: string; + /** + * Gets whether the column is visible. + * Value: true to display the column; otherwise, false. + */ + visible: boolean; +} +/** + * Represents a JavaScript function which receives the list of card values when the client GetSelectedFieldValues method is called. + */ +interface ASPxClientCardViewValuesCallback { + /** + * Represents a JavaScript function which receives the list of card values when the client GetSelectedFieldValues method is called. + * @param result An object that represents the list of card values received from the server. + */ + (result: Object): void; +} +/** + * A method that will handle the cancelable events of a client ASPxCardView column. + */ +interface ASPxClientCardViewColumnCancelEventHandler { + /** + * A method that will handle the cancelable events of a client ASPxCardView column. + * @param source The event source. This parameter identifies the ASPxClientCardView object that raised the event. + * @param e An ASPxClientCardViewColumnCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewColumnCancelEventArgs): void; +} +/** + * Provides data for the cancelable events of a client ASPxCardView column. + */ +interface ASPxClientCardViewColumnCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed client column. + * Value: An ASPxClientCardViewColumn object that represents the processed column. + */ + column: ASPxClientCardViewColumn; +} +/** + * A method that will handle the CardClick event. + */ +interface ASPxClientCardViewCardClickEventHandler { + /** + * A method that will handle the CardClick event. + * @param source The event source. This parameter identifies the ASPxClientCardView object that raised the event. + * @param e An ASPxClientCardViewCardClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewCardClickEventArgs): void; +} +/** + * Provides data for the CardClick event. + */ +interface ASPxClientCardViewCardClickEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed card's visible index. + * Value: An integer zero-based index that identifies the processed record. + */ + visibleIndex: number; + /** + * Provides access to the parameters associated with the CardClick event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; +} +/** + * A method that will handle the CustomButtonClick event. + */ +interface ASPxClientCardViewCustomButtonEventHandler { + /** + * A method that will handle the CustomButtonClick event. + * @param source The event source. This parameter identifies the ASPxClientCardView object that raised the event. + * @param e An ASPxClientCardViewCustomButtonEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewCustomButtonEventArgs): void; +} +/** + * Provides data for the CustomButtonClick event. + */ +interface ASPxClientCardViewCustomButtonEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the value which identifies the card whose custom button has been clicked. + * Value: An integer value that identifies the card whose custom button has been clicked. + */ + visibleIndex: number; + /** + * Gets the value which identifies the custom button. + * Value: A string value that identifies the clicked custom button. + */ + buttonID: string; +} +/** + * A method that will handle the SelectionChanged event. + */ +interface ASPxClientCardViewSelectionEventHandler { + /** + * A method that will handle the SelectionChanged event. + * @param source The event source. + * @param e An ASPxClientCardViewSelectionEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewSelectionEventArgs): void; +} +/** + * Provides data for the SelectionChanged event. + */ +interface ASPxClientCardViewSelectionEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the visible index of the card whose selected state has been changed. + * Value: An value that specifies the visible index of the card. + */ + visibleIndex: number; + /** + * Gets whether the card has been selected. + * Value: true if the card has been selected; otherwise, false. + */ + isSelected: boolean; + /** + * Gets whether all cards displayed within a page have been selected or unselected. + * Value: true if all cards displayed within a page have been selected or unselected; otherwise, false. + */ + isAllRecordsOnPage: boolean; + /** + * Gets whether a selection has been changed on the server. + * Value: true if a selection has been changed on the server; otherwise, false. + */ + isChangedOnServer: boolean; +} +/** + * A method that will handle the client BatchEditStartEditing event. + */ +interface ASPxClientCardViewBatchEditStartEditingEventHandler { + /** + * A method that will handle the BatchEditStartEditing event. + * @param source The event source. + * @param e An ASPxClientCardViewBatchEditStartEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditStartEditingEventArgs): void; +} +/** + * Provides data for the BatchEditStartEditing event. + */ +interface ASPxClientCardViewBatchEditStartEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the card whose cells are about to be edited. + * Value: An value that specifies the visible index of the card. + */ + visibleIndex: number; + /** + * Gets the CardView column that owns a cell that is about to be edited. + * Value: An object that is the focused CardView column. + */ + focusedColumn: ASPxClientCardViewColumn; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: A hashtable that stores information about editable cells. + */ + cardValues: Object; +} +/** + * A method that will handle the client BatchEditEndEditing event. + */ +interface ASPxClientCardViewBatchEditEndEditingEventHandler { + /** + * A method that will handle the BatchEditEndEditing event. + * @param source The event source. + * @param e An ASPxClientCardViewBatchEditEndEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditEndEditingEventArgs): void; +} +/** + * Provides data for the BatchEditEndEditing event. + */ +interface ASPxClientCardViewBatchEditEndEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the card whose cells have been edited. + * Value: An value that specifies the visible index of the card. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: A hashtable that stores information about editable cells. + */ + cardValues: Object; +} +/** + * A method that will handle the client BatchEditCardValidating event. + */ +interface ASPxClientCardViewBatchEditCardValidatingEventHandler { + /** + * A method that will handle the BatchEditCardValidating event. + * @param source The event source. + * @param e An ASPxClientCardViewBatchEditCardValidatingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditCardValidatingEventArgs): void; +} +/** + * Provides data for the BatchEditCardValidating event. + */ +interface ASPxClientCardViewBatchEditCardValidatingEventArgs extends ASPxClientEventArgs { + /** + * Gets the processed card's visible index. + * Value: An integer value that specifies the processed card's visible index. + */ + visibleIndex: number; + /** + * Provides validation information of a card currently being validated. + * Value: An object that is a hashtable containing validation information. + */ + validationInfo: Object; +} +/** + * Represents an object that will handle the client-side BatchEditConfirmShowing event. + */ +interface ASPxClientCardViewBatchEditConfirmShowingEventHandler { + /** + * A method that will handle the BatchEditConfirmShowing client event. + * @param source The event source. + * @param e An ASPxClientCardViewBatchEditConfirmShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditConfirmShowingEventArgs): void; +} +/** + * Provides data for the BatchEditConfirmShowing event. + */ +interface ASPxClientCardViewBatchEditConfirmShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the client identifier of an object that initiates a send request. + * Value: A string value that specifies the object client identifier. + */ + requestTriggerID: string; +} +/** + * A method that will handle the client BatchEditTemplateCellFocused event. + */ +interface ASPxClientCardViewBatchEditTemplateCellFocusedEventHandler { + /** + * A method that will handle the BatchEditTemplateCellFocused event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientCardViewBatchEditTemplateCellFocusedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditTemplateCellFocusedEventArgs): void; +} +/** + * Provides data for the BatchEditTemplateCellFocused event. + */ +interface ASPxClientCardViewBatchEditTemplateCellFocusedEventArgs extends ASPxClientEventArgs { + /** + * Gets the currently processed column. + * Value: An object that is the client-side column object. + */ + column: ASPxClientCardViewColumn; + /** + * Gets or sets a value specifying whether the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * A method that will handle the BatchEditChangesSaving event. + */ +interface ASPxClientCardViewBatchEditChangesSavingEventHandler { + /** + * A method that will handle the BatchEditChangesSaving event. + * @param source The event source. This parameter identifies the card view object which raised the event. + * @param e An ASPxClientCardViewBatchEditChangesSavingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditChangesSavingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesSaving event. + */ +interface ASPxClientCardViewBatchEditChangesSavingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * A method that will handle the BatchEditChangesCanceling event. + */ +interface ASPxClientCardViewBatchEditChangesCancelingEventHandler { + /** + * A method that will handle the BatchEditChangesCanceling event. + * @param source The event source. This parameter identifies the card view object which raised the event. + * @param e An ASPxClientCardViewBatchEditChangesCancelingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditChangesCancelingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesCanceling event. + */ +interface ASPxClientCardViewBatchEditChangesCancelingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * A method that will handle the BatchEditCardInserting event. + */ +interface ASPxClientCardViewBatchEditCardInsertingEventHandler { + /** + * A method that will handle the BatchEditCardInserting event. + * @param source The event source. This parameter identifies the card view object which raised the event. + * @param e An ASPxClientCardViewBatchEditCardInsertingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditCardInsertingEventArgs): void; +} +/** + * Provides data for the BatchEditCardInserting event. + */ +interface ASPxClientCardViewBatchEditCardInsertingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed card visible index. + * Value: An integer value that specifies the processed card visible index. + */ + visibleIndex: number; +} +/** + * A method that will handle the BatchEditCardDeleting event. + */ +interface ASPxClientCardViewBatchEditCardDeletingEventHandler { + /** + * A method that will handle the BatchEditCardDeleting event. + * @param source The event source. This parameter identifies the card view object which raised the event. + * @param e An ASPxClientCardViewBatchEditCardDeletingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewBatchEditCardDeletingEventArgs): void; +} +/** + * Provides data for the BatchEditCardDeleting event. + */ +interface ASPxClientCardViewBatchEditCardDeletingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed card visible index. + * Value: An integer value that specifies the processed card visible index. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + cardValues: Object; +} +/** + * A method that will handle the FocusedCellChanging event. + */ +interface ASPxClientCardViewFocusedCellChangingEventHandler { + /** + * A method that will handle the FocusedCellChanging event. + * @param source The event source. + * @param e An ASPxClientCardViewFocusedCellChangingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCardViewFocusedCellChangingEventArgs): void; +} +/** + * Provides data for the FocusedCellChanging event. + */ +interface ASPxClientCardViewFocusedCellChangingEventArgs extends ASPxClientCancelEventArgs { + /** + * Provides information of a card's cell currently being focused. + * Value: A ASPxClientCardViewCellInfo object that provides information about the card's cell. + */ + cellInfo: ASPxClientCardViewCellInfo; +} +/** + * Provides members related to Batch Edit Mode + */ +interface ASPxClientCardViewBatchEditApi { + /** + * Performs validation of CardView data contained in the cards when the CardView operates in Batch Edit mode. + * @param validateOnlyModified true, if only modified cards should be validated; otherwise, false. + */ + ValidateCards(validateOnlyModified?: boolean): boolean; + /** + * Performs validation of CardView data contained in the specified card when the CardView operates in Batch Edit mode. + * @param visibleIndex An integer value specifying the visible index of the validated card. + */ + ValidateCard(visibleIndex: number): boolean; + /** + * Returns an array of card visible indices. + * @param includeDeleted true, to include visible indices of deleted cards to the returned array; otherwise, false. + */ + GetCardVisibleIndices(includeDeleted: boolean): number[]; + /** + * Returns an array of the deleted card visible indices. + */ + GetDeletedCardIndices(): number[]; + /** + * Returns an array of the inserted card visible indices. + */ + GetInsertedCardIndices(): number[]; + /** + * Indicates if the card with the specified visible index is deleted. + * @param visibleIndex An integer value that identifies the card by its visible index. + */ + IsDeletedCard(visibleIndex: number): boolean; + /** + * Indicates if the card with the specified visible index is newly created. + * @param visibleIndex An integer value that identifies the card by its visible index. + */ + IsNewCard(visibleIndex: number): boolean; + /** + * Programmatically moves the focus to the previous cell in the card + */ + MoveFocusBackward(): boolean; + /** + * Programmatically moves the focus to the next cell in the card. + */ + MoveFocusForward(): boolean; + /** + * Sets the value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the card containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param value An object that contains the new cell value. + */ + SetCellValue(visibleIndex: number, columnFieldNameOrId: string, value: Object): void; + /** + * Sets the value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the card containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param value An object that contains the new cell value. + * @param displayText A string value that specifies the cell display text. + * @param cancelCellHighlighting true to cancel highlighting of the modified cell, false to highlight the modified cell. + */ + SetCellValue(visibleIndex: number, columnFieldNameOrId: string, value: Object, displayText: string, cancelCellHighlighting?: boolean): void; + /** + * Gets the value of the specified cell. + * @param visibleIndex A zero-based integer value that specifies the visible index of a card containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param initial true, to return the initial (server) value; false, to return a value currently contained on the client side (modified value). + */ + GetCellValue(visibleIndex: number, columnFieldNameOrId: string, initial?: boolean): Object; + /** + * Gets a container holding a data cell content. + * @param visibleIndex An integer value that is the visible index. + * @param columnFieldNameOrId A string value that is the column's Field Name or ID. + */ + GetCellTextContainer(visibleIndex: number, columnFieldNameOrId: string): Object; + /** + * Gets information about the cell currently being edited. + */ + GetEditCellInfo(): ASPxClientCardViewCellInfo; + /** + * Returns a value that indicates whether the card view has changed data. + */ + HasChanges(): boolean; + /** + * Returns a value that indicates whether the specified card has changed data. + * @param visibleIndex An integer value that specifies the visible index of a card. + */ + HasChanges(visibleIndex: number): boolean; + /** + * Returns a value that indicates whether the specified cell's data has been changed. + * @param visibleIndex An integer value that specifies the visible index of a card. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + HasChanges(visibleIndex: number, columnFieldNameOrId: string): boolean; + /** + * Resets changes in the specified card. + * @param visibleIndex An integer value that specifies the visible index of a card. + */ + ResetChanges(visibleIndex: number): void; + /** + * Resets changes in the specified cell. + * @param visibleIndex An integer value that specifies the visible index of a card containing the processed cell. + * @param columnIndex A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + */ + ResetChanges(visibleIndex: number, columnIndex: number): void; + /** + * Switches the specified cell to edit mode. + * @param visibleIndex A zero-based integer value that specifies the visible index of a card containing the processed cell. + * @param columnIndex A zero-based integer value that identifies the column which contains the processed cell in the column collection. + */ + StartEdit(visibleIndex: number, columnIndex: number): void; + /** + * Ends cell or card editing. + */ + EndEdit(): void; +} +/** + * Contains information on a grid cell. + */ +interface ASPxClientCardViewCellInfo { + /** + * Gets the visible index of the card that contains the cell currently being processed. + * Value: An value that specifies the visible index of the card. + */ + cardVisibleIndex: number; + /** + * Gets the data column that contains the cell currently being processed. + * Value: An object that is the data column which contains the processed cell. + */ + column: ASPxClientCardViewColumn; +} +/** + * A client-side equivalent of the ASPxGridView object. + */ +interface ASPxClientGridView extends ASPxClientGridBase { + /** + * Provides access to the batch editing client API. + * Value: A object that exposes the batch editing client API methods. + */ + batchEditApi: ASPxClientGridViewBatchEditApi; + /** + * Occurs when a custom command button has been clicked. + */ + CustomButtonClick: ASPxClientEvent>; + /** + * Fires after the selection has been changed. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Enables you to prevent columns from being sorted. + */ + ColumnSorting: ASPxClientEvent>; + /** + * Fires in response to changing row focus. + */ + FocusedRowChanged: ASPxClientEvent>; + /** + * Enables you to cancel data grouping. + */ + ColumnGrouping: ASPxClientEvent>; + /** + * Fires when an end-user starts dragging the column's header and enables you to cancel this operation. + */ + ColumnStartDragging: ASPxClientEvent>; + /** + * Enables you to prevent columns from being resized. + */ + ColumnResizing: ASPxClientEvent>; + /** + * Occurs after a column's width has been changed by an end-user. + */ + ColumnResized: ASPxClientEvent>; + /** + * Enables you to control column movement. + */ + ColumnMoving: ASPxClientEvent>; + /** + * Fires before a group row is expanded. + */ + RowExpanding: ASPxClientEvent>; + /** + * Fires before a group row is collapsed. + */ + RowCollapsing: ASPxClientEvent>; + /** + * Fires before a detail row is expanded. + */ + DetailRowExpanding: ASPxClientEvent>; + /** + * Fires before a detail row is collapsed. + */ + DetailRowCollapsing: ASPxClientEvent>; + /** + * Fires on the client when a data row is clicked. + */ + RowClick: ASPxClientEvent>; + /** + * Fires on the client when a data row is double clicked. + */ + RowDblClick: ASPxClientEvent>; + /** + * Occurs after an end-user right clicks in the GridView, and enables you to provide a custom context menu. + */ + ContextMenu: ASPxClientEvent>; + /** + * Fires on the client side when a context menu item has been clicked. + */ + ContextMenuItemClick: ASPxClientEvent>; + /** + * Enables you to specify whether row data is valid and provide an error text. + */ + BatchEditRowValidating: ASPxClientEvent>; + /** + * Enables you to prevent a batch edit confirmation message from being displayed. + */ + BatchEditConfirmShowing: ASPxClientEvent>; + /** + * Occurs when a grid switches to batch edit mode. + */ + BatchEditStartEditing: ASPxClientEvent>; + /** + * Occurs when a grid leaves the batch edit mode. + */ + BatchEditEndEditing: ASPxClientEvent>; + /** + * Enables you to provide navigation for editors contained in a templated cell in Batch Edit mode. + */ + BatchEditTemplateCellFocused: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are saved in batch edit mode. + */ + BatchEditChangesSaving: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are canceled in batch edit mode. + */ + BatchEditChangesCanceling: ASPxClientEvent>; + /** + * Occurs on the client side before a data row is inserted in batch edit mode. + */ + BatchEditRowInserting: ASPxClientEvent>; + /** + * Occurs on the client side before a data row is deleted in batch edit mode. + */ + BatchEditRowDeleting: ASPxClientEvent>; + /** + * Occurs on the client side when the focused cell is about to be changed. + */ + FocusedCellChanging: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any unhandled server error occurs during server-side processing of a callback sent by the ASPxClientGridView. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires after the Customization Window has been closed. + */ + CustomizationWindowCloseUp: ASPxClientEvent>; + /** + * Selects or deselects the specified row displayed within the grid. + * @param key An object that uniquely identifies the row. + * @param selected true to select the specified row; false to deselect the row. + */ + SelectRowsByKey(key: Object, selected?: boolean): void; + /** + * Selects the specified rows displayed within the grid. + * @param keys An array of objects that uniquely identify the rows. + */ + SelectRowsByKey(keys: Object[]): void; + /** + * Selects a grid row by its key. + * @param key An object that uniquely identifies the row. + */ + SelectRowsByKey(key: Object): void; + /** + * Deselects the specified rows displayed within the grid. + * @param keys An array of objects that uniquely identify the rows. + */ + UnselectRowsByKey(keys: Object[]): void; + /** + * Deselects the specified row displayed within the grid. + * @param key An object that uniquely identifies the row. + */ + UnselectRowsByKey(key: Object): void; + /** + * Deselects all the selected rows within the grid. + */ + UnselectRows(): void; + /** + * Deselects the specified rows (if selected) within the grid. + * @param visibleIndices An array of zero-based indices that identify data rows within the grid. + */ + UnselectRows(visibleIndices: number[]): void; + /** + * Deselects the specified row (if selected) within the grid. + * @param visibleIndex A zero-based integer value that specifies the row's visible index. + */ + UnselectRows(visibleIndex: number): void; + /** + * Deselects all grid rows that match the filter criteria currently applied to the grid. + */ + UnselectFilteredRows(): void; + /** + * Selects the specified row displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the row's visible index. + */ + SelectRowOnPage(visibleIndex: number): void; + /** + * Selects or deselects the specified row displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the row's visible index. + * @param selected true to select the specified row; false to deselect the row. + */ + SelectRowOnPage(visibleIndex: number, selected?: boolean): void; + /** + * Deselects the specified row (if selected) displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the row's visible index. + */ + UnselectRowOnPage(visibleIndex: number): void; + /** + * Selects all unselected rows displayed on the current page. + */ + SelectAllRowsOnPage(): void; + /** + * Allows you to select or deselect all rows displayed on the current page based on the parameter passed. + * @param selected true to select all unselected rows displayed on the current page; false to deselect all selected rows on the page. + */ + SelectAllRowsOnPage(selected: boolean): void; + /** + * Deselects all selected rows displayed on the current page. + */ + UnselectAllRowsOnPage(): void; + /** + * Returns the number of selected rows. + */ + GetSelectedRowCount(): number; + /** + * Indicates whether or not the specified row is selected within the current page. + * @param visibleIndex An integer value that identifies the row by its visible index. + */ + IsRowSelectedOnPage(visibleIndex: number): boolean; + /** + * Indicates whether the specified row is a group row. + * @param visibleIndex An integer value that identifies the row by its visible index. + */ + IsGroupRow(visibleIndex: number): boolean; + /** + * Indicates whether the specified row is a data row. + * @param visibleIndex An integer value that identifies the row by its visible index. + */ + IsDataRow(visibleIndex: number): boolean; + /** + * Indicates whether the specified group row is expanded. + * @param visibleIndex An integer value that identifies the group row by its visible index. + */ + IsGroupRowExpanded(visibleIndex: number): boolean; + /** + * Returns the current vertical scroll position of the grid's content. + */ + GetVertScrollPos(): number; + /** + * Returns the current horizontal scroll position of the grid's content. + */ + GetHorzScrollPos(): number; + /** + * Returns the current horizontal scroll position of the grid's content. + */ + GetHorizontalScrollPosition(): number; + /** + * Specifies the vertical scroll position for the grid's content. + * @param position An integer value specifying the vertical scroll position. + */ + SetVertScrollPos(position: number): void; + /** + * Specifies the horizontal scroll position for the grid's content. + * @param position An integer value specifying the horizontal scroll position. + */ + SetHorzScrollPos(position: number): void; + /** + * Specifies the horizontal scroll position for the grid's content. + * @param position An integer value specifying the horizontal scroll position. + */ + SetHorizontalScrollPosition(position: number): void; + /** + * Sets the scrollability of various types of grid rows when the grid displays fixed columns. + * @param scrollableRowSettings An object specifying which types of grid rows should or should not be scrollable. + */ + SetFixedColumnScrollableRows(scrollableRowSettings: Object): void; + /** + * Applies a filter specified in the filter row to the GridView. + */ + ApplyOnClickRowFilter(): void; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param column An ASPxClientGridViewColumn object that represents the data colum within the ASPxGridView. + */ + GetAutoFilterEditor(column: ASPxClientGridViewColumn): Object; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param columnIndex An integer value that identifies the data column by its index. + */ + GetAutoFilterEditor(columnIndex: number): Object; + /** + * Returns the editor used to edit the value in the auto filter row for the specified data column. + * @param columnFieldNameOrId A string value that specifies the column's name or its data base field name. + */ + GetAutoFilterEditor(columnFieldNameOrId: string): Object; + /** + * Applies a filter to the specified data column. + * @param column An ASPxClientGridViewColumn object that represents the data column within the client GridView. + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(column: ASPxClientGridViewColumn, val: string): void; + /** + * Applies a filter to the specified data column. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(columnIndex: number, val: string): void; + /** + * Applies a filter to the specified data column. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param val A string value that specifies the filter expression. + */ + AutoFilterByColumn(columnFieldNameOrId: string, val: string): void; + /** + * Applies the specified search panel filter criterion to grid data. + * @param value A string value that specifies the filter criterion. + */ + ApplySearchPanelFilter(value: string): void; + /** + * Applies the specified filter expression to the GridView. + * @param filterExpression A string value that specifies the filter expression. + */ + ApplyFilter(filterExpression: string): void; + /** + * Clears the filter expression applied to a client GridView. + */ + ClearFilter(): void; + /** + * Gets the Popup Edit Form. + */ + GetPopupEditForm(): ASPxClientPopupControl; + /** + * Sets input focus to the grid. + */ + Focus(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Selects the specified page. + * @param pageIndex An integer value that specifies the active page's index. + */ + GotoPage(pageIndex: number): void; + /** + * Gets the index of the page currently being selected. + */ + GetPageIndex(): number; + /** + * Gets the number of pages to which the grid's data is divided. + */ + GetPageCount(): number; + /** + * Activates the next page. + */ + NextPage(): void; + /** + * Activates the previous page. + */ + PrevPage(): void; + /** + * Returns the index of the first data row displayed within the GridView's active page. + */ + GetTopVisibleIndex(): number; + /** + * Indicates whether the grid is in edit mode. + */ + IsEditing(): boolean; + /** + * Saves all the changes made and switches the grid to browse mode. + */ + UpdateEdit(): void; + /** + * Cancels all the changes made and switches the GridView to browse mode. + */ + CancelEdit(): void; + /** + * Updates data displayed within the grid. + */ + Refresh(): void; + /** + * Indicates whether the Customization Window is displayed. + */ + IsCustomizationWindowVisible(): boolean; + /** + * Invokes the Customization Window. + */ + ShowCustomizationWindow(): void; + /** + * Invokes the Customization Window and displays it over the specified HTML element. + * @param showAtElement An object that specifies the HTML element relative to whose position the customization window is invoked. + */ + ShowCustomizationWindow(showAtElement?: Object): void; + /** + * Closes the Customization Window. + */ + HideCustomizationWindow(): void; + /** + * Returns the number of columns within the client GridView. + */ + GetColumnsCount(): number; + /** + * Returns the number of columns within the client GridView. + */ + GetColumnCount(): number; + /** + * Returns the row values displayed within all selected rows. + * @param fieldNames The names of data source fields separated via a semicolon, whose values within the selected rows are returned. + * @param onCallback A ASPxClientGridViewValuesCallback object that represents the JavaScript function which receives the list of row values as a parameter. + */ + GetSelectedFieldValues(fieldNames: string, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Returns key values of selected rows displayed within the current page. + */ + GetSelectedKeysOnPage(): Object[]; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientGridViewValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Returns the values of the specified data source fields within the specified row. + * @param visibleIndex An integer value that identifies the data row. + * @param fieldNames The names of data source fields separated via a semicolon, whose values within the specified row are returned. + * @param onCallback An ASPxClientGridViewValuesCallback object that represents the JavaScript function which receives the list of row values as a parameter. + */ + GetRowValues(visibleIndex: number, fieldNames: string, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Returns the row values displayed within the current page. + * @param fieldNames The names of data source fields whose values are returned. + * @param onCallback A ASPxClientGridViewValuesCallback object that represents the JavaScript function which receives the list of row values as a parameter. + */ + GetPageRowValues(fieldNames: string, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Returns the number of rows actually displayed within the active page. + */ + GetVisibleRowsOnPage(): number; + /** + * Returns the client column that resides at the specified position within the column collection. + * @param columnIndex A zero-based index that identifies the column within the column collection (the column's Index property value). + */ + GetColumn(columnIndex: number): ASPxClientGridViewColumn; + /** + * Returns the column with the specified unique identifier. + * @param columnId A string value that specifies the column's unique identifier (the column's Name property value). + */ + GetColumnById(columnId: string): ASPxClientGridViewColumn; + /** + * Returns the client column which is bound to the specified data source field. + * @param columnFieldName A string value that specifies the name of the data source field to which the column is bound (the column's FieldName property value). + */ + GetColumnByField(columnFieldName: string): ASPxClientGridViewColumn; + /** + * Returns the editor used to edit the specified column's values. + * @param column An ASPxClientGridViewColumn object that specifies the required column within the client grid. + */ + GetEditor(column: ASPxClientGridViewColumn): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + GetEditor(columnIndex: number): ASPxClientEdit; + /** + * Returns the editor used to edit the specified column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GetEditor(columnFieldNameOrId: string): ASPxClientEdit; + /** + * Returns the value of the specified edit cell. + * @param column An ASPxClientGridViewColumn object that represents the data column within the client grid. + */ + GetEditValue(column: ASPxClientGridViewColumn): string; + /** + * Returns the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column within the grid's column collection. + */ + GetEditValue(columnIndex: number): string; + /** + * Returns the value of the specified edit cell. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GetEditValue(columnFieldNameOrId: string): string; + /** + * Moves focus to the specified edit cell within the edited row. + * @param column An ASPxClientGridViewColumn object that represents the data column within the client grid. + */ + FocusEditor(column: ASPxClientGridViewColumn): void; + /** + * Moves focus to the specified edit cell within the edited row. + * @param columnIndex An integer value that specifies the column's position within the columns collection. + */ + FocusEditor(columnIndex: number): void; + /** + * Moves focus to the specified edit cell within the edited row. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + FocusEditor(columnFieldNameOrId: string): void; + /** + * Sets the value of the specified edit cell. + * @param column An ASPxClientGridViewColumn object that represents the data column within the client grid. + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(column: ASPxClientGridViewColumn, value: string): void; + /** + * Sets the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column within the grid's column collection. + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(columnIndex: number, value: string): void; + /** + * Sets the value of the specified edit cell. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param value A string value that specifies the edit cell's new value. + */ + SetEditValue(columnFieldNameOrId: string, value: string): void; + /** + * Displays the Filter Control. + */ + ShowFilterControl(): void; + /** + * Hides the Filter Control. + */ + CloseFilterControl(): void; + /** + * Enables or disables the current filter. + * @param isFilterEnabled true to enable the current filter; otherwise, false. + */ + SetFilterEnabled(isFilterEnabled: boolean): void; + /** + * Returns the current vertical scroll position of the grid's content. + */ + GetVerticalScrollPosition(): number; + /** + * Specifies the vertical scroll position for the grid's content. + * @param position An integer value specifying the vertical scroll position. + */ + SetVerticalScrollPosition(position: number): void; + /** + * Gets information about a focused cell. + */ + GetFocusedCell(): ASPxClientGridViewCellInfo; + /** + * Focuses the specified cell. + * @param rowVisibleIndex An integer value that specifies the visible index of the row. + * @param columnIndex A zero-based index that identifies the column in the column collection (the column's Index property value). + */ + SetFocusedCell(rowVisibleIndex: number, columnIndex: number): void; + /** + * Invokes the Customization Dialog and displays it over the grid. + */ + ShowCustomizationDialog(): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientGridViewColumn object that represents the data column. + */ + SortBy(column: ASPxClientGridViewColumn): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + SortBy(columnIndex: number): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + SortBy(columnFieldNameOrId: string): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientGridViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(column: ASPxClientGridViewColumn, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(columnIndex: number, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(columnFieldNameOrId: string, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientGridViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(column: ASPxClientGridViewColumn, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(columnIndex: number, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(columnFieldNameOrId: string, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param column An ASPxClientGridViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based column's index among the sorted columns. -1 if data is not sorted by this column. + */ + SortBy(column: ASPxClientGridViewColumn, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based column's index among the sorted columns. -1 if data is not sorted by this column. + */ + SortBy(columnIndex: number, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data column's values, and places the column to the specified position among the sorted columns. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based column's index among the sorted columns. -1 if data is not sorted by this column. + */ + SortBy(columnFieldNameOrId: string, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Hides the specified column. + * @param column An ASPxClientGridViewColumn object that represents the column to hide. + */ + MoveColumn(column: ASPxClientGridViewColumn): void; + /** + * Hides the specified column. + * @param columnIndex An integer value that specifies the absolute index of the column to hide. + */ + MoveColumn(columnIndex: number): void; + /** + * Hides the specified column. + * @param columnFieldNameOrId A String value that identifies the column to be hidden by the name of the data source field to which the column is bound, or by the column's name. + */ + MoveColumn(columnFieldNameOrId: string): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param column An ASPxClientGridViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + */ + MoveColumn(column: ASPxClientGridViewColumn, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnFieldNameOrId A String value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param column An ASPxClientGridViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + */ + MoveColumn(column: ASPxClientGridViewColumn, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, moveBefore: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups the grid's data by this column. + * @param column An ASPxClientGridViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the grid's data by the column; otherwise, false. + */ + MoveColumn(column: ASPxClientGridViewColumn, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups the grid's data by this column. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the ASPxGridView's data by the column; otherwise, false. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups the grid's data by this column. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the grid's data by the column; otherwise, false. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups or ungroups the grid's data by this column. + * @param column An ASPxClientGridViewColumn object that represents the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the grid's data by the column; otherwise, false. + * @param moveFromGroup true to ungroup the grid's data by the column; otherwise, false. + */ + MoveColumn(column: ASPxClientGridViewColumn, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups or ungroups the grid's data by this column. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the grid's data by the column; otherwise, false. + * @param moveFromGroup true to ungroup the grid's data by the column; otherwise, false. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups or ungroups the grid's data by this column. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param moveBefore true to move the column before the target column; otherwise, false. + * @param moveToGroup true to group the grid's data by the column; otherwise, false. + * @param moveFromGroup true to ungroup the grid's data by the column; otherwise, false. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, moveBefore: boolean, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + * @param targetPosition An ASPxClientGridColumnMovingTargetPosition enumeration value specifying the position relative to the target column in which to place the moved column. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, targetPosition: ASPxClientGridColumnMovingTargetPosition): void; + /** + * Moves the specified column to the specified visual position within the grid. + * @param columnFieldNameOrId A String value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that specifies the column's position among the visible columns within the grid. + * @param targetPosition An ASPxClientGridColumnMovingTargetPosition enumeration value specifying the position relative to the target column in which to place the moved column. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, targetPosition: ASPxClientGridColumnMovingTargetPosition): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups or ungroups the grid's data by this column. + * @param columnIndex An integer value that specifies the absolute index of the column to move. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param targetPosition An ASPxClientGridColumnMovingTargetPosition enumeration value specifying the position relative to the target column in which to place the moved column. + * @param moveToGroup true, to group the ASPxGridView's data by the column; otherwise, false. + * @param moveFromGroup true, to ungroup the grid's data by the column; otherwise, false. + */ + MoveColumn(columnIndex: number, moveToColumnVisibleIndex: number, targetPosition: ASPxClientGridColumnMovingTargetPosition, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Moves the specified column to the specified visual position within the grid and optionally groups or ungroups the grid's data by this column. + * @param columnFieldNameOrId A string value that identifies the column to be moved by the name of the data source field to which the column is bound or by the column's name. + * @param moveToColumnVisibleIndex An integer value that identifies the target column displayed within the grid. + * @param targetPosition An ASPxClientGridColumnMovingTargetPosition enumeration value specifying the position relative to the target column in which to place the moved column. + * @param moveToGroup true, to group the grid's data by the column; otherwise, false. + * @param moveFromGroup true, to ungroup the grid's data by the column; otherwise, false. + */ + MoveColumn(columnFieldNameOrId: string, moveToColumnVisibleIndex: number, targetPosition: ASPxClientGridColumnMovingTargetPosition, moveToGroup: boolean, moveFromGroup: boolean): void; + /** + * Groups data by the values of the specified column. + * @param column An ASPxClientGridViewColumn object that represents the data column by whose values data is grouped. + */ + GroupBy(column: ASPxClientGridViewColumn): void; + /** + * Groups data by the values of the specified column. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + GroupBy(columnIndex: number): void; + /** + * Groups data by the values of the specified column. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + GroupBy(columnFieldNameOrId: string): void; + /** + * Groups data by the values of the specified data column. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param column An ASPxClientGridViewColumn object that represents the data column by whose values data is grouped. + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + */ + GroupBy(column: ASPxClientGridViewColumn, groupIndex: number): void; + /** + * Groups data by the values of the specified data column. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + */ + GroupBy(columnIndex: number, groupIndex: number): void; + /** + * Groups data by the values of the specified data column. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + */ + GroupBy(columnFieldNameOrId: string, groupIndex: number): void; + /** + * Groups data by the values of the specified data column with the specified sort order. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param column An ASPxClientGridViewColumn object that represents the data column by whose values data is grouped. + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + * @param sortOrder A string value that specifies the column's sort order. + */ + GroupBy(column: ASPxClientGridViewColumn, groupIndex: number, sortOrder: string): void; + /** + * Groups data by the values of the specified data column with the specified sort order. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + * @param sortOrder A string value that specifies the column's sort order. + */ + GroupBy(columnIndex: number, groupIndex: number, sortOrder: string): void; + /** + * Groups data by the values of the specified data column with the specified sort order. If several columns are involved in grouping, the specified column will reside at the specified grouping level. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param groupIndex An integer value that specifies the grouping level. -1 to cancel grouping by the column's values. + * @param sortOrder A string value that specifies the column's sort order. + */ + GroupBy(columnFieldNameOrId: string, groupIndex: number, sortOrder: string): void; + /** + * Ungroups data by the values of the specified column. + * @param column An ASPxClientGridViewColumn object that represents the data column within the ASPxGridView. + */ + UnGroup(column: ASPxClientGridViewColumn): void; + /** + * Ungroups data by the values of the specified column. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + UnGroup(columnIndex: number): void; + /** + * Ungroups data by the values of the specified column. + * @param columnFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + */ + UnGroup(columnFieldNameOrId: string): void; + /** + * Ungroups data by the values of a specified column. + * @param column A ASPxClientGridViewColumn object that is the grid column. + */ + Ungroup(column: ASPxClientGridViewColumn): void; + /** + * Ungroups data by the values of a specified column. + * @param columnIndex An integer value that is the column index. + */ + Ungroup(columnIndex: number): void; + /** + * Ungroups data by the values of a specified column. + * @param columnFieldNameOrId A string value that is the column's FieldName or ID. + */ + Ungroup(columnFieldNameOrId: string): void; + /** + * Expands all group rows. + */ + ExpandAll(): void; + /** + * Collapses all group rows. + */ + CollapseAll(): void; + /** + * Expands all detail rows. + */ + ExpandAllDetailRows(): void; + /** + * Collapses all detail rows. + */ + CollapseAllDetailRows(): void; + /** + * Expands the specified group row preserving the collapsed state of any child group row. + * @param visibleIndex An integer value that identifies the group row. + */ + ExpandRow(visibleIndex: number): void; + /** + * Expands the specified group row and optionally child group rows at all nesting levels. + * @param visibleIndex An integer value that identifies the group row. + * @param recursive true to expand any child group rows at all nesting levels; false to preserve the collapsed state of any child group rows. + */ + ExpandRow(visibleIndex: number, recursive?: boolean): void; + /** + * Collapses the specified group row preserving the expanded state of child group rows. + * @param visibleIndex An integer value that identifies the group row by its visible index. + */ + CollapseRow(visibleIndex: number): void; + /** + * Collapses the specified group row and optionally child group rows at all nesting levels. + * @param visibleIndex An integer value that identifies the group row by its visible index. + * @param recursive true to collapse child group rows at all nesting levels; false to preserve the expanded state of any child group row. + */ + CollapseRow(visibleIndex: number, recursive?: boolean): void; + /** + * Scrolls the view to the specified row. + * @param visibleIndex An integer value that identifies a row by its visible index. + */ + MakeRowVisible(visibleIndex: number): void; + /** + * Expands the specified detail row. + * @param visibleIndex A zero-based integer index that identifies the detail row. + */ + ExpandDetailRow(visibleIndex: number): void; + /** + * Collapses the specified detail row. + * @param visibleIndex A zero-based integer index that identifies the detail row. + */ + CollapseDetailRow(visibleIndex: number): void; + /** + * Returns the key value of the specified data row. + * @param visibleIndex An integer value that specifies the row's visible index. + */ + GetRowKey(visibleIndex: number): string; + /** + * Switches the grid to edit mode. + * @param visibleIndex A zero-based integer that identifies a data row to be edited. + */ + StartEditRow(visibleIndex: number): void; + /** + * Switches the grid to edit mode. + * @param key An object that uniquely identifies a data row to be edited. + */ + StartEditRowByKey(key: Object): void; + /** + * Indicates whether or not a new row is being edited. + */ + IsNewRowEditing(): boolean; + /** + * Adds a new record. + */ + AddNewRow(): void; + /** + * Deletes the specified row. + * @param visibleIndex An integer value that identifies the row. + */ + DeleteRow(visibleIndex: number): void; + /** + * Deletes a row with the specified key value. + * @param key An object that uniquely identifies the row. + */ + DeleteRowByKey(key: Object): void; + /** + * Returns the focused row's index. + */ + GetFocusedRowIndex(): number; + /** + * Moves focus to the specified row. + * @param visibleIndex An integer value that specifies the focused row's index. + */ + SetFocusedRowIndex(visibleIndex: number): void; + /** + * Selects all the unselected rows within the grid. + */ + SelectRows(): void; + /** + * Selects the specified row displayed within the grid. + * @param visibleIndex A zero-based integer value that specifies the row's visible index. + */ + SelectRows(visibleIndex: number): void; + /** + * Selects the specified rows within the grid. + * @param visibleIndices An array of zero-based indices that identify data rows within the grid. + */ + SelectRows(visibleIndices: number[]): void; + /** + * Selects or deselects the specified rows within the grid. + * @param visibleIndices An array of zero-based indices that identify data rows within the grid. + * @param selected true to select the specified rows; false to deselect the rows. + */ + SelectRows(visibleIndices: number[], selected: boolean): void; + /** + * Selects or deselects the specified row within the grid. + * @param visibleIndex An integer zero-based index that identifies the data row within the grid. + * @param selected true to select the specified row; false to deselect the row. + */ + SelectRows(visibleIndex: number, selected?: boolean): void; + /** + * Selects or deselects the specified rows displayed within the grid. + * @param keys An array of objects that uniquely identify the rows. + * @param selected true to select the specified rows; false to deselect the rows. + */ + SelectRowsByKey(keys: Object[], selected?: boolean): void; +} +/** + * A client grid column. + */ +interface ASPxClientGridViewColumn extends ASPxClientGridColumnBase { + /** + * Gets the column's unique identifier. + * Value: A string value that specifies the column's unique identifier. + */ + id: string; + /** + * Gets the name that uniquely identifies the column. + * Value: A string value assigned to the column's Name property. + */ + name: string; + /** + * Gets the column's position within the collection. + * Value: An integer zero-bazed index that specifies the column's position within the collection. + */ + index: number; + /** + * Gets the name of the database field assigned to the current column. + * Value: A string value that specifies the name of a data field. + */ + fieldName: string; + /** + * Gets whether the column is visible. + * Value: true to display the column; otherwise, false. + */ + visible: boolean; +} +/** + * Represents a JavaScript function which receives the list of row values when the client GetSelectedFieldValues method is called. + */ +interface ASPxClientGridViewValuesCallback { + /** + * Represents a JavaScript function which receives the list of row values when the client GetSelectedFieldValues method is called. + * @param result An object that represents the list of row values received from the server. + */ + (result: Object): void; +} +/** + * A method that will handle the cancelable events of a client ASPxGridView column. + */ +interface ASPxClientGridViewColumnCancelEventHandler { + /** + * A method that will handle the cancelable events of a client ASPxGridView column. + * @param source The event source. + * @param e An ASPxClientGridViewColumnCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewColumnCancelEventArgs): void; +} +/** + * Provides data for the cancelable events of a client ASPxGridView column. + */ +interface ASPxClientGridViewColumnCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed client column. + * Value: An ASPxClientGridViewColumn object that represents the processed column. + */ + column: ASPxClientGridViewColumn; +} +/** + * A method that will handle the client events concerned with column processing. + */ +interface ASPxClientGridViewColumnProcessingModeEventHandler { + /** + * A method that will handle the client events concerned with column processing. + * @param source The event source. + * @param e A ASPxClientGridViewColumnProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewColumnProcessingModeEventArgs): void; +} +/** + * Provides data for the client events concerned with column processing, and that allow the event's processing to be passed to the server side. + */ +interface ASPxClientGridViewColumnProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets a grid column related to the event. + * Value: An ASPxClientGridViewColumn object representing the column related to the event. + */ + column: ASPxClientGridViewColumn; +} +/** + * A method that will handle the RowExpanding events. + */ +interface ASPxClientGridViewRowCancelEventHandler { + /** + * A method that will handle the RowExpanding events. + * @param source The event source. + * @param e An ASPxClientGridViewRowCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewRowCancelEventArgs): void; +} +/** + * Provides data for the RowExpanding events. + */ +interface ASPxClientGridViewRowCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed row's visible index. + * Value: An integer zero-based index that identifies the processed row. + */ + visibleIndex: number; +} +/** + * A method that will handle the SelectionChanged event. + */ +interface ASPxClientGridViewSelectionEventHandler { + /** + * A method that will handle the SelectionChanged event. + * @param source The event source. + * @param e An ASPxClientGridViewSelectionEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewSelectionEventArgs): void; +} +/** + * Provides data for the SelectionChanged event. + */ +interface ASPxClientGridViewSelectionEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the visible index of the row whose selected state has been changed. + * Value: An value that specifies the visible index of the row. + */ + visibleIndex: number; + /** + * Gets whether the row has been selected. + * Value: true if the row has been selected; otherwise, false. + */ + isSelected: boolean; + /** + * Gets whether all rows displayed within a page have been selected or unselected. + * Value: true if all rows displayed within a page have been selected or unselected; otherwise, false. + */ + isAllRecordsOnPage: boolean; + /** + * Gets whether a selection has been changed on the server. + * Value: true if a selection has been changed on the server; otherwise, false. + */ + isChangedOnServer: boolean; +} +/** + * A method that will handle the RowClick events. + */ +interface ASPxClientGridViewRowClickEventHandler { + /** + * A method that will handle the RowClick event. + * @param source The event source. This parameter identifies the ASPxClientGridView object that raised the event. + * @param e An ASPxClientGridViewRowClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewRowClickEventArgs): void; +} +/** + * Provides data for the RowClick event. + */ +interface ASPxClientGridViewRowClickEventArgs extends ASPxClientGridViewRowCancelEventArgs { + /** + * Provides access to the parameters associated with the RowClick event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; +} +/** + * A method that will handle the ContextMenu event. + */ +interface ASPxClientGridViewContextMenuEventHandler { + /** + * A method that will handle the ContextMenu event. + * @param source The event source. + * @param e An ASPxClientGridViewContextMenuEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewContextMenuEventArgs): void; +} +/** + * Provides data for the ContextMenu event. + */ +interface ASPxClientGridViewContextMenuEventArgs extends ASPxClientEventArgs { + /** + * Gets which grid element has been right clicked by the user. + * Value: A String value that specifies grid element. + */ + objectType: string; + /** + * Identifies the grid element being right clicked by the user. + * Value: A zero-based integer index that identifies the grid element being clicked by the user. + */ + index: number; + /** + * Provides access to the parameters associated with the ContextMenu event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; + /** + * Gets the currently processed menu object. + * Value: An object that is the currently processed menu. + */ + menu: Object; + /** + * Specifies whether a browser context menu should be displayed. + * Value: true, to display a browser context menu; otherwise, false. The default is false. + */ + showBrowserMenu: boolean; +} +/** + * A method that will handle the client ContextMenuItemClick event. + */ +interface ASPxClientGridViewContextMenuItemClickEventHandler { + /** + * A method that will handle the ContextMenuItemClick event. + * @param source The event source. + * @param e An ASPxClientGridViewContextMenuItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewContextMenuItemClickEventArgs): void; +} +/** + * Provides data for the ContextMenuItemClick event. + */ +interface ASPxClientGridViewContextMenuItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the clicked context menu item. + * Value: An object, manipulations on which forced the event to be raised. + */ + item: ASPxClientMenuItem; + /** + * Gets which grid element has been right clicked by the user. + * Value: A String value that specifies the grid element. + */ + objectType: string; + /** + * Returns the processed element index. + * Value: An integer value that specifies the processed element index. + */ + elementIndex: number; + /** + * Specifies whether a postback or a callback is used to finally process the event on the server side. + * Value: true to perform the round trip to the server side via postback; false to perform the round trip to the server side via callback. + */ + usePostBack: boolean; + /** + * Specifies whether default context menu item click is handled manually, so no default processing is required. + * Value: true if no default processing is required; otherwise false. + */ + handled: boolean; +} +/** + * A method that will handle the CustomButtonClick event. + */ +interface ASPxClientGridViewCustomButtonEventHandler { + /** + * A method that will handle the CustomButtonClick event. + * @param source The event source. This parameter identifies the ASPxClientGridView object that raised the event. + * @param e An ASPxClientGridViewCustomButtonEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewCustomButtonEventArgs): void; +} +/** + * Provides data for the CustomButtonClick event. + */ +interface ASPxClientGridViewCustomButtonEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the value which identifies the row whose custom button has been clicked. + * Value: An integer value that identifies the row whose custom button has been clicked. + */ + visibleIndex: number; + /** + * Gets the value which identifies the custom button. + * Value: A string value that identifies the clicked custom button. + */ + buttonID: string; +} +/** + * A method that will handle the ColumnMoving event. + */ +interface ASPxClientGridViewColumnMovingEventHandler { + /** + * A method that will handle the ColumnMoving event. + * @param source The event source. + * @param e An ASPxClientGridViewColumnMovingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewColumnMovingEventArgs): void; +} +/** + * Provides data for the ColumnMoving event. + */ +interface ASPxClientGridViewColumnMovingEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether a column is allowed to be moved. + * Value: true to allow column moving; otherwise, false. + */ + allow: boolean; + /** + * Gets the column currently being dragged by an end-user. + * Value: An ASPxClientGridViewColumn object that represents the column currently being dragged by an end-user. + */ + sourceColumn: ASPxClientGridViewColumn; + /** + * Gets the target column, before or after which the source column will be inserted (if dropped). + * Value: An ASPxClientGridViewColumn object that represents the target column. null (Nothing in Visual Basic) if the source column isn't over the column header panel. + */ + destinationColumn: ASPxClientGridViewColumn; + /** + * Gets whether the source column will be inserted before the target column (if dropped). + * Value: true if the source column will be inserted before the target column (if dropped); otherwise, false. + */ + isDropBefore: boolean; + /** + * Gets whether the source column is currently over the Group Panel. + * Value: true if the source column is currently over the Group Panel; otherwise, false. + */ + isGroupPanel: boolean; +} +/** + * Represents an object that will handle the client-side BatchEditConfirmShowing event. + */ +interface ASPxClientGridViewBatchEditConfirmShowingEventHandler { + /** + * A method that will handle the BatchEditConfirmShowing client event. + * @param source The event source. + * @param e An ASPxClientGridViewBatchEditConfirmShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditConfirmShowingEventArgs): void; +} +/** + * Provides data for the BatchEditConfirmShowing event. + */ +interface ASPxClientGridViewBatchEditConfirmShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the client identifier of an object that initiates a send request. + * Value: A string value that specifies the object client identifier. + */ + requestTriggerID: string; +} +/** + * A method that will handle the client BatchEditStartEditing event. + */ +interface ASPxClientGridViewBatchEditStartEditingEventHandler { + /** + * A method that will handle the BatchEditStartEditing event. + * @param source The event source. + * @param e An ASPxClientGridViewBatchEditStartEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditStartEditingEventArgs): void; +} +/** + * Provides data for the BatchEditStartEditing event. + */ +interface ASPxClientGridViewBatchEditStartEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the row whose cells are about to be edited. + * Value: An value that specifies the visible index of the row. + */ + visibleIndex: number; + /** + * Gets the grid column that owns a cell that is about to be edited. + * Value: An object that is the focused grid column. + */ + focusedColumn: ASPxClientGridViewColumn; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: A hashtable that stores information about editable cells. + */ + rowValues: Object; +} +/** + * A method that will handle the client BatchEditEndEditing event. + */ +interface ASPxClientGridViewBatchEditEndEditingEventHandler { + /** + * A method that will handle the BatchEditEndEditing event. + * @param source The event source. + * @param e An ASPxClientGridViewBatchEditEndEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditEndEditingEventArgs): void; +} +/** + * Provides data for the BatchEditEndEditing event. + */ +interface ASPxClientGridViewBatchEditEndEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the row whose cells has been edited. + * Value: An value that specifies the visible index of the row. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: A hashtable that stores information about editable cells. + */ + rowValues: Object; +} +/** + * A method that will handle the client BatchEditRowValidating event. + */ +interface ASPxClientGridViewBatchEditRowValidatingEventHandler { + /** + * A method that will handle the BatchEditRowValidating event. + * @param source The event source. + * @param e An ASPxClientGridViewBatchEditRowValidatingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditRowValidatingEventArgs): void; +} +/** + * Provides data for the BatchEditRowValidating event. + */ +interface ASPxClientGridViewBatchEditRowValidatingEventArgs extends ASPxClientEventArgs { + /** + * Gets the processed row's visible index. + * Value: An integer value that specifies the processed row's visible index. + */ + visibleIndex: number; + /** + * Provides validation information of a row currently being validated. + * Value: An object that is a hashtable containing validation information. + */ + validationInfo: Object; +} +/** + * A method that will handle the client BatchEditTemplateCellFocused event. + */ +interface ASPxClientGridViewBatchEditTemplateCellFocusedEventHandler { + /** + * A method that will handle the BatchEditTemplateCellFocused event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientGridViewBatchEditTemplateCellFocusedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditTemplateCellFocusedEventArgs): void; +} +/** + * Provides data for the BatchEditTemplateCellFocused event. + */ +interface ASPxClientGridViewBatchEditTemplateCellFocusedEventArgs extends ASPxClientEventArgs { + /** + * Gets the currently processed column. + * Value: A object that is the client-side column object. + */ + column: ASPxClientGridViewColumn; + /** + * Gets or sets a value specifying whether the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * A method that will handle the BatchEditChangesSaving event. + */ +interface ASPxClientGridViewBatchEditChangesSavingEventHandler { + /** + * A method that will handle the BatchEditChangesSaving event. + * @param source The event source. This parameter identifies the grid view object which raised the event. + * @param e An ASPxClientGridViewBatchEditChangesSavingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditChangesSavingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesSaving event. + */ +interface ASPxClientGridViewBatchEditChangesSavingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * A method that will handle the BatchEditChangesCanceling event. + */ +interface ASPxClientGridViewBatchEditChangesCancelingEventHandler { + /** + * A method that will handle the BatchEditChangesCanceling event. + * @param source The event source. This parameter identifies the grid view object which raised the event. + * @param e An ASPxClientGridViewBatchEditChangesCancelingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditChangesCancelingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesCanceling event. + */ +interface ASPxClientGridViewBatchEditChangesCancelingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * A method that will handle the BatchEditRowInserting event. + */ +interface ASPxClientGridViewBatchEditRowInsertingEventHandler { + /** + * A method that will handle the BatchEditRowInserting event. + * @param source The event source. This parameter identifies the card view object which raised the event. + * @param e An ASPxClientGridViewBatchEditRowInsertingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditRowInsertingEventArgs): void; +} +/** + * Provides data for the BatchEditRowInserting event. + */ +interface ASPxClientGridViewBatchEditRowInsertingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed row's visible index. + * Value: An integer value that specifies the processed row's visible index. + */ + visibleIndex: number; +} +/** + * A method that will handle the BatchEditRowDeleting event. + */ +interface ASPxClientGridViewBatchEditRowDeletingEventHandler { + /** + * A method that will handle the BatchEditRowDeleting event. + * @param source The event source. This parameter identifies the grid view object which raised the event. + * @param e An ASPxClientGridViewBatchEditRowDeletingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewBatchEditRowDeletingEventArgs): void; +} +/** + * Provides data for the BatchEditRowDeleting event. + */ +interface ASPxClientGridViewBatchEditRowDeletingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed row's visible index. + * Value: An integer value that specifies the processed row's visible index. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + rowValues: Object; +} +/** + * A method that will handle the FocusedCellChanging event. + */ +interface ASPxClientGridViewFocusedCellChangingEventHandler { + /** + * A method that will handle the FocusedCellChanging event. + * @param source The event source. + * @param e An ASPxClientGridViewFocusedCellChangingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGridViewFocusedCellChangingEventArgs): void; +} +/** + * Provides data for the FocusedCellChanging event. + */ +interface ASPxClientGridViewFocusedCellChangingEventArgs extends ASPxClientCancelEventArgs { + /** + * Provides information on a cell currently being focused. + * Value: A ASPxClientGridViewCellInfo object that is the cell information. + */ + cellInfo: ASPxClientGridViewCellInfo; +} +/** + * Contains information on a grid cell. + */ +interface ASPxClientGridViewCellInfo { + /** + * Gets the visible index of the row that contains the cell currently being processed. + * Value: An value that specifies the visible index of the row. + */ + rowVisibleIndex: number; + /** + * Gets the data column that contains the cell currently being processed. + * Value: An object that is the data column which contains the processed cell. + */ + column: ASPxClientGridViewColumn; +} +/** + * Provides members related to Batch Edit Mode + */ +interface ASPxClientGridViewBatchEditApi { + /** + * Performs validation of grid data contained in all rows when the grid operates in Batch Edit mode. + * @param validateOnlyModified true, if only modified rows should be validated; otherwise, false. + */ + ValidateRows(validateOnlyModified?: boolean): boolean; + /** + * Performs validation of grid data contained in the specified row when the grid operates in Batch Edit mode. + * @param visibleIndex An integer value specifying the visible index of the validated row. + */ + ValidateRow(visibleIndex: number): boolean; + /** + * Returns an array of row visible indices. + * @param includeDeleted true, to include visible indices of deleted rows to the returned array; otherwise, false. + */ + GetRowVisibleIndices(includeDeleted: boolean): number[]; + /** + * Returns an array of the deleted row visible indices. + */ + GetDeletedRowIndices(): number[]; + /** + * Returns an array of the inserted row visible indices. + */ + GetInsertedRowIndices(): number[]; + /** + * Indicates if the row with specified visible index is deleted. + * @param visibleIndex An integer value that identifies the row by its visible index. + */ + IsDeletedRow(visibleIndex: number): boolean; + /** + * Indicates if the row with specified visible index is newly created. + * @param visibleIndex An integer value that identifies the row by its visible index. + */ + IsNewRow(visibleIndex: number): boolean; + /** + * Programmatically moves the focus to the previous cell in the row. + */ + MoveFocusBackward(): boolean; + /** + * Programmatically moves the focus to the next cell in the row. + */ + MoveFocusForward(): boolean; + /** + * Sets a value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the row containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param value An object that contains the new cell value. + */ + SetCellValue(visibleIndex: number, columnFieldNameOrId: string, value: Object): void; + /** + * Sets the value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the row containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param value An object that contains the new cell value. + * @param displayText A string value that specifies the cell display text. + * @param cancelCellHighlighting true to cancel highlighting of the modified cell, false to highlight the modified cell. + */ + SetCellValue(visibleIndex: number, columnFieldNameOrId: string, value: Object, displayText: string, cancelCellHighlighting?: boolean): void; + /** + * Gets the value of the specified cell. + * @param visibleIndex A zero-based integer value that specifies a visible index of a row containing the processed cell. + * @param columnFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param initial true, to return the initial (server) value; false, to return a value currently contained on the client side (modified value). + */ + GetCellValue(visibleIndex: number, columnFieldNameOrId: string, initial?: boolean): Object; + /** + * Gets a container holding a data cell content. + * @param visibleIndex An integer value that is the visible index. + * @param columnFieldNameOrId A string value that is the column's Field Name or ID. + */ + GetCellTextContainer(visibleIndex: number, columnFieldNameOrId: string): Object; + /** + * Gets information about the cell currently being edited. + */ + GetEditCellInfo(): ASPxClientGridViewCellInfo; + /** + * Returns a value that indicates whether the grid has changed data. + */ + HasChanges(): boolean; + /** + * Returns a value that indicates whether the specified row has changed data. + * @param visibleIndex An integer value that specifies the visible index of a row. + */ + HasChanges(visibleIndex: number): boolean; + /** + * Returns a value that indicates whether the specified data cell's data has been changed. + * @param visibleIndex An integer value that specifies the visible index of a row. + * @param columnFieldNameOrId A string value that identifies the column by the name of the data source field to which the column is bound, or by the column's name. + */ + HasChanges(visibleIndex: number, columnFieldNameOrId: string): boolean; + /** + * Resets changes in the specified row. + * @param visibleIndex An integer value that specifies the visible index of a row. + */ + ResetChanges(visibleIndex: number): void; + /** + * Resets changes in the specified cell. + * @param visibleIndex An integer value that specifies the visible index of a row containing the processed cell. + * @param columnIndex A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + */ + ResetChanges(visibleIndex: number, columnIndex: number): void; + /** + * Switches the specified cell to edit mode. + * @param visibleIndex A zero-based integer value that specifies the visible index of a row containing the processed cell. + * @param columnIndex A zero-based integer value that identifies the column which contains the processed cell in the column collection. + */ + StartEdit(visibleIndex: number, columnIndex: number): void; + /** + * Ends cell or row editing. + */ + EndEdit(): void; +} +/** + * A client-side equivalent of the ASPxVerticalGrid object. + */ +interface ASPxClientVerticalGrid extends ASPxClientGridBase { + /** + * Provides access to the batch editing client API. + * Value: A object that exposes the batch editing client API methods. + */ + batchEditApi: ASPxClientVerticalGridBatchEditApi; + /** + * Occurs when a custom command button has been clicked. + */ + CustomButtonClick: ASPxClientEvent>; + /** + * Fires after the selection has been changed. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Occurs when a grid switches to batch edit mode. + */ + BatchEditStartEditing: ASPxClientEvent>; + /** + * Occurs when a grid leaves the batch edit mode. + */ + BatchEditEndEditing: ASPxClientEvent>; + /** + * Enables you to prevent a batch edit confirmation message from being displayed. + */ + BatchEditConfirmShowing: ASPxClientEvent>; + /** + * Enables you to provide navigation for editors contained in a templated cell in Batch Edit mode. + */ + BatchEditTemplateCellFocused: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are saved in batch edit mode. + */ + BatchEditChangesSaving: ASPxClientEvent>; + /** + * Occurs on the client side before data changes are canceled in batch edit mode. + */ + BatchEditChangesCanceling: ASPxClientEvent>; + /** + * Occurs on the client side before a record is inserted in batch edit mode. + */ + BatchEditRecordInserting: ASPxClientEvent>; + /** + * Occurs on the client side before a record is deleted in batch edit mode. + */ + BatchEditRecordDeleting: ASPxClientEvent>; + /** + * Enables you to specify whether record data is valid and provide an error text. + */ + BatchEditRecordValidating: ASPxClientEvent>; + /** + * Occurs on the client side when the focused cell is about to be changed. + */ + FocusedCellChanging: ASPxClientEvent>; + /** + * Enables you to prevent rows from being sorted. + */ + RowSorting: ASPxClientEvent>; + /** + * Fires on the client side before the expansion state of a row is changed by end-user interaction. + */ + RowExpandedChanging: ASPxClientEvent>; + /** + * Fires on the client side after a row's expansion state has been changed by end-user interaction. + */ + RowExpandedChanged: ASPxClientEvent>; + /** + * Fires on the client when a record is clicked. + */ + RecordClick: ASPxClientEvent>; + /** + * Fires on the client when a record is double clicked. + */ + RecordDblClick: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any unhandled server error occurs during server-side processing of a callback sent by the ASPxClientVerticalGrid. + */ + CallbackError: ASPxClientEvent>; + /** + * Sorts data by the specified data row's values. + * @param row An ASPxClientVerticalGridRow object that represents the data row. + */ + SortBy(row: ASPxClientVerticalGridRow): void; + /** + * Sorts data by the specified data row's values. + * @param rowIndex An integer value that specifies the row's position within the row collection. + */ + SortBy(rowIndex: number): void; + /** + * Sorts data by the specified data row's values. + * @param rowFieldNameOrId A string value that specifies the row's field name or unique identifier (the row's Name property value). + */ + SortBy(rowFieldNameOrId: string): void; + /** + * Sorts data by the specified data row's values. + * @param row An ASPxClientVerticalGridRow object that represents the data row. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(row: ASPxClientVerticalGridRow, sortOrder: string): void; + /** + * Sorts data by the specified data row's values. + * @param rowIndex An integer value that specifies the row's position within the row collection. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(rowIndex: number, sortOrder: string): void; + /** + * Sorts data by the specified data row's values. + * @param rowFieldNameOrId A string value that specifies the row's field name or unique identifier (the row's Name property value). + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + */ + SortBy(rowFieldNameOrId: string, sortOrder: string): void; + /** + * Sorts data by the specified data row's values. + * @param row An ASPxClientVerticalGridRow object that represents the data row. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(row: ASPxClientVerticalGridRow, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data row's values. + * @param rowIndex An integer value that specifies the row's position within the row collection. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true, to clear any previous sorting; otherwise, false. + */ + SortBy(rowIndex: number, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data row's values. + * @param rowFieldNameOrId A string value that specifies the row's field name or unique identifier (the row's Name property value). + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(rowFieldNameOrId: string, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data row's values, and places the row to the specified position among the sorted rows. + * @param row An ASPxClientGridViewColumn object that represents the data column. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based row's index among the sorted rows. -1 if data is not sorted by this row. + */ + SortBy(row: ASPxClientVerticalGridRow, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data row's values, and places the row to the specified position among the sorted rows. + * @param rowIndex An integer value that specifies the row's position within the row collection. + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex + */ + SortBy(rowIndex: number, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Sorts data by the specified data row's values, and places the row to the specified position among the sorted rows. + * @param rowFieldNameOrId A string value that specifies the column's field name or unique identifier (the column's Name property value). + * @param sortOrder A string value that specifies the row's sort order ('ASC', 'DSC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + * @param sortIndex An integer value that specifies the zero-based row's index among the sorted rows. -1 if data is not sorted by this row. + */ + SortBy(rowFieldNameOrId: string, sortOrder: string, reset: boolean, sortIndex: number): void; + /** + * Returns the key value of the specified data row (record in the vertical grid). + * @param visibleIndex An integer value that specifies the record's visible index. + */ + GetRecordKey(visibleIndex: number): string; + /** + * Adds a new record. + */ + AddNewRecord(): void; + /** + * Deletes the specified record. + * @param visibleIndex An integer value that identifies the record. + */ + DeleteRecord(visibleIndex: number): void; + /** + * Deletes a record with the specified key value. + * @param key An object that uniquely identifies the record. + */ + DeleteRecordByKey(key: Object): void; + /** + * Selects all the unselected records within the grid. + */ + SelectRecords(): void; + /** + * Selects the specified record displayed within the grid. + * @param visibleIndex A zero-based integer value that specifies the record's visible index. + */ + SelectRecords(visibleIndex: number): void; + /** + * Selects the specified rercords within the grid. + * @param visibleIndices An array of zero-based indices that identify records within the grid. + */ + SelectRecords(visibleIndices: number[]): void; + /** + * Selects or deselects the specified records within the grid. + * @param visibleIndices An array of zero-based indices that identify records within the grid. + * @param selected true to select the specified records; false to deselect the records. + */ + SelectRecords(visibleIndices: number[], selected: boolean): void; + /** + * Selects or deselects the specified record within the grid. + * @param visibleIndex An integer zero-based index that identifies the record within the grid. + * @param selected true to select the specified record; false to deselect the record. + */ + SelectRecords(visibleIndex: number, selected?: boolean): void; + /** + * Selects or deselects the specified records displayed within the grid. + * @param keys An array of objects that uniquely identify the records. + * @param selected true to select the specified records; false to deselect the records. + */ + SelectRecordsByKey(keys: Object[], selected?: boolean): void; + /** + * Selects or deselects the specified record displayed within the grid. + * @param key An object that uniquely identifies the record. + * @param selected true to select the specified record; false to deselect the record. + */ + SelectRecordsByKey(key: Object, selected?: boolean): void; + /** + * Selects the specified records displayed within the grid. + * @param keys An array of objects that uniquely identify the records. + */ + SelectRecordsByKey(keys: Object[]): void; + /** + * Selects a grid record by its key. + * @param key An object that uniquely identifies the record. + */ + SelectRecordsByKey(key: Object): void; + /** + * Deselects all the selected records within the grid. + */ + UnselectRecords(): void; + /** + * Deselects the specified records (if selected) within the grid. + * @param visibleIndices An array of zero-based indices that identify records within the grid. + */ + UnselectRecords(visibleIndices: number[]): void; + /** + * Deselects the specified record (if selected) within the grid. + * @param visibleIndex A zero-based integer value that specifies the record's visible index. + */ + UnselectRecords(visibleIndex: number): void; + /** + * Deselects the specified records displayed within the grid. + * @param keys An array of objects that uniquely identify the records. + */ + UnselectRecordsByKey(keys: Object[]): void; + /** + * Deselects the specified record displayed within the grid. + * @param key An object that uniquely identifies the record. + */ + UnselectRecordsByKey(key: Object): void; + /** + * Deselects all grid records that match the filter criteria currently applied to the grid. + */ + UnselectFilteredRecords(): void; + /** + * Selects the specified record displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the record's visible index. + */ + SelectRecordOnPage(visibleIndex: number): void; + /** + * Selects or deselects the specified record displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the record's visible index. + * @param selected true to select the specified record; false to deselect the record. + */ + SelectRecordOnPage(visibleIndex: number, selected?: boolean): void; + /** + * Deselects the specified record (if selected) displayed on the current page. + * @param visibleIndex A zero-based integer value that specifies the record's visible index. + */ + UnselectRecordOnPage(visibleIndex: number): void; + /** + * Selects all unselected records displayed on the current page. + */ + SelectAllRecordsOnPage(): void; + /** + * Allows you to select or deselect all records displayed on the current page based on the parameter passed. + * @param selected true to select all unselected records displayed on the current page; false to deselect all selected records on the page. + */ + SelectAllRecordsOnPage(selected: boolean): void; + /** + * Deselects all selected records displayed on the current page. + */ + UnselectAllRecordsOnPage(): void; + /** + * Returns the number of selected records. + */ + GetSelectedRecordCount(): number; + /** + * Indicates whether or not the specified record is selected within the current page. + * @param visibleIndex An integer value that identifies the record by its visible index. + */ + IsRecordSelectedOnPage(visibleIndex: number): boolean; + /** + * Returns the values of the specified data source fields within the specified record. + * @param visibleIndex An integer value that identifies the record. + * @param fieldNames The names of data source fields separated using a semicolon, whose values within the specified record are returned. + * @param onCallback An ASPxClientVerticalGridValuesCallback object that represents the JavaScript function which receives the list of record values as a parameter. + */ + GetRecordValues(visibleIndex: number, fieldNames: string, onCallback: ASPxClientVerticalGridValuesCallback): void; + /** + * Returns the record values displayed within the current page. + * @param fieldNames The names of data source fields whose values are returned. + * @param onCallback A ASPxClientVerticalGridValuesCallback object that represents the JavaScript function which receives the list of record values as a parameter. + */ + GetPageRecordValues(fieldNames: string, onCallback: ASPxClientVerticalGridValuesCallback): void; + /** + * Returns the number of records actually displayed within the active page. + */ + GetVisibleRecordsOnPage(): number; + /** + * Returns the number of rows within the client vertical grid. + */ + GetRowCount(): number; + /** + * Applies the specified search panel filter criterion to grid data. + * @param value A string value that specifies the filter criterion. + */ + ApplySearchPanelFilter(value: string): void; + /** + * Applies the specified filter expression to the ASPxVerticalGrid. + * @param filterExpression A string value that specifies the filter expression. + */ + ApplyFilter(filterExpression: string): void; + /** + * Clears the filter expression applied to a client vertical grid. + */ + ClearFilter(): void; + /** + * Sets input focus to the grid. + */ + Focus(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Selects the specified page. + * @param pageIndex An integer value that specifies the active page's index. + */ + GotoPage(pageIndex: number): void; + /** + * Gets the index of the page currently being selected. + */ + GetPageIndex(): number; + /** + * Gets the number of pages to which the grid's data is divided. + */ + GetPageCount(): number; + /** + * Activates the next page. + */ + NextPage(): void; + /** + * Activates the previous page. + */ + PrevPage(): void; + /** + * Returns the index of the first record displayed within the vertical grid's active page. + */ + GetTopVisibleIndex(): number; + /** + * Saves all the changes made and switches the grid to browse mode. + */ + UpdateEdit(): void; + /** + * Cancels all the changes made and switches the ASPxVerticalGrid to browse mode. + */ + CancelEdit(): void; + /** + * Updates data displayed within the grid. + */ + Refresh(): void; + /** + * Returns the record values displayed within all selected records. + * @param fieldNames The names of data source fields separated by a semicolon, whose values within the selected records are returned. + * @param onCallback A ASPxClientVerticalGridValuesCallback object that represents the JavaScript function which receives the list of record values as a parameter. + */ + GetSelectedFieldValues(fieldNames: string, onCallback: ASPxClientVerticalGridValuesCallback): void; + /** + * Returns key values of selected records displayed within the current page. + */ + GetSelectedKeysOnPage(): Object[]; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientVerticalGridValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientVerticalGridValuesCallback): void; + /** + * Returns the editor used to edit the specified row's values. + * @param row An ASPxClientVerticalGridRowobject that specifies the required row within the client grid. + */ + GetEditor(row: ASPxClientVerticalGridRow): ASPxClientEdit; + /** + * Returns the editor used to edit the specified row's values. + * @param rowIndex An integer value that specifies the row's position within the rows collection. + */ + GetEditor(rowIndex: number): ASPxClientEdit; + /** + * Returns the editor used to edit the specified row's values. + * @param rowFieldNameOrId A string value that specifies the row's field name or unique identifier (the row's Name property value). + */ + GetEditor(rowFieldNameOrId: string): ASPxClientEdit; + /** + * Displays the Filter Control. + */ + ShowFilterControl(): void; + /** + * Hides the Filter Control. + */ + CloseFilterControl(): void; + /** + * Enables or disables the current filter. + * @param isFilterEnabled true to enable the current filter; otherwise, false. + */ + SetFilterEnabled(isFilterEnabled: boolean): void; + /** + * Returns the client row that resides at the specified position within the row collection. + * @param rowIndex A zero-based index that identifies the row within the row collection (the row's Index property value). + */ + GetRow(rowIndex: number): ASPxClientVerticalGridRow; + /** + * Returns the row with the specified unique identifier. + * @param rowId A string value that specifies the row's unique identifier (the row's Name property value). + */ + GetRowById(rowId: string): ASPxClientVerticalGridRow; + /** + * Returns the client row which is bound to the specified data source field. + * @param rowFieldName A string value that specifies the name of the data source field to which the row is bound (the row's fieldName property value). + */ + GetRowByField(rowFieldName: string): ASPxClientVerticalGridRow; + /** + * Returns the current vertical scroll position of the grid's content. + */ + GetVerticalScrollPosition(): number; + /** + * Returns the current horizontal scroll position of the grid's content. + */ + GetHorizontalScrollPosition(): number; + /** + * Specifies the vertical scroll position for the grid's content. + * @param position An integer value specifying the vertical scroll position. + */ + SetVerticalScrollPosition(position: number): void; + /** + * Specifies the horizontal scroll position for the grid's content. + * @param position An integer value specifying the horizontal scroll position. + */ + SetHorizontalScrollPosition(position: number): void; + /** + * Gets the value that specifies whether the required row is expanded. + * @param row An ASPxClientVerticalGridRowobject that specifies the row. + */ + GetRowExpanded(row: ASPxClientVerticalGridRow): boolean; + /** + * Gets the value that specifies whether the row with the specified index is expanded. + * @param rowIndex An integer value specifying the row's index. + */ + GetRowExpanded(rowIndex: number): boolean; + /** + * Gets the value that specifies whether the row with the specified field name or ID is expanded. + * @param rowFieldNameOrId A string value specifying the row's field name or ID. + */ + GetRowExpanded(rowFieldNameOrId: string): boolean; + /** + * Sets a value indicating whether the row is expanded. + * @param row An ASPxClientVerticalGridRowobject that specifies the required row within the client grid. + * @param value true, to expand the row; otherwise, false. + */ + SetRowExpanded(row: ASPxClientVerticalGridRow, value: boolean): void; + /** + * Sets a value indicating whether the row is expanded. + * @param rowIndex An integer value specifying the index of the row. + * @param value true, to expand the row; otherwise, false. + */ + SetRowExpanded(rowIndex: number, value: boolean): void; + /** + * Sets a value indicating whether the row is expanded. + * @param rowFieldNameOrId A string value that specifies the row's field name or unique identifier (the row's Name property value). + * @param value true, to expand the row; otherwise, false. + */ + SetRowExpanded(rowFieldNameOrId: string, value: boolean): void; +} +/** + * A client grid row. + */ +interface ASPxClientVerticalGridRow extends ASPxClientGridColumnBase { + /** + * Gets the name that uniquely identifies the row. + * Value: A string value assigned to the row's Name property. + */ + name: string; + /** + * Gets the row's position within the collection. + * Value: An integer zero-bazed index that specifies the row's position within the collection. + */ + index: number; + /** + * Gets the name of the database field assigned to the current row. + * Value: A string value that specifies the name of a data field. + */ + fieldName: string; + /** + * Gets whether the row is visible. + * Value: true, to display the row; otherwise, false. + */ + visible: boolean; +} +/** + * Represents a JavaScript function which receives the list of record values when the client GetSelectedFieldValues method is called. + */ +interface ASPxClientVerticalGridValuesCallback { + /** + * Represents a JavaScript function which receives the list of record values when the client GetSelectedFieldValues method is called. + * @param result An object that represents the list of record values received from the server. + */ + (result: Object): void; +} +/** + * A method that will handle the CustomButtonClick event. + */ +interface ASPxClientVerticalGridRowCancelEventHandler { + /** + * A method that will handle the cancelable events of a client ASPxVerticalGrid row. + * @param source The event source. + * @param e An ASPxClientVerticalGridRowCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridRowCancelEventArgs): void; +} +/** + * Provides data for the cancelable events of a client ASPxVerticalGrid row. + */ +interface ASPxClientVerticalGridRowCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed client row. + * Value: An ASPxClientVerticalGridRow object that represents the processed row. + */ + row: ASPxClientVerticalGridRow; +} +/** + * A method that will handle the RecordClick event. + */ +interface ASPxClientVerticalGridRecordClickEventHandler { + /** + * A method that will handle the RecordClick event. + * @param source The event source. This parameter identifies the ASPxClientVerticalGrid object that raised the event. + * @param e An ASPxClientVerticalGridRecordClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridRecordClickEventArgs): void; +} +/** + * Provides data for the RecordClick event. + */ +interface ASPxClientVerticalGridRecordClickEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed record's visible index. + * Value: An integer zero-based index that identifies the processed record. + */ + visibleIndex: number; + /** + * Provides access to the parameters associated with the RecordClick event. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; +} +/** + * A method that will handle the CustomButtonClick event. + */ +interface ASPxClientVerticalGridCustomButtonEventHandler { + /** + * A method that will handle the CustomButtonClick event. + * @param source The event source. This parameter identifies the ASPxClientVerticalGrid object that raised the event. + * @param e An ASPxClientVerticalGridCustomButtonEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridCustomButtonEventArgs): void; +} +/** + * Provides data for the CustomButtonClick event. + */ +interface ASPxClientVerticalGridCustomButtonEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the value which identifies the record whose custom button has been clicked. + * Value: An integer value that identifies the record whose custom button has been clicked. + */ + visibleIndex: number; + /** + * Gets the value which identifies the custom button. + * Value: A string value that identifies the clicked custom button. + */ + buttonID: string; +} +/** + * A method that will handle the SelectionChanged event. + */ +interface ASPxClientVerticalGridSelectionEventHandler { + /** + * A method that will handle the SelectionChanged event. + * @param source The event source. + * @param e An ASPxClientVerticalGridSelectionEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridSelectionEventArgs): void; +} +/** + * Provides data for the SelectionChanged event. + */ +interface ASPxClientVerticalGridSelectionEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the visible index of the record whose selected state has been changed. + * Value: An value that specifies the visible index of the record. + */ + visibleIndex: number; + /** + * Gets whether the record has been selected. + * Value: true, if the record has been selected; otherwise, false. + */ + isSelected: boolean; + /** + * Gets whether all records displayed within a page have been selected or unselected. + * Value: true if all records displayed within a page have been selected or unselected; otherwise, false. + */ + isAllRecordsOnPage: boolean; + /** + * Gets whether a selection has been changed on the server. + * Value: true if a selection has been changed on the server; otherwise, false. + */ + isChangedOnServer: boolean; +} +/** + * A method that will handle the RowExpandedChanged event. + */ +interface ASPxClientVerticalGridRowExpandedEventHandler { + /** + * A method that will handle the RowExpandedChanged event. + * @param source The event source. + * @param e An ASPxClientVerticalGridRowExpandedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridRowExpandedEventArgs): void; +} +/** + * Provides data for the RowExpandedChanged event. + */ +interface ASPxClientVerticalGridRowExpandedEventArgs extends ASPxClientEventArgs { + /** + * Gets the expanded row. + * Value: An ASPxClientVerticalGridRow object that represents the expanded row. + */ + row: ASPxClientVerticalGridRow; +} +/** + * A method that will handle the RowExpandedChanging event. + */ +interface ASPxClientVerticalGridRowExpandingEventHandler { + /** + * A method that will handle the RowExpandedChanging event. + * @param source The event source. + * @param e An ASPxClientVerticalGridRowExpandedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridRowExpandingEventArgs): void; +} +/** + * Provides data for the RowExpandedChanging event. + */ +interface ASPxClientVerticalGridRowExpandingEventArgs extends ASPxClientVerticalGridRowExpandedEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true, if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * Represents an object that will handle the client-side BatchEditStartEditing event. + */ +interface ASPxClientVerticalGridBatchEditStartEditingEventHandler { + /** + * A method that will handle the BatchEditStartEditing event. + * @param source The event source. + * @param e An ASPxClientVerticalGridBatchEditStartEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditStartEditingEventArgs): void; +} +/** + * Provides data for the BatchEditStartEditing event. + */ +interface ASPxClientVerticalGridBatchEditStartEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the record whose cells are about to be edited. + * Value: An value that specifies the visible index of the record. + */ + visibleIndex: number; + /** + * Gets the grid row that owns a cell that is about to be edited. + * Value: An object that is the focused grid row. + */ + focusedRow: ASPxClientVerticalGridRow; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: A hashtable that stores information about editable cells. + */ + recordValues: Object; +} +/** + * Represents an object that will handle the client-side BatchEditEndEditing event. + */ +interface ASPxClientVerticalGridBatchEditEndEditingEventHandler { + /** + * A method that will handle the BatchEditEndEditing event. + * @param source The event source. + * @param e An ASPxClientVerticalGridBatchEditEndEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditEndEditingEventArgs): void; +} +/** + * Provides data for the BatchEditEndEditing event. + */ +interface ASPxClientVerticalGridBatchEditEndEditingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the visible index of the record whose cells have been edited. + * Value: An value that specifies the visible index of the record. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about editable cells. + * Value: Gets a hashtable that maintains information about editable cells. + */ + recordValues: Object; +} +/** + * Represents an object that will handle the client-side BatchEditRecordValidating event. + */ +interface ASPxClientVerticalGridBatchEditRecordValidatingEventHandler { + /** + * A method that will handle the BatchEditRecordValidating event. + * @param source The event source. + * @param e An ASPxClientVerticalGridBatchEditRecordValidatingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditRecordValidatingEventArgs): void; +} +/** + * Provides data for the BatchEditRecordValidating event. + */ +interface ASPxClientVerticalGridBatchEditRecordValidatingEventArgs extends ASPxClientEventArgs { + /** + * Gets the processed record's visible index. + * Value: An integer value that specifies the processed record's visible index. + */ + visibleIndex: number; + /** + * Provides validation information on the record currently being validated. + * Value: An object that is a hashtable containing validation information. + */ + validationInfo: Object; +} +/** + * Represents an object that will handle the client-side BatchEditConfirmShowing event. + */ +interface ASPxClientVerticalGridBatchEditConfirmShowingEventHandler { + /** + * A method that will handle the BatchEditConfirmShowing client event. + * @param source The event source. + * @param e An ASPxClientVerticalGridBatchEditConfirmShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditConfirmShowingEventArgs): void; +} +/** + * Provides data for the BatchEditConfirmShowing event. + */ +interface ASPxClientVerticalGridBatchEditConfirmShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the client identifier of an object that initiates a send request. + * Value: A string value that specifies the object client identifier. + */ + requestTriggerID: string; +} +/** + * Represents an object that will handle the client-side BatchEditTemplateCellFocused event. + */ +interface ASPxClientVerticalGridBatchEditTemplateCellFocusedEventHandler { + /** + * A method that will handle the BatchEditTemplateCellFocused event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientVerticalGridBatchEditTemplateCellFocusedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditTemplateCellFocusedEventArgs): void; +} +/** + * Provides data for the BatchEditTemplateCellFocused event. + */ +interface ASPxClientVerticalGridBatchEditTemplateCellFocusedEventArgs extends ASPxClientEventArgs { + /** + * Gets the currently processed row. + * Value: A object that is the client-side row object. + */ + row: ASPxClientVerticalGridRow; + /** + * Gets or sets a value specifying whether the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * Represents an object that will handle the client-side BatchEditChangesSaving event. + */ +interface ASPxClientVerticalGridBatchEditChangesSavingEventHandler { + /** + * A method that will handle the BatchEditChangesSaving event. + * @param source The event source. This parameter identifies the vertical grid object which raised the event. + * @param e An ASPxClientVerticalGridBatchEditChangesSavingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditChangesSavingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesSaving event. + */ +interface ASPxClientVerticalGridBatchEditChangesSavingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * Represents an object that will handle the client-side BatchEditChangesCanceling event. + */ +interface ASPxClientVerticalGridBatchEditChangesCancelingEventHandler { + /** + * A method that will handle the BatchEditChangesCanceling event. + * @param source The event source. This parameter identifies the vertical grid object which raised the event. + * @param e An ASPxClientVerticalGridBatchEditChangesCancelingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditChangesCancelingEventArgs): void; +} +/** + * Provides data for the BatchEditChangesCanceling event. + */ +interface ASPxClientVerticalGridBatchEditChangesCancelingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets a hashtable that maintains information about inserted cells. + * Value: A hashtable that stores information about inserted cells. + */ + insertedValues: Object; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + deletedValues: Object; + /** + * Gets a hashtable that maintains information about updated cells. + * Value: A hashtable that stores information about updated cells. + */ + updatedValues: Object; +} +/** + * Represents an object that will handle the client-side BatchEditRecordInserting event. + */ +interface ASPxClientVerticalGridBatchEditRecordInsertingEventHandler { + /** + * A method that will handle the BatchEditRecordInserting event. + * @param source The event source. This parameter identifies the vertical grid object which raised the event. + * @param e An ASPxClientVerticalGridBatchEditRecordInsertingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditRecordInsertingEventArgs): void; +} +/** + * Provides data for the BatchEditRecordInserting event. + */ +interface ASPxClientVerticalGridBatchEditRecordInsertingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed record's visible index. + * Value: An integer value that specifies the processed record's visible index. + */ + visibleIndex: number; +} +/** + * Represents an object that will handle the client-side BatchEditRecordDeleting event. + */ +interface ASPxClientVerticalGridBatchEditRecordDeletingEventHandler { + /** + * A method that will handle the BatchEditRecordDeleting event. + * @param source The event source. This parameter identifies the vertical grid object which raised the event. + * @param e An ASPxClientVerticalGridBatchEditRecordDeletingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridBatchEditRecordDeletingEventArgs): void; +} +/** + * Provides data for the BatchEditRecordDeleting event. + */ +interface ASPxClientVerticalGridBatchEditRecordDeletingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed record's visible index. + * Value: An integer value that specifies the processed record's visible index. + */ + visibleIndex: number; + /** + * Gets a hashtable that maintains information about deleted cells. + * Value: A hashtable that stores information about deleted cells. + */ + recordValues: Object; +} +/** + * A method that will handle the FocusedCellChanging event. + */ +interface ASPxClientVerticalGridFocusedCellChangingEventHandler { + /** + * A method that will handle the FocusedCellChanging event. + * @param source The event source. + * @param e An ASPxClientVerticalGridFocusedCellChangingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientVerticalGridFocusedCellChangingEventArgs): void; +} +/** + * Provides data for the FocusedCellChanging event. + */ +interface ASPxClientVerticalGridFocusedCellChangingEventArgs extends ASPxClientCancelEventArgs { + /** + * Provides information on a cell currently being focused. + * Value: A ASPxClientVerticalGridCellInfo object that is the cell information. + */ + cellInfo: ASPxClientVerticalGridCellInfo; +} +/** + * Contains information on a cell that is being edited. + */ +interface ASPxClientVerticalGridCellInfo { + /** + * Gets the row that contains the cell currently being processed. + * Value: An object that is the row which contains the processed cell. + */ + row: ASPxClientVerticalGridRow; + /** + * Gets the visible index of the record that contains the cell currently being processed. + * Value: An value that specifies the visible index of the record. + */ + recordVisibleIndex: number; +} +/** + * Provides members related to Batch Edit Mode + */ +interface ASPxClientVerticalGridBatchEditApi { + /** + * Performs validation of grid data contained in all records when the grid operates in batch edit mode. + * @param validateOnlyModified true, if only modified records should be validated; otherwise, false. + */ + ValidateRecords(validateOnlyModified?: boolean): boolean; + /** + * Performs validation of grid data contained in the specified record when the grid operates in batch edit mode. + * @param visibleIndex An integer value specifying the visible index of the validated record. + */ + ValidateRecord(visibleIndex: number): boolean; + /** + * Returns an array of record visible indices. + * @param includeDeleted true, to include visible indices of deleted records to the returned array; otherwise, false. + */ + GetRecordVisibleIndices(includeDeleted: boolean): number[]; + /** + * Returns an array of the deleted record visible indices. + */ + GetDeletedRecordIndices(): number[]; + /** + * Returns an array of the inserted record visible indices. + */ + GetInsertedRecordIndices(): number[]; + /** + * Indicates if the record with the specified visible index is deleted. + * @param visibleIndex An integer value that identifies the record by its visible index. + */ + IsDeletedRecord(visibleIndex: number): boolean; + /** + * Indicates if the record with specified visible index is newly created. + * @param visibleIndex An integer value that identifies the record by its visible index. + */ + IsNewRecord(visibleIndex: number): boolean; + /** + * Programmatically moves the focus to the previous cell in the record. + */ + MoveFocusBackward(): boolean; + /** + * Programmatically moves the focus to the next cell in the record. + */ + MoveFocusForward(): boolean; + /** + * Sets a value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the record containing the processed cell. + * @param rowFieldNameOrId A string value that specifies the field name or unique identifier (the row's Name property value) of a row containing the processed cell. + * @param value An object that contains the new cell value. + */ + SetCellValue(visibleIndex: number, rowFieldNameOrId: string, value: Object): void; + /** + * Sets the value of the specified cell. + * @param visibleIndex An integer zero-based index that identifies the row containing the processed cell. + * @param rowFieldNameOrId A string value that specifies the field name or unique identifier (the column's Name property value) of a column containing the processed cell. + * @param value An object that contains the new cell value. + * @param displayText A string value that specifies the cell display text. + * @param cancelCellHighlighting true to cancel highlighting of the modified cell, false to highlight the modified cell. + */ + SetCellValue(visibleIndex: number, rowFieldNameOrId: string, value: Object, displayText: string, cancelCellHighlighting?: boolean): void; + /** + * Gets the value of the specified cell. + * @param visibleIndex A zero-based integer value that specifies a visible index of a record containing the processed cell. + * @param rowFieldNameOrId A string value that specifies the field name or unique identifier (the row's Name property value) of a row containing the processed cell. + * @param initial true, to return the initial (server) value; false, to return a value currently contained on the client side (modified value). + */ + GetCellValue(visibleIndex: number, rowFieldNameOrId: string, initial?: boolean): Object; + /** + * Gets a container holding the data cell content. + * @param visibleIndex An integer value that is the visible index. + * @param columnFieldNameOrId A string value that is the column's Field Name or ID. + */ + GetCellTextContainer(visibleIndex: number, columnFieldNameOrId: string): Object; + /** + * Gets information about the cell currently being edited. + */ + GetEditCellInfo(): ASPxClientVerticalGridCellInfo; + /** + * Returns a value that indicates whether the vertical grid has changed data. + */ + HasChanges(): boolean; + /** + * Returns a value that indicates whether the specified record has changed data. + * @param visibleIndex An integer value that specifies the visible index of a record. + */ + HasChanges(visibleIndex: number): boolean; + /** + * Returns a value that indicates whether the specified data cell's data has been changed. + * @param visibleIndex An integer value that specifies the visible index of a record. + * @param rowFieldNameOrId A string value that identifies the row by the name of the data source field to which the row is bound, or by the row's name. + */ + HasChanges(visibleIndex: number, rowFieldNameOrId: string): boolean; + /** + * Resets changes in the specified record. + * @param visibleIndex An integer value that specifies the visible index of a record. + */ + ResetChanges(visibleIndex: number): void; + /** + * Resets changes in the specified cell. + * @param visibleIndex An integer value that specifies the visible index of a record containing the processed cell. + * @param rowIndex A string value that specifies the field name or unique identifier (the row's Name property value) of a row containing the processed cell. + */ + ResetChanges(visibleIndex: number, rowIndex: number): void; + /** + * Switches the specified cell to batch edit mode. + * @param visibleIndex A zero-based integer value that specifies the visible index of a record containing the processed cell. + * @param rowIndex A zero-based integer value that identifies the row which contains the processed cell in the rows collection. + */ + StartEdit(visibleIndex: number, rowIndex: number): void; + /** + * Ends the cell(s) editing. + */ + EndEdit(): void; +} +/** + * Contains style settings related to media elements in ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorCommandStyleSettings { + /** + * Gets or sets a media element's CSS class name. + * Value: A string that specifies a class name. + */ + className: string; + /** + * Gets or sets an element's width. + * Value: A string that specifies an element's width in any correct format. + */ + width: string; + /** + * Gets or sets an element's height. + * Value: A string that specifies an element's height in any correct format. + */ + height: string; + /** + * Gets or sets a media element's border width. + * Value: A string that specifies a border width in any correct format. + */ + borderWidth: string; + /** + * Gets or sets a media element's border color. + * Value: A string that specifies a border color in any correct format. + */ + borderColor: string; + /** + * Gets or sets a media element's border style. + * Value: A string that specifies a border style in any correct format. + */ + borderStyle: string; + /** + * Gets or sets an element's top margin. + * Value: A string that specifies an element's top margin in any correct format. + */ + marginTop: string; + /** + * Gets or sets an element's right margin. + * Value: A string that specifies an element's right margin in any correct format. + */ + marginRight: string; + /** + * Gets or sets an element's bottom margin. + * Value: A string that specifies an element's bottom margin in any correct format. + */ + marginBottom: string; + /** + * Gets or sets an element's left margin. + * Value: A string that specifies an element's left margin in any correct format. + */ + marginLeft: string; + /** + * Gets or sets a media element's background color. + * Value: A string that specifies a background color in any correct format. + */ + backgroundColor: string; + /** + * Gets or sets the element's text alignment. + * Value: A string value that specifies the element's text alignment in any correct format. + */ + textAlign: string; + /** + * Gets or sets the element's vertical alignment. + * Value: A string value that specifies the element's vertical alignment in any correct format. + */ + verticalAlign: string; +} +/** + * The base class for parameters used in the ASPxHtmlEditor's client-side commands. + */ +interface ASPxClientHtmlEditorCommandArguments { + /** + * Gets the currently selected element in the ASPxHtmlEditor. + * Value: An HTML object which is the currently selected element. + */ + selectedElement: Object; +} +/** + * Contains settings related to the INSERTIMAGE_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertImageCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Specifies the source of the target image. + * Value: A string specifying the source of the target image. + */ + src: string; + /** + * Creates an alternate text for the target image. + * Value: A string that specifies an alternate text for the target image. + */ + alt: string; + /** + * Determines if the target image is wrapped with text. + * Value: true, if the target image is wrapped with text; otherwise, false. + */ + useFloat: boolean; + /** + * Determines the position of the target image. + * Value: A string value defining the position of the target image. + */ + align: string; + /** + * Contains the style settings specifying the appearance of the target image. + * Value: An object that contains the style settings specifying the appearance of the target image. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; +} +/** + * Contains settings related to the CHANGEIMAGE_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorChangeImageCommandArguments extends ASPxClientHtmlEditorInsertImageCommandArguments { +} +/** + * Contains settings related to the INSERTLINK_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertLinkCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Specifies the url of the page the target link goes to. + * Value: A string value specifying the target link url. + */ + url: string; + /** + * Specifiies the text of the target link. + * Value: A string value specifying the text of the target link. + */ + text: string; + /** + * Determines where to open the target link. + * Value: A string that specifies where to open the target link in any correct format. + */ + target: string; + /** + * Defines the title of the target link. + * Value: A string value defining the title of the target link. + */ + title: string; + /** + * Contains the style settings defining the appearance of the target link element. + * Value: An object that contains the style settings defining the appearance of the target link element. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; +} +/** + * The base class for parameters related to inserting or changing media elements in the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorChangeMediaElementCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Defines the HTML "id" attribute of the target media element. + * Value: A string value which is a unique identifier for the element. + */ + id: string; + /** + * Defines the source of the target media element. + * Value: A string defining the source of the target media element. + */ + src: string; + /** + * Determines the position of the target media element. + * Value: A string value indicating the position of the target media element. + */ + align: string; + /** + * Contains the style settings defining the appearance of the target media element. + * Value: An object that contains the style settings defining the appearance of the target media element. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; + /** + * Returns the name of the client-side command corresponding to the parameter. + */ + GetCommandName(): string; +} +/** + * The base class for parameters related to inserting or changing HTML5 media elements (Audio and Video) in the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorChangeHtml5MediaElementCommandArguments extends ASPxClientHtmlEditorChangeMediaElementCommandArguments { + /** + * Determines if a media file will start playing automatically. + * Value: true, if autoplay is enabled; otherwise, false. + */ + autoPlay: boolean; + /** + * Determines if a media file repeats indefinitely, or stops when it reaches the last frame. + * Value: true, to loop playback; otherwise, false. + */ + loop: boolean; + /** + * Determines if the media player controls should be displayed. + * Value: true, if media player controls are displayed; otherwise, false. + */ + showPlayerControls: boolean; + /** + * Determines how a media file should be loaded when the page loads. + * Value: One of the ASPxClientHtmlEditorMediaPreloadMode enumeration values. + */ + preloadMode: string; +} +/** + * Contains settings related to the INSERTAUDIO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertAudioCommandArguments extends ASPxClientHtmlEditorChangeHtml5MediaElementCommandArguments { +} +/** + * Contains settings related to the CHANGEAUDIO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorChangeAudioCommandArguments extends ASPxClientHtmlEditorInsertAudioCommandArguments { +} +/** + * Contains settings related to the INSERTVIDEO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertVideoCommandArguments extends ASPxClientHtmlEditorChangeHtml5MediaElementCommandArguments { + /** + * Defines the URL of an image that is shown while the video file is downloading, or until an end-user clicks the play button. + * Value: A string value that specifies the poster image URL. + */ + posterUrl: string; +} +/** + * Contains settings related to the CHANGEVIDEO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorChangeVideoCommandArguments extends ASPxClientHtmlEditorInsertVideoCommandArguments { +} +/** + * Contains settings related to the INSERTFLASH_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertFlashCommandArguments extends ASPxClientHtmlEditorChangeMediaElementCommandArguments { + /** + * Determines if the target flash element will start playing automatically. + * Value: true, if autoplay is enabled; otherwise, false. + */ + autoPlay: boolean; + /** + * Defines if the target flash element repeats indefinitely, or stops when it reaches the last frame. + * Value: true, to loop playback; otherwise, false. + */ + loop: boolean; + /** + * Determines if the flash related items are displayed in the context menu of the target flash element. + * Value: true, if the specific context menu items are displayed; otherwise, false + */ + enableFlashMenu: boolean; + /** + * Determines if the target flash element can be displayed in the fullscreen mode. + * Value: true, if the fullscreen mode is allowed; otherwise, false. + */ + allowFullscreen: boolean; + /** + * Defines the rendering quality level used for the target flash element. + * Value: A string value that specifies the target flash element rendering quality. + */ + quality: string; +} +/** + * Contains settings related to the CHANGEFLASH_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorChangeFlashCommandArguments extends ASPxClientHtmlEditorInsertFlashCommandArguments { +} +/** + * Contains settings related to the INSERTYOUTUBEVIDEO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertYouTubeVideoCommandArguments extends ASPxClientHtmlEditorChangeMediaElementCommandArguments { + /** + * Determines if suggested videos are shown after the target YouTube video finishes. + * Value: true, to show suggested videos; otherwise, false + */ + showRelatedVideos: boolean; + /** + * Determines if the target YouTube video title and player actions (Watch later, Share) are shown. + * Value: true, to display the title and player actions; otherwise, false. + */ + showVideoInfo: boolean; + /** + * Determines if the privacy-enhanced mode is enabled for the target YouTube video. + * Value: true, if the privace-enhanced mode is enabled; otherwise, false + */ + enablePrivacyEnhancedMode: boolean; + /** + * Determines if the player controls are displayed for the target YouTube video. + * Value: true, if the player controls are displayed; otherwise, false. + */ + showPlayerControls: boolean; +} +/** + * Contains settings related to the CHANGEYOUTUBEVIDEO_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorChangeYouTubeVideoCommandArguments extends ASPxClientHtmlEditorInsertYouTubeVideoCommandArguments { +} +/** + * Contains settings related to the TABLEPROPERTIES_DIALOG_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorTablePropertiesCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Contains the style settings defining the appearance of the target table element. + * Value: An object that contains the style settings defining the appearance of the target table element. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; + /** + * Determines the position of the target table element. + * Value: A string value indicating the position of the target table element. + */ + align: string; + /** + * Gets or sets a table cell padding. + * Value: An integer value that is the cell padding. + */ + cellPadding: number; + /** + * Gets or sets the table cell spacing. + * Value: An integer value that is the table cell spacing. + */ + cellSpacing: number; + /** + * Gets or sets a value that is the table caption. + * Value: A string value that is the caption. + */ + caption: string; + /** + * Gets or sets a value indicating whether the first row/column serves as the table's header. + * Value: A string value that specifies whether the first row/column serves as the table's header. + */ + headers: string; + /** + * Gets or sets the table's summary. + * Value: A string value that is the table's summary. + */ + summary: string; +} +/** + * Contains settings related to the INSERTTABLE_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorInsertTableCommandArguments extends ASPxClientHtmlEditorTablePropertiesCommandArguments { + /** + * Gets or sets the count of columns in the table. + * Value: An integer value that is the count of columns. + */ + columns: number; + /** + * Gets or sets the count of rows in the table. + * Value: An integer value that is the count of rows. + */ + rows: number; + /** + * Gets or sets a value indicating whether all table columns should have equal width. + * Value: true, to create equal widths for all columns; otherwise, false. + */ + isEqualColumnWidth: boolean; +} +/** + * Contains settings related to the TABLECELLPROPERTIES_DIALOG_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorTableCellPropertiesCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Contains the style settings defining the appearance of the target cell element. + * Value: An object that contains the style settings defining the appearance of the target cell element. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; + /** + * Gets or sets a value that indicates whether the cell settings should be applied to all cells in the table. + * Value: true, if the cell settings should be applied to all cells in the table; otherwise, false. + */ + applyForAll: boolean; +} +/** + * Contains settings related to the TABLEROWPROPERTIES_DIALOG_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorTableRowPropertiesCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Contains the style settings specifying the appearance of the specified table row. + * Value: An object that contains the style settings specifying the appearance of the specified table row. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; +} +/** + * Contains settings related to the TABLECOLUMNPROPERTIES_DIALOG_COMMAND command parameter. + */ +interface ASPxClientHtmlEditorTableColumnPropertiesCommandArguments extends ASPxClientHtmlEditorCommandArguments { + /** + * Contains the style settings defining the appearance of the target column element. + * Value: An object that contains the style settings defining the appearance of the target column element. + */ + styleSettings: ASPxClientHtmlEditorCommandStyleSettings; +} +/** + * A method that will handle the DialogInitialized client event. + */ +interface ASPxClientHtmlEditorDialogInitializedEventHandler { + /** + * A method that will handle the client DialogInitialized event. + * @param source An object representing the event's source. + * @param e An ASPxClientHtmlEditorDialogInitializedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorDialogInitializedEventArgs): void; +} +/** + * Provides data for the DialogInitialized client event. + */ +interface ASPxClientHtmlEditorDialogInitializedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the dialog that has been initialized. + * Value: A string value that is the name of the initialized dialog. + */ + dialogName: string; + /** + * Gets a dialog object related to the event. + * Value: A ASPxClientHtmlEditorDialogBase object that is the dialog. + */ + dialog: ASPxClientHtmlEditorDialogBase; +} +/** + * Provides data for the event that fires when the HTML Editor dialogs are closed or are going to be closed. + */ +interface ASPxClientHtmlEditorDialogCloseEventArgs extends ASPxClientEventArgs { + /** + * Gets the dialog name related to the event. + * Value: A string value that is the dialog name. + */ + dialogName: string; + /** + * Gets the dialog object related to the event. + * Value: An ASPxClientHtmlEditorDialogBase object that is the dialog. + */ + dialog: ASPxClientHtmlEditorDialogBase; + /** + * Gets a string that contains specific information (if any) passed from the client side for server-side processing. + * Value: A string value representing specific information passed from the client to the server side. + */ + parameter: Object; +} +/** + * A method that will handle the DialogClosing event. + */ +interface ASPxClientHtmlEditorDialogClosingEventHandler { + /** + * A method that will handle the DialogClosing event. + * @param source The event source. + * @param e An ASPxClientHtmlEditorDialogClosingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorDialogClosingEventArgs): void; +} +/** + * Provides data for the DialogClosing event. + */ +interface ASPxClientHtmlEditorDialogClosingEventArgs extends ASPxClientHtmlEditorDialogCloseEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true, if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the DialogClosed event. + */ +interface ASPxClientHtmlEditorDialogClosedEventHandler { + /** + * A method that will handle the DialogClosed event. + * @param source The event source. + * @param e An ASPxClientHtmlEditorDialogClosedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorDialogClosedEventArgs): void; +} +/** + * Provides data for the DialogClosed event. + */ +interface ASPxClientHtmlEditorDialogClosedEventArgs extends ASPxClientHtmlEditorDialogCloseEventArgs { +} +/** + * A method that will handle the CommandExecuting event. + */ +interface ASPxClientHtmlEditorCommandExecutingEventHandler { + /** + * A method that will handle the client CommandExecuted event. + * @param source The event's source. + * @param e An ASPxClientHtmlEditorCommandExecutingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorCommandExecutingEventArgs): void; +} +/** + * Provides data for the CommandExecuting event. + */ +interface ASPxClientHtmlEditorCommandExecutingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value specifying the processed command's name. + */ + commandName: string; + /** + * Gets an optional parameter that complements the processed command. + * Value: An object containing additional information about the processed command. + */ + parameter: Object; +} +/** + * A method that will handle the client events related to command processing. + */ +interface ASPxClientHtmlEditorCommandEventHandler { + /** + * A method that will handle the corresponding client event. + * @param source The event source. This parameter identifies the editor which raised the event. + * @param e An ASPxClientHtmlEditorCommandEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorCommandEventArgs): void; +} +/** + * Provides data for client events that relate to command processing (CustomCommand). + */ +interface ASPxClientHtmlEditorCommandEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value representing the processed command's name. + */ + commandName: string; + /** + * Gets an optional parameter that complements the processed command. + * Value: A string value containing additional information about the processed command. + */ + parameter: Object; +} +/** + * A method that will handle the client events that relate to custom dialog operations. + */ +interface ASPxClientHtmlEditorCustomDialogEventHandler { + /** + * A method that will handle the client CustomDialogOpened event. + * @param source An object representing the event's source. + * @param e An ASPxClientHtmlEditorCustomDialogEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorCustomDialogEventArgs): void; +} +/** + * Provides data for client events that relate to custom dialog operations. + */ +interface ASPxClientHtmlEditorCustomDialogEventArgs extends ASPxClientEventArgs { + /** + * Gets the name that uniquely identifies the processed custom dialog. + * Value: A string value that represents the value assigned to the processed custom dialog's Name property. + */ + name: string; +} +/** + * Provides data for client events that relate to closing a custom dialog. + */ +interface ASPxClientHtmlEditorCustomDialogCloseEventArgsBase extends ASPxClientHtmlEditorCustomDialogEventArgs { + /** + * Gets the status of the closed custom dialog. + * Value: An object representing a custom dialog's closing status. By default, it's the "cancel" string if the dialog operation is canceled, or the "ok" string if a dialog is closed by submitting a file. You can also provide your custom status, if your dialog contains additional buttons. + */ + status: Object; +} +/** + * A method that will handle the CustomDialogClosing client event. + */ +interface ASPxClientHtmlEditorCustomDialogClosingEventHandler { + /** + * A method that will handle the client CustomDialogClosing event. + * @param source An object representing the event's source. + * @param e An ASPxClientHtmlEditorCustomDialogClosingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorCustomDialogClosingEventArgs): void; +} +/** + * Provides data for the CustomDialogClosing client event. + */ +interface ASPxClientHtmlEditorCustomDialogClosingEventArgs extends ASPxClientHtmlEditorCustomDialogCloseEventArgsBase { + /** + * Gets or sets a value specifying whether the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * A method that will handle the CustomDialogClosed client event. + */ +interface ASPxClientHtmlEditorCustomDialogClosedEventHandler { + /** + * A method that will handle the client CustomDialogClosed event. + * @param source An object representing the event's source. + * @param e An ASPxClientHtmlEditorCustomDialogClosedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorCustomDialogClosedEventArgs): void; +} +/** + * Provides data for the CustomDialogClosed client event. + */ +interface ASPxClientHtmlEditorCustomDialogClosedEventArgs extends ASPxClientHtmlEditorCustomDialogCloseEventArgsBase { + /** + * Gets an object associated with the closed dialog. + * Value: An object containing custom data associated with dialog closing. + */ + data: Object; +} +/** + * A method that will handle the Validation client event. + */ +interface ASPxClientHtmlEditorValidationEventHandler { + /** + * A method that will handle the client Validation event. + * @param source An object representing the event's source. + * @param e An ASPxClientHtmlEditorValidationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorValidationEventArgs): void; +} +/** + * Provides data for the Validation client event. + */ +interface ASPxClientHtmlEditorValidationEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets the HTML markup that is the ASPxHtmlEditor's content. + * Value: A string value that specifies the HTML content to validate. + */ + html: string; + /** + * Gets or sets a value specifying whether the validated value is valid. + * Value: true if the validation has been completed successfully; otherwise, false. + */ + isValid: boolean; + /** + * Gets or sets the error text to be displayed within the editor's error frame if the editor's validation fails. + * Value: A string value specifying the error description. + */ + errorText: string; +} +/** + * A method that will handle the ActiveTabChanged event. + */ +interface ASPxClientHtmlEditorTabEventHandler { + /** + * A method that will handle the client ActiveTabChanged event. + * @param source The event's source. + * @param e An ASPxClientHtmlEditorTabEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorTabEventArgs): void; +} +/** + * Provides data for the ActiveTabChanged event that concerns manipulations on tabs. + */ +interface ASPxClientHtmlEditorTabEventArgs extends ASPxClientEventArgs { + /** + * Gets the name that uniquely identifies an editor tab. + * Value: A string value that is the tab name. + */ + name: string; +} +/** + * A method that will handle the ActiveTabChanging event. + */ +interface ASPxClientHtmlEditorTabCancelEventHandler { + /** + * A method that will handle the client ActiveTabChanging event. + * @param source The event's source. + * @param e An ASPxClientHtmlEditorTabCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorTabCancelEventArgs): void; +} +/** + * Provides data for the cancellable ActiveTabChanging event that concerns manipulations on tabs. + */ +interface ASPxClientHtmlEditorTabCancelEventArgs extends ASPxClientHtmlEditorTabEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event, should be canceled. + * Value: true, if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the BeforePaste event. + */ +interface ASPxClientHtmlEditorBeforePasteEventHandler { + /** + * A method that will handle the BeforePaste event. + * @param source The event source. This parameter identifies the HTML editor object that raised the event. + * @param e An ASPxClientHtmlEditorBeforePasteEventArgs object that contains event data. + */ + (source: S, e: ASPxClientHtmlEditorBeforePasteEventArgs): void; +} +/** + * Provides data for the BeforePaste event. + */ +interface ASPxClientHtmlEditorBeforePasteEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value identifying the command's name. + */ + commandName: string; + /** + * Gets or sets the HTML markup that is about to be pasted to the ASPxHtmlEditor's content. + * Value: A string value that specifies the HTML content to paste. + */ + html: string; +} +/** + * Represents a client-side equivalent of the ASPxHtmlEditor control. + */ +interface ASPxClientHtmlEditor extends ASPxClientControl { + /** + * Occurs on the client side after a dialog has been initialized. + */ + DialogInitialized: ASPxClientEvent>; + /** + * Fires on the client side before a dialog is going to be closed. + */ + DialogClosing: ASPxClientEvent>; + /** + * Occurs on the client side after a dialog is closed. + */ + DialogClosed: ASPxClientEvent>; + /** + * Occurs before a default or custom command has been executed and allows you to cancel the action. + */ + CommandExecuting: ASPxClientEvent>; + /** + * Enables you to implement a custom command's logic. + */ + CustomCommand: ASPxClientEvent>; + /** + * Occurs after a default or custom command has been executed on the client side. + */ + CommandExecuted: ASPxClientEvent>; + /** + * Fires on the client side when the editor's Design View Area receives input focus. + */ + GotFocus: ASPxClientEvent>; + /** + * Fires on the client side when the editor's Design View Area loses input focus. + */ + LostFocus: ASPxClientEvent>; + /** + * Occurs on the client when a selection is changed within the ASPxHtmlEditor. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the content of the editor changes. + */ + HtmlChanged: ASPxClientEvent>; + /** + * Occurs on the client side after a custom dialog is opened. + */ + CustomDialogOpened: ASPxClientEvent>; + /** + * Fires on the client side before a custom dialog is closed. + */ + CustomDialogClosing: ASPxClientEvent>; + /** + * Occurs on the client side after a custom dialog is closed. + */ + CustomDialogClosed: ASPxClientEvent>; + /** + * Allows you to specify whether the value entered into the ASPxHtmlEditor is valid. + */ + Validation: ASPxClientEvent>; + /** + * Occurs on the client side before a context menu is shown. + */ + ContextMenuShowing: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientHtmlEditor. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires after a callback, sent by the CustomDataCallback event handler. + */ + CustomDataCallback: ASPxClientEvent>; + /** + * Occurs on the client side after the editor content is spell checked. + */ + SpellingChecked: ASPxClientEvent>; + /** + * Fires on the client side after the active tab has been changed within a control. + */ + ActiveTabChanged: ASPxClientEvent>; + /** + * Fires on the client side before the active tab is changed within a control. + */ + ActiveTabChanging: ASPxClientEvent>; + /** + * Occurs before an HTML code is pasted to editor content, and allows you to modify it. + */ + BeforePaste: ASPxClientEvent>; + /** + * Returns the document object generated by an iframe element within a design view area. + */ + GetDesignViewDocument(): Object; + /** + * Provides access to the client ASPxPopupControl object that is a Html Editor's dialog. + */ + GetDialogPopupControl(): ASPxClientPopupControl; + /** + * Returns the document object generated by an iframe element within a preview area. + */ + GetPreviewDocument(): Object; + /** + * Returns a collection of client context menu objects. + */ + GetContextMenu(): ASPxClientPopupMenu; + /** + * Returns a value indicating whether an editor is enabled. + */ + GetEnabled(): boolean; + /** + * Specifies whether an editor is enabled. + * @param value true to enable the editor; false to disable it. + */ + SetEnabled(value: boolean): void; + /** + * Sets input focus to the ASPxHtmlEditor's edit region. + */ + Focus(): void; + /** + * Gets the HTML markup that represents the editor's content. + */ + GetHtml(): string; + /** + * Specifies the HTML markup that represents the editor's content. + * @param html A string value that specifies the HTML markup. + */ + SetHtml(html: string): void; + /** + * Sets the HTML markup that represents the editor's content. + * @param html A string value that specifies the HTML markup. + * @param clearUndoHistory true to clear the undo stack; otherwise, false. + */ + SetHtml(html: string, clearUndoHistory: boolean): void; + /** + * Replaces placeholders with the specified values. + * @param html A string value that specifies the HTML code to process. + * @param placeholders An array of objects that specify the placeholders and values to replace them. + */ + ReplacePlaceholders(html: string, placeholders: Object[]): string; + /** + * Creates a parameter for ASPxHtmlEditor's client-side commands related to changing media elements. + * @param element An element that is being changed. + */ + CreateChangeMediaElementCommandArguments(element: Object): ASPxClientHtmlEditorChangeMediaElementCommandArguments; + /** + * Executes the specified command. + * @param commandName A string value that specifies the command to perform. + * @param parameter A string value specifying additional information about the command to perform. + * @param addToUndoHistory true, to add the specified command to the undo stack; otherwise, false. + */ + ExecuteCommand(commandName: string, parameter: Object, addToUndoHistory: boolean): boolean; + /** + * Adds the current editor state to the undo/redo history. + */ + SaveToUndoHistory(): void; + /** + * Returns the selection in the ASPxHtmlEditor. + */ + GetSelection(): ASPxClientHtmlEditorSelection; + /** + * Restores the selection within the ASPxHtmlEditor. + */ + RestoreSelection(): boolean; + /** + * Sets the value of the combo box within the HtmlEditor on the client side. + * @param commandName A string value that identifies the combo box's command name within the HtmlEditor's control collection. + * @param value A string value that specifies the combo box's new value. + */ + SetToolbarComboBoxValue(commandName: string, value: string): void; + /** + * Sets the value of the dropdown item picker in the HtmlEditor on the client side. + * @param commandName A string value that identifies the dropdown item picker by its command name. This value is contained in the CommandName property. + * @param value A string value that specifies the dropdown item picker's new value, i.e., the ToolbarItemPickerItem object. + */ + SetToolbarDropDownItemPickerValue(commandName: string, value: string): void; + /** + * Specifies the visibility of a ribbon context tab category specified by its name. + * @param categoryName A Name property value of the required category. + * @param active true to make a category visible; false to make it hidden. + */ + SetRibbonContextTabCategoryVisible(categoryName: string, active: string): void; + /** + * Provides access to an object implementing the HtmlEditor's ribbon UI. + */ + GetRibbon(): ASPxClientRibbon; + /** + * Gets a value that indicates whether the editor's value passes validation. + */ + GetIsValid(): boolean; + /** + * Gets the error text to be displayed within the editor's error frame if the editor's validation fails. + */ + GetErrorText(): string; + /** + * Sets a value that specifies whether the editor's value passes validation. + * @param isValid true if the editor's value passes validation; otherwise, false. + */ + SetIsValid(isValid: boolean): void; + /** + * Sets the error text to be displayed within the editor's error frame if the editor's validation fails. + * @param errorText A string value representing the error text. + */ + SetErrorText(errorText: string): void; + /** + * Performs validation of the editor's content. + */ + Validate(): void; + /** + * Set an active tab specified by its name. + * @param name A string value that is the name of the tab. + */ + SetActiveTabByName(name: string): void; + /** + * Returns the name of the active HTML editor tab. + */ + GetActiveTabName(): string; + /** + * Reconnect the control to an external ribbon. + */ + ReconnectToExternalRibbon(): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientDataCallback object that represents the JavaScript function which receives the callback data as a parameter. + */ + PerformDataCallback(parameter: string, onCallback: ASPxClientDataCallback): void; +} +/** + * Provides client functionality for dialogs within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the client ASPxFormLayout object that arranges all editors in the Html Editor's dialogs. + */ + GetFormLayout(): ASPxClientFormLayout; + /** + * Provides access to the client object of the "OK" button in the Html Editor's dialogs. + */ + GetOkButton(): ASPxClientButton; + /** + * Provides access to the client object of the "Cancel" button in the Html Editor's dialogs. + */ + GetCancelButton(): ASPxClientButton; +} +/** + * Provides client functionality for Html Editor dialogs operated with its elements. + */ +interface ASPxClientHtmlEditorEditElementDialog extends ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the client object of the "Border style" combo box in the Html Editor's dialogs (Style Settings). + */ + GetBorderStyleComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Border width" spin editor in the Html Editor's dialogs (Style Settings). + */ + GetBorderWidthSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Border color" color editor in the Html Editor's dialogs (Style Settings). + */ + GetBorderColorColorEdit(): ASPxClientColorEdit; + /** + * Provides access to the client object of the "Top margin" text box in the Html Editor's dialogs (Style Settings). + */ + GetTopMarginTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Bottom margin" text box in the Html Editor's dialogs (Style Settings). + */ + GetBottomMarginTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Left margin" text box in the Html Editor's dialogs (Style Settings). + */ + GetLeftMarginTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Right margin" text box in the Html Editor's dialogs (Style Settings). + */ + GetRightMarginTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "CSS class" combo box in the Html Editor's dialogs (Style Settings). + */ + GetCssClassNameComboBox(): ASPxClientComboBox; +} +/** + * Provides client functionality for the Change Element Properties dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorChangeElementPropertiesDialog extends ASPxClientHtmlEditorEditElementDialog { + /** + * Provides access to the client object of the "ID" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetIdTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Title" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetTitleTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Direction" combo box in the Html Editor's "Change Element Properties" dialog. + */ + GetDirectionComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Value" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetValueTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Tab index" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetTabIndexTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Disabled" check box in the Html Editor's "Change Element Properties" dialog. + */ + GetDisabledCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Input type" combo box in the Html Editor's "Change Element Properties" dialog. + */ + GetInputTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "For" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetForTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Name" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetNameTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Method" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetMethodTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Action" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetActionTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Checked" check box in the Html Editor's "Change Element Properties" dialog. + */ + GetCheckedCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Max length" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetMaxLengthTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Size" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetSizeTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Readonly" check box in the Html Editor's "Change Element Properties" dialog. + */ + GetReadonlyCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Src" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetSrcTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Accept" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetAcceptTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Alt" text box in the Html Editor's "Change Element Properties" dialog. + */ + GetAltTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Start" spin editor in the Html Editor's "Change Element Properties" dialog. + */ + GetStartSpinEdit(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Width" spin editor in the Html Editor's "Change Element Properties" dialog. + */ + GetWidthValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client ASPxComboBox object that allows you to specify the element width measurement unit in the Html Editor's "Change Element Properties" dialog. + */ + GetWidthValueTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Height" spin editor in the Html Editor's "Change Element Properties" dialog. + */ + GetHeightValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client ASPxComboBox object that allows to specify the element height measurement unit in the Html Editor's "Change Element Properties" dialog. + */ + GetHeightValueTypeComboBox(): ASPxClientComboBox; +} +/** + * Provides client functionality for the Link dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorLinkDialog extends ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the client object of the "E-mail to" text box in the Html Editor's Link dialog. + */ + GetEmailTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Text" text box in the Html Editor's Link dialog. + */ + GetTextTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "ToolTip" text box in the Html Editor's Link dialog. + */ + GetTooltipTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Subject" text box in the Html Editor's Link dialog. + */ + GetSubjectTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "URL" text box in the Html Editor's Link dialog. + */ + GetUrlTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the file manager used in the Link dialog's "Select Document" popup window. + */ + GetFileManager(): ASPxClientFileManager; + /** + * Provides access to the client object of the "Cancel" button in the Link dialog's "Select Document" popup window. + */ + GetSelectDocumentPopupCancelButton(): ASPxClientButton; + /** + * Provides access to the client object of the "Select" button in the Link dialog's "Select Document" popup window. + */ + GetSelectDocumentPopupSelectButton(): ASPxClientButton; + /** + * Provides access to the client popup control object that is the "Select Document" popup window in the Html Editor's Link dialog. + */ + GetSelectDocumentPopupControl(): ASPxClientPopupControl; + /** + * Provides access to the client object of the "Open in new window" check box in the Html Editor's Link dialog. + */ + GetOpenInNewWindowCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client radio button list object used to specify the link type in the Html Editor's Link dialog. + */ + GetLinkTypeRadioButtonList(): ASPxClientRadioButtonList; +} +/** + * Provides client functionality for the Placeholder dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorPlaceholderDialog extends ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the ASPxListBox client object that lists placeholder names in the Html Editor's Placeholder dialog. + */ + GetPlaceholderNameListBox(): ASPxClientListBox; +} +/** + * Provides client functionality for the Paste From Word dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorPasteFromWordDialog extends ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the client object of the "Remove font family" check box in the Html Editor's Flash dialog. + */ + GetRemoveFontFamilyCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for the media dialogs within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorMediaDialogBase extends ASPxClientHtmlEditorEditElementDialog { + /** + * Provides access to the client object of the media file selector that allows you to insert/change media files in the Html Editor's Audio/Video/Flash dialogs. + */ + GetMediaFileSelector(): ASPxClientMediaFileSelector; + /** + * Provides access to the client object of the "More options" check box in the Html Editor's Audio/Video/Flash/Image dialogs. + */ + GetMoreOptionsCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Width" spin editor in the Html Editor's Audio/Video/Flash dialogs. + */ + GetWidthSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Height" spin editor in the Html Editor's Audio/Video/Flash dialogs. + */ + GetHeightSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Position" combo box in the Html Editor's Audio/Video/Flash/Image dialogs. + */ + GetPositionComboBox(): ASPxClientComboBox; +} +/** + * Provides client functionality for the Image dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorImageDialog extends ASPxClientHtmlEditorMediaDialogBase { + /** + * Provides access to the client object of the "Size" combo box in the Html Editor's Image dialog. + */ + GetSizeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Create thumbnail" check box in the Html Editor's Image dialog. + */ + GetCreateThumbnailCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "New image name" text box in the Html Editor's Image dialog. + */ + GetThumbnailNameTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Wrap text around image" check box in the Html Editor's Image dialog. + */ + GetWrapTextCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Description" text box in the Html Editor's Image dialog. + */ + GetDescriptionTextBox(): ASPxClientTextBox; +} +/** + * Provides client functionality for the Flash dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorFlashDialog extends ASPxClientHtmlEditorMediaDialogBase { + /** + * Provides access to the client object of the "Quality" combo box in the Html Editor's Flash dialog. + */ + GetQualityComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Auto play" check box in the Html Editor's Flash dialog. + */ + GetAutoPlayCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Enable flash menu" check box in the Html Editor's Flash dialog. + */ + GetEnableFlashMenuCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Loop" check box in the Html Editor's Flash dialog. + */ + GetLoopCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Allow fullscreen" check box in the Html Editor's Flash dialog. + */ + GetAllowFullscreenCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for the Audio dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorAudioDialog extends ASPxClientHtmlEditorMediaDialogBase { + /** + * Provides access to the client object of the "Auto play" check box in the Html Editor's Audio dialogs. + */ + GetAutoPlayCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Preload mode" combo box in the Html Editor's Audio dialogs. + */ + GetPreloadModeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Loop" check box in the Html Editor's Audio dialogs. + */ + GetLoopCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Show player controls" check box in the Html Editor's Audio dialogs. + */ + GetShowPlayerControlsCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for the Video dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorVideoDialog extends ASPxClientHtmlEditorMediaDialogBase { + /** + * Provides access to the client object of the "Auto play" check box in the Html Editor's Video dialog. + */ + GetAutoPlayCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Preload mode" combo box in the Html Editor's Video dialog. + */ + GetPreloadModeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Loop" check box in the Html Editor's Video dialog. + */ + GetLoopCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Show player controls" check box in the Html Editor's Video dialog. + */ + GetShowPlayerControlsCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Poster URL" text box in the Html Editor's Video dialog. + */ + GetPosterTextBox(): ASPxClientTextBox; +} +/** + * Provides client functionality for the YouTube Video dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorYouTubeDialog extends ASPxClientHtmlEditorEditElementDialog { + /** + * Provides access to the client object of the "Enable privacy-enhanced mode" check box in the Html Editor's YouTube Video dialog. + */ + GetConfidentModeCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Show suggested videos when the video finishes" check box in the Html Editor's YouTube Video dialog. + */ + GetShowSameVideosCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Show video title and player actions" check box in the Html Editor's YouTube Video dialog. + */ + GetShowVideoNameCheckBox(): ASPxClientCheckBox; + /** + * Provides access to the client object of the "Show player controls" check box in the Html Editor's YouTube Video dialog. + */ + GetShowPlayerControlsCheckBox(): ASPxClientCheckBox; +} +/** + * Provides base client functionality for the Table dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableDialogBase extends ASPxClientHtmlEditorDialogBase { + /** + * Provides access to the client object of the "Background color" color editor in the Html Editor's Table dialogs. + */ + GetBackgroundColorColorEdit(): ASPxClientColorEdit; +} +/** + * Provides client functionality for the Table dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableDialog extends ASPxClientHtmlEditorTableDialogBase { + /** + * Provides access to the client object of the "Width" combo box in the Html Editor's Table dialogs. + */ + GetWidthTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the spin editor in the Html Editor's Table dialogs that allows you to specify the table width value. + */ + GetWidthValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the combo box in the Html Editor's Table dialogs that allows you to specify the table width measurement unit. + */ + GetWidthValueTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Height" combo box in the Html Editor's Table dialogs. + */ + GetHeightTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the spin editor in the Html Editor's Table dialogs that allows you specify the table height value. + */ + GetHeightValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the combo box in the Html Editor's Table dialogs that allows you to specify the table height measurement unit. + */ + GetHeightValueTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Cell padding" spin editor in the Html Editor's Table dialogs. + */ + GetCellPaddingSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Cell spacing" spin editor in the Html Editor's Table dialogs. + */ + GetCellSpacingSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Alignment" combo box in the Html Editor's Table dialogs. + */ + GetAlignmentComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Border Color" color editor in the Html Editor's Table dialogs. + */ + GetBorderColorColorEdit(): ASPxClientColorEdit; + /** + * Provides access to the client object of the "Border size" spin editor in the Html Editor's Table dialogs. + */ + GetBorderWidthSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Headers" combo box in the Html Editor's Table dialogs. + */ + GetHeadersComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Caption" text box in the Html Editor's Table dialogs. + */ + GetCaptionTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Summary" text box in the Html Editor's Table dialogs. + */ + GetSummaryTextBox(): ASPxClientTextBox; + /** + * Provides access to the client object of the "Accessibility" check box related to the Html Editor's Table dialogs. + */ + GetAccessibilityCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for the Insert Table dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorInsertTableDialog extends ASPxClientHtmlEditorTableDialog { + /** + * Provides access to the client object of the "Columns" spin editor in the Html Editor's Table dialogs. + */ + GetColumnCountSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Rows" spin editor in the Html Editor's Table dialogs. + */ + GetRowCountSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the "Equal column widths" check box in the Html Editor's Table dialogs. + */ + GetEqualWidthCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for Table dialogs within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableElementPropertiesDialog extends ASPxClientHtmlEditorTableDialogBase { + /** + * Provides access to the client object of the "Horizontal" combo box in the Html Editor's Row/Column/Cell Properties dialog's Alignment group. + */ + GetHorizontalAlignmentComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the "Vertical" combo box in the Html Editor's Row/Column/Cell Properties dialog's Alignment group. + */ + GetVerticalAlignmentComboBox(): ASPxClientComboBox; +} +/** + * Provides client functionality for the Cell Properties dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableCellPropertiesDialog extends ASPxClientHtmlEditorTableElementPropertiesDialog { + /** + * Provides access to the client object of the "Apply to all cells in the table" check box in the Html Editor's Cell Properties dialog. + */ + GetApplyToAllCellsCheckBox(): ASPxClientCheckBox; +} +/** + * Provides client functionality for the Row Properties dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableRowPropertiesDialog extends ASPxClientHtmlEditorTableElementPropertiesDialog { + /** + * Provides access to the client object of the "Height" combo box in the Html Editor's "Row Properties" dialog. + */ + GetHeightTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client ASPxSpinEdit object that allows you to specify the row height in the Html Editor's "Row Properties" dialog. + */ + GetHeightValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client ASPxComboBox object that allows you to specify the row height measurement unit in the Html Editor's "Row Properties" dialog. + */ + GetHeightValueTypeComboBox(): ASPxClientComboBox; +} +/** + * Provides client functionality for the Column Properties dialog within the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorTableColumnPropertiesDialog extends ASPxClientHtmlEditorTableElementPropertiesDialog { + /** + * Provides access to the client object of the "Width" combo box in the Html Editor's "Column Properties" dialog. + */ + GetWidthTypeComboBox(): ASPxClientComboBox; + /** + * Provides access to the client object of the spin editor that allows you to set the column width value in the Html Editor's "Column Properties" dialog. + */ + GetWidthValueSpinEdit(): ASPxClientSpinEdit; + /** + * Provides access to the client object of the combo box that allows you to specify the column width measurement unit in the Html Editor's "Column Properties" dialog. + */ + GetWidthValueTypeComboBox(): ASPxClientComboBox; +} +/** + * A selection in the ASPxHtmlEditor. + */ +interface ASPxClientHtmlEditorSelection { + /** + * Returns a DOM element that relates to the current selection. + */ + GetSelectedElement(): Object; + /** + * Returns the HTML markup specifying the currently selected ASPxHtmlEditor content. + */ + GetHtml(): string; + /** + * Returns the text within the currently selected ASPxHtmlEditor content. + */ + GetText(): string; + /** + * Returns an array of the currently selected elements. + */ + GetElements(): Object[]; + /** + * Sets the new HTML markup in place of the currently selected within ASPxHtmlEditor content. + * @param html A string value specifying the new HTML markup. + * @param addToHistory true to add this operation to the history; otherwise, false. + */ + SetHtml(html: string, addToHistory: boolean): void; +} +/** + * The client-side equivalent of the ASPxPivotGrid control. + */ +interface ASPxClientPivotGrid extends ASPxClientControl { + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientPivotGrid. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires after a callback that has been processed on the server returns back to the client. + */ + AfterCallback: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Fires before a callback is sent to the server for server-side processing. + */ + BeforeCallback: ASPxClientEvent>; + /** + * Fires on the client side after the customization form's visible state has been changed. + */ + CustomizationFieldsVisibleChanged: ASPxClientEvent>; + /** + * Occurs when a cell is clicked. + */ + CellClick: ASPxClientEvent>; + /** + * Occurs when a cell is double clicked. + */ + CellDblClick: ASPxClientEvent>; + /** + * Occurs when a custom menu item has been clicked. + */ + PopupMenuItemClick: ASPxClientEvent>; + /** + * Indicates whether the Defer Layout Update check box is enabled. + */ + IsDeferUpdatesChecked(): boolean; + /** + * Indicates whether the Filter Editor (Prefilter) is visible. + */ + IsPrefilterVisible(): boolean; + /** + * Shows the Filter Editor. + */ + ShowPrefilter(): void; + /** + * Hides the Filter Editor. + */ + HidePrefilter(): void; + /** + * Clears the filter expression applied using the Prefilter (Filter Editor). + */ + ClearPrefilter(): void; + /** + * Enables or disables the current filter applied by the Filter Editor (Prefilter). + */ + ChangePrefilterEnabled(): void; + /** + * Returns a value that specifies whether the customization form is visible. + */ + GetCustomizationFieldsVisibility(): boolean; + /** + * Specifies the visibility of the customization form. + * @param value true to display the customization form; false to hide the customization form. + */ + SetCustomizationFieldsVisibility(value: boolean): void; + /** + * Switches the customization form's visible state. + */ + ChangeCustomizationFieldsVisibility(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; +} +/** + * A method that will handle the CellDblClick event. + */ +interface ASPxClientClickEventHandler { + /** + * A method that will handle the CellDblClick event. + * @param source The event source. + * @param e An ASPxClientClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientClickEventArgs): void; +} +/** + * Provides data for the CellDblClick client events. + */ +interface ASPxClientClickEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the parameters associated with the CellDblClick events. + * Value: An object that contains parameters associated with the CellDblClick events. + */ + HtmlEvent: Object; + /** + * Gets the processed cell's value. + * Value: An object that represents the processed cell's value. + */ + Value: Object; + /** + * Gets the index of a column that owns the processed cell. + * Value: An integer value that identifies a column. + */ + ColumnIndex: number; + /** + * Gets the index of a row that owns the processed cell. + * Value: An integer value that identifies a row. + */ + RowIndex: number; + /** + * Gets a column field value. + * Value: An object that represents a column field value. + */ + ColumnValue: Object; + /** + * Gets a row field value. + * Value: An object that represents a row field value. + */ + RowValue: Object; + /** + * Gets a column field name. + * Value: A String value that represents a column field name. + */ + ColumnFieldName: string; + /** + * Gets a row field name. + * Value: A String value that represents a row field name. + */ + RowFieldName: string; + /** + * Gets a column value type. + * Value: A String value that represents a column value type. + */ + ColumnValueType: string; + /** + * Gets a row value type. + * Value: A String value that represents a row value type. + */ + RowValueType: string; + /** + * Gets the index of the data field which corresponds to the clicked summary value. + * Value: An integer value that identifies the data field. + */ + DataIndex: number; +} +/** + * A method that will handle the PopupMenuItemClick event. + */ +interface ASPxClientPivotMenuItemClickEventHandler { + /** + * A method that will handle the PopupMenuItemClick event. + * @param source The event source. + * @param e An ASPxClientPivotMenuItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPivotMenuItemClickEventArgs): void; +} +/** + * Provides data for the PopupMenuItemClick event. + */ +interface ASPxClientPivotMenuItemClickEventArgs extends ASPxClientEventArgs { + /** + * Gets the context menu's type. + * Value: A PivotGridPopupMenuType enumeration value that identifies the context menu. + */ + MenuType: string; + /** + * Gets the name of the menu item currently being clicked. + * Value: A String value that identifies the clicked item by its name. + */ + MenuItemName: string; + /** + * Gets the field's unique indentifier. + * Value: A string which specifies the field's unique indentifier. + */ + FieldID: string; + /** + * Gets the index of the field value for which the popup menu has been invoked. + * Value: An integer value that identifies the field value. + */ + FieldValueIndex: number; +} +/** + * A client-side equivalent of the ASPxPivotCustomizationControl control. + */ +interface ASPxClientPivotCustomization extends ASPxClientControl { + /** + * Returns an HTML element that represents the root of the control's hierarchy. + */ + GetMainContainer(): Object; + /** + * Returns a client-side equivalent of the owner Pivot Grid Control. + */ + GetPivotGrid(): ASPxClientPivotGrid; + /** + * Specifies the Customization Control's height. + * @param value An integer value that specifies the Customization Control's height. + */ + SetHeight(value: number): void; + /** + * Specifies the Customization Control's width. + * @param value An integer value that specifies the Customization Control's width. + */ + SetWidth(value: number): void; + /** + * Recalculates the Customization Control height. + */ + UpdateHeight(): void; + /** + * Specifies the Customization Control's layout. + * @param layout A string that specifies the Customization Control's layout. + */ + SetLayout(layout: string): void; +} +/** + * A method that will handle the CustomCommandExecuted event. + */ +interface ASPxClientRichEditCustomCommandExecutedEventHandler { + /** + * A method that will handle the CustomCommandExecuted event. + * @param source An object representing the event source. Identifies the RichEdit that raised the event. + * @param e A ASPxClientRichEditCustomCommandExecutedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditCustomCommandExecutedEventArgs): void; +} +/** + * Provides data for the CustomCommandExecuted event. + */ +interface ASPxClientRichEditCustomCommandExecutedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value representing the processed command's name. + */ + commandName: string; + /** + * Gets an optional parameter that complements the processed command. + * Value: A string value containing additional information about the processed command. + */ + parameter: Object; +} +/** + * A method that will handle the HyperlinkClick event. + */ +interface ASPxClientRichEditHyperlinkClickEventHandler { + /** + * A method that will handle the HyperlinkClick event. + * @param source The event source. + * @param e An ASPxClientRichEditHyperlinkClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRichEditHyperlinkClickEventArgs): void; +} +/** + * Provides data for the HyperlinkClick event. + */ +interface ASPxClientRichEditHyperlinkClickEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether the event is handled manually, so no default processing is required. + * Value: true if the event is handled and no default processing is required; otherwise false. + */ + handled: boolean; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; + /** + * Gets a value identifying the clicked hyperlink type. + * Value: One of the values. + */ + hyperlinkType: ASPxClientOfficeDocumentLinkType; + /** + * Gets the clicked link's URI. + * Value: A sting value specifying the link's URI. + */ + targetUri: string; +} +/** + * A client-side equivalent of the ASPxRichEdit object. + */ +interface ASPxClientRichEdit extends ASPxClientControl { + /** + * Provides access to document structural elements. + * Value: A object that lists RichEdit's document structural elements. + */ + document: RichEditDocument; + /** + * Provides access to RichEdit's client-side commands. + * Value: A object that lists RichEdit's client-side commands. + */ + commands: RichEditCommands; + /** + * Provides access to the client methods that changes the selection. + * Value: A object that lists methods to work with the selection. + */ + selection: RichEditSelection; + /** + * Gets a unit converter. + * Value: A object representing a unit converter. + */ + unitConverter: RichEditUnitConverter; + /** + * Occurs after a custom command has been executed on the client side. + */ + CustomCommandExecuted: ASPxClientEvent>; + /** + * Fires after a client change has been made to the document and the client-server synchronization starts to apply the change on the server. + */ + BeginSynchronization: ASPxClientEvent>; + /** + * Fires after a document change has been applied to the server and server and client document models have been synchronized. + */ + EndSynchronization: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the RichEdit. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires if any change is made to the RichEdit's document on the client. + */ + DocumentChanged: ASPxClientEvent>; + /** + * Occurs when a hyperlink is clicked within the document. + */ + HyperlinkClick: ASPxClientEvent>; + /** + * Occurs when the selection is changed within the document. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Enables you to switch the full-screen mode of the Rich Text Editor. + * @param fullscreen true to activate full-screen mode; false to deactivate full-screen mode. + */ + SetFullscreenMode(fullscreen: boolean): void; + /** + * Provides access to an object implementing the RichEdit's ribbon UI. + */ + GetRibbon(): ASPxClientRibbon; + /** + * Sets input focus to the RichEdit. + */ + Focus(): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Indicates whether any unsaved changes are contained in the current document. + */ + HasUnsavedChanges(): boolean; + /** + * Reconnects the RichEdit to an external ribbon. + */ + ReconnectToExternalRibbon(): void; +} +/** + * Contains a set of the available client commands. + */ +interface RichEditCommands { + /** + * Gets a command to create a new empty document. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileNew: FileNewCommand; + /** + * Gets a command to open the file, specifying its path. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileOpen: FileOpenCommand; + /** + * Gets a command to invoke the File Open dialog allowing one to select and load a document file into RichEdit. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileOpenDialog: FileOpenDialogCommand; + /** + * Gets a command to save the document to a file. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileSave: FileSaveCommand; + /** + * Gets a command to download the document file, specifying its extension. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileDownload: FileDownloadCommand; + /** + * Gets a command to invoke the Save As dialog that prompts for a file name and saves the current document in a file with the specified path. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileSaveAs: FileSaveAsCommand; + /** + * Gets a command to open the file's Save As dialog. + * Value: A object that provides methods for executing the command and checking its state. + */ + fileSaveAsDialog: FileSaveAsDialogCommand; + /** + * Gets a command to invoke a browser-specific Print dialog allowing one to print the current document. + * Value: A object that provides methods for executing the command and checking its state. + */ + filePrint: FilePrintCommand; + /** + * Gets a command to cancel changes caused by the previous command. + * Value: A object that provides methods for executing the command and checking its state. + */ + undo: UndoCommand; + /** + * Gets a command to reverse actions of the previous undo command. + * Value: A object that provides methods for executing the command and checking its state. + */ + redo: RedoCommand; + /** + * Gets a command to copy the selected text and place it to the clipboard. + * Value: A object that provides methods for executing the command and checking its state. + */ + copy: CopyCommand; + /** + * Gets a command to paste the text from the clipboard over the selection. + * Value: A object that provides methods for executing the command and checking its state. + */ + paste: PasteCommand; + /** + * Gets a command to cut the selected text and place it to the clipboard. + * Value: A object that provides methods for executing the command and checking its state. + */ + cut: CutCommand; + /** + * Gets a command to change the font name of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontName: ChangeFontNameCommand; + /** + * Gets a command to change the font size of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontSize: ChangeFontSizeCommand; + /** + * Gets a command to increase the font size of characters in a selected range to the closest larger predefined value. + * Value: A object that provides methods for executing the command and checking its state. + */ + increaseFontSize: IncreaseFontSizeCommand; + /** + * Gets a command to decrease the selected range's font size to the closest smaller predefined value. + * Value: A object that provides methods for executing the command and checking its state. + */ + decreaseFontSize: DecreaseFontSizeCommand; + /** + * Gets a command to convert selected text to upper case. + * Value: A object that provides methods for executing the command and checking its state. + */ + makeTextUpperCase: MakeTextUpperCaseCommand; + /** + * Gets a command to convert selected text to lower case. + * Value: A object that provides methods for executing the command and checking its state. + */ + makeTextLowerCase: MakeTextLowerCaseCommand; + /** + * Gets a command to capitalize each word in the selected sentence. + * Value: A object that provides methods for executing the command and checking its state. + */ + capitalizeEachWordTextCase: CapitalizeEachWordTextCaseCommand; + /** + * Gets a command to toggle case for each character - upper case becomes lower, lower case becomes upper. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTextCase: ToggleTextCaseCommand; + /** + * Gets a command to change the bold formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontBold: ChangeFontBoldCommand; + /** + * Gets a command to change the italic formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontItalic: ChangeFontItalicCommand; + /** + * Gets a command to change the underline formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontUnderline: ChangeFontUnderlineCommand; + /** + * Gets a command to change the strikeout formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontStrikeout: ChangeFontStrikeoutCommand; + /** + * Gets a command to change the superscript formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontSuperscript: ChangeFontSuperscriptCommand; + /** + * Gets a command to change the subscript formatting of characters in the selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontSubscript: ChangeFontSubscriptCommand; + /** + * Gets a command to change the font color of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontForeColor: ChangeFontForeColorCommand; + /** + * Gets a command to change the background color of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontBackColor: ChangeFontBackColorCommand; + /** + * Gets a command to reset text and paragraph formatting in the selected range to default. + * Value: A object that provides methods for executing the command and checking its state. + */ + clearFormatting: ClearFormattingCommand; + /** + * Gets a command to change the selected range's style. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeStyle: ChangeStyleCommand; + /** + * Gets a command to toggle between the bulleted paragraph and normal text. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleBulletedList: ToggleBulletedListCommand; + /** + * Gets a command to toggle between the numbered paragraph and normal text. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleNumberingList: ToggleNumberingListCommand; + /** + * Gets a command to toggle between the multilevel list style and normal text. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleMultilevelList: ToggleMultilevelListCommand; + /** + * Gets a command to increment the indent level of paragraphs in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + increaseIndent: IncreaseIndentCommand; + /** + * Gets a command to decrease the indent level of paragraphs in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + decreaseIndent: DecreaseIndentCommand; + /** + * Gets a command to toggle hidden symbol visibility. + * Value: A object that provides methods for executing the command and checking its state. + */ + showHiddenSymbols: ShowHiddenSymbolsCommand; + /** + * Gets a command to toggle left paragraph alignment on and off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleParagraphAlignmentLeft: ToggleParagraphAlignmentLeftCommand; + /** + * Gets a command to toggle centered paragraph alignment on and off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleParagraphAlignmentCenter: ToggleParagraphAlignmentCenterCommand; + /** + * Gets a command to toggle right paragraph alignment on and off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleParagraphAlignmentRight: ToggleParagraphAlignmentRightCommand; + /** + * Gets a command to toggle justified paragraph alignment on and off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleParagraphAlignmentJustify: ToggleParagraphAlignmentJustifyCommand; + /** + * Gets a command to format a current paragraph with single line spacing. + * Value: A object that provides methods for executing the command and checking its state. + */ + setSingleParagraphSpacing: SetSingleParagraphSpacingCommand; + /** + * Gets a command to format a current paragraph with one and a half line spacing. + * Value: A object that provides methods for executing the command and checking its state. + */ + setSesquialteralParagraphSpacing: SetSesquialteralParagraphSpacingCommand; + /** + * Gets a command to format a selected paragraph with double line spacing. + * Value: A object that provides methods for executing the command and checking its state. + */ + setDoubleParagraphSpacing: SetDoubleParagraphSpacingCommand; + /** + * Gets a command to add spacing before a paragraph. + * Value: A object that provides methods for executing the command and checking its state. + */ + addSpacingBeforeParagraph: AddSpacingBeforeParagraphCommand; + /** + * Gets a command to add spacing after a paragraph. + * Value: A object that provides methods for executing the command and checking its state. + */ + addSpacingAfterParagraph: AddSpacingAfterParagraphCommand; + /** + * Gets a command to remove spacing before the selected paragraph. + * Value: A object that provides methods for executing the command and checking its state. + */ + removeSpacingBeforeParagraph: RemoveSpacingBeforeParagraphCommand; + /** + * Gets a command to remove spacing after the selected paragraph. + * Value: A object that provides methods for executing the command and checking its state. + */ + removeSpacingAfterParagraph: RemoveSpacingAfterParagraphCommand; + /** + * Gets a command to change the background color of paragraphs in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeParagraphBackColor: ChangeParagraphBackColorCommand; + /** + * Gets a command to invoke the Font dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openFontFormattingDialog: OpenFontFormattingDialogCommand; + /** + * Gets a command to change the font formatting of characters in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFontFormatting: ChangeFontFormattingCommand; + /** + * Gets a command to invoke the Indents And Spacing tab of the Paragraph dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openParagraphFormattingDialog: OpenParagraphFormattingDialogCommand; + /** + * Gets a command to change the formatting of paragraphs in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeParagraphFormatting: ChangeParagraphFormattingCommand; + /** + * Gets a command to insert a page break at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertPageBreak: InsertPageBreakCommand; + /** + * Gets a command to invoke the Insert Table dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openInsertTableDialog: OpenInsertTableDialogCommand; + /** + * Gets a command to insert a rectangle table of a specified size. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTable: InsertTableCommand; + /** + * Gets a command to invoke the Insert Image dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openInsertPictureDialog: OpenInsertPictureDialogCommand; + /** + * Gets a command to insert an inline picture stored by specifed web address. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertPicture: InsertPictureCommand; + /** + * Gets a command to invoke the Bookmark dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openInsertBookmarkDialog: OpenInsertBookmarkDialogCommand; + /** + * Gets a command to insert a new bookmark that references the current selection. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertBookmark: InsertBookmarkCommand; + /** + * A command to delete a specific bookmark. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteBookmark: DeleteBookmarkCommand; + /** + * Gets a command to navigate to the specified bookmark. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToBookmark: GoToBookmarkCommand; + /** + * Gets a command to invoke the Hyperlink dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openInsertHyperlinkDialog: OpenInsertHyperlinkDialogCommand; + /** + * Gets a command to insert a hyperlink at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertHyperlink: InsertHyperlinkCommand; + /** + * Gets a command to delete the selected hyperlink. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteHyperlink: DeleteHyperlinkCommand; + /** + * Gets a command to delete all hyperlinks in the selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteHyperlinks: DeleteHyperlinksCommand; + /** + * Gets a command to navigate to the document bookmark or URI (uniform resource identifier) specified for the hyperlink. + * Value: A object that provides methods for executing the command and checking its state. + */ + openHyperlink: OpenHyperlinkCommand; + /** + * Gets a command to invoke the Symbols dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openInsertSymbolDialog: OpenInsertSymbolDialogCommand; + /** + * Gets a command to insert a character into a document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertSymbol: InsertSymbolCommand; + /** + * Gets a command to change page margin settings. + * Value: A object that provides methods for executing the command and checking its state. + */ + changePageMargins: ChangePageMarginsCommand; + /** + * Gets a command to invoke the Margins tab of the Page Setup dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openPageMarginsDialog: OpenPageMarginsDialogCommand; + /** + * Gets a command to change the page orientation. + * Value: A object that provides methods for executing the command and checking its state. + */ + changePageOrientation: ChangePageOrientationCommand; + /** + * Gets a command to define the page size dialog's settings. + * Value: A object that provides methods for executing the command and checking its state. + */ + setPageSizeDialog: SetPageSizeDialogCommand; + /** + * Gets a command to invoke the Paper tab of the Page Setup dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openPagePaperSizeDialog: OpenPagePaperSizeDialogCommand; + /** + * Gets a command to change the page size. + * Value: A object that provides methods for executing the command and checking its state. + */ + changePageSize: ChangePageSizeCommand; + /** + * Gets a command to change the number of section columns having the same width. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeSectionEqualColumnCount: ChangeSectionEqualColumnCountCommand; + /** + * Gets a command to invoke the Columns dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openSectionColumnsDialog: OpenSectionColumnsDialogCommand; + /** + * Gets a command to change the settings of individual section columns. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeSectionColumns: ChangeSectionColumnsCommand; + /** + * Gets a command to insert a column break at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertColumnBreak: InsertColumnBreakCommand; + /** + * Gets a command to insert a section break and starts a new section on the next page. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertSectionBreakNextPage: InsertSectionBreakNextPageCommand; + /** + * Gets a command to insert a section break and starts a new section on the next even-numbered page. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertSectionBreakEvenPage: InsertSectionBreakEvenPageCommand; + /** + * Gets a command to insert a section break and starts a new section on the next odd-numbered page. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertSectionBreakOddPage: InsertSectionBreakOddPageCommand; + /** + * Gets a command to set the background color of the page. + * Value: A object that provides methods for executing the command and checking its state. + */ + changePageColor: ChangePageColorCommand; + /** + * Gets a command to toggle the horizontal ruler's visibility. + * Value: A object that provides methods for executing the command and checking its state. + */ + showHorizontalRuler: ShowHorizontalRulerCommand; + /** + * Gets a command to toggle the fullscreen mode. + * Value: A object that provides methods for executing the command and checking its state. + */ + setFullscreen: SetFullscreenCommand; + /** + * Gets a command to invoke the Bulleted and Numbering dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openNumberingListDialog: OpenNumberingListDialogCommand; + /** + * Gets a command to insert a paragraph break at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertParagraph: InsertParagraphCommand; + /** + * Gets a command to insert text at the current position in a document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertText: InsertTextCommand; + /** + * Gets a command to delete the text in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + delete: DeleteCommand; + /** + * Gets a command to remove the previous word. + * Value: A object that provides methods for executing the command and checking its state. + */ + removePrevWord: RemovePrevWordCommand; + /** + * Gets a command to remove the next word. + * Value: A object that provides methods for executing the command and checking its state. + */ + removeNextWord: RemoveNextWordCommand; + /** + * Gets a command to move the cursor backwards and erase the character in that space. + * Value: A object that provides methods for executing the command and checking its state. + */ + backspace: BackspaceCommand; + /** + * Gets a command to insert the line break at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertLineBreak: InsertLineBreakCommand; + /** + * Gets a command to scale pictures in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + changePictureScale: ChangePictureScaleCommand; + /** + * Gets a command to increment the left indentation of paragraphs in a selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + incrementParagraphLeftIndent: IncrementParagraphLeftIndentCommand; + /** + * Gets a command to decrement the paragraph's left indent position. + * Value: A object that provides methods for executing the command and checking its state. + */ + decrementParagraphLeftIndent: DecrementParagraphLeftIndentCommand; + /** + * Gets a command to move the selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + moveContent: MoveContentCommand; + /** + * Gets a command to copy the selected text and place it to the specified position. + * Value: A object that provides methods for executing the command and checking its state. + */ + copyContent: CopyContentCommand; + /** + * Gets a command to insert a tab character at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTab: InsertTabCommand; + /** + * Gets a command to invoke the Tabs dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openTabsDialog: OpenTabsDialogCommand; + /** + * Gets a command to change the tab stop value of a document or selected paragraphs + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTabs: ChangeTabsCommand; + /** + * Gets a command to invoke the Customize Numbered List dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openCustomNumberingListDialog: OpenCustomNumberingListDialogCommand; + /** + * Gets a command to customize the numbered list parameters. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeCustomNumberingList: ChangeCustomNumberingListCommand; + /** + * Gets a command to restart the numbering list. + * Value: A object that provides methods for executing the command and checking its state. + */ + restartNumberingList: RestartNumberingListCommand; + /** + * Gets a command to increment the indent level of paragraphs in a selected numbered list. + * Value: A object that provides methods for executing the command and checking its state. + */ + incrementNumberingIndent: IncrementNumberingIndentCommand; + /** + * Gets a command to decrement the indent level of paragraphs in a selected numbered list. + * Value: A object that provides methods for executing the command and checking its state. + */ + decrementNumberingIndent: DecrementNumberingIndentCommand; + /** + * Gets a command to create a field with an empty code and populate it with the selection (if it is not collapsed). + * Value: A object that provides methods for executing the command and checking its state. + */ + createField: CreateFieldCommand; + /** + * Gets a command to update the field's result. + * Value: A object that provides methods for executing the command and checking its state. + */ + updateField: UpdateFieldCommand; + /** + * Gets a command to display the selected field's codes. + * Value: A object that provides methods for executing the command and checking its state. + */ + showFieldCodes: ShowFieldCodesCommand; + /** + * Get a command to display all field codes in place of the fields in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + showAllFieldCodes: ShowAllFieldCodesCommand; + /** + * Gets a command to continue the list's numbering. + * Value: A object that provides methods for executing the command and checking its state. + */ + continueNumberingList: ContinueNumberingListCommand; + /** + * Gets a command to insert numeration to a paragraph making it a numbering list item. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertNumeration: InsertNumerationCommand; + /** + * Gets a command to remove the selected numeration. + * Value: A object that provides methods for executing the command and checking its state. + */ + removeNumeration: RemoveNumerationCommand; + /** + * Gets a command to update all fields in the selected range. + * Value: A object that provides methods for executing the command and checking its state. + */ + updateAllFields: UpdateAllFieldsCommand; + /** + * Gets a command to insert and update a field with a DATE code. + * Value: A object that provides methods for executing the command and checking its state. + */ + createDateField: CreateDateFieldCommand; + /** + * Gets a command to replace the selection with a TIME field displaying the current time. + * Value: A object that provides methods for executing the command and checking its state. + */ + createTimeField: CreateTimeFieldCommand; + /** + * A command to replace the selection with a PAGE field displaying the current page number. + * Value: A object that provides methods for executing the command and checking its state. + */ + createPageField: CreatePageFieldCommand; + /** + * Gets a command to convert the text of all selected sentences to sentence case. + * Value: A object that provides methods for executing the command and checking its state. + */ + makeTextSentenceCase: MakeTextSentenceCaseCommand; + /** + * Gets a command to switch the text case at the current position in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + switchTextCase: SwitchTextCaseCommand; + /** + * Gets a command to navigate to the first data record. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToFirstDataRecord: GoToFirstDataRecordCommand; + /** + * Gets a command to navigate to the previous data record of the bound data source. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToPreviousDataRecord: GoToPreviousDataRecordCommand; + /** + * Gets a command to navigate to the next data record of the bound data source. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToNextDataRecord: GoToNextDataRecordCommand; + /** + * Gets a command to navigate to the next data record. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToDataRecord: GoToDataRecordCommand; + /** + * Gets a command to navigate to the last data record of the bound data source. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToLastDataRecord: GoToLastDataRecordCommand; + /** + * Gets a command to display or hide actual data in MERGEFIELD fields. + * Value: A object that provides methods for executing the command and checking its state. + */ + showMergedData: ShowMergedDataCommand; + /** + * Gets a command to invoke the Insert Merge Field dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + mergeFieldDialog: MergeFieldDialogCommand; + /** + * Gets a command to replace the selection with a MERGEFIELD (a data source column name is passed with a parameter). + * Value: A object that provides methods for executing the command and checking its state. + */ + createMergeField: CreateMergeFieldCommand; + /** + * Gets a command to invoke the Export Range dialog window to start a mail merge. + * Value: A object that provides methods for executing the command and checking its state. + */ + mailMergeDialog: MailMergeDialogCommand; + /** + * Gets a command to perform a mail merge and download the merged document. + * Value: A object that provides methods for executing the command and checking its state. + */ + mailMergeAndDownload: MailMergeAndDownloadCommand; + /** + * Gets a command to perform a mail merge and save the merged document to the server. + * Value: A object that provides methods for executing the command and checking its state. + */ + mailMergeAndSaveAs: MailMergeAndSaveAsCommand; + /** + * Gets a command to activate the page header and begin editing. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertHeader: InsertHeaderCommand; + /** + * Gets a command to activate the page footer and begin editing. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertFooter: InsertFooterCommand; + /** + * Gets a command to link a header/footer to the previous section, so it has the same content. + * Value: A object that provides methods for executing the command and checking its state. + */ + linkHeaderFooterToPrevious: LinkHeaderFooterToPreviousCommand; + /** + * Gets a command to navigate to the page footer from the page header in the header/footer editing mode. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToFooter: GoToFooterCommand; + /** + * Gets a command to navigate to the page header from the page footer in the header/footer editing mode. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToHeader: GoToHeaderCommand; + /** + * Gets a command to navigate to the next page header or footer in the header/footer editing mode. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToNextHeaderFooter: GoToNextHeaderFooterCommand; + /** + * Gets a command to navigate to the previous page header or footer in the header/footer editing mode. + * Value: A object that provides methods for executing the command and checking its state. + */ + goToPreviousHeaderFooter: GoToPreviousHeaderFooterCommand; + /** + * Gets a command to change the header/footer edit mode, so it allows creation of a different header or footer for the first page of a document or section. + * Value: A object that provides methods for executing the command and checking its state. + */ + setDifferentFirstPageHeaderFooter: SetDifferentFirstPageHeaderFooterCommand; + /** + * Gets a command to change the header/footer edit mode so it allows creation of a different header or footer for odd and even pages of a document or section. + * Value: A object that provides methods for executing the command and checking its state. + */ + setDifferentOddAndEvenPagesHeaderFooter: SetDifferentOddAndEvenPagesHeaderFooterCommand; + /** + * Gets a command to finish header/footer editing. + * Value: A object that provides methods for executing the command and checking its state. + */ + closeHeaderFooter: CloseHeaderFooterCommand; + /** + * Gets a command to replace the selection with a NUMPAGES field displaying the total number of pages. + * Value: A object that provides methods for executing the command and checking its state. + */ + createPageCountField: CreatePageCountFieldCommand; + /** + * Gets a command to invoke the Table tab of the Table Properties dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openTableFormattingDialog: OpenTableFormattingDialogCommand; + /** + * Gets a command to change the selected table's formatting. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableFormatting: ChangeTableFormattingCommand; + /** + * Gets a command to change the selected table rows' preferred height. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableRowPreferredHeight: ChangeTableRowPreferredHeightCommand; + /** + * Gets a command to change the preferred cell width of the selected table rows. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableCellPreferredWidth: ChangeTableCellPreferredWidthCommand; + /** + * Gets a command to toggle inside borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellInsideBorders: ToggleTableCellInsideBordersCommand; + /** + * Gets a command to change the selected table columns' preferred width. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableColumnPreferredWidth: ChangeTableColumnPreferredWidthCommand; + /** + * Gets a command to change the cell formatting of the selected table elements. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableCellFormatting: ChangeTableCellFormattingCommand; + /** + * Gets a command to insert a table column to the left of the current position in the table. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableColumnToTheLeft: InsertTableColumnToTheLeftCommand; + /** + * Gets a command to insert a table column to the right of the current position in the table. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableColumnToTheRight: InsertTableColumnToTheRightCommand; + /** + * Gets a command to insert a row in the table below the selected row. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableRowBelow: InsertTableRowBelowCommand; + /** + * Gets a command to insert a row in the table above the selected row. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableRowAbove: InsertTableRowAboveCommand; + /** + * Gets a command to delete the selected rows in the table. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTableRows: DeleteTableRowsCommand; + /** + * Gets a command to delete the selected columns in the table. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTableColumns: DeleteTableColumnsCommand; + /** + * Gets a command to insert table cells with a horizontal shift into the selected table. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableCellWithShiftToTheLeft: InsertTableCellWithShiftToTheLeftCommand; + /** + * Gets a command to delete the selected table cells with a horizontal shift. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTableCellsWithShiftHorizontally: DeleteTableCellsWithShiftHorizontallyCommand; + /** + * Gets a command to delete the selected table cells with a vertical shift. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTableCellsWithShiftVertically: DeleteTableCellsWithShiftVerticallyCommand; + /** + * Gets a command to delete the selected table. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTable: DeleteTableCommand; + /** + * Gets a command to invoke the Insert Cells dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableCellsDialog: InsertTableCellsDialogCommand; + /** + * Gets a command to invoke the Delete Cells dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + deleteTableCellsDialog: DeleteTableCellsDialogCommand; + /** + * Gets a command to merge the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + mergeTableCells: MergeTableCellsCommand; + /** + * Gets a command to invoke the Split Cells dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + splitTableCellsDialog: SplitTableCellsDialogCommand; + /** + * Gets a command to split the selected table cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + splitTableCells: SplitTableCellsCommand; + /** + * Gets a command to insert table cells with a vertical shift into the selected table. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertTableCellsWithShiftToTheVertically: InsertTableCellsWithShiftToTheVerticallyCommand; + /** + * Gets a command to invoke the Borders tab of the Borders and Shading dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openTableBordersAndShadingDialog: OpenTableBordersAndShadingDialogCommand; + /** + * Gets a command to change the selected table's borders and shading. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableBordersAndShading: ChangeTableBordersAndShadingCommand; + /** + * Gets a command to apply top-left alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignTopLeft: ToggleTableCellAlignTopLeftCommand; + /** + * Gets a command to apply top-center alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignTopCenter: ToggleTableCellAlignTopCenterCommand; + /** + * Gets a command to apply top-right alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignTopRight: ToggleTableCellAlignTopRightCommand; + /** + * Gets a command to apply middle-left alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignMiddleLeft: ToggleTableCellAlignMiddleLeftCommand; + /** + * Gets a command to apply middle-center alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignMiddleCenter: ToggleTableCellAlignMiddleCenterCommand; + /** + * Gets a command to apply middle-right alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignMiddleRight: ToggleTableCellAlignMiddleRightCommand; + /** + * Gets a command to apply bottom-left alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignBottomLeft: ToggleTableCellAlignBottomLeftCommand; + /** + * Gets a command to apply bottom-center alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignBottomCenter: ToggleTableCellAlignBottomCenterCommand; + /** + * Gets a command to apply bottom-right alignment for the selected cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAlignBottomRight: ToggleTableCellAlignBottomRightCommand; + /** + * Gets a command to change the selected table's style. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableStyle: ChangeTableStyleCommand; + /** + * Gets a command to toggle top borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellTopBorder: ToggleTableCellTopBorderCommand; + /** + * Gets a command to toggle right borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellRightBorder: ToggleTableCellRightBorderCommand; + /** + * Gets a command to toggle bottom borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellBottomBorder: ToggleTableCellBottomBorderCommand; + /** + * Gets a command to toggle left borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellLeftBorder: ToggleTableCellLeftBorderCommand; + /** + * Gets a command to remove the borders of the selected table cells. + * Value: A object that provides methods for executing the command and checking its state. + */ + removeTableCellBorders: RemoveTableCellBordersCommand; + /** + * Gets a command to toggle all borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellAllBorders: ToggleTableCellAllBordersCommand; + /** + * Gets a command to toggle inner horizontal borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellInsideHorizontalBorders: ToggleTableCellInsideHorizontalBordersCommand; + /** + * Gets a command to toggle inner vertical borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellInsideVerticalBorders: ToggleTableCellInsideVerticalBordersCommand; + /** + * Gets a command to toggle outer borders for selected cells on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + toggleTableCellOutsideBorders: ToggleTableCellOutsideBordersCommand; + /** + * Gets a command to change the selected table's style options. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableLook: ChangeTableLookCommand; + /** + * Gets a command to change the repository item's table border style. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableBorderRepositoryItem: ChangeTableBorderRepositoryItemCommand; + /** + * Gets a command to change cell shading in the selected table elements. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTableCellShading: ChangeTableCellShadingCommand; + /** + * Gets a command to toggle the display of grid lines for a table with no borders applied - on/off. + * Value: A object that provides methods for executing the command and checking its state. + */ + showTableGridLines: ShowTableGridLinesCommand; + /** + * Gets a command to invoke the Search Panel allowing end-users to search text and navigate through search results. + * Value: A object that provides methods for executing the command and checking its state. + */ + openFindPanel: OpenFindPanelCommand; + /** + * Gets a command to invoke the Find and Replace dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openFindAndReplaceDialog: OpenFindAndReplaceDialogCommand; + /** + * Gets a command to find all matches of the specified text in the document. + * Value: A object that provides methods for executing the command and checking its state. + */ + findAll: FindAllCommand; + /** + * Gets a command to hide the results of the search. + * Value: A object that provides methods for executing the command and checking its state. + */ + hideFindResults: HideFindResultsCommand; + /** + * Gets a command to search for a specific text and replace all matches in the document with the specified string. + * Value: A object that provides methods for executing the command and checking its state. + */ + replaceAll: ReplaceAllCommand; + /** + * Gets a command to search for a specific text and replace the next match in the document with the specified string. + * Value: A object that provides methods for executing the command and checking its state. + */ + replaceNext: ReplaceNextCommand; + /** + * Gets a command to invoke the Spelling dialog window. + * Value: A object that provides methods for executing the command and checking its state. + */ + openSpellingDialog: OpenSpellingDialogCommand; + /** + * Gets a command to assign a shortcut to the specified client command. + * Value: A object that provides methods for executing the command and checking its state. + */ + assignShortcut: AssignShortcutCommand; + /** + * Gets a command to invoke the Layout dialog window to customize the settings of a floating object. + * Value: A object that provides methods for executing the command and checking its state. + */ + openLayoutOptionsDialog: OpenLayoutOptionsDialogCommand; + /** + * Gets a command to insert a floating text box. + * Value: A object that provides methods for executing the command and checking its state. + */ + insertFloatingTextBox: InsertFloatingTextBoxCommand; + /** + * Gets a command to modify a floating object's alignment position. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectAlignmentPosition: ChangeFloatingObjectAlignmentPositionCommand; + /** + * Gets a command to change a floating object's absolute position. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectAbsolutePosition: ChangeFloatingObjectAbsolutePositionCommand; + /** + * Gets a command to modify a floating object's relative position. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectRelativePosition: ChangeFloatingObjectRelativePositionCommand; + /** + * Gets a command to lock a floating object's anchor. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectLockAnchor: ChangeFloatingObjectLockAnchorCommand; + /** + * Gets a command to modify a floating object's text wrapping settings. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectTextWrapping: ChangeFloatingObjectTextWrappingCommand; + /** + * Gets a command to change a floating object's absolute size. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectAbsoluteSize: ChangeFloatingObjectAbsoluteSizeCommand; + /** + * Gets a command to modify a text box' relative size settings. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTextBoxRelativeSize: ChangeTextBoxRelativeSizeCommand; + /** + * Gets a command to rotate a floating object. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectRotation: ChangeFloatingObjectRotationCommand; + /** + * Gets a command to lock a floating object's aspect ratio. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectLockAspectRatio: ChangeFloatingObjectLockAspectRatioCommand; + /** + * Gets a command to modify a floating object's background fill color. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectFillColor: ChangeFloatingObjectFillColorCommand; + /** + * Gets a command to modify a floating object's outline color. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectOutlineColor: ChangeFloatingObjectOutlineColorCommand; + /** + * Gets a command to modify a floating object's outline width. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeFloatingObjectOutlineWidth: ChangeFloatingObjectOutlineWidthCommand; + /** + * Gets a command to modify a text box' content margins. + * Value: A object that provides methods for executing the command and checking its state. + */ + changeTextBoxContentMargins: ChangeTextBoxContentMarginsCommand; + changeTextBoxResizeShapeToFitText: ChangeTextBoxResizeShapeToFitTextCommand; +} +/** + * Serves as a base for objects that implement different client command functionalities. + */ +interface CommandBase { +} +/** + * Serves as a base for commands with a simple common command state. + */ +interface CommandWithSimpleStateBase extends CommandBase { + /** + * Gets information about the command state. + */ + getState(): SimpleCommandState; +} +/** + * Serves as a base for commands with the Boolean state. + */ +interface CommandWithBooleanStateBase extends CommandBase { + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * Defines a simple state common to most of the client commands. + */ +interface SimpleCommandState { + /** + * Gets a value indicating whether the command's UI element is enabled (within the ribbon and context menu). + * Value: true, if the command's related UI element is enabled; otherwise, false. + */ + enabled: boolean; + /** + * Gets a value indicating whether the command's UI element is visible. + * Value: true, if the command's related UI element is visible; otherwise, false. + */ + visible: boolean; +} +/** + * Defines the state of a command. + */ +interface CommandState extends SimpleCommandState { + /** + * Gets the command state value. + * Value: A T object specifying the command state value. + */ + value: T; +} +/** + * Contains a set properties providing the current information about certain document structural elements. + */ +interface RichEditDocument { + /** + * Provides the information about the active sub-document. + * Value: A object storing information about the essential document functionality. + */ + activeSubDocument: SubDocument; + /** + * Provides information about sections in the current document. + * Value: An array of Section objects storing information about sections. + */ + sectionsInfo: Section[]; + /** + * Provides information about paragraph styles in the current document. + * Value: An array of ParagraphStyle objects storing information about paragraph styles. + */ + paragraphStylesInfo: ParagraphStyle[]; + /** + * Provides information about character styles in the current document. + * Value: An array of CharacterStyle objects storing information about character styles. + */ + characterStylesInfo: CharacterStyle[]; + /** + * Provides information about numbered paragraphs in the document. + * Value: An array of AbstractNumberingList objects storing the information about numbered paragraphs. + */ + abstractNumberingListsInfo: AbstractNumberingList[]; + /** + * Provides information about table styles in the current document. + * Value: An array of TableStyle objects storing information about table styles. + */ + tableStylesInfo: TableStyle[]; + /** + * Provides information about spell checking in the current document. + * Value: A object. + */ + spellingInfo: SpellingInfo; +} +/** + * An abstract numbering list definition that defines the appearance and behavior of numbered paragraphs in a document. + */ +interface AbstractNumberingList { + deleted: boolean; +} +/** + * Defines a paragraph in the document. + */ +interface Paragraph { + /** + * Gets the paragraph's character length. + * Value: An integer value specifying the element length in characters. + */ + length: number; + /** + * Gets the paragraph's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the text buffer interval occupied by the current paragraph element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Gets the name of the paragraph style applied to the current paragraph (see name). + * Value: A string value specifying the style name. + */ + styleName: string; + /** + * Gets the index of a list applied to the paragraph. + * Value: An integer that is the index of a list to which the paragraph belongs. + */ + listIndex: number; + /** + * Gets the index of the list level applied to the current paragraph in the numbering list. + * Value: An integer that is the index of the list level of the current paragraph. + */ + listLevelIndex: number; +} +/** + * Defines a field in the document. + */ +interface Field { + /** + * Gets the field's start position in a document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the field length in a document. + * Value: An integer value specifying the field length. + */ + length: number; + /** + * Gets the text buffer interval occupied by the field code element. + * Value: An object specifying the interval settings. + */ + codeInterval: Interval; + /** + * Gets the text buffer interval occupied by the field result element. + * Value: An object specifying the interval settings. + */ + resultInterval: Interval; + /** + * Gets the text buffer interval occupied by the current field element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Gets or sets a URI to navigate to when the hyperlink (represented by the current field) is activated. + * Value: A string representing an URI. + */ + hyperlinkUri: string; + /** + * Gets or sets the text for the tooltip displayed when the mouse hovers over a hyperlink field. + * Value: A string containing the tooltip text. + */ + hyperlinkTip: string; + /** + * Gets or sets the name of a bookmark (or a hyperlink) in the current document which shall be the target of the hyperlink field. + * Value: A string representing the bookmark's name. + */ + hyperlinkAnchor: string; + /** + * Gets a value specifying whether a field's code or result is dispalyed. + * Value: true, if the field code is displayed; false, if the field result is displayed. + */ + showCode: boolean; +} +/** + * Defines a bookmark in the document. + */ +interface Bookmark { + /** + * Gets the bookmark's start position in a document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the bookmark's length. + * Value: An integer value specifying the length of the bookmark. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current bookmark element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Gets the name of a bookmark in the document. + * Value: A string that is the unique bookmark's name. + */ + name: string; +} +/** + * Defines a section in the document. + */ +interface Section { + /** + * Gets the section's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the section's character length. + * Value: An integer value specifying the element length in characters. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current section element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Provides access to the section's headers. + * Value: An array of HeaderFooter objects storing information about the section's headers. + */ + headers: HeaderFooter[]; + /** + * Provides access to the section's footers. + * Value: An array of HeaderFooter objects storing information about the section's footers. + */ + footers: HeaderFooter[]; +} +/** + * Contains settings defining a header or footer in a document. + */ +interface HeaderFooter { + /** + * Gets the type of the header (footer). + * Value: One of the values. + */ + type: any; + /** + * Provides access to an object implementing the basic document functionality that is common to the header, footer and the main document body. + * Value: A object exposing the basic document functionality. + */ + subDocument: SubDocument; +} +/** + * Contains in-line picture settings. + */ +interface InlinePictureInfo { + /** + * Gets the image identifier. + * Value: An integer value specifying the image identifier. + */ + id: number; + /** + * Gets the image position. + * Value: An integer value specifying the image position. + */ + position: number; + /** + * Gets the initial image width. + * Value: An integer value specifying the image width. + */ + initialWidth: number; + /** + * Gets the initial image height. + * Value: An integer value specifying the image height. + */ + initialHeight: number; + /** + * Gets the X-scaling factor of the inline image. + * Value: An integer value specifying the scaling factor for the X-axis. + */ + scaleX: number; + /** + * Gets the Y-scaling factor of the inline image. + * Value: An integer value specifying the scaling factor for the Y-axis. + */ + scaleY: number; + /** + * Gets the actual image width. + * Value: An integer value specifying the image width. + */ + actualWidth: number; + /** + * Gets the actual image height. + * Value: An integer value specifying the image height. + */ + actualHeight: number; +} +declare enum HeaderFooterType { + First=0, + Odd=1, + Primary=1, + Even=2 +} +/** + * Contains the settings defining a file to save to. + */ +interface RichEditFileInfo { + /** + * Gets or sets the file's folder name. + * Value: A string value specifying the folder name. + */ + folderPath: string; + /** + * Gets or sets the file name. + * Value: A string value specifying the file name. + */ + fileName: string; + /** + * Gets or sets the file's document format. + * Value: A DocumentFormat enumeration value. + */ + documentFormat: any; +} +declare enum DocumentFormat { + Undefined=0, + PlainText=1, + Rtf=2, + Html=3, + OpenXml=4, + Mht=5, + WordML=6, + OpenDocument=7, + ePub=9, + Doc=10 +} +/** + * Contains a set of methods and properties to work with the document selection. + */ +interface RichEditSelection { + /** + * Gets or sets an array of document intervals in the selection. + * Value: An array of Interval objects. + */ + intervals: Interval[]; + /** + * Gets or sets a value specifying whether the current selection is collapsed (and represents the cursor position). + * Value: true, if the selection is collapsed; otherwise, false. + */ + collapsed: boolean; + /** + * Gets the maximum position of a document interval in the selection. + */ + getIntervalMaxPosition(): number; + /** + * Moves the cursor to the next line. + */ + goToNextLine(): void; + /** + * Moves the cursor to the next line and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToNextLine(extendSelection: boolean): void; + /** + * Moves the cursor to the end of the line in which the cursor is located. + */ + goToLineEnd(): void; + /** + * Moves the cursor to the end of the line in which the cursor is located and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToLineEnd(extendSelection: boolean): void; + /** + * Moves the cursor to the start of the line in which the cursor is located. + */ + goToLineStart(): void; + /** + * Moves the cursor to the start of the line in which the cursor is located and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToLineStart(extendSelection: boolean): void; + /** + * Moves the cursor to the previous line. + */ + goToPreviousLine(): void; + /** + * Moves the cursor to the previous line and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToPreviousLine(extendSelection: boolean): void; + /** + * Moves the cursor to the next character. + */ + goToNextCharacter(): void; + /** + * Moves the cursor to the next character and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToNextCharacter(extendSelection: boolean): void; + /** + * Moves the cursor to the previous character. + */ + goToPreviousCharacter(): void; + /** + * Moves the cursor to the previous character and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToPreviousCharacter(extendSelection: boolean): void; + /** + * Selects the line in which the cursor is located. + */ + selectLine(): void; + /** + * Selects the line in which the cursor is located and allows you to extend the entire selection with the currently existing selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + selectLine(extendSelection: boolean): void; + /** + * Moves the cursor to the beginning of the next page. + */ + goToNextPage(): void; + /** + * Moves the cursor to the beginning of the next page and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToNextPage(extendSelection: boolean): void; + /** + * Moves the cursor to the beginning of the previous page. + */ + goToPreviousPage(): void; + /** + * Moves the cursor to the beginning of the previous page and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToPreviousPage(extendSelection: boolean): void; + /** + * Moves the cursor to the start of the document. + */ + goToDocumentStart(): void; + /** + * Moves the cursor to the start of the document and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToDocumentStart(extendSelection: boolean): void; + /** + * Moves the cursor to the end of the document. + */ + goToDocumentEnd(): void; + /** + * Moves the cursor to the end of the document and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToDocumentEnd(extendSelection: boolean): void; + /** + * Moves the cursor to the next word. + */ + goToNextWord(): void; + /** + * Moves the cursor to the next word and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToNextWord(extendSelection: boolean): void; + /** + * Moves the cursor to the previous word. + */ + goToPrevWord(): void; + /** + * Moves the cursor to the previous word and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToPrevWord(extendSelection: boolean): void; + /** + * Moves the cursor to the start of the paragraph in which the cursor is located. + */ + goToParagraphStart(): void; + /** + * Moves the cursor to the start of the paragraph in which the cursor is located and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToParagraphStart(extendSelection: boolean): void; + /** + * Moves the cursor to the end of the paragraph in which the cursor is located. + */ + goToParagraphEnd(): void; + /** + * Moves the cursor to the end of the paragraph in which the cursor is located and allows you to extend the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToParagraphEnd(extendSelection: boolean): void; + /** + * Selects the paragraph in which the cursor is located. + */ + selectParagraph(): void; + /** + * Moves the cursor to the next page break mark. + */ + goToStartNextPageCommand(): void; + /** + * Moves the cursor to the next page break mark and extends the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToStartNextPageCommand(extendSelection: boolean): void; + /** + * Moves the cursor to the previous page break mark. + */ + goToStartPrevPageCommand(): void; + /** + * Moves the cursor to the previous page break mark and extends the selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + goToStartPrevPageCommand(extendSelection: boolean): void; + /** + * Selects the table cell in which the cursor is located. + */ + selectTableCell(): void; + /** + * Selects the table cell in which the cursor is located and allows you to extend the entire selection with the currently existing selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + selectTableCell(extendSelection: boolean): void; + /** + * Selects the table row in which the cursor is located. + */ + selectTableRow(): void; + /** + * Selects the table row in which the cursor is located and allows you to extend the entire selection with the currently existing selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + selectTableRow(extendSelection: boolean): void; + /** + * Selects the entire table in which the cursor is located. + */ + selectTable(): void; + /** + * Selects the entire table in which the cursor is located and allows you to extend the entire selection with the currently existing selection. + * @param extendSelection true to extend the selection; otherwise, false. + */ + selectTable(extendSelection: boolean): void; + /** + * Selects the editor's entire content. + */ + selectAll(): void; + /** + * Makes the main sub-document active and moves the cursor to its beginning. + */ + setMainSubDocumentAsActive(): void; + /** + * Creates a footer sub-document (if it was not created before) and sets the footer as the active sub-document. Moves the cursor to the footer's start position. + * @param pageIndex An integer value specifying the active page's index. + */ + setFooterSubDocumentAsActiveByPageIndex(pageIndex: number): void; + /** + * Creates a header sub-document (if it was not created before) and sets the header as the active sub-document. Moves the cursor to the header's start position. + * @param pageIndex An integer value specifying the active page's index. + */ + setHeaderSubDocumentAsActiveByPageIndex(pageIndex: number): void; +} +/** + * Defines a document's interval. + */ +interface Interval { + /** + * Gets the interval's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the interval's character length. + * Value: An integer value specifying the element length in characters. + */ + length: number; +} +/** + * Contains spell checking related settings. + */ +interface SpellingInfo { + /** + * Gets a value specifying the spell checking state. + * Value: One of the enumeration values. + */ + spellCheckerState: any; + /** + * Provides access to an array containing misspelled intervals. + * Value: An array of objects. + */ + misspelledIntervals: MisspelledInterval[]; +} +declare enum SpellCheckerState { + Disabled=0, + InProgress=1, + Done=2 +} +/** + * Contains the settings defining a misspelled interval. + */ +interface MisspelledInterval { + /** + * Gets the start position of the misspelled word in the interval. + * Value: An integer value specifying the misspelled word's start position. + */ + start: number; + /** + * Gets the length of the misspelled interval. + * Value: An integer value specifying the misspelled interval's length. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Gets the spelling error type. + * Value: One of the enumeration values. + */ + errorType: any; + /** + * Gets an erroneous word found during spell check. + * Value: A string that is the erroneous or misspelled word. + */ + word: string; + /** + * Gets a list of suggested words to replace the misspelled word. + * Value: A string array containing suggested words. + */ + suggestions: string[]; +} +declare enum SpellingErrorType { + Misspelling=0, + Repeating=1 +} +/** + * Serves as a base for objects implementing different element styles. + */ +interface StyleBase { + /** + * Gets or sets the name of the style. + * Value: A string specifying the style name. + */ + name: string; + /** + * Gets whether the specified style is marked as deleted. + * Value: true, if the style is deleted; otherwise, false. + */ + isDeleted: boolean; +} +/** + * Defines the paragraph style settings. + */ +interface ParagraphStyle extends StyleBase { + /** + * Gets or sets the linked style for the current style. + * Value: A object representing a character style linked to a current style. + */ + linkedStyle: CharacterStyle; + /** + * Gets or sets the default style for a paragraph that immediately follows the current paragraph. + * Value: A object specifying the style for the next paragraph. + */ + nextStyle: ParagraphStyle; + /** + * Gets the index of the list item associated with the paragraph formatted with the current style. + * Value: An integer value specifying the list item index. + */ + listIndex: number; + /** + * Gets the index of the list level applied to the paragraph formatted with the current style. + * Value: An integer that is the list level index. + */ + listLevelIndex: number; + /** + * Gets or sets the style from which the current style inherits. + * Value: A object representing the parent style. + */ + parent: ParagraphStyle; +} +/** + * Contains characteristics of a character style in a document. + */ +interface CharacterStyle extends StyleBase { + /** + * Gets or sets the linked style for the current style. + * Value: A object representing a paragraph style linked to a current style. + */ + linkedStyle: ParagraphStyle; + /** + * Gets the style form which the current style inherits. + * Value: A object representing the parent style. + */ + parent: CharacterStyle; +} +/** + * Defines the table style settings. + */ +interface TableStyle extends StyleBase { + /** + * Gets or sets the style from which the current style inherits. + * Value: A object that is the parent style. + */ + parent: TableStyle; +} +/** + * Exposes the settings providing the information about the essential document functionality. + */ +interface SubDocument { + /** + * Gets the sub-document identifier. + * Value: An integer value specifying the sub-document identifier. + */ + id: number; + /** + * Gets a value specifying the sub-document type. + * Value: One of the enumeration values. + */ + type: any; + /** + * Provides information about paragraphs contained in the document. + * Value: An array of Paragraph objects storing information about document paragraphs. + */ + paragraphsInfo: Paragraph[]; + /** + * Provides information about fields in the current document. + * Value: An array of Field objects storing information about document fields. + */ + fieldsInfo: Field[]; + /** + * Provides information about tables contained in the document. + * Value: An array of Table objects storing information about document tables. + */ + tablesInfo: Table[]; + /** + * Provides information about document bookmarks. + * Value: An array of Bookmark objects storing information about document bookmarks. + */ + bookmarksInfo: Bookmark[]; + /** + * Provides access to an array of objects containing in-line picture settings. + * Value: An array of objects. + */ + inlinePicturesInfo: InlinePictureInfo[]; + /** + * Gets the document's textual representation. + * Value: A string value specifying the document's text. + */ + text: string; + /** + * Gets the character length of the document. + * Value: An integer that is the number of character positions in the document. + */ + length: number; +} +declare enum SubDocumentType { + Main=0, + Header=1, + Footer=2, + TextBox=3 +} +/** + * Defines a table in the document. + */ +interface Table { + /** + * Gets the table's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the table length in characters. + * Value: A integer value specifying the character length of the table. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current table element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Provides access to a collection of table rows. + * Value: An array of TableRow objects storing information about individual table rows. + */ + rows: TableRow[]; + /** + * Gets the name of the style applied to the table (see name). + * Value: A string value specifying the style name. + */ + styleName: string; +} +/** + * Defines a table row in the document. + */ +interface TableRow { + /** + * Gets the table row's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the table row's character length. + * Value: An integer value specifying the element length in characters. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current table row element. + * Value: An object specifying the interval settings. + */ + interval: Interval; + /** + * Provides information about the table row's cells. + * Value: An array of TableCell objects storing information about cells. + */ + cells: TableCell[]; +} +/** + * Defines a table cell in the document. + */ +interface TableCell { + /** + * Gets the table cell's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets the table cell's character length. + * Value: An integer value specifying the element length in characters. + */ + length: number; + /** + * Gets the text buffer interval occupied by the current table cell element. + * Value: An object specifying the interval settings. + */ + interval: Interval; +} +/** + * Contains the method to convert different units of measurement. + */ +interface RichEditUnitConverter { + /** + * Converts a measurement from pixels to twips. + * @param value The pixels value to be converted. + */ + pixelsToTwips(value: number): number; + /** + * Converts a measurement from inches to twips. + * @param value The inches value (floating) to be converted. + */ + inchesToTwips(value: number): number; + /** + * Converts a measurement from points to twips. + * @param value The points value to be converted. + */ + pointsToTwips(value: number): number; + /** + * Converts a value in centimeters to twips. + * @param value A floating value specifying the value in centimeters to convert. + */ + centimetersToTwips(value: number): number; + /** + * Converts a measurement from twips to centimeters. + * @param value The twips value to be converted. + */ + twipsToCentimeters(value: number): number; + /** + * Converts a measurement from pixels to centimeters. + * @param value The pixels value to be converted. + */ + pixelsToCentimeters(value: number): number; + /** + * Converts a measurement from twips to inches. + * @param value The twips value to be converted. + */ + twipsToInches(value: number): number; + /** + * Converts a measurement from pixels to inches. + * @param value The pixels value to be converted. + */ + pixelsToInches(value: number): number; + /** + * Converts a measurement from pixels to points. + * @param value The pixels value to be converted. + */ + pixelsToPoints(value: number): number; + /** + * Converts a measurement from twips to points. + * @param value The twips value to be converted. + */ + twipsToPoints(value: number): number; +} +/** + * A command to invoke the Bookmark dialog. + */ +interface OpenInsertBookmarkDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenInsertBookmarkDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a new bookmark that references the current selection. + */ +interface InsertBookmarkCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertBookmarkCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param name A string value specifying a name of the created bookmark. + * @param start An integer value specifying the start position of the bookmark's range. + * @param length An integer value specifying the length of the bookmark's range. + */ + execute(name: string, start: number, length: number): boolean; +} +/** + * A command to delete a specific bookmark. + */ +interface DeleteBookmarkCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteBookmarkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param name A string value specifying a name of the deleted bookmark. + */ + execute(name: string): boolean; +} +/** + * Gets a command to navigate to the specified bookmark in the document. + */ +interface GoToBookmarkCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToBookmarkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param name + */ + execute(name: string): boolean; +} +/** + * A command to paste the text from the clipboard over the selection. + */ +interface PasteCommand extends CommandWithSimpleStateBase { + /** + * Executes the PasteCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to copy the selected text and place it to the clipboard. + */ +interface CopyCommand extends CommandWithSimpleStateBase { + /** + * Executes the CopyCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to cut the selected text and place it to the clipboard. + */ +interface CutCommand extends CommandWithSimpleStateBase { + /** + * Executes the CutCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert an empty document field at the current position in the document. + */ +interface CreateFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreateFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to update the field's result. + */ +interface UpdateFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the UpdateFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to display the selected field's field codes. + */ +interface ShowFieldCodesCommand extends CommandWithSimpleStateBase { + /** + * Executes the ShowFieldCodesCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param showFieldCodes true to display field codes, false to hide field codes. + */ + execute(showFieldCodes: boolean): boolean; + /** + * Executes the ShowFieldCodesCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to display all field codes in place of the fields in the document. + */ +interface ShowAllFieldCodesCommand extends CommandWithSimpleStateBase { + /** + * Executes the ShowAllFieldCodesCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param showFieldCodes true to display field codes, false to hide field codes. + */ + execute(showFieldCodes: boolean): boolean; + /** + * Executes the ShowAllFieldCodesCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to update all fields in the selected range. + */ +interface UpdateAllFieldsCommand extends CommandWithSimpleStateBase { + /** + * Executes the UpdateAllFieldsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a DATE field displaying the current date. + */ +interface CreateDateFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreateDateFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a TIME field displaying the current time. + */ +interface CreateTimeFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreateTimeFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a PAGE field displaying the current page number. + */ +interface CreatePageFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreatePageFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the next data record of the bound data source. + */ +interface GoToDataRecordCommand extends CommandBase { + /** + * Executes the GoToDataRecordCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param activeRecordIndex An integer value specifying index of the next data record. + */ + execute(activeRecordIndex: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * Contains the settings defining a data record. + */ +interface DataRecordOptions { + /** + * Gets or sets the index of the active data record. + * Value: An integer value specifying the data record index. + */ + activeRecordIndex: number; + recordCount: number; +} +/** + * A command to navigate to the first data record of the bound data source. + */ +interface GoToFirstDataRecordCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToFirstDataRecordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the previous data record of the bound data source. + */ +interface GoToPreviousDataRecordCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToPreviousDataRecordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the next data record of the bound data source. + */ +interface GoToNextDataRecordCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToNextDataRecordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the last data record of the bound data source. + */ +interface GoToLastDataRecordCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToLastDataRecordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to display or hide actual data in MERGEFIELD fields. + */ +interface ShowMergedDataCommand extends CommandWithBooleanStateBase { + /** + * Executes the ShowMergedDataCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ShowMergedDataCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param showMergedData true to display merged data, false to hide merged data. + */ + execute(showMergedData: boolean): boolean; +} +/** + * A command to invoke the Insert Merge Field dialog. + */ +interface MergeFieldDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the MergeFieldDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a MERGEFIELD field (with a data source column name) at the current position in the document. + */ +interface CreateMergeFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreateMergeFieldCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fieldName A string value specifying the name of the merge field. + */ + execute(fieldName: string): boolean; +} +/** + * Gets a command to invoke the Export Range dialog to start a mail merge. + */ +interface MailMergeDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the MailMergeDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to start the mail merge process and download the resulting document containing the merged information. + */ +interface MailMergeAndDownloadCommand extends CommandBase { + /** + * Executes the MailMergeAndDownloadCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fileExtension A string value specifying the file extension of the resulting document. + */ + execute(fileExtension: string): boolean; + /** + * Executes the MailMergeAndDownloadCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param documentFormat One of the DocumentFormat enumeration values. + */ + execute(documentFormat: any): boolean; + /** + * Executes the MailMergeAndDownloadCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fileExtension A string value specifying the file extension of the resulting document. + * @param settings A MailMergeSettings object containing settings to set up mail merge operations. + */ + execute(fileExtension: string, settings: MailMergeSettings): boolean; + /** + * Executes the MailMergeAndDownloadCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param documentFormat One of the DocumentFormat enumeration values. + * @param settings A MailMergeSettings object specifying the mail merge settings. + */ + execute(documentFormat: any, settings: MailMergeSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to start the mail merge process and save the resulting merged document to the server. + */ +interface MailMergeAndSaveAsCommand extends CommandBase { + /** + * Executes the MailMergeAndSaveAsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param filePath A string value specifying path to the saving file on the server. + */ + execute(filePath: string): boolean; + /** + * Executes the MailMergeAndSaveAsCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fileInfo A RichEditFileInfo object specifying a file to save to. + * @param settings A MailMergeSettings object specifying the mail merge settings. + */ + execute(fileInfo: RichEditFileInfo, settings: MailMergeSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to insert a NUMPAGES field displaying the total number of pages. + */ +interface CreatePageCountFieldCommand extends CommandWithSimpleStateBase { + /** + * Executes the CreatePageCountFieldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * Contains settings to set up mail merge operations. + */ +interface MailMergeSettings { + /** + * Gets or sets a value specifying which data rows should be exported into a merged document. + * Value: One of the values. + */ + range: any; + /** + * Gets or sets the index of the row from which the exported range starts. + * Value: An integer value specifying the row index. + */ + exportFrom: number; + /** + * Gets or sets the number of data rows in the exported mail-merge range. + * Value: An integer value specifying the row count. + */ + exportRecordsCount: number; + /** + * Gets or sets the merge mode. + * Value: One of the values. + */ + mergeMode: any; +} +declare enum MergeMode { + NewParagraph=0, + NewSection=1, + JoinTables=2 +} +declare enum MailMergeExportRange { + AllRecords=0, + CurrentRecord=1, + Range=2 +} +/** + * A command to create a new empty document. + */ +interface FileNewCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileNewCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to open the file, specifying its path. + */ +interface FileOpenCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileOpenCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param path A string value specifying path to the opening file. + */ + execute(path: string): boolean; +} +/** + * A command to invoke the File Open dialog allowing one to select and load a document file into RichEdit. + */ +interface FileOpenDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileOpenDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to save the document to a file. + */ +interface FileSaveCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileSaveCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Save As dialog that prompts for a file name and saves the current document in a file with the specified path. + */ +interface FileSaveAsCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileSaveAsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param path A string value specifying path to the saving file. + */ + execute(path: string): boolean; + /** + * Executes the FileSaveAsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fileInfo A object specifying a file to save to. + */ + execute(fileInfo: RichEditFileInfo): boolean; +} +/** + * A command to download the document file, specifying its extension. + */ +interface FileDownloadCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileDownloadCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fileExtension A string value specifying the extension of the downloading file. + */ + execute(fileExtension: string): boolean; + /** + * Executes the FileDownloadCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param documentFormat A DocumentFormat enumeration value. + */ + execute(documentFormat: any): boolean; +} +/** + * A command to open the file's Save As dialog. + */ +interface FileSaveAsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the FileSaveAsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke a browser-specific Print dialog allowing one to print the current document. + */ +interface FilePrintCommand extends CommandWithSimpleStateBase { + /** + * Executes the FilePrintCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Search Panel allowing end-users to search text and navigate through search results. + */ +interface OpenFindPanelCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenFindPanelCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Find and Replace dialog. + */ +interface OpenFindAndReplaceDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenFindAndReplaceDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to find all matches of the specified text in the document. + */ +interface FindAllCommand extends CommandWithSimpleStateBase { + /** + * Executes the FindAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param text A string value specifying finding text. + * @param matchCase true, to perform a case-sensitive search; otherwise, false. + * @param highlightResults true, to highlight result of search; otherwise, false. + */ + execute(text: string, matchCase: boolean, highlightResults: boolean): boolean; + /** + * Executes the FindAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param text A string value specifying text to find. + * @param matchCase true, to perform a case-sensitive search; otherwise, false. + * @param highlightResults true, to highlight result of search; otherwise, false. + * @param results An array of Interval objects containing the results of search. + */ + execute(text: string, matchCase: boolean, highlightResults: boolean, results: Interval[]): boolean; +} +/** + * A command to hide the search results. + */ +interface HideFindResultsCommand extends CommandWithSimpleStateBase { + /** + * Executes the HideFindResultsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to search for a specific text and replace all matches in the document with the specified string. + */ +interface ReplaceAllCommand extends CommandWithSimpleStateBase { + /** + * Executes the ReplaceAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param text A string value specifying a text to replace. + * @param replaceText A string value specifying the replacing text. + * @param matchCase true, to perform a case-sensitive search; otherwise, false. + */ + execute(text: string, replaceText: string, matchCase: boolean): boolean; +} +/** + * A command to search for a specific text and replace the next match in the document with the specified string. + */ +interface ReplaceNextCommand extends CommandWithSimpleStateBase { + /** + * Executes the ReplaceNextCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param text A string value specifying text to replace. + * @param replaceText A string value specifying replacing text. + * @param matchCase true, to perform a case-sensitive search; otherwise, false. + */ + execute(text: string, replaceText: string, matchCase: boolean): boolean; +} +interface OpenLayoutOptionsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenLayoutOptionsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a floating text box. + */ +interface InsertFloatingTextBoxCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertFloatingTextBoxCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to lock a floating object's anchor. + */ +interface ChangeFloatingObjectLockAnchorCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectLockAnchorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param lockAnchor true to lock the anchor; false, otherwise. + */ + execute(lockAnchor: boolean): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's alignment position. + */ +interface ChangeFloatingObjectAlignmentPositionCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectAlignmentPositionCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FloatingObjectAlignmentPositionSettings object specifying alignment position settings. + */ + execute(settings: FloatingObjectAlignmentPositionSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change a floating object's absolute position. + */ +interface ChangeFloatingObjectAbsolutePositionCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectAbsolutePositionCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FloatingObjectAbsolutePositionSettings object specifying page margin settings. + */ + execute(settings: FloatingObjectAbsolutePositionSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's relative position. + */ +interface ChangeFloatingObjectRelativePositionCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectRelativePositionCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FloatingObjectRelativePositionSettings object specifying relative positioin settings. + */ + execute(settings: FloatingObjectRelativePositionSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's text wrapping settings. + */ +interface ChangeFloatingObjectTextWrappingCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectTextWrappingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FloatingObjectTextWrappingSettings object specifying text wrapping settings. + */ + execute(settings: FloatingObjectTextWrappingSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change a floating object's absolute size. + */ +interface ChangeFloatingObjectAbsoluteSizeCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectAbsoluteSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FloatingObjectAbsoluteSizeSettings object specifying absolute size settings. + */ + execute(settings: FloatingObjectAbsoluteSizeSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a text box' relative size settings. + */ +interface ChangeTextBoxRelativeSizeCommand extends CommandBase { + /** + * Executes the ChangeTextBoxRelativeSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TextBoxRelativeSizeSettings object specifying relative size settings. + */ + execute(settings: TextBoxRelativeSizeSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to rotate a floating object. + */ +interface ChangeFloatingObjectRotationCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectRotationCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param rotation An integer value specifying the angle of rotation. + */ + execute(rotation: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to lock a floating object's aspect ratio. + */ +interface ChangeFloatingObjectLockAspectRatioCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectLockAspectRatioCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param lockAspectRatio true to lock the aspect ratio and maintain the proportions; otherwise, false. + */ + execute(lockAspectRatio: boolean): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's background fill color. + */ +interface ChangeFloatingObjectFillColorCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectFillColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string value specifying the color. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's outline color. + */ +interface ChangeFloatingObjectOutlineColorCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectOutlineColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string value specifying the color. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a floating object's outline width. + */ +interface ChangeFloatingObjectOutlineWidthCommand extends CommandBase { + /** + * Executes the ChangeFloatingObjectOutlineWidthCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param width An integer value specifying the outline width. + */ + execute(width: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to modify a text box' content margins. + */ +interface ChangeTextBoxContentMarginsCommand extends CommandBase { + /** + * Executes the ChangeTextBoxContentMarginsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A Margins object specifying margin settings. + */ + execute(settings: Margins): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +interface ChangeTextBoxResizeShapeToFitTextCommand extends CommandBase { + execute(resizeShapeToFitText: boolean): boolean; + getState(): any; +} +/** + * Contains alignment position settings for floating objects. + */ +interface FloatingObjectAlignmentPositionSettings { + /** + * Gets or sets a value specifying how a floating object is horizontally aligned relative to an element specified by the horizontalPositionAlignment property. + * Value: One of the enumeration values. + */ + horizontalPositionAlignment: any; + /** + * Gets or sets a value specifying to what element the horizontal alignment of a floating object is relative. + * Value: One of the enumeration values. + */ + horizontalPositionType: any; + /** + * Gets or sets a value specifying how a floating object is vertically aligned relative to an element specified by the verticalPositionAlignment property. + * Value: One of the enumeration values. + */ + verticalPositionAlignment: any; + /** + * Gets or sets a value specifying to what element the vertical alignment of a floating object is relative. + * Value: One of the enumeration values. + */ + verticalPositionType: any; +} +/** + * Contains page margin settings. + */ +interface FloatingObjectAbsolutePositionSettings { + /** + * Gets or sets a floating object's horizontal position relative to an element specified by the horizontalPositionType property. + * Value: An integer value specifying the position. + */ + horizontalAbsolutePosition: number; + /** + * Gets or sets a value specifying to what element the horizontal position of a floating object is relative. + * Value: One of the enumeration values. + */ + horizontalPositionType: any; + /** + * Gets or sets a floating object's vertical position relative to an element specified by the verticalPositionType property. + * Value: An integer value specifying the position. + */ + verticalAbsolutePosition: number; + /** + * Gets or sets a value specifying to what element the vertical position of a floating object is relative. + * Value: One of the enumeration values. + */ + verticalPositionType: any; +} +/** + * Contains relative position settings for floating objects. + */ +interface FloatingObjectRelativePositionSettings { + /** + * Gets or sets the horizontal distance between the edge of a floating object and the element specified by the horizontalRelativePosition property + * Value: An integer value specifying the horizontal position. + */ + horizontalRelativePosition: number; + /** + * Gets or sets a value specifying to what element the horizontal position of a floating object is relative. + * Value: One of the enumeration values. + */ + horizontalPositionType: any; + /** + * Gets or sets the horizontal distance between the edge of a floating object and the element specified by the verticalRelativePosition property + * Value: An integer value specifying the vertical position. + */ + verticalRelativePosition: number; + /** + * Gets or sets a value specifying to what element the vertical position of a floating object is relative. + * Value: One of the enumeration values. + */ + verticalPositionType: any; +} +/** + * Contains text wrapping settings for floating objects. + */ +interface FloatingObjectTextWrappingSettings { + /** + * Gets or sets a value specifying how text is wrapped around a floating object. + * Value: One of the enumeration values. + */ + floatingObjectTextWrapType: any; + /** + * Gets or sets a value specifying how text can wrap around a floating object's left and right sides. + * Value: One of the enumeration values. + */ + floatingObjectTextWrapSide: any; + /** + * Gets or sets the left offset of text wrapping. + * Value: An integer value specifying the left offset. + */ + leftDistance: number; + /** + * Gets or sets the right offset of text wrapping. + * Value: An integer value specifying the right offset. + */ + rightDistance: number; + /** + * Gets or sets the top offset of text wrapping. + * Value: An integer value specifying the top offset. + */ + topDistance: number; + /** + * Gets or sets the bottom offset of text wrapping. + * Value: An integer value specifying the bottom offset. + */ + bottomDistance: number; +} +/** + * Contains absolute size settings for floating objects. + */ +interface FloatingObjectAbsoluteSizeSettings { + /** + * Gets or sets a floating object's absolute width. + * Value: An integer value specifying the width. + */ + absoluteWidth: number; + /** + * Gets or sets a floating object's absolute height. + * Value: An integer value specifying the height. + */ + absoluteHeight: number; +} +/** + * Contains relative size settings for floating objects. + */ +interface TextBoxRelativeSizeSettings { + /** + * Gets or sets the percentage specifying a floating object's width relative to the element defined by the relativeWidthType property. + * Value: An integer value specifying the relative width, as a percentage. + */ + relativeWidth: number; + /** + * Gets or sets a value specifying to what element the floating object width is relative. + * Value: One of the enumeration values. + */ + relativeWidthType: any; + /** + * Gets or sets the percentage specifying a floating object's height relative to the element defined by the relativeHeightType property. + * Value: An integer value specifying the relative height, as a percentage. + */ + relativeHeight: number; + /** + * Gets or sets a value specifying to what element the floating object height is relative. + * Value: One of the enumeration values. + */ + relativeHeightType: any; +} +declare enum FloatingObjectRelativeWidthType { + Margin=0, + Page=1, + LeftMargin=2, + RightMargin=3, + InsideMargin=4, + OutsideMargin=5 +} +declare enum FloatingObjectRelativeHeightType { + Margin=0, + Page=1, + TopMargin=2, + BottomMargin=3, + InsideMargin=4, + OutsideMargin=5 +} +declare enum FloatingObjectTextWrapType { + None=0, + TopAndBottom=1, + Tight=2, + Through=3, + Square=4 +} +declare enum FloatingObjectTextWrapSide { + Both=0, + Left=1, + Right=2, + Largest=3 +} +declare enum FloatingObjectHorizontalPositionType { + Page=0, + Character=1, + Column=2, + Margin=3, + LeftMargin=4, + RightMargin=5, + InsideMargin=6, + OutsideMargin=7 +} +declare enum FloatingObjectHorizontalPositionAlignment { + None=0, + Left=1, + Center=2, + Right=3, + Inside=4, + Outside=5 +} +declare enum FloatingObjectVerticalPositionType { + Page=0, + Line=1, + Paragraph=2, + Margin=3, + TopMargin=4, + BottomMargin=5, + InsideMargin=6, + OutsideMargin=7 +} +declare enum FloatingObjectVerticalPositionAlignment { + None=0, + Top=1, + Center=2, + Bottom=3, + Inside=4, + Outside=5 +} +/** + * A command to cancel changes caused by the previous command. + */ +interface UndoCommand extends CommandWithSimpleStateBase { + /** + * Executes the UndoCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to reverse actions of the previous undo command. + */ +interface RedoCommand extends CommandWithSimpleStateBase { + /** + * Executes the RedoCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Hyperlink dialog. + */ +interface OpenInsertHyperlinkDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenInsertHyperlinkDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a hyperlink at the current position in the document. + */ +interface InsertHyperlinkCommand extends CommandBase { + /** + * Executes the InsertHyperlinkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A HyperLinkSettings object specifying hyperlink settings. + */ + execute(settings: HyperlinkSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to delete the selected hyperlink. + */ +interface DeleteHyperlinkCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteHyperlinkCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete all hyperlinks in a selected range. + */ +interface DeleteHyperlinksCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteHyperlinksCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the document bookmark or URI (uniform resource identifier) specified for the hyperlink. + */ +interface OpenHyperlinkCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenHyperlinkCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * Contains settings to define hyperlinks. + */ +interface HyperlinkSettings { + /** + * Gets or sets a text displayed for a hyperlink. + * Value: A string value specifying the hyperlink display text. + */ + text: string; + /** + * Gets or sets a text for the tooltip displayed when the mouse hovers over a hyperlink. + * Value: A string containing the tooltip text. + */ + tooltip: string; + /** + * Gets or sets the hyperlink destination. + * Value: A string value that specifies the destination to which a hyperlink refers. + */ + url: string; + /** + * Gets or sets the associated bookmak. + * Value: A string value specifying the bookmark name. + */ + bookmark: string; +} +/** + * A command to insert a page break at the current position in the document. + */ +interface InsertPageBreakCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertPageBreakCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a column break at the current position in the document. + */ +interface InsertColumnBreakCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertColumnBreakCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a section break and start a new section on the next page. + */ +interface InsertSectionBreakNextPageCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertSectionBreakNextPageCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a section break and start a new section on the next even-numbered page. + */ +interface InsertSectionBreakEvenPageCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertSectionBreakEvenPageCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a section break and start a new section on the next odd-numbered page. + */ +interface InsertSectionBreakOddPageCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertSectionBreakOddPageCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert the line break at the current position in the document. + */ +interface InsertLineBreakCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertLineBreakCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle between the bulleted paragraph and normal text. + */ +interface ToggleBulletedListCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleBulletedListCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle between the numbered paragraph and normal text. + */ +interface ToggleNumberingListCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleNumberingListCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle between the multilevel list style and normal text. + */ +interface ToggleMultilevelListCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleMultilevelListCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Bulleted and Numbering dialog. + */ +interface OpenNumberingListDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenNumberingListDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Customize Numbered List dialog. + */ +interface OpenCustomNumberingListDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenCustomNumberingListDialogCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param abstractNumberingListIndex An integer value specifying index of abstract numbering list. + */ + execute(abstractNumberingListIndex: number): boolean; +} +/** + * A command to customize the numbered list parameters. + */ +interface ChangeCustomNumberingListCommand extends CommandBase { + /** + * Executes the ChangeCustomNumberingListCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param abstractNumberingListIndex An integer value specifying the numbering list index. + * @param listLevelSettings An array of ListLevelSettings objects defining settings for list levels. + */ + execute(abstractNumberingListIndex: number, listLevelSettings: ListLevelSettings[]): boolean; + /** + * Gets information about the command state. + * @param abstractNumberingListIndex An integer value specifying the index of the abstract numbering list item whose state to return. + */ + getState(abstractNumberingListIndex: number): any; +} +/** + * A command to restart the numbering list. + */ +interface RestartNumberingListCommand extends CommandWithSimpleStateBase { + /** + * Executes the RestartNumberingListCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to increment the indent level of paragraphs in a selected numbered list. + */ +interface IncrementNumberingIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the IncrementNumberingIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to decrement the indent level of paragraphs in a selected numbered list. + */ +interface DecrementNumberingIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the DecrementNumberingIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to continue the list's numbering. + */ +interface ContinueNumberingListCommand extends CommandWithSimpleStateBase { + /** + * Executes the ContinueNumberingListCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert numeration to a paragraph making it a numbering list item. + */ +interface InsertNumerationCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertNumerationCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param abstractNumberingListIndex An integer value specifying index of abstract numbering list. + */ + execute(abstractNumberingListIndex: number): boolean; + /** + * Executes the InsertNumerationCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param numberingListIndex An integer value specifying an index of the numbering list. + * @param isAbstractNumberingList true, to insert an abstract numbering list; otherwise, false. + */ + execute(numberingListIndex: number, isAbstractNumberingList: boolean): boolean; +} +/** + * A command to remove the selected numeration. + */ +interface RemoveNumerationCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemoveNumerationCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * Contains settings to define individual bulleted or numbered list levels. + */ +interface ListLevelSettings { + /** + * Gets or sets the pattern used to format the list level for display purposes. + * Value: A string value specifying the format pattern. + */ + displayFormatString: string; + /** + * Gets or sets the numbering format used for the current list level's paragraph. + * Value: One of the values. + */ + format: any; + /** + * Gets the list level item's start position in the document. + * Value: An integer value specifying the start position. + */ + start: number; + /** + * Gets or sets the paragraph text alignment within numbered list levels. + * Value: One of the values. + */ + alignment: any; + /** + * Gets or sets the character inserted after the number for a numbered list item. + * Value: A string value that is the trailing character for the list level. + */ + separator: string; + /** + * Gets or sets the left indent for text within the current list level's paragraph. + * Value: An integer value specifying the left indent. + */ + leftIndent: number; + /** + * Gets or sets a value specifying the indent of the first line of the current list level's paragraph. + * Value: An integer value specifying the indent. + */ + firstLineIndent: number; + /** + * Gets or sets a value specifying whether and how the first line of the current list level's paragraph is indented. + * Value: One of the values. + */ + firstLineIndentType: any; + /** + * Gets or sets the font name of the current list level's paragraph. + * Value: A string value specifying the font name. + */ + fontName: string; + /** + * Gets or sets the font color of the current list level's paragraph. + * Value: A string value specifying the font color. + */ + fontColor: string; + /** + * Gets or sets the font size of the current list level's paragraph. + * Value: An integer value specifying the font size. + */ + fontSize: number; + /** + * Gets or sets whether the font formatting of the current list level's paragraph is bold. + * Value: true, if the font formatting is bold; otherwise, false. + */ + fontBold: boolean; + /** + * Gets or sets whether the font formatting of the current list level's paragraph is italic. + * Value: true, if the font formatting is italic; otherwise, false. + */ + fontItalic: boolean; +} +declare enum ListLevelFormat { + Decimal=0, + AIUEOHiragana=1, + AIUEOFullWidthHiragana=2, + ArabicAbjad=3, + ArabicAlpha=4, + Bullet=5, + CardinalText=6, + Chicago=7, + ChineseCounting=8, + ChineseCountingThousand=9, + ChineseLegalSimplified=10, + Chosung=11, + DecimalEnclosedCircle=12, + DecimalEnclosedCircleChinese=13, + DecimalEnclosedFullstop=14, + DecimalEnclosedParentheses=15, + DecimalFullWidth=16, + DecimalFullWidth2=17, + DecimalHalfWidth=18, + DecimalZero=19, + Ganada=20, + Hebrew1=21, + Hebrew2=22, + Hex=23, + HindiConsonants=24, + HindiDescriptive=25, + HindiNumbers=26, + HindiVowels=27, + IdeographDigital=28, + IdeographEnclosedCircle=29, + IdeographLegalTraditional=30, + IdeographTraditional=31, + IdeographZodiac=32, + IdeographZodiacTraditional=33, + Iroha=34, + IrohaFullWidth=35, + JapaneseCounting=36, + JapaneseDigitalTenThousand=37, + JapaneseLegal=38, + KoreanCounting=39, + KoreanDigital=40, + KoreanDigital2=41, + KoreanLegal=42, + LowerLetter=43, + LowerRoman=44, + None=45, + NumberInDash=46, + Ordinal=47, + OrdinalText=48, + RussianLower=49, + RussianUpper=50, + TaiwaneseCounting=51, + TaiwaneseCountingThousand=52, + TaiwaneseDigital=53, + ThaiDescriptive=54, + ThaiLetters=55, + ThaiNumbers=56, + UpperLetter=57, + UpperRoman=58, + VietnameseDescriptive=59 +} +declare enum ListLevelNumberAlignment { + Left=0, + Center=1, + Right=2 +} +/** + * A command to invoke the Insert Image dialog. + */ +interface OpenInsertPictureDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenInsertPictureDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a picture from a file. + */ +interface InsertPictureCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertPictureCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param imageUrl A string value specifying picture's Url. + */ + execute(imageUrl: string): boolean; +} +/** + * A command to invoke the Symbols dialog. + */ +interface OpenInsertSymbolDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenInsertSymbolDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a character into the document. + */ +interface InsertSymbolCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertSymbolCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param symbol A string value specifying symbols to insert. + * @param fontName A string value specifying the font of symbols to insert. + */ + execute(symbol: string, fontName: string): boolean; +} +/** + * A command to insert a paragraph break at the current position in the document. + */ +interface InsertParagraphCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertParagraphCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert text at the current position in the document. + */ +interface InsertTextCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTextCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param text A string value specifying a text to insert. + */ + execute(text: string): boolean; +} +/** + * A command to delete the text in a selected range. + */ +interface DeleteCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to remove the previous word. + */ +interface RemovePrevWordCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemovePrevWordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to remove the next word. + */ +interface RemoveNextWordCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemoveNextWordCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to move the cursor backwards and erase the character in that space. + */ +interface BackspaceCommand extends CommandWithSimpleStateBase { + /** + * Executes the BackspaceCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to scale pictures in a selected range. + */ +interface ChangePictureScaleCommand extends CommandBase { + /** + * Executes the ChangePictureScaleCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param scale A Scale object specifying scaling of the picture. + */ + execute(scale: Scale): boolean; + /** + * Executes the ChangePictureScaleCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param x An interger number specifying width of the picture + * @param y An interger number specifying height of the picture + */ + execute(x: number, y: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to move the selected range to a specific position in the document. + */ +interface MoveContentCommand extends CommandWithSimpleStateBase { + /** + * Executes the MoveContentCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param position An integer value specifying position to insert selected text. + */ + execute(position: number): boolean; +} +/** + * A command to copy the selected text and place it to the specified position. + */ +interface CopyContentCommand extends CommandWithSimpleStateBase { + /** + * Executes the CopyContentCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param position An integer number value specifying position for pasting selected text. + */ + execute(position: number): boolean; +} +/** + * A command to insert a tab character at the current position in the document. + */ +interface InsertTabCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTabCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * Defines the scaling settings. + */ +interface Scale { + /** + * Gets or sets the image's y-scale factor as a percent. + * Value: An integer value that is the y-scale factor as a percent. + */ + x: number; + /** + * Gets or sets the image's x-scale factor as a percent. + * Value: An integer value that is the x-scale factor as a percent. + */ + y: number; +} +/** + * A command to change page margin settings. + */ +interface ChangePageMarginsCommand extends CommandBase { + /** + * Executes the ChangePageMarginsCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param left An integer number specifying left margin of the page. + * @param top An integer number specifying top margin of the page. + * @param right An integer number specifying right margin of the page. + * @param bottom An integer number specifying bottom margin of the page. + */ + execute(left: number, top: number, right: number, bottom: number): boolean; + /** + * Executes the ChangePageMarginsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param margins A Margins object specifying page margin settings. + */ + execute(margins: Margins): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to invoke the Margins tab of the Page Setup dialog. + */ +interface OpenPageMarginsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenPageMarginsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the page orientation. + */ +interface ChangePageOrientationCommand extends CommandBase { + /** + * Executes the ChangePageOrientationCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param isPortrait One of the Orientation enumeration values. + */ + execute(isPortrait: any): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to invoke the Paper tab of the Page Setup dialog. + */ +interface OpenPagePaperSizeDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenPagePaperSizeDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to set the page size. + */ +interface SetPageSizeDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the SetPageSizeDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the page size. + */ +interface ChangePageSizeCommand extends CommandBase { + /** + * Executes the ChangePageSizeCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param width An integer number specifying width of the page. + * @param height An integer number specifying height of the page. + */ + execute(width: number, height: number): boolean; + /** + * Executes the ChangePageSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param size A Size object specifying the page size settings. + */ + execute(size: Size): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the number of section columns having the same width. + */ +interface ChangeSectionEqualColumnCountCommand extends CommandBase { + /** + * Executes the ChangeSectionEqualColumnCountCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param columnCount An interger number specifying the number of section columns having the same width. + */ + execute(columnCount: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to invoke the Columns dialog. + */ +interface OpenSectionColumnsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenSectionColumnsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the settings of individual section columns. + */ +interface ChangeSectionColumnsCommand extends CommandBase { + /** + * Executes the ChangeSectionColumnsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param columns An array of SectionColumn objects. + */ + execute(columns: SectionColumn[]): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the background color of the page. + */ +interface ChangePageColorCommand extends CommandBase { + /** + * Executes the ChangePageColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string specifying a background color the page. May be specified as a color name or a hex color value. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to activate the page header and begin editing. + */ +interface InsertHeaderCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertHeaderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to activate the page footer and begin editing. + */ +interface InsertFooterCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to link a header/footer to the previous section, so it has the same content. + */ +interface LinkHeaderFooterToPreviousCommand extends CommandWithSimpleStateBase { + /** + * Executes the LinkHeaderFooterToPreviousCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the page footer from the page header in the header/footer editing mode. + */ +interface GoToFooterCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the page header from the page footer in the header/footer editing mode. + */ +interface GoToHeaderCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToHeaderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the next page header or footer in the header/footer editing mode. + */ +interface GoToNextHeaderFooterCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToNextHeaderFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to navigate to the previous page header or footer in the header/footer editing mode. + */ +interface GoToPreviousHeaderFooterCommand extends CommandWithSimpleStateBase { + /** + * Executes the GoToPreviousHeaderFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the header/footer edit mode, so it allows creation of a different header or footer for the first page of a document or section. + */ +interface SetDifferentFirstPageHeaderFooterCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetDifferentFirstPageHeaderFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the SetDifferentFirstPageHeaderFooterCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param differentFirstPage true to apply a different text for the first page's header and footer, false to remove the difference. + */ + execute(differentFirstPage: boolean): boolean; +} +/** + * A command to change the header/footer edit mode so it allows creation of a different header or footer for odd and even pages of a document or section. + */ +interface SetDifferentOddAndEvenPagesHeaderFooterCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetDifferentOddAndEvenPagesHeaderFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the SetDifferentOddAndEvenPagesHeaderFooterCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param differentOddAndEvenPages true to apply a different text for the header and footer of the odd and even pages , false to remove the difference. + */ + execute(differentOddAndEvenPages: boolean): boolean; +} +/** + * A command to finish header/footer editing. + */ +interface CloseHeaderFooterCommand extends CommandWithSimpleStateBase { + /** + * Executes the CloseHeaderFooterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * Defines a section column in the document. + */ +interface SectionColumn { + /** + * Gets or sets the width of the section column. + * Value: An integer value specifying the section column width. + */ + width: number; + /** + * Gets or sets the amount of space between adjacent section columns. + * Value: An integer value specifying the spacing between section columns. + */ + spacing: number; +} +/** + * Defines the size settings. + */ +interface Size { + /** + * Gets or sets the width value. + * Value: An integer value specifying the width. + */ + width: number; + /** + * Gets or sets the height value. + * Value: An integer value specifying the height. + */ + height: number; +} +/** + * Defines the margin settings. + */ +interface Margins { + /** + * Gets or sets the left margin. + * Value: An integer value specifying the left margin. + */ + left: number; + /** + * Gets or sets the top margin. + * Value: An integer value specifying the top margin. + */ + top: number; + /** + * Gets or sets the right margin. + * Value: An integer value specifying the right margin. + */ + right: number; + /** + * Gets or sets the bottom margin. + * Value: An integer value specifying the bottom margin. + */ + bottom: number; +} +declare enum Orientation { + Landscape=0, + Portrait=1 +} +/** + * A command to increment the indent level of paragraphs in a selected range. + */ +interface IncreaseIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the IncreaseIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to decrement the indent level of paragraphs in a selected range. + */ +interface DecreaseIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the DecreaseIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle the visibility of hidden symbols. + */ +interface ShowHiddenSymbolsCommand extends CommandWithBooleanStateBase { + /** + * Executes the ShowHiddenSymbolsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ShowHiddenSymbolsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param show true to display hidden symbols; otherwise, false. + */ + execute(show: boolean): boolean; +} +/** + * A command to toggle left paragraph alignment on and off. + */ +interface ToggleParagraphAlignmentLeftCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleParagraphAlignmentLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle centered paragraph alignment on and off. + */ +interface ToggleParagraphAlignmentCenterCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleParagraphAlignmentCenterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle right paragraph alignment on and off. + */ +interface ToggleParagraphAlignmentRightCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleParagraphAlignmentRightCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle justified paragraph alignment on and off. + */ +interface ToggleParagraphAlignmentJustifyCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleParagraphAlignmentJustifyCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to format a current paragraph with single line spacing. + */ +interface SetSingleParagraphSpacingCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetSingleParagraphSpacingCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to format a current paragraph with one and a half line spacing. + */ +interface SetSesquialteralParagraphSpacingCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetSesquialteralParagraphSpacingCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to format a current paragraph with double line spacing. + */ +interface SetDoubleParagraphSpacingCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetDoubleParagraphSpacingCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to add spacing before a paragraph. + */ +interface AddSpacingBeforeParagraphCommand extends CommandWithSimpleStateBase { + /** + * Executes the AddSpacingBeforeParagraphCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to add spacing after a paragraph. + */ +interface AddSpacingAfterParagraphCommand extends CommandWithSimpleStateBase { + /** + * Executes the AddSpacingAfterParagraphCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to remove spacing before the selected paragraph. + */ +interface RemoveSpacingBeforeParagraphCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemoveSpacingBeforeParagraphCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to remove spacing after the selected paragraph. + */ +interface RemoveSpacingAfterParagraphCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemoveSpacingAfterParagraphCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the background color of paragraphs in a selected range. + */ +interface ChangeParagraphBackColorCommand extends CommandBase { + /** + * Executes the ChangeParagraphBackColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string specifying a background color of the paragraphs in a selected range. May be specified as a color name or a hex color value. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to invoke the Paragraph dialog allowing end-users to set paragraph formatting. + */ +interface OpenParagraphFormattingDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenParagraphFormattingDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the formatting of paragraphs in a selected range. + */ +interface ChangeParagraphFormattingCommand extends CommandBase { + /** + * Executes the ChangeParagraphFormattingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A ParagraphFormattingSettings object specifying paragraph formatting settings. + */ + execute(settings: ParagraphFormattingSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to increment the left indentation of paragraphs in a selected range. + */ +interface IncrementParagraphLeftIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the IncrementParagraphLeftIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to decrement the left indentation of paragraphs in a selected range. + */ +interface DecrementParagraphLeftIndentCommand extends CommandWithSimpleStateBase { + /** + * Executes the DecrementParagraphLeftIndentCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Tabs paragraph dialog. + */ +interface OpenTabsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenTabsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change paragraph tab stops. + */ +interface ChangeTabsCommand extends CommandBase { + /** + * Executes the ChangeTabsCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TabsSettings object maintaining the information about tab stops. + */ + execute(settings: TabsSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * Contains the information about tab stops. + */ +interface TabsSettings { + /** + * Gets or sets the default tab stop value. + * Value: An integer value specifying the default tab stop. + */ + defaultTabStop: number; + /** + * Gets or sets a list of tab stops. + * Value: An array of TabSettings objects containing individual tab stop settings. + */ + tabs: TabSettings[]; +} +/** + * Contains settings of a tab stop. + */ +interface TabSettings { + /** + * Gets or sets the alignment type, specifying how any text after the tab will be lined up. + * Value: One of the values. + */ + alignment: any; + /** + * Gets or sets the tab leader style, i.e., the symbol used as a tab leader. + * Value: One of the values. + */ + leader: any; + /** + * Gets or sets the position of the tab stop. + * Value: A number representing the distance from the left edge of the text area. + */ + position: number; + /** + * Gets or sets whether the individual tab stop is in effect. + * Value: true to switch off this tab stop; otherwise, false. + */ + deleted: boolean; +} +declare enum TabAlign { + Left=0, + Center=1, + Right=2, + Decimal=3 +} +declare enum TabLeaderType { + None=0, + Dots=1, + MiddleDots=2, + Hyphens=3, + Underline=4, + ThickLine=5, + EqualSign=6 +} +/** + * Contains settings to define the paragraph formatting. + */ +interface ParagraphFormattingSettings { + /** + * Gets or sets the paragraph alignment. + * Value: One of the values. + */ + alignment: any; + /** + * Gets or sets the outline level of a paragraph. + * Value: An integer specifying the level number. + */ + outlineLevel: number; + /** + * Gets or sets the right indent value for the specified paragraph. + * Value: An integer value specifying the right indent. + */ + rightIndent: number; + /** + * Gets or sets the spacing before the current paragraph. + * Value: An integer value specifying the spacing before the paragraph. + */ + spacingBefore: number; + /** + * Gets or sets the spacing after the current paragraph. + * Value: An integer value specifying the spacing after the paragraph. + */ + spacingAfter: number; + /** + * Gets or sets a value which determines the spacing between lines in a paragraph. + * Value: One of the values. + */ + lineSpacingType: any; + /** + * Gets or sets a value specifying whether and how the first line of a paragraph is indented. + * Value: One of the values. + */ + firstLineIndentType: any; + /** + * Gets or sets a value specifying the indent of the first line of a paragraph. + * Value: An integer value specifying the indent of the first line. + */ + firstLineIndent: number; + /** + * Gets or sets whether to suppress addition of additional space (contextual spacing) between paragraphs of the same style. + * Value: true to remove extra spacing between paragraphs, false to add extra space. + */ + contextualSpacing: boolean; + /** + * Gets or sets whether to prevent all page breaks that interrupt a paragraph. + * Value: true, to keep paragraph lines together; otherwise, false. + */ + keepLinesTogether: boolean; + /** + * Gets or sets whether a page break is inserted automatically before a specified paragraph(s). + * Value: true, if a page break is inserted automatically before a paragraph(s); otherwise, false. + */ + pageBreakBefore: boolean; + /** + * Gets or sets the left indent for text within a paragraph. + * Value: An integer value specifying the left indent. + */ + leftIndent: number; + /** + * Gets or sets a line spacing value. + * Value: An integer value specifying the line spacing. + */ + lineSpacing: number; + /** + * Gets or sets the paragraph background color. + * Value: A string value specifying the background color. + */ + backColor: string; +} +declare enum ParagraphAlignment { + Left=0, + Right=1, + Center=2, + Justify=3 +} +declare enum ParagraphLineSpacingType { + Single=0, + Sesquialteral=1, + Double=2, + Multiple=3, + Exactly=4, + AtLeast=5 +} +declare enum ParagraphFirstLineIndent { + None=0, + Indented=1, + Hanging=2 +} +/** + * A command to assign a shortcut to the specified client command. + */ +interface AssignShortcutCommand extends CommandWithSimpleStateBase { + /** + * Executes the AssignShortcutCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param keyCode An integer value specifying the code uniquely identifying the key combination. + * @param callback A callback function to execute on pressing the shortcut. + */ + execute(keyCode: number, callback: (arg1: string) => void): boolean; +} +/** + * A command to invoke the Spelling dialog window. + */ +interface OpenSpellingDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenSpellingDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Insert Table dialog. + */ +interface OpenInsertTableDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenInsertTableDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Insert Table dialog. + */ +interface InsertTableCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param columnCount An integer value specifying a number of columns in a generated table. + * @param rowCount An integer value specifying a number of rows in a generated table. + */ + execute(columnCount: number, rowCount: number): boolean; +} +/** + * A command to invoke the Table Properties dialog. + */ +interface OpenTableFormattingDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenTableFormattingDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the selected table's formatting. + */ +interface ChangeTableFormattingCommand extends CommandBase { + /** + * Executes the ChangeTableFormattingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TableFormattingSettings object containing the settings to format a table. + */ + execute(settings: TableFormattingSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the selected table's preferred row height. + */ +interface ChangeTableRowPreferredHeightCommand extends CommandBase { + /** + * Executes the ChangeTableRowPreferredHeightCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param preferredHeight A TableHeightUnit object specifying preferred height of the selected table rows. + */ + execute(preferredHeight: TableHeightUnit): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the preferred cell width of the selected table rows. + */ +interface ChangeTableCellPreferredWidthCommand extends CommandBase { + /** + * Executes the ChangeTableCellPreferredWidthCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param preferredWidth A TableWidthUnit object specifying preferred width of the selected table rows. + */ + execute(preferredWidth: TableWidthUnit): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the selected table's preferred column width. + */ +interface ChangeTableColumnPreferredWidthCommand extends CommandBase { + /** + * Executes the ChangeTableColumnPreferredWidthCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param preferredWidth A TableWidthUnit object specifying preferred width of the selected table columns. + */ + execute(preferredWidth: TableWidthUnit): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the cell formatting of the selected table elements. + */ +interface ChangeTableCellFormattingCommand extends CommandBase { + /** + * Executes the ChangeTableCellFormattingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TableFormattingSettings object specifying cell formatting of the selected table elements. + */ + execute(settings: TableCellFormattingSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to insert a table column to the left of the current position in the table. + */ +interface InsertTableColumnToTheLeftCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableColumnToTheLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a table column to the right of the current position in the table. + */ +interface InsertTableColumnToTheRightCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableColumnToTheRightCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a row in a table below the selected row. + */ +interface InsertTableRowBelowCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableRowBelowCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert a row in a table above the selected row. + */ +interface InsertTableRowAboveCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableRowAboveCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete the selected table rows. + */ +interface DeleteTableRowsCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableRowsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete the selected table columns. + */ +interface DeleteTableColumnsCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableColumnsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to insert table cells with a horizontal shift into the selected table. + */ +interface InsertTableCellWithShiftToTheLeftCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableCellWithShiftToTheLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete the selected table cells with a horizontal shift. + */ +interface DeleteTableCellsWithShiftHorizontallyCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableCellsWithShiftHorizontallyCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete the selected table cells with a vertical shift. + */ +interface DeleteTableCellsWithShiftVerticallyCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableCellsWithShiftVerticallyCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to delete the selected table. + */ +interface DeleteTableCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Insert Cells dialog. + */ +interface InsertTableCellsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableCellsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Delete Cells dialog. + */ +interface DeleteTableCellsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the DeleteTableCellsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to merge the selected table cells. + */ +interface MergeTableCellsCommand extends CommandWithSimpleStateBase { + /** + * Executes the MergeTableCellsCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Split Cells dialog. + */ +interface SplitTableCellsDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the SplitTableCellsDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to split the selected table cells based on the specified options. + */ +interface SplitTableCellsCommand extends CommandWithSimpleStateBase { + /** + * Executes the SplitTableCellsCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param rowCount An integer value specifying a number of rows in the split table cells. + * @param columnCount An integer value specifying a number of columns in the split table cells. + * @param mergeBeforeSplit true to merge the selected cells before the splitting; otherwise, false. + */ + execute(rowCount: number, columnCount: number, mergeBeforeSplit: boolean): boolean; +} +/** + * A command to insert table cells with a vertical shift into the selected table. + */ +interface InsertTableCellsWithShiftToTheVerticallyCommand extends CommandWithSimpleStateBase { + /** + * Executes the InsertTableCellsWithShiftToTheVerticallyCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to invoke the Borders and Shading table dialog. + */ +interface OpenTableBordersAndShadingDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenTableBordersAndShadingDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change borders and shading of the selected table elements. + */ +interface ChangeTableBordersAndShadingCommand extends CommandBase { + /** + * Executes the ChangeTableBordersAndShadingCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TableBorderSettings object with settings specifying table borders. + * @param applyToWholeTable true to apply the border settings to the whole table, false to apply the border settings to the selected cells. + */ + execute(settings: TableBordersSettings, applyToWholeTable: boolean): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to apply top-left alignment for the selected table cells. + */ +interface ToggleTableCellAlignTopLeftCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignTopLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply top-center alignment for the selected table cells. + */ +interface ToggleTableCellAlignTopCenterCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignTopCenterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply top-right alignment for the selected table cells. + */ +interface ToggleTableCellAlignTopRightCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignTopRightCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply middle-left alignment for the selected table cells. + */ +interface ToggleTableCellAlignMiddleLeftCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignMiddleLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply middle-center alignment for the selected table cells. + */ +interface ToggleTableCellAlignMiddleCenterCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignMiddleCenterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply middle-right alignment for the selected table cells. + */ +interface ToggleTableCellAlignMiddleRightCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignMiddleRightCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply bottom-left alignment for the selected table cells. + */ +interface ToggleTableCellAlignBottomLeftCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignBottomLeftCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply bottom-center alignment for the selected table cells. + */ +interface ToggleTableCellAlignBottomCenterCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignBottomCenterCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to apply bottom-right alignment for the selected table cells. + */ +interface ToggleTableCellAlignBottomRightCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAlignBottomRightCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the selected table's style. + */ +interface ChangeTableStyleCommand extends CommandBase { + /** + * Executes the ChangeTableStyleCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param style A TableStyle object specifying the style applying to the table. + */ + execute(style: TableStyle): boolean; + /** + * Executes the ChangeTableStyleCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param styleName A string specifying the name of style applying to the table. + */ + execute(styleName: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to toggle top borders for selected cells on/off. + */ +interface ToggleTableCellTopBorderCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellTopBorderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle right borders for selected cells on/off. + */ +interface ToggleTableCellRightBorderCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellRightBorderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle bottom borders for selected cells on/off. + */ +interface ToggleTableCellBottomBorderCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellBottomBorderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle left borders for selected cells on/off. + */ +interface ToggleTableCellLeftBorderCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellLeftBorderCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to remove the borders of the selected table cells. + */ +interface RemoveTableCellBordersCommand extends CommandWithSimpleStateBase { + /** + * Executes the RemoveTableCellBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle all borders for selected cells on/off. + */ +interface ToggleTableCellAllBordersCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellAllBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle inner borders for selected cells on/off. + */ +interface ToggleTableCellInsideBordersCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellInsideBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle inner horizontal borders for selected cells on/off. + */ +interface ToggleTableCellInsideHorizontalBordersCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellInsideHorizontalBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle inner vertical borders for selected cells on/off. + */ +interface ToggleTableCellInsideVerticalBordersCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellInsideVerticalBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle outer borders for selected cells on/off. + */ +interface ToggleTableCellOutsideBordersCommand extends CommandWithBooleanStateBase { + /** + * Executes the ToggleTableCellOutsideBordersCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the selected table's style options. + */ +interface ChangeTableLookCommand extends CommandBase { + /** + * Executes the ChangeTableLookCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TableLookSettings object containing the settings that modify the table appearance. + */ + execute(settings: TableLookSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the repository item's table border style. + */ +interface ChangeTableBorderRepositoryItemCommand extends CommandBase { + /** + * Executes the ChangeTableBorderRepositoryItemCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A TableBorderSettings object specifying the repository item's table border style. + */ + execute(settings: TableBorderSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change cell shading in the selected table elements. + */ +interface ChangeTableCellShadingCommand extends CommandBase { + /** + * Executes the ChangeTableCellShadingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string specifying the color of the selected cells' shading. May be specified as a color name or a hex color value. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to toggle the display of grid lines for a table with no borders applied - on/off. + */ +interface ShowTableGridLinesCommand extends CommandWithBooleanStateBase { + /** + * Executes the ShowTableGridLinesCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ShowTableGridLinesCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param showTableGridLines true to display grid lines of the table, false to hide grid lines of the table. + */ + execute(showTableGridLines: boolean): boolean; +} +/** + * Contains the table style settings that modify the table appearance. + */ +interface TableLookSettings { + /** + * Gets or sets a value specifying whether special formatting is applied to the first row of the table. + * Value: true, to apply the formatting; otherwise, false. + */ + applyFirstRow: boolean; + /** + * Gets or sets a value specifying whether special formatting is applied to the last row of the table. + * Value: true, to apply the formatting; otherwise, false. + */ + applyLastRow: boolean; + /** + * Gets or sets a value specifying whether special formatting is applied to the first column of the table. + * Value: true, to apply the formatting; otherwise, false. + */ + applyFirstColumn: boolean; + /** + * Gets or sets a value specifying whether special formatting is applied to the last column of the table. + * Value: true, to apply the formatting; otherwise, false. + */ + applyLastColumn: boolean; + /** + * Gets or sets a value specifying whether row banding formatting is not applied to the table. + * Value: true, to apply the formatting; otherwise, false. + */ + doNotApplyRowBanding: boolean; + /** + * Gets or sets a value specifying whether column banding formatting is not applied to the table. + * Value: true, to apply the formatting; otherwise, false. + */ + doNotApplyColumnBanding: boolean; +} +/** + * Contains settings to define table borders. + */ +interface TableBordersSettings { + /** + * Gets or sets the top border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + top: TableBorderSettings; + /** + * Gets or sets the right border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + right: TableBorderSettings; + /** + * Gets or sets the bottom border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + bottom: TableBorderSettings; + /** + * Gets or sets the left border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + left: TableBorderSettings; + /** + * Gets or sets the inside horizontal border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + insideHorizontal: TableBorderSettings; + /** + * Gets or sets the inside vertical border's settings. + * Value: A TableBorderSettings object containing the table border settings. + */ + insideVertical: TableBorderSettings; + /** + * Gets or sets the background color of table borders. + * Value: A string value specifying the background color. + */ + backgroundColor: string; +} +/** + * Contains settings to define a table border. + */ +interface TableBorderSettings { + /** + * Gets or sets the border color. + * Value: A string value specifying the border color. + */ + color: string; + /** + * Gets or sets the border line width. + * Value: An integer value defining the border line width. + */ + width: number; + /** + * Gets or sets the border line style. + * Value: A object defining the border line style. + */ + style: any; +} +declare enum BorderLineStyle { + None=0, + Single=1, + Thick=2, + Double=3, + Dotted=4, + Dashed=5, + DotDash=6, + DotDotDash=7, + Triple=8, + ThinThickSmallGap=9, + ThickThinSmallGap=10, + ThinThickThinSmallGap=11, + ThinThickMediumGap=12, + ThickThinMediumGap=13, + ThinThickThinMediumGap=14, + ThinThickLargeGap=15, + ThickThinLargeGap=16, + ThinThickThinLargeGap=17, + Wave=18, + DoubleWave=19, + DashSmallGap=20, + DashDotStroked=21, + ThreeDEmboss=22, + ThreeDEngrave=23, + Outset=24, + Inset=25, + Apples=26, + ArchedScallops=27, + BabyPacifier=28, + BabyRattle=29, + Balloons3Colors=30, + BalloonsHotAir=31, + BasicBlackDashes=32, + BasicBlackDots=33, + BasicBlackSquares=34, + BasicThinLines=35, + BasicWhiteDashes=36, + BasicWhiteDots=37, + BasicWhiteSquares=38, + BasicWideInline=39, + BasicWideMidline=40, + BasicWideOutline=41, + Bats=42, + Birds=43, + BirdsFlight=44, + Cabins=45, + CakeSlice=46, + CandyCorn=47, + CelticKnotwork=48, + CertificateBanner=49, + ChainLink=50, + ChampagneBottle=51, + CheckedBarBlack=52, + CheckedBarColor=53, + Checkered=54, + ChristmasTree=55, + CirclesLines=56, + CirclesRectangles=57, + ClassicalWave=58, + Clocks=59, + Compass=60, + Confetti=61, + ConfettiGrays=62, + ConfettiOutline=63, + ConfettiStreamers=64, + ConfettiWhite=65, + CornerTriangles=66, + CouponCutoutDashes=67, + CouponCutoutDots=68, + CrazyMaze=69, + CreaturesButterfly=70, + CreaturesFish=71, + CreaturesInsects=72, + CreaturesLadyBug=73, + CrossStitch=74, + Cup=75, + DecoArch=76, + DecoArchColor=77, + DecoBlocks=78, + DiamondsGray=79, + DoubleD=80, + DoubleDiamonds=81, + Earth1=82, + Earth2=83, + EclipsingSquares1=84, + EclipsingSquares2=85, + EggsBlack=86, + Fans=87, + Film=88, + Firecrackers=89, + FlowersBlockPrint=90, + FlowersDaisies=91, + FlowersModern1=92, + FlowersModern2=93, + FlowersPansy=94, + FlowersRedRose=95, + FlowersRoses=96, + FlowersTeacup=97, + FlowersTiny=98, + Gems=99, + GingerbreadMan=100, + Gradient=101, + Handmade1=102, + Handmade2=103, + HeartBalloon=104, + HeartGray=105, + Hearts=106, + HeebieJeebies=107, + Holly=108, + HouseFunky=109, + Hypnotic=110, + IceCreamCones=111, + LightBulb=112, + Lightning1=113, + Lightning2=114, + MapleLeaf=115, + MapleMuffins=116, + MapPins=117, + Marquee=118, + MarqueeToothed=119, + Moons=120, + Mosaic=121, + MusicNotes=122, + Northwest=123, + Ovals=124, + Packages=125, + PalmsBlack=126, + PalmsColor=127, + PaperClips=128, + Papyrus=129, + PartyFavor=130, + PartyGlass=131, + Pencils=132, + People=133, + PeopleHats=134, + PeopleWaving=135, + Poinsettias=136, + PostageStamp=137, + Pumpkin1=138, + PushPinNote1=139, + PushPinNote2=140, + Pyramids=141, + PyramidsAbove=142, + Quadrants=143, + Rings=144, + Safari=145, + Sawtooth=146, + SawtoothGray=147, + ScaredCat=148, + Seattle=149, + ShadowedSquares=150, + SharksTeeth=151, + ShorebirdTracks=152, + Skyrocket=153, + SnowflakeFancy=154, + Snowflakes=155, + Sombrero=156, + Southwest=157, + Stars=158, + Stars3d=159, + StarsBlack=160, + StarsShadowed=161, + StarsTop=162, + Sun=163, + Swirligig=164, + TornPaper=165, + TornPaperBlack=166, + Trees=167, + TriangleParty=168, + Triangles=169, + Tribal1=170, + Tribal2=171, + Tribal3=172, + Tribal4=173, + Tribal5=174, + Tribal6=175, + TwistedLines1=176, + TwistedLines2=177, + Vine=178, + Waveline=179, + WeavingAngles=180, + WeavingBraid=181, + WeavingRibbon=182, + WeavingStrips=183, + WhiteFlowers=184, + Woodwork=185, + XIllusions=186, + ZanyTriangles=187, + ZigZag=188, + ZigZagStitch=189, + Nil=-1 +} +/** + * Contains the settings to define the table cell formatting. + */ +interface TableCellFormattingSettings { + /** + * Gets or sets a table cell's preferred width. + * Value: A object specifying the preferred cell width. + */ + preferredWidth: TableWidthUnit; + /** + * Gets or sets the vertical alignment of a table cell's content. + * Value: One the values. + */ + verticalAlignment: any; + /** + * Gets or sets a value specifying whether text is wrapped in a table cell. + * Value: true if text is wrapped; false if text is not wrapped. + */ + noWrap: boolean; + /** + * Gets or sets a table cell's left margin. + * Value: An integer value specifying the left margin. + */ + marginLeft: number; + /** + * Gets or sets a table cell's right margin. + * Value: An integer value specifying the right margin. + */ + marginRight: number; + /** + * Gets or sets a table cell's top margin. + * Value: An integer value specifying the top margin. + */ + marginTop: number; + /** + * Gets or sets a table cell's bottom margin. + * Value: An integer value specifying the bottom margin. + */ + marginBottom: number; + /** + * Gets or sets a value specifying whether a table cell's margins are inherited from the table level settings. + * Value: true to inherit table level margins; false to use a table cell's own margin settings. + */ + marginsSameAsTable: boolean; +} +declare enum TableCellVerticalAlignment { + Top=0, + Both=1, + Center=2, + Bottom=3 +} +/** + * Contains the settings to format a table. + */ +interface TableFormattingSettings { + /** + * Gets or sets the preferred width of cells in the table. + * Value: A object specifying the width. + */ + preferredWidth: TableWidthUnit; + /** + * Gets or sets the alignment of table rows. + * Value: One of the values. + */ + alignment: any; + /** + * Gets or sets the table's left indent. + * Value: An integer value specifying the indent. + */ + indent: number; + /** + * Gets or sets the spacing between table cells. + * Value: An integer value specifying the spacing. + */ + spacingBetweenCells: number; + /** + * Gets or sets a value specifying whether spacing is allowed between table cells. + * Value: true, to allow spacing; otherwise, false. + */ + allowSpacingBetweenCells: boolean; + /** + * Gets or sets a value that specifying whether to allow automatic resizing of table cells to fit their contents. + * Value: true, to allow automatic resizing; otherwise, false. + */ + resizeToFitContent: boolean; + /** + * Gets or sets the default left margin for cells in the table. + * Value: An integer value specifying the margin value. + */ + defaultCellMarginLeft: number; + /** + * Gets or sets the default right margin for cells in the table. + * Value: An integer value specifying the margin value. + */ + defaultCellMarginRight: number; + /** + * Gets or sets the default top margin for cells in the table. + * Value: An integer value specifying the margin value. + */ + defaultCellMarginTop: number; + /** + * Gets or sets the default bottom margin for cells in the table. + * Value: An integer value specifying the margin value. + */ + defaultCellMarginBottom: number; +} +/** + * Contains settings defining the table width's measurement units and value. + */ +interface TableWidthUnit { + /** + * Gets or sets the table width value. + * Value: An integer value specifying the table width. + */ + value: number; + /** + * Gets or sets the unit type for the table width. + * Value: One of the values. + */ + type: any; +} +/** + * Contains settings defining the table height's measurement units and value. + */ +interface TableHeightUnit { + /** + * Gets or sets the table height value. + * Value: An integer value specifying the table height. + */ + value: number; + /** + * Gets or sets the unit type for the table height. + * Value: One of the enumeration values. + */ + type: any; +} +declare enum TableHeightUnitType { + Minimum=0, + Auto=1, + Exact=2 +} +declare enum TableRowAlignment { + Both=0, + Center=1, + Distribute=2, + Left=3, + NumTab=4, + Right=5 +} +declare enum TableWidthUnitType { + Nil=0, + Auto=1, + FiftiethsOfPercent=2, + ModelUnits=3 +} +/** + * A command to change the font name of characters in a selected range. + */ +interface ChangeFontNameCommand extends CommandBase { + /** + * Executes the ChangeFontNameCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontName A string specifying the font name. + */ + execute(fontName: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the font size of characters in a selected range. + */ +interface ChangeFontSizeCommand extends CommandBase { + /** + * Executes the ChangeFontSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontSize An integer number specifying the font size. + */ + execute(fontSize: number): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to increase the font size of characters in a selected range to the closest larger predefined value. + */ +interface IncreaseFontSizeCommand extends CommandWithSimpleStateBase { + /** + * Executes the IncreaseFontSizeCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to decrease the font size of characters in a selected range to the closest smaller predefined value. + */ +interface DecreaseFontSizeCommand extends CommandWithSimpleStateBase { + /** + * Executes the DecreaseFontSizeCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to convert the selected text to upper case. + */ +interface MakeTextUpperCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the MakeTextUpperCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to convert the selected text to lower case. + */ +interface MakeTextLowerCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the MakeTextLowerCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to capitalize each word in the selected sentence. + */ +interface CapitalizeEachWordTextCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the CapitalizeEachWordTextCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to toggle the case for each character - upper case becomes lower, lower case becomes upper. + */ +interface ToggleTextCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the ToggleTextCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the bold formatting of characters in a selected range. + */ +interface ChangeFontBoldCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontBoldCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontBoldCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontBold true to apply bold formatting to the text, false to remove bold formatting. + */ + execute(fontBold: boolean): boolean; +} +/** + * A command to change the italic formatting of characters in a selected range. + */ +interface ChangeFontItalicCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontItalicCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontItalicCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontItalic true to apply italic formatting to the text, false to remove italic formatting. + */ + execute(fontItalic: boolean): boolean; +} +/** + * A command to change the underline formatting of characters in a selected range. + */ +interface ChangeFontUnderlineCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontUnderlineCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontUnderlineCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontUnderline true to apply underline formatting to the text, false to remove underline formatting. + */ + execute(fontUnderline: boolean): boolean; +} +/** + * A command to change the strikeout formatting of characters in a selected range. + */ +interface ChangeFontStrikeoutCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontStrikeoutCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontStrikeoutCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontStrikeout true to apply strikeout formatting to the text, false to remove strikeout formatting. + */ + execute(fontStrikeout: boolean): boolean; +} +/** + * A command to change the superscript formatting of characters in a selected range. + */ +interface ChangeFontSuperscriptCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontSuperscriptCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontSuperscriptCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontSuperscript true to apply superscript formatting to the text, false to remove superscript formatting. + */ + execute(fontSuperscript: boolean): boolean; +} +/** + * A command to change the subscript formatting of characters in the selected range. + */ +interface ChangeFontSubscriptCommand extends CommandWithBooleanStateBase { + /** + * Executes the ChangeFontSubscriptCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ChangeFontSubscriptCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fontSubscript true to apply subscript formatting to the text, false to remove subscript formatting. + */ + execute(fontSubscript: boolean): boolean; +} +/** + * A command to change the font color of characters in a selected range. + */ +interface ChangeFontForeColorCommand extends CommandBase { + /** + * Executes the ChangeFontForeColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string specifying the font color. May be specified as a color name or a hex color value. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to change the background color of characters in a selected range. + */ +interface ChangeFontBackColorCommand extends CommandBase { + /** + * Executes the ChangeFontBackColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param color A string specifying the background font color. May be specified as a color name or a hex color value. + */ + execute(color: string): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to reset the selected text's formatting to default. + */ +interface ClearFormattingCommand extends CommandWithSimpleStateBase { + /** + * Executes the ClearFormattingCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the selected range's style. + */ +interface ChangeStyleCommand extends CommandBase { + /** + * Executes the ChangeStyleCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param style A StyleBase object specifying the selected range's style. + */ + execute(style: StyleBase): boolean; + /** + * Executes the ChangeStyleCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param styleName A string specifying the applying style's name. + * @param isParagraphStyle true to apply the style to a paragraph, false to apply the style to a character. + */ + execute(styleName: string, isParagraphStyle: boolean): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * A command to invoke the Font dialog allowing end-users to change the font, size and style of the selected text. + */ +interface OpenFontFormattingDialogCommand extends CommandWithSimpleStateBase { + /** + * Executes the OpenFontFormattingDialogCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to convert the text of all selected sentences to sentence case. + */ +interface MakeTextSentenceCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the MakeTextSentenceCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to switch the text case at the current position in the document. + */ +interface SwitchTextCaseCommand extends CommandWithSimpleStateBase { + /** + * Executes the SwitchTextCaseCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; +} +/** + * A command to change the font formatting of characters in a selected range. + */ +interface ChangeFontFormattingCommand extends CommandBase { + /** + * Executes the ChangeFontFormattingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param settings A FontFormattingSettings object specifying font formatting settings. + */ + execute(settings: FontFormattingSettings): boolean; + /** + * Gets information about the command state. + */ + getState(): any; +} +/** + * Contains settings to define the font formatting. + */ +interface FontFormattingSettings { + /** + * Gets or sets the character(s) font name. + * Value: A string value specifying the font name. + */ + fontName: string; + /** + * Gets or sets the character(s) font size. + * Value: An integer value specifying the font size. + */ + size: number; + /** + * Gets or sets the foreground color of characters. + * Value: A string value specifying the foreground color. + */ + foreColor: string; + /** + * Gets or sets the character background color. + * Value: A string value specifying the background color. + */ + backColor: string; + /** + * Gets or sets the type of underline applied to the character(s). + * Value: true, if characters are underlined; otherwise, false. + */ + underline: boolean; + /** + * Gets or sets the color of the underline for the specified characters. + * Value: A string value specifying the underline color. + */ + underlineColor: string; + /** + * Gets or sets whether the character formatting is bold. + * Value: true, if characters are bold; otherwise, false. + */ + bold: boolean; + /** + * Gets or sets a value indicating whether a character(s) is italicized. + * Value: true, if characters are italicized; otherwise, false. + */ + italic: boolean; + /** + * Gets or sets a value specifying whether the strikeout formatting is applied to a character(s). + * Value: true if the strikeout formatting is applied; otherwise, false. + */ + strikeout: boolean; + /** + * Gets or sets whether only word characters are underlined. + * Value: true to underline only characters in words; false to underline all characters. + */ + underlineWordsOnly: boolean; + /** + * Gets or sets a value specifying character script formatting. + * Value: One of the values. + */ + script: any; + /** + * Gets or sets a value indicating whether all characters are capital letters. + * Value: true, if all characters are capitalized; otherwise, false. + */ + allCaps: boolean; + /** + * Gets or sets a value indicating whether a character(s) is hidden. + * Value: true, if characters are hidden; otherwise, false. + */ + hidden: boolean; +} +declare enum CharacterFormattingScript { + Normal=0, + Subscript=1, + Superscript=2 +} +/** + * A command to toggle the horizontal ruler's visibility. + */ +interface ShowHorizontalRulerCommand extends CommandWithBooleanStateBase { + /** + * Executes the ShowHorizontalRulerCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the ShowHorizontalRulerCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param show true to display the horizontal ruler, false to hide the horizontal ruler. + */ + execute(show: boolean): boolean; +} +/** + * A command to toggle the fullscreen mode. + */ +interface SetFullscreenCommand extends CommandWithBooleanStateBase { + /** + * Executes the SetFullscreenCommand command by imitating the corresponding end-user action made in the RichEdit's UI. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + */ + execute(): boolean; + /** + * Executes the SetFullscreenCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. + * @param fullscreen true to apply the fullscreen mode, false to disable the fullscreen mode. + */ + execute(fullscreen: boolean): boolean; +} +/** + * Holds the information that determines what action types can be performed for appointments. + */ +interface ASPxClientAppointmentFlags { + /** + * Gets a value that specifies whether an end-user is allowed to delete appointments. + * Value: true if an end-user can delete appointments; otherwise, false. Default is true. + */ + allowDelete: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to edit appointments. + * Value: true if the end-user can edit appointments; otherwise, false. + */ + allowEdit: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to change the time boundaries of appointments. + * Value: true if appointment resizing is allowed; otherwise, false. Default is true. + */ + allowResize: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to copy appointments. + * Value: true if a user can copy appointments; otherwise, false. Default is true. + */ + allowCopy: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to drag and drop appointments to another time slot or date. + * Value: true if the user can drag and drop appointments; otherwise, false. + */ + allowDrag: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to drag and drop appointments between resources. + * Value: true if the end-user can drag appointment from one resource to another; otherwise, false. + */ + allowDragBetweenResources: boolean; + /** + * Gets a value that specifies whether an inplace editor can be activated for an appointment. + * Value: true if an inplace editor is activated; otherwise, false. Default is true. + */ + allowInplaceEditor: boolean; + /** + * Gets a value that specifies whether an end-user is allowed to share the schedule time between two or more appointments. + * Value: true if appointments with the same schedule time are allowed; otherwise, false. Default is true. + */ + allowConflicts: boolean; +} +/** + * Represents a client-side equivalent of the Appointment class. + */ +interface ASPxClientAppointment { + /** + * Gets the time interval of the appointment for client-side scripting. + * Value: An ASPxClientTimeInterval object, representing the interval assigned to an appointment. + */ + interval: ASPxClientTimeInterval; + /** + * Gets the identifiers of resources associated with the appointment for client-side scripting. + * Value: An array of string representations for resource identifiers. + */ + resources: string[]; + /** + * Gets the ID of an appointment for use in client-side scripts. + * Value: A string representation of the appointment ID. + */ + appointmentId: string; + /** + * Gets the type of appointment for use in client-side scripts. + * Value: An ASPxAppointmentType enumeration member, representing the appointment's type. + */ + appointmentType: ASPxAppointmentType; + /** + * Gets the index of the availability status object associated with the appointment. + * Value: An integer value that specifies the index of the corresponding Statuses collection. + */ + statusIndex: number; + /** + * Gets the index of the label object associated with the appointment for client-side scripting. + * Value: An integer value that specifies the index of the corresponding Labels collection. + */ + labelIndex: number; + /** + * Gets the client appointment value that is equivalent in meaning to the Subject property. + * Value: A string representing the appointment subject. + */ + subject: string; + /** + * Gets the client appointment value that is equivalent in meaning to the Description property. + * Value: A string, representing the description for an appointment. + */ + description: string; + /** + * Gets the client appointment value that is equivalent in meaning to the Location property. + * Value: A string representing the appointment location. + */ + location: string; + /** + * Gets the client appointment value that is equivalent in meaning to the AllDay property. + * Value: true indicates the all-day appointment; otherwise, false. + */ + allDay: boolean; + /** + * Adds a resource to the collection of resources associated with the client appointment. + * @param resourceId An object, representing the resource id. + */ + AddResource(resourceId: Object): void; + /** + * Gets the resource associated with the client-side appointment by its index. + * @param index An integer, representing an index of a resource in a resource collection associated with the current appointment. + */ + GetResource(index: number): Object; + /** + * Sets the property value of the client appointment, corresponding to the Start appointment property. + * @param start A JavaScript Date object representing the appointment start. + */ + SetStart(start: Date): void; + /** + * Gets the property value of the client appointment corresponding to the Start appointment property. + */ + GetStart(): Date; + /** + * Sets the property value of the client appointment, corresponding to the End appointment property. + * @param end A JavaScript Date object representing the end of the appointment. + */ + SetEnd(end: Date): void; + /** + * Gets the property value of the client appointment corresponding to the End appointment property. + */ + GetEnd(): Date; + /** + * Sets the property value of the client appointment, corresponding to the Duration appointment property. + * @param duration A TimeSpan object representing the appointment duration. + */ + SetDuration(duration: any): void; + /** + * Gets the property value of the client appointment corresponding to the Duration appointment property. + */ + GetDuration(): number; + /** + * Sets the ID of the client appointment. + * @param id An object representing the appointment identifier. + */ + SetId(id: Object): void; + /** + * Gets the ID of the client appointment. + */ + GetId(): Object; + /** + * Specifies the type of the current client appointment. + * @param type An ASPxAppointmentType enumeration value indicating the appointment type. + */ + SetAppointmentType(type: ASPxAppointmentType): void; + /** + * Gets the type of the client appointment. + */ + GetAppointmentType(): ASPxAppointmentType; + /** + * Sets the property value of the client appointment, corresponding to the StatusId appointment property. + * @param statusId An integer representing the index in the AppointmentStatusCollection. + */ + SetStatusId(statusId: number): void; + /** + * Gets the property value of the client appointment corresponding to the StatusId appointment property. + */ + GetStatusId(): number; + /** + * Sets the property value of the client appointment, corresponding to the LabelId appointment property. + * @param statusId An integer representing the index of the label in the Labels label collection. + */ + SetLabelId(statusId: number): void; + /** + * Gets the property value of the client appointment corresponding to the LabelId appointment property. + */ + GetLabelId(): number; + /** + * Sets the property value of the client appointment, corresponding to the Subject appointment property. + * @param subject A string containing the appointment subject. + */ + SetSubject(subject: string): void; + /** + * Gets the property value of the client appointment corresponding to the Subject appointment property. + */ + GetSubject(): string; + /** + * Sets the property value of the client appointment, corresponding to the Description appointment property. + * @param description A string representing the appointment description. + */ + SetDescription(description: string): void; + /** + * Gets the property value of the client appointment corresponding to the Description appointment property. + */ + GetDescription(): string; + /** + * Sets the property value of the client appointment, corresponding to the Location appointment property. + * @param location A string representing the appointment location. + */ + SetLocation(location: string): void; + /** + * Gets the property value of the client appointment corresponding to the Location appointment property. + */ + GetLocation(): string; + /** + * Specifies the property value of the client appointment corresponding to the AllDay appointment property. + * @param allDay true to indicate the all-day appointment; otherwise, false. + */ + SetAllDay(allDay: boolean): void; + /** + * Gets the property value of the client appointment corresponding to the AllDay appointment property. + */ + GetAllDay(): boolean; + /** + * Gets the appointment that is the RecurrencePattern for the current appointment. + */ + GetRecurrencePattern(): ASPxClientAppointment; + /** + * Sets the property value of the client appointment, corresponding to the RecurrenceInfo appointment property. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object representing the recurrence information. + */ + SetRecurrenceInfo(recurrenceInfo: ASPxClientRecurrenceInfo): void; + /** + * Gets the property value of the client appointment corresponding to the RecurrenceInfo appointment property. + */ + GetRecurrenceInfo(): ASPxClientRecurrenceInfo; +} +/** + * A client point object. + */ +interface ASPxClientPoint { + /** + * Gets the point's X-coordinate. + */ + GetX(): number; + /** + * Gets the point's Y-coordinate. + */ + GetY(): number; +} +/** + * A client rectangle object. + */ +interface ASPxClientRect { + /** + * Gets the X-coordinate of the rectangle's left edge. + */ + GetLeft(): number; + /** + * Gets the X-coordinate of the rectangle's right edge. + */ + GetRight(): number; + /** + * Gets the Y-coordinate of the rectangle's top edge. + */ + GetTop(): number; + /** + * Gets the Y-coordinate of the rectangle's bottom edge. + */ + GetBottom(): number; + /** + * Gets the rectangle's width. + */ + GetWidth(): number; + /** + * Gets the rectangle's height. + */ + GetHeight(): number; +} +/** + * Contains information defining the occurrences of a recurring client appointment. + */ +interface ASPxClientRecurrenceInfo { + /** + * Sets the recurrence start date. + * @param start A JavaScript date object value that specifies the start date for the recurrence. + */ + SetStart(start: Date): void; + /** + * Gets the recurrence start date. + */ + GetStart(): Date; + /** + * Sets the recurrence end date. + * @param end A JavaScript Date object that specifies the end date for the recurrence. + */ + SetEnd(end: Date): void; + /** + * Gets the recurrence end date. + */ + GetEnd(): Date; + /** + * Sets the duration of the recurrence. + * @param duration A TimeSpan object representing the duration. + */ + SetDuration(duration: any): void; + /** + * Gets the duration of the recurrence. + */ + GetDuration(): number; + /** + * Sets the time base for the frequency of the corresponding appointment occurrences. + * @param type An ASPxClientRecurrenceType enumeration value that specifies the recurrence's frequency type. + */ + SetRecurrenceType(type: ASPxClientRecurrenceType): void; + /** + * Gets the time base for the frequency of the corresponding appointment reoccurrence. + */ + GetRecurrenceType(): ASPxClientRecurrenceType; + /** + * Sets the day/days in a week that the corresponding appointment recurs on. + * @param weekDays The ASPxClientWeekDays enumeration value specifying the day/days in a week. + */ + SetWeekDays(weekDays: ASPxClientWeekDays): void; + /** + * Gets the day/days in a week on which the corresponding appointment occurs. + */ + GetWeekDays(): ASPxClientWeekDays; + /** + * Sets how many times the appointment occurs. + * @param occurrenceCount An integer value that specifies how many times the appointment occurs. + */ + SetOccurrenceCount(occurrenceCount: number): void; + /** + * Gets how many times the appointment occurs. + */ + GetOccurrenceCount(): number; + /** + * Sets the frequency with which the corresponding appointment occurs (dependent on the recurrence Type). + * @param periodicity An integer value that specifies the frequency with which the corresponding appointment occurs. + */ + SetPeriodicity(periodicity: number): void; + /** + * Gets the frequency with which the corresponding appointment reoccurs (dependent on the recurrence Type). + */ + GetPeriodicity(): number; + /** + * Sets the ordinal number of a day within a defined month. + * @param dayNumber A positive integer value that specifies the day number within a month. + */ + SetDayNumber(dayNumber: number): void; + /** + * Gets the ordinal number of a day within a defined month. + */ + GetDayNumber(): number; + /** + * Sets the occurrence number of the week in a month for the recurrence pattern. + * @param weekOfMonth A ASPxClientWeekOfMonth enumeration value that specifies a particular week in every month. + */ + SetWeekOfMonth(weekOfMonth: ASPxClientWeekOfMonth): void; + /** + * Gets the occurrence number of the week in a month for the recurrence pattern. + */ + GetWeekOfMonth(): ASPxClientWeekOfMonth; + /** + * Sets the month (as a number) on which the corresponding appointment occurs. + * @param month A positive integer value that specifies the month's number. + */ + SetMonth(month: number): void; + /** + * Gets the month (as a number) on which the corresponding appointment recurs. + */ + GetMonth(): number; + /** + * Gets the type of the recurrence range. + */ + GetRange(): ASPxClientRecurrenceRange; + /** + * Sets the type of the recurrence range. + * @param range An ASPxClientRecurrenceRangeenumeration value that specifies the recurrence range type. + */ + SetRange(range: ASPxClientRecurrenceRange): void; +} +/** + * Contains types of the recurrence range. + */ +interface ASPxClientRecurrenceRange { + /** + * A recurring appointment will not have an end date, i.e. infinite recurrence + * Value: The "NoEndDate" string. + */ + NoEndDate: string; + /** + * A recurring appointment will end after its recurrence count exceeds the value specified by the SetOccurrenceCount method. + * Value: The "OccurrenceCount" string. + */ + OccurrenceCount: string; + /** + * A recurring appointment will end after the date specified by the SetEnd method. + * Value: The "EndByDate" string. + */ + EndByDate: string; +} +/** + * Contains recurrence types. + */ +interface ASPxClientRecurrenceType { + /** + * The recurring appointment occurs on a daily basis. + * Value: The "Daily" string. + */ + Daily: string; + /** + * The recurring appointment reoccurs on a weekly basis. + * Value: The "Weekly" string. + */ + Weekly: string; + /** + * The recurring appointment reoccurs on a monthly basis. + * Value: The "Monthly" string. + */ + Monthly: string; + /** + * The recurring appointment reoccurs on an yearly basis. + * Value: The "Yearly" string. + */ + Yearly: string; + /** + * The recurring appointment occurs on an hourly base. + * Value: The "Hourly" string. + */ + Hourly: string; +} +/** + * Contains days and groups of days for use in recurrence patterns. + */ +interface ASPxClientWeekDays { + /** + * Specifies Sunday. + * Value: The integer 1 value. + */ + Sunday: number; + /** + * Specifies Monday. + * Value: The integer 2 value. + */ + Monday: number; + /** + * Specifies Tuesday. + * Value: The integer 4 value. + */ + Tuesday: number; + /** + * Specifies Wednesday. + * Value: The integer 8 value. + */ + Wednesday: number; + /** + * Specifies Thursday. + * Value: The integer 16 value. + */ + Thursday: number; + /** + * Specifies Friday. + * Value: The integer 32 value. + */ + Friday: number; + /** + * Specifies Saturday. + * Value: The integer 64 value. + */ + Saturday: number; + /** + * Specifies Saturday and Sunday. + * Value: The integer 65 value. + */ + WeekendDays: number; + /** + * Specifies work days (Monday, Tuesday, Wednesday, Thursday and Friday). + * Value: The integer 62 value. + */ + WorkDays: number; + /** + * Specifies every day of the week. + * Value: The integer 127 value. + */ + EveryDay: number; +} +/** + * Contains number of weeks in a month in which the event occurs. + */ +interface ASPxClientWeekOfMonth { + /** + * There isn't any recurrence rule based on the weeks in a month. + * Value: The integer 0 value. + */ + None: number; + /** + * The recurring event will occur once a month, on the specified day or days of the first week in the month. + * Value: The integer 1 value. + */ + First: number; + /** + * The recurring event will occur once a month, on the specified day or days of the second week in the month. + * Value: The integer 2 value. + */ + Second: number; + /** + * The recurring event will occur once a month, on the specified day or days of the third week in the month. + * Value: The integer 3 value. + */ + Third: number; + /** + * The recurring event will occur once a month, on the specified day or days of the fourth week in the month. + * Value: The integer 4 value; + */ + Fourth: number; + /** + * The recurring event will occur once a month, on the specified day or days of the last week in the month. + * Value: The integer 5 value; + */ + Last: number; +} +/** + * Represents a client-side equivalent of the WeekDaysCheckEdit control. + */ +interface ASPxClientWeekDaysCheckEdit extends ASPxClientControl { + /** + * Gets the selection state of the week day check boxes. + */ + GetValue(): ASPxClientWeekDays; + /** + * Gets the selection state of the week day check boxes. + * @param value An ASPxClientWeekDays object specifying the selection state of the week day check boxes. + */ + SetValue(value: ASPxClientWeekDays): void; +} +/** + * Represents a client-side equivalent of the RecurrenceRangeControl. + */ +interface ASPxClientRecurrenceRangeControl extends ASPxClientControl { + /** + * Gets the type of the recurrence range. + */ + GetRange(): ASPxClientRecurrenceRange; + /** + * Gets how many times the appointment occurs. + */ + GetOccurrenceCount(): number; + /** + * Gets the recurrence end date. + */ + GetEndDate(): Date; + /** + * Sets the type of the recurrence range. + * @param range An ASPxClientRecurrenceRangeenumeration value that specifies the recurrence range type. + */ + SetRange(range: ASPxClientRecurrenceRange): void; + /** + * Sets how many times the appointment occurs. + * @param occurrenceCount An integer value that specifies how many times the appointment occurs. + */ + SetOccurrenceCount(occurrenceCount: number): void; + /** + * Sets the recurrence end date. + * @param date A JavaScript Date object that specifies the end date for the recurrence. + */ + SetEndDate(date: Date): void; +} +/** + * A base for client equivalents of recurrence controls available in the XtraScheduler library. + */ +interface ASPxClientRecurrenceControlBase extends ASPxClientControl { + /** + * Returns an object providing access to the ASPxClientRecurrenceControlBase control's editor values. + */ + CreateValueAccessor(): DefaultRecurrenceRuleValuesAccessor; + /** + * Updates values of editors displayed by the ASPxClientRecurrenceControlBase control. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object containing new editor values. + */ + Update(recurrenceInfo: ASPxClientRecurrenceInfo): void; +} +/** + * Represents a client-side equivalent of the DailyRecurrenceControl - a control for specifying the daily recurrence. + */ +interface ASPxClientDailyRecurrenceControl extends ASPxClientRecurrenceControlBase { + /** + * Returns an object providing access to the ASPxClientDailyRecurrenceControl's editor values. + */ + CreateValueAccessor(): DefaultRecurrenceRuleValuesAccessor; + /** + * Updates values of editors displayed by the ASPxClientDailyRecurrenceControl. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object containing new editor values. + */ + Update(recurrenceInfo: ASPxClientRecurrenceInfo): void; +} +/** + * Represents a client-side equivalent of the WeeklyRecurrenceControl. + */ +interface ASPxClientWeeklyRecurrenceControl extends ASPxClientRecurrenceControlBase { + /** + * Returns an object providing access to the ASPxClientWeeklyRecurrenceControl's editor values. + */ + CreateValueAccessor(): DefaultRecurrenceRuleValuesAccessor; + /** + * Updates values of editors displayed by the ASPxClientWeeklyRecurrenceControl. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object containing new editor values. + */ + Update(recurrenceInfo: ASPxClientRecurrenceInfo): void; +} +/** + * Represents a client-side equivalent of the MonthlyRecurrenceControl. + */ +interface ASPxClientMonthlyRecurrenceControl extends ASPxClientRecurrenceControlBase { + /** + * Returns an object providing access to the ASPxClientMonthlyRecurrenceControl's editor values. + */ + CreateValueAccessor(): DefaultRecurrenceRuleValuesAccessor; + /** + * Updates values of editors displayed by the ASPxClientMonthlyRecurrenceControll. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object containing new editor values. + */ + Update(recurrenceInfo: ASPxClientRecurrenceInfo): void; +} +/** + * Represents a client-side equivalent of the YearlyRecurrenceControl. + */ +interface ASPxClientYearlyRecurrenceControl extends ASPxClientRecurrenceControlBase { + /** + * Returns an object providing access to the ASPxClientYearlyRecurrenceControl's editor values. + */ + CreateValueAccessor(): DefaultRecurrenceRuleValuesAccessor; + /** + * Updates values of editors displayed by the ASPxClientYearlyRecurrenceControl. + * @param recurrenceInfo An ASPxClientRecurrenceInfo object containing new editor values. + */ + Update(recurrenceInfo: ASPxClientRecurrenceInfo): void; +} +/** + * An object providing access to an ASPxClientRecurrenceControlBase control's editor values. + */ +interface DefaultRecurrenceRuleValuesAccessor { + /** + * Get the frequency with which the appointment occurs with respect to the appointment's recurrence type. + */ + GetPeriodicity(): number; + /** + * Gets the number of the month's day in which the appointment is scheduled. + */ + GetDayNumber(): number; + /** + * Gets or sets the month's number. + */ + GetMonth(): number; + /** + * Gets the days of the week on which a weekly recurrent appointment is scheduled. + */ + GetWeekDays(): ASPxClientWeekDays; + /** + * Gets the number of the week in a month when an appointment is scheduled. + */ + GetWeekOfMonth(): ASPxClientWeekOfMonth; +} +/** + * An object providing access to an ASPxClientDailyRecurrenceControl's editor values. + */ +interface DailyRecurrenceValuesAccessor extends DefaultRecurrenceRuleValuesAccessor { + /** + * Gets the number of days between appointment occurrences. + */ + GetPeriodicity(): number; + /** + * Gets the days of the week to which a daily recurrent appointment is scheduled. + */ + GetWeekDays(): ASPxClientWeekDays; +} +/** + * An object providing access to an ASPxClientWeeklyRecurrenceControl's editor values. + */ +interface WeeklyRecurrenceValuesAccessor extends DefaultRecurrenceRuleValuesAccessor { + /** + * Gets the number of weeks between appointment occurrences. + */ + GetPeriodicity(): number; + /** + * Gets the days of the week on which a weekly recurrent appointment is scheduled. + */ + GetWeekDays(): ASPxClientWeekDays; +} +/** + * An object providing access to an ASPxClientMonthlyRecurrenceControl's editor values. + */ +interface MonthlyRecurrenceValuesAccessor extends DefaultRecurrenceRuleValuesAccessor { + /** + * Gets the day of the month on which the appointment is scheduled. + */ + GetDayNumber(): number; + /** + * Gets the number of months between appointment occurrences. + */ + GetPeriodicity(): number; + /** + * Gets the days of the week on which a monthly recurrent appointment is scheduled. + */ + GetWeekDays(): ASPxClientWeekDays; + /** + * Gets the number of the week in a month when an appointment is scheduled. + */ + GetWeekOfMonth(): ASPxClientWeekOfMonth; +} +/** + * An object providing access to an ASPxClientYearlyRecurrenceControl's editor values. + */ +interface YearlyRecurrenceValuesAccessor extends DefaultRecurrenceRuleValuesAccessor { + /** + * Gets the day of the month on which the appointment is scheduled. + */ + GetDayNumber(): number; + /** + * Gets or sets the month's number. + */ + GetMonth(): number; + /** + * Gets the days of the week on which a yearly recurrent appointment is scheduled. + */ + GetWeekDays(): ASPxClientWeekDays; + /** + * Gets or sets the number of a week in a month when an appointment is scheduled. + */ + GetWeekOfMonth(): ASPxClientWeekOfMonth; +} +/** + * Provides base functionality for ASPxClientScheduler's forms. + */ +interface ASPxClientFormBase { + /** + * Occurs when the form has been closed. + */ + FormClosed: ASPxClientEvent>; + /** + * Closes the form. + */ + Close(): void; + /** + * Sets the visibility state of the specified form element. + * @param element An object specifying the element whose visibility state should be changed. + * @param isVisible true to display the element; false to hide the element. + */ + SetVisibleCore(element: Object, isVisible: boolean): void; +} +/** + * Represents a client-side equivalent of the RecurrenceTypeEdit. + */ +interface ASPxClientRecurrenceTypeEdit extends ASPxClientRadioButtonList { + /** + * Gets the selected recurrence type. + */ + GetRecurrenceType(): ASPxClientRecurrenceType; + /** + * Sets the selected recurrence type. + * @param recurrenceType An ASPxClientRecurrenceType enumeration value. + */ + SetRecurrenceType(recurrenceType: ASPxClientRecurrenceType): void; +} +/** + * Contains lists of property names for different appointment types. + */ +interface AppointmentPropertyNames { + /** + * Gets the list of properties characteristic for appointments of the Normal type. + * Value: A string array which is composed of the appointment property names. + */ + Normal: string; + /** + * Gets the list of properties characteristic for appointments of the Pattern type. + * Value: A string array which is composed of the appointment property names. + */ + Pattern: string; +} +/** + * Represents the client-side equivalent of the TimeInterval class. + */ +interface ASPxClientTimeInterval { + /** + * Gets a value indicating if the time interval is All-Day. + */ + GetAllDay(): boolean; + /** + * Sets a value specifying if the time interval is All-Day. + * @param allDayValue true, if this is an all-day time interval; otherwise, false. + */ + SetAllDay(allDayValue: boolean): void; + /** + * Client-side function that returns the start time of the interval. + */ + GetStart(): Date; + /** + * Client-side function that returns the duration of the specified time interval. + */ + GetDuration(): number; + /** + * Client-side function that returns the end time of the interval. + */ + GetEnd(): Date; + /** + * Client-side function that sets the start time of the interval. + * @param value A DateTime value, representing the beginning of the interval. + */ + SetStart(value: Date): void; + /** + * Client-side function that returns the duration of the specified time interval. + * @param value A TimeSpan object, representing the duration of the time period. + */ + SetDuration(value: any): void; + /** + * Client-side function that sets the end time of the interval. + * @param value A DateTime value, representing the end of the interval. + */ + SetEnd(value: Date): void; + /** + * Determines whether the specified object is equal to the current ASPxClientTimeInterval instance. + * @param interval The object to compare with the current object. + */ + Equals(interval: ASPxClientTimeInterval): boolean; + /** + * Checks if the current time interval intersects with the specified time interval. + * @param interval A ASPxClientTimeInterval object which represents the time interval to be checked. + */ + IntersectsWith(interval: ASPxClientTimeInterval): boolean; + /** + * Checks if the current time interval intersects with the specified time interval. The boundaries of the time intervals are excluded from the check. + * @param interval A ASPxClientTimeInterval object which represents the time interval to be checked. + */ + IntersectsWithExcludingBounds(interval: ASPxClientTimeInterval): boolean; + /** + * Client-side function that determines whether the specified interval is contained within the current one. + * @param interval An ASPxClientTimeInterval object, representing the time interval to check. + */ + Contains(interval: ASPxClientTimeInterval): boolean; +} +/** + * Holds action types for the client-side Refresh method. + */ +interface ASPxClientSchedulerRefreshAction { + /** + * Gets the value of the action parameter which initiates a simple reload of the control. + * Value: An integer representing the action parameter value. + */ + None: number; + /** + * Gets the value of the action parameter which initiates reloading of the main ASPxScheduler control and its data-dependent satellites. + * Value: An integer representing the action parameter value. + */ + VisibleIntervalChanged: number; + /** + * Gets the value of the action parameter which initiates reloading of the main ASPxScheduler control and its satellite View controls. + * Value: An integer representing the action parameter value. + */ + ActiveViewTypeChanged: number; +} +/** + * Contains methods allowing you to perform or cancel an operation. + */ +interface ASPxClientAppointmentOperation { + /** + * Passes parameters to the corresponding callback function to accomplish the operation. + */ + Apply(): void; + /** + * Cancels the operation. + */ + Cancel(): void; +} +/** + * Represents the client-side equivalent of the ASPxScheduler control. + */ +interface ASPxClientScheduler extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientScheduler. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when the Scheduler control is about to change its active view. + */ + ActiveViewChanging: ASPxClientEvent>; + /** + * Client-side event. Occurs after the active view of the ASPxScheduler has been changed. + */ + ActiveViewChanged: ASPxClientEvent>; + /** + * Occurs when an end-user presses a keyboard shortcut. + */ + Shortcut: ASPxClientEvent>; + /** + * Occurs when the end-user clicks an appointment. + */ + AppointmentClick: ASPxClientEvent>; + /** + * Occurs when the end-user double clicks on an appointment. + */ + AppointmentDoubleClick: ASPxClientEvent>; + /** + * Occurs when an end-user clicks a time cell. + */ + CellClick: ASPxClientEvent>; + /** + * Occurs when and end-user double-clicks a time cell. + */ + CellDoubleClick: ASPxClientEvent>; + /** + * Occurs on the client side when the user selects an appointment. + */ + AppointmentsSelectionChanged: ASPxClientEvent>; + /** + * Fires on the client side when the time cell selection is changed. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the time cell selection is about to change. + */ + SelectionChanging: ASPxClientEvent>; + /** + * Fires on the client side when the time interval of the scheduling area is changed. + */ + VisibleIntervalChanged: ASPxClientEvent>; + /** + * Occurs when one of More Buttons is clicked. + */ + MoreButtonClicked: ASPxClientEvent>; + /** + * Client-side event that occurs when a popup menu item is clicked. + */ + MenuItemClicked: ASPxClientEvent>; + /** + * Client-side event that occurs after an appointment has been dragged and dropped. + */ + AppointmentDrop: ASPxClientEvent>; + /** + * A client-side event that occurs when an appointment is being dragged. + */ + AppointmentDrag: ASPxClientEvent>; + /** + * A client-side event that occurs when an appointment is being resized. + */ + AppointmentResizing: ASPxClientEvent>; + /** + * Client-side event that occurs when an appointment is resized. + */ + AppointmentResize: ASPxClientEvent>; + /** + * Client-side event that fires before an appointment is deleted. + */ + AppointmentDeleting: ASPxClientEvent>; + /** + * Client-side scripting method that gets the active View. + */ + GetActiveViewType(): ASPxSchedulerViewType; + /** + * Client-side scripting method to change the ASPxScheduler's active View. + * @param value A ASPxSchedulerViewType enumeration value, representing a view type to set. + */ + SetActiveViewType(value: ASPxSchedulerViewType): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Client-side scripting method which initiates a round trip to the server so that the current page will be reloaded. + */ + Refresh(): void; + /** + * Client-side scripting method which initiates a round trip to the server, so that the control will be reloaded using the specified refresh action. + * @param refreshAction An ASPxClientSchedulerRefreshAction enumeration value, specifying the refresh action. + */ + Refresh(refreshAction: ASPxClientSchedulerRefreshAction): void; + /** + * Client-side function that returns the type of grouping applied to the appointments displayed in the scheduler. + */ + GetGroupType(): ASPxSchedulerGroupType; + /** + * Client-side scripting method which raises the callback command to set the GroupType. + * @param value An ASPxSchedulerGroupType enumeration value, which specifies how appointments are grouped. + */ + SetGroupType(value: ASPxSchedulerGroupType): void; + /** + * Client-side method that navigates the scheduler to the current system date. + */ + GotoToday(): void; + /** + * Client-side scripting method which raises the GotoDate callback command. + * @param date A DateTime value specifying the destination time. + */ + GotoDate(date: Date): void; + /** + * Client-side function which slides the visible interval one time span back. + */ + NavigateBackward(): void; + /** + * Client-side function which slides the visible interval one time span forward. + */ + NavigateForward(): void; + /** + * Client-side method which raises the callback command to change the ClientTimeZoneId of the scheduler. + * @param timeZoneId A string, a time zone identifier which is valid for the System.TimeZoneInfo.Id property. + */ + ChangeTimeZoneId(timeZoneId: string): void; + /** + * Displays a Selection ToolTip on a position given by the specified coordinates. + * @param x An integer representing the X-coordinate. + * @param y An integer representing the Y-coordinate. + */ + ShowSelectionToolTip(x: number, y: number): void; + /** + * Client-side function that returns the time interval, selected in the scheduler. + */ + GetSelectedInterval(): ASPxClientTimeInterval; + /** + * Client-side function that returns the ResourceId of selected time cell's resource. + */ + GetSelectedResource(): string; + /** + * Gets a collection of visible appointments. + */ + GetVisibleAppointments(): ASPxClientAppointment[]; + /** + * Client-side function that returns an appointment with the specified ID. + * @param id An appointment's identifier. + */ + GetAppointmentById(id: Object): ASPxClientAppointment; + /** + * Client-side function that returns the id's of selected appointments. + */ + GetSelectedAppointmentIds(): string[]; + /** + * Client-side function that removes the appointment specified by its client ID from a collection of selected appointments. + * @param aptId An appointment's identifier. + */ + DeselectAppointmentById(aptId: Object): void; + /** + * Client-side function that selects an appointment with the specified ID. + * @param aptId An appointment's identifier. + */ + SelectAppointmentById(aptId: Object): void; + /** + * Enables obtaining appointment property values in a client-side script. Executes the callback command with the AppointmentData identifier. + * @param aptId An integer, representing the appointment ID. + * @param propertyNames An array of strings, representing the appointment properties to query. + * @param onCallBack A handler of a function which will receive and process the properties' values. + */ + GetAppointmentProperties(aptId: number, propertyNames: string[], onCallBack: Object): string[]; + /** + * Initiates a callback to retrieve and apply the values for the specified list of properties to the specified appointment, and transfer control to the specified function. + * @param clientAppointment An ASPxClientAppointment object that is the client appointment for which the data is retrieved. + * @param propertyNames An array of strings, that are the names of appointment properties to query. + * @param onCallBack A handler of a function executed after a callback. + */ + RefreshClientAppointmentProperties(clientAppointment: ASPxClientAppointment, propertyNames: string[], onCallBack: Object): void; + /** + * Client-side function that invokes the editing form for the appointment specified by its client ID. + * @param aptClientId A string, representing the appointment client identifier. + */ + ShowAppointmentFormByClientId(aptClientId: string): void; + /** + * Client-side function that invokes the editing form for the appointment specified by its storage identifier. + * @param aptServerId A string, representing the appointment identifier. + */ + ShowAppointmentFormByServerId(aptServerId: string): void; + /** + * Sets the time of the day corresponding to the start of the topmost displayed time cell row. + * @param duration An integer, representing the number of milliseconds passed since the start of the day. + * @param viewType An ASPxSchedulerViewType enumeration member, representing the scheduler's View. It can be either 'Day' or 'WorkWeek'. + */ + SetTopRowTime(duration: number, viewType: ASPxSchedulerViewType): void; + /** + * Sets the time of the day corresponding to the start of the topmost displayed time cell row. + * @param duration An integer, representing the number of milliseconds passed since the start of the day. + */ + SetTopRowTime(duration: number): void; + /** + * Gets the time of the day corresponding to the start of the topmost displayed time cell row. + * @param viewType An ASPxSchedulerViewType enumeration member, representing the scheduler's View. It can be either "Day" or "WorkWeek", otherwise the result is undefined. + */ + GetTopRowTime(viewType: ASPxSchedulerViewType): number; + /** + * Gets the time of day corresponding to the start of the topmost displayed time cell row. + */ + GetTopRowTime(): number; + /** + * Client-side scripting method which displays the Loading Panel. + */ + ShowLoadingPanel(): void; + /** + * Client-side scripting method which hides the Loading Panel from view. + */ + HideLoadingPanel(): void; + /** + * Client-side method that invokes the inplace editor form to create a new appointment. + * @param start A date object, representing the start of the new appointment. + * @param end A date object, representing the end of the new appointment. + */ + ShowInplaceEditor(start: Date, end: Date): void; + /** + * Client-side method that invokes the inplace editor form to create a new appointment. + * @param start A date object, representing the start of the new appointment. + * @param end A date object, representing the end of the new appointment. + * @param resourceId An object representing the identifier of a resource associated with the new appointment. + */ + ShowInplaceEditor(start: Date, end: Date, resourceId: string): void; + /** + * Client-side scripting method to insert the specified appointment. + * @param apt An ASPxClientAppointment object representing the client-side appointment. + */ + InsertAppointment(apt: ASPxClientAppointment): void; + /** + * Client-side scripting method to update the specified appointment. + * @param apt An ASPxClientAppointment object representing the client-side appointment. + */ + UpdateAppointment(apt: ASPxClientAppointment): void; + /** + * Client-side scripting method to delete the specified appointment. + * @param apt An ASPxClientAppointment object representing the client-side appointment. + */ + DeleteAppointment(apt: ASPxClientAppointment): void; + /** + * Client-side method that allows retrieving a collection of time intervals displayed by the ASPxScheduler. + */ + GetVisibleIntervals(): ASPxClientTimeInterval[]; + /** + * Changes the container that the ASPxScheduler tooltip belongs to. + * @param container An object that serves as the new container for the pop-up menu. + */ + ChangeToolTipContainer(container: Object): void; + /** + * Changes the container that the ASPxScheduler pop-up menu belongs to. + * @param container An object that serves as the new container for the pop-up menu. + */ + ChangePopupMenuContainer(container: Object): void; + /** + * Returns focus to the form if the ASPxScheduler control is not visible when the reminder fires. + * @param container A DIV object that is located in such a way that it is visible on the page in situations when the ASPxScheduler control is hidden. + */ + ChangeFormContainer(container: Object): void; + /** + * Client-side scripting method that saves appointment modifications and closes the form. + */ + AppointmentFormSave(): void; + /** + * Client-side scripting method that deletes the appointment being edited. + */ + AppointmentFormDelete(): void; + /** + * Client-side scripting method that cancels changes and closes the appointment editing form. + */ + AppointmentFormCancel(): void; + /** + * Client-side scripting method that navigates the scheduler to the date selected in the GotoDate form and closes the form. + */ + GoToDateFormApply(): void; + /** + * Client-side scripting method that cancels changes and closes the GotoDate form. + */ + GoToDateFormCancel(): void; + /** + * Client-side scripting method that cancels changes and closes the form. + */ + InplaceEditFormSave(): void; + /** + * Client-side scripting method that cancels changes and closes the form. + */ + InplaceEditFormCancel(): void; + /** + * Client-side scripting method that invokes the appointment editing form for the appointment being edited in the inplace editor. + */ + InplaceEditFormShowMore(): void; + /** + * Client-side scripting method that closes the Reminder form. + */ + ReminderFormCancel(): void; + /** + * Client-side scripting method that calls the Dismiss method for the selected reminder. + */ + ReminderFormDismiss(): void; + /** + * Client-side scripting method that dismisses all reminders shown in the Reminder form. + */ + ReminderFormDismissAll(): void; + /** + * Client-side scripting method that changes the alert time for the selected reminder to the specified interval. + */ + ReminderFormSnooze(): void; +} +/** + * Represents a client-side equivalent of the SchedulerViewType object. + */ +interface ASPxSchedulerViewType { + /** + * Gets a string representation equivalent of Day enumeration for use in client scripts. + * Value: A string "Day", indicating the DayView. + */ + Day: string; + /** + * Gets a string representation equivalent of WorkWeek enumeration for use in client scripts. + * Value: A string "WorkWeek", indicating the WorkWeekView. + */ + WorkWeek: string; + /** + * Gets a string representation equivalent of Week enumeration for use in client scripts. + * Value: A string "Week", indicating the WeekView. + */ + Week: string; + /** + * Gets a string representation equivalent of Month enumeration for use in client scripts. + * Value: A string "Month", indicating the MonthView. + */ + Month: string; + /** + * Gets a string representation equivalent of Timeline enumeration for use in client scripts. + * Value: A string "Timeline", indicating the TimelineView. + */ + Timeline: string; + /** + * Gets a string representation equivalent of FullWeek enumeration for use in client scripts. + * Value: A string "FullWeek", indicating the FullWeekView. + */ + FullWeek: string; + /** + * Gets a string representation equivalent to the Agenda enumeration for use in client scripts. + * Value: A string "Agenda", indicating the AgendaView. + */ + Agenda: string; +} +/** + * Represents a client-side equivalent of the SchedulerGroupType enumeration. + */ +interface ASPxSchedulerGroupType { + /** + * Gets a string representation equivalent of None enumeration for use in client scripts. + * Value: A "None" string value. + */ + None: string; + /** + * Gets a string representation equivalent of Date enumeration for use in client scripts. + * Value: A "Date" string value. + */ + Date: string; + /** + * Gets a string representation equivalent of Resource enumeration for use in client scripts. + * Value: A "Resource" string value. + */ + Resource: string; +} +/** + * Represents a client-side equivalent of the AppointmentType enumeration. + */ +interface ASPxAppointmentType { + /** + * Gets a string representation equivalent of Normal enumeration for use in client scripts. + * Value: A "Normal" string value. + */ + Normal: string; + /** + * Gets a string representation equivalent of Pattern enumeration for use in client scripts. + * Value: A "Pattern" string value. + */ + Pattern: string; + /** + * Gets a string representation equivalent of Occurrence enumeration for use in client scripts. + * Value: An "Occurrence" string value. + */ + Occurrence: string; + /** + * Gets a string representation equivalent of ChangedOccurrence enumeration for use in client scripts. + * Value: A "ChangedOccurrence" string value. + */ + ChangedOccurrence: string; + /** + * Gets a string representation equivalent of DeletedOccurrence enumeration for use in client scripts. + * Value: A "DeletedOccurrence" string value. + */ + DeletedOccurrence: string; +} +interface ASPxClientAppointmentDeletingEventHandler { + /** + * A method that will handle the AppointmentDeleting event. + * @param source The event sender (typically an ASPxClientScheduler control). + * @param e A ASPxClientAppointmentDeletingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentDeletingEventArgs): void; +} +/** + * Provides data for the AppointmentDeleting event. + */ +interface ASPxClientAppointmentDeletingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets client IDs of the appointments that are intended to be removed. + * Value: An array of client appointment identifiers, representing appointments passed for deletion. + */ + appointmentIds: Object[]; +} +interface AppointmentClickEventHandler { + /** + * A method that will handle the AppointmentClick event. + * @param source The event sender (typically an ASPxClientScheduler control). + * @param e A AppointmentClickEventArgs object that contains event data. + */ + (source: S, e: AppointmentClickEventArgs): void; +} +/** + * Provides data for the AppointmentDoubleClick events. + */ +interface AppointmentClickEventArgs extends ASPxClientEventArgs { + /** + * Gets the client appointment ID for the appointment being clicked. + * Value: A string, representing the client ID of the appointment. + */ + appointmentId: string; + /** + * Gets the HTML element that the event was triggered on. + * Value: An object containing event data. + */ + htmlElement: Object; + /** + * Gets or sets whether an event is handled, and that default actions are not required. + * Value: true if no default processing is required; otherwise, false. + */ + handled: boolean; +} +/** + * A method that will handle the AppointmentsSelectionChanged event. + */ +interface AppointmentsSelectionEventHandler { + /** + * A method that will handle the AppointmentsSelectionChanged event. + * @param source The ASPxScheduler control which fires the event. + * @param e A AppointmentsSelectionEventArgs object that contains event data. + */ + (source: S, e: AppointmentsSelectionEventArgs): void; +} +/** + * Provides data for the AppointmentsSelectionChanged event. + */ +interface AppointmentsSelectionEventArgs extends ASPxClientEventArgs { + /** + * Gets identifiers of the selected appointments. + * Value: A comma separated list of string values, representing appointment IDs. + */ + appointmentIds: string[]; +} +/** + * A method that will handle the Shortcut event. + */ +interface ShortcutEventHandler { + /** + * A method that will handle the Shortcut event. + * @param source The event sender (typically an ASPxClientScheduler control). + * @param e A ShortcutEventArgs object that contains event data. + */ + (source: S, e: ShortcutEventArgs): void; +} +/** + * Provides data for the client-side Shortcut event. + */ +interface ShortcutEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of a command associated with the keyboard shortcut. + * Value: A string containing a command name. + */ + commandName: string; + /** + * Gets an object containing information about a keyboard shortcut event. + * Value: An object containing event data. + */ + htmlEvent: Object; + /** + * Gets or sets whether an event is handled, and that default actions are not required. + * Value: true, if no default processing is required; otherwise, false. + */ + handled: boolean; +} +/** + * A method that will handle the ActiveViewChanging event. + */ +interface ActiveViewChangingEventHandler { + /** + * A method that will handle the ActiveViewChanging event. + * @param source The ASPxClientScheduler control which fires the event. + * @param e An ActiveViewChangingEventArgs object that contains event data + */ + (source: S, e: ActiveViewChangingEventArgs): void; +} +/** + * Provides data for the client-side ActiveViewChanging event. + */ +interface ActiveViewChangingEventArgs extends ASPxClientEventArgs { + /** + * Gets the value of the ActiveView property before modification. + * Value: A SchedulerViewType enumeration. + */ + oldView: ASPxSchedulerViewType; + /** + * Gets the new value of the ActiveView property. + * Value: A string, which is the SchedulerViewType enumeration value. + */ + newView: ASPxSchedulerViewType; + /** + * Gets or sets whether the change of active view should be canceled. + * Value: true to cancel the operation; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the MoreButtonClicked event. + */ +interface MoreButtonClickedEventHandler { + /** + * A method that will handle MoreButtonClicked event. + * @param source The ASPxClientScheduler control which fires the event. + * @param e A MoreButtonClickedEventArgs object that contains event data. + */ + (source: S, e: MoreButtonClickedEventArgs): void; +} +/** + * Provides data for the MoreButtonClicked client-side event. + */ +interface MoreButtonClickedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the Start or End values of the target appointment. + * Value: A DateTime value representing the target appointment's boundary. + */ + targetDateTime: Date; + /** + * Gets the time interval of the cell where the button is located. + * Value: An ASPxClientTimeInterval object representing the time interval of the cell which holds the button. + */ + interval: ASPxClientTimeInterval; + /** + * Gets the resource identifier associated with the cell where the button is located. + * Value: A string, corresponding to ResourceId. + */ + resource: string; + /** + * Gets or sets whether an event is handled. If it is handled, default actions are not required. + * Value: true if no default processing is required; otherwise, false. + */ + handled: boolean; +} +/** + * A method that will handle the MenuItemClicked event. + */ +interface MenuItemClickedEventHandler { + /** + * A method that will handle the MenuItemClicked event. + * @param source The ASPxClientScheduler control which fires the event. + * @param e A MenuItemClickedEventArgs object that contains event data. + */ + (source: S, e: MenuItemClickedEventArgs): void; +} +/** + * Provides data for the MenuItemClicked event. + */ +interface MenuItemClickedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the menu item which is clicked. + * Value: A string, containing the menu item name. + */ + itemName: string; + /** + * Gets or sets whether an event is handled, and that default actions are not required. + * Value: true if no default processing is required; otherwise, false. + */ + handled: boolean; +} +/** + * A method that will handle the AppointmentDrag event. + */ +interface AppointmentDragEventHandler { + /** + * A method that will handle the AppointmentDrag event. + * @param source The event sender (typically an ASPxClientScheduler object). + * @param e A ASPxClientAppointmentDragEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentDragEventArgs): void; +} +/** + * Provides data for the AppointmentDrag event. + */ +interface ASPxClientAppointmentDragEventArgs extends ASPxClientEventArgs { + /** + * Specifies whether or not appointments can be dropped into the intervals over which they are currently dragged. + * Value: true to allow dropping appointments; otherwise, false. + */ + allow: boolean; + /** + * Gets a mouse event object related to the current drag operation. + * Value: An object providing event properties specific to mouse events. + */ + mouseEvent: Object; + /** + * Provides information about dragged appointments. + * Value: An array of ASPxClientAppointmentDragInfo objects storing information about dragged appointments. + */ + dragInformation: ASPxClientAppointmentDragInfo[]; +} +/** + * A method that will handle the AppointmentDrop event. + */ +interface AppointmentDropEventHandler { + /** + * A method that will handle the AppointmentDrop event. + * @param source The event sender (typically an ASPxClientScheduler object). + * @param e A ASPxClientAppointmentDropEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentDropEventArgs): void; +} +/** + * Provides data for the AppointmentDrop event. + */ +interface ASPxClientAppointmentDropEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value that specifies whether the event is handled, and the default processing is not required. + * Value: true, if if the event is completely handled by custom code and no default processing is required; otherwise, false. + */ + handled: boolean; + /** + * Provides access to an object that enables you to choose an operation to perform. + * Value: An ASPxClientAppointmentOperation object providing methods to perform the required operation. + */ + operation: ASPxClientAppointmentOperation; + /** + * Provides information about dropped appointments. + * Value: An array of ASPxClientAppointmentDragInfo objects storing information about dropped appointments. + */ + dragInformation: ASPxClientAppointmentDragInfo[]; +} +interface AppointmentResizeEventHandler { + /** + * A method that will handle the AppointmentResize event. + * @param source The event sender (typically an ASPxClientScheduler control). + * @param e A ASPxClientAppointmentResizeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentResizeEventArgs): void; +} +/** + * Provides data for the AppointmentResize event. + */ +interface ASPxClientAppointmentResizeEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets whether default event processing is required. + * Value: true to process an event using only custom code; otherwise, false. + */ + handled: boolean; + /** + * Provides access to an object that enables you to choose an operation to perform. + * Value: An ASPxClientAppointmentOperation object providing methods to perform the required operation. + */ + operation: ASPxClientAppointmentOperation; + /** + * Gets the resized appointment's identifier. + * Value: A string containing an appointment identifier. + */ + appointmentId: string; + /** + * Gets the appointment's interval before resizing. + * Value: An object representing the interval assigned to the appointment. + */ + oldInterval: ASPxClientTimeInterval; + /** + * Gets the appointment's interval after resizing. + * Value: An object representing the interval assigned to the appointment. + */ + newInterval: ASPxClientTimeInterval; +} +/** + * A method that will handle the AppointmentResizing event. + */ +interface AppointmentResizingEventHandler { + /** + * A method that will handle the AppointmentResizing event. + * @param source The event sender (typically an ASPxClientScheduler object). + * @param e A ASPxClientAppointmentResizingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientAppointmentResizingEventArgs): void; +} +/** + * Provides data for the AppointmentResizing event. + */ +interface ASPxClientAppointmentResizingEventArgs extends ASPxClientEventArgs { + /** + * Specifies whether or not an appointment can be resized to the new time interval. + * Value: true to allow resizing the appointment; otherwise, false. + */ + allow: boolean; + /** + * Gets a mouse event object related to the current appointment resizing operation. + * Value: An object providing event properties specific to mouse events. + */ + mouseEvent: Object; + /** + * Gets the resized appointment's identifier. + * Value: A string containing an appointment identifier. + */ + appointmentId: string; + /** + * Gets the appointment's interval before resizing. + * Value: An object representing the interval assigned to the appointment. + */ + oldInterval: ASPxClientTimeInterval; + /** + * Gets the appointment's interval after resizing. + * Value: An object representing the interval assigned to the appointment. + */ + newInterval: ASPxClientTimeInterval; +} +/** + * Stores information about an appointment drag operation. + */ +interface ASPxClientAppointmentDragInfo { + /** + * Gets the dragged appointment's identifier. + * Value: A string containing an appointment identifier. + */ + appointmentId: string; + /** + * Gets the appointment's interval before the drag operation. + * Value: An object representing the interval assigned to the appointment. + */ + oldInterval: ASPxClientTimeInterval; + /** + * Gets resources that were associated with the appointment before the drag operation. + * Value: A array of strings containing resource identifiers. + */ + oldResources: string[]; + /** + * Gets the appointment's interval after the drag operation. + * Value: An object representing the interval assigned to the appointment. + */ + newInterval: ASPxClientTimeInterval; + /** + * Gets resources associated with the appointment after the drag operation. + * Value: An array of strings containing resource identifiers. + */ + newResources: string[]; +} +/** + * A method that will handle the CellDoubleClick events. + */ +interface CellClickEventHandler { + /** + * A method that will handle the CellClick event. + * @param source The event sender (typically an ASPxClientScheduler control). + * @param e A CellClickEventArgs object that contains event data. + */ + (source: S, e: CellClickEventArgs): void; +} +/** + * Provides data for the CellDoubleClick events. + */ +interface CellClickEventArgs extends ASPxClientEventArgs { + /** + * Provides access to an object containing information about an HTML element representing the clicked time cell. + * Value: An object containing information about an HTML element. + */ + htmlElement: Object; + /** + * Provides access to a time interval occupied by the clicked time cell. + * Value: An object. + */ + interval: ASPxClientTimeInterval; + /** + * Gets the name of a resource to which the clicked time cell belongs. + * Value: A string containing the name of a resource. + */ + resource: string; +} +/** + * Contains information about a client tooltip. + */ +interface ASPxClientSchedulerToolTipData { + /** + * Returns the client appointment for which the tooltip is displayed. + */ + GetAppointment(): ASPxClientAppointment; + /** + * Returns the client time interval for which the tooltip is displayed. + */ + GetInterval(): ASPxClientTimeInterval; + /** + * Returns the resources associated with the appointment for which the tooltip is displayed. + */ + GetResources(): Object[]; +} +/** + * A client-side equivalent of the ASPxSchedulerToolTipBase control. + */ +interface ASPxClientToolTipBase { + /** + * Returns the value that indicates whether or not the tooltip can be displayed. + */ + CanShowToolTip(): boolean; + /** + * Ends updating the tooltip content. + * @param toolTipData An ASPxClientSchedulerToolTipData object providing data required to update the tooltip content. + */ + FinalizeUpdate(toolTipData: ASPxClientSchedulerToolTipData): void; + /** + * Updates the tooltip content. + * @param toolTipData An ASPxClientSchedulerToolTipData object providing data required to update the tooltip content. + */ + Update(toolTipData: ASPxClientSchedulerToolTipData): void; + /** + * Closes the tooltip. + */ + Close(): void; + /** + * Gets the tooltip position. + * @param bounds An object that represents the tooltip bounds. + */ + CalculatePosition(bounds: Object): ASPxClientPoint; + /** + * Displays the Appointment Menu in the position of the tooltip. + * @param eventObject An object containing information about the event on which the menu is displayed. + */ + ShowAppointmentMenu(eventObject: Object): void; + /** + * Displays the View Menu in the position of the tooltip. + * @param eventObject An object containing information about the event on which the menu is displayed. + */ + ShowViewMenu(eventObject: Object): void; + /** + * Returns the string representation of the specified interval. + * @param interval An ASPxClientTimeInterval object to convert. + */ + ConvertIntervalToString(interval: ASPxClientTimeInterval): string; +} +/** + * Represents the client-side equivalent of the ASPxSpellChecker class. + */ +interface ASPxClientSpellChecker extends ASPxClientControl { + /** + * Client-side event that occurs before the spell check starts. + */ + BeforeCheck: ASPxClientEvent>; + /** + * Client-side event that occurs before a message box informing about process completion is shown. + */ + CheckCompleteFormShowing: ASPxClientEvent>; + /** + * Client-side event that occurs when a spell check is finished. + */ + AfterCheck: ASPxClientEvent>; + /** + * Occurs after a word is changed in a checked text. + */ + WordChanged: ASPxClientEvent>; + /** + * Starts the spelling check of the text contained within the element specified by the CheckedElementID value. + */ + Check(): void; + /** + * Starts checking contents of the specified element. + * @param element An object representing the element being checked. + */ + CheckElement(element: Object): void; + /** + * Starts checking contents of the specified element. + * @param id A string representing the identifier of the element being checked. + */ + CheckElementById(id: string): void; + /** + * Starts checking the contents of controls in the specified container. + * @param containerElement An object representing a control which contains elements being checked. + */ + CheckElementsInContainer(containerElement: Object): void; + /** + * Starts checking the contents of controls in the specified container. + * @param containerId A string, specifying the control's identifier. + */ + CheckElementsInContainerById(containerId: string): void; +} +/** + * Represents an object that will handle the client-side BeforeCheck event. + */ +interface ASPxClientBeforeCheckEventHandler { + /** + * A method that will handle the BeforeCheck event. + * @param source The ASPxClientSpellChecker control which fires the event. + * @param e A ASPxClientSpellCheckerBeforeCheckEventArgs object that contains event data + */ + (source: S, e: ASPxClientSpellCheckerBeforeCheckEventArgs): void; +} +/** + * Provides data for an event that occurs before a spelling check is started. Represents the client-side equivalent of the BeforeCheckEventArgs class. + */ +interface ASPxClientSpellCheckerBeforeCheckEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the programmatic identifier assigned to the control which is going to be checked. + * Value: A string, containing the control's identifier. + */ + controlId: string; +} +/** + * Represents an object that will handle the client-side AfterCheck event. + */ +interface ASPxClientAfterCheckEventHandler { + /** + * A method that will handle the AfterCheck event. + * @param source The ASPxClientSpellChecker control which fires the event. + * @param e A ASPxClientSpellCheckerAfterCheckEventArgs object that contains event data + */ + (source: S, e: ASPxClientSpellCheckerAfterCheckEventArgs): void; +} +/** + * Provides data for the client event that occurs after a spelling check is complete. + */ +interface ASPxClientSpellCheckerAfterCheckEventArgs extends ASPxClientEventArgs { + /** + * Gets the programmatic identifier assigned to the control which has been checked. + * Value: A string, containing the control's identifier. + */ + controlId: string; + /** + * Gets the text that has been checked. + * Value: A string, containing checked text. + */ + checkedText: string; + /** + * Gets a value specifying whether spell checking is finished or stopped by the user. + * Value: A string value identifying the reason ("Default" or "User"). + */ + reason: string; +} +/** + * Represents an object that will handle the client-side WordChanged event. + */ +interface ASPxClientWordChangedEventHandler { + /** + * A method that will handle the AfterCheck event. + * @param source The event source. + * @param e An ASPxClientSpellCheckerAfterCheckEventArgs object which contains event data. + */ + (source: S, e: ASPxClientSpellCheckerAfterCheckEventArgs): void; +} +declare enum ASPxClientSpreadsheetPopupMenuType { + ColumnHeading=0, + RowHeading=1, + SheetTab=3, + Picture=4, + Chart=5, + Cell=7, + AutoFilter=8 +} +/** + * A method that will handle the CustomCommandExecuted event. + */ +interface ASPxClientSpreadsheetCustomCommandExecutedEventHandler { + /** + * A method that will handle the CustomCommandExecuted event. + * @param source An object representing the event source. Identifies the Spreadsheet that raised the event. + * @param e A ASPxClientSpreadsheetCustomCommandExecutedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetCustomCommandExecutedEventArgs): void; +} +/** + * Provides data for the CustomCommandExecuted event. + */ +interface ASPxClientSpreadsheetCustomCommandExecutedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value representing the processed command's name. + */ + commandName: string; + /** + * Gets an optional parameter that complements the processed command. + * Value: A string value containing additional information about the processed command. + */ + parameter: string; + /** + * This property is now obsolete. Use the commandName property instead. + */ + item: ASPxClientRibbonItem; +} +/** + * A method that will handle the DocumentChanged event. + */ +interface ASPxClientSpreadsheetDocumentChangedEventHandler { + /** + * A method that will handle the DocumentChanged event. + * @param source An object representing the event source. Identifies the Spreadsheet that raised the event. + * @param e A ASPxClientSpreadsheetDocumentChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetDocumentChangedEventArgs): void; +} +/** + * Provides data for the DocumentChanged event. + */ +interface ASPxClientSpreadsheetDocumentChangedEventArgs extends ASPxClientEventArgs { +} +/** + * A method that will handle the EndSynchronization events. + */ +interface ASPxClientSpreadsheetSynchronizationEventHandler { + /** + * A method that will handle the EndSynchronization events. + * @param source An object representing the event source. Identifies the Spreadsheet that raised the event. + * @param e A ASPxClientSpreadsheetSynchronizationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetSynchronizationEventArgs): void; +} +/** + * Provides data for the EndSynchronization events. + */ +interface ASPxClientSpreadsheetSynchronizationEventArgs extends ASPxClientEventArgs { +} +/** + * A method that will handle the HyperlinkClick event. + */ +interface ASPxClientSpreadsheetHyperlinkClickEventHandler { + /** + * A method that will handle the HyperlinkClick event. + * @param source An object representing the event source. Identifies the Spreadsheet that raised the event. + * @param e An ASPxClientSpreadsheetHyperlinkClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetHyperlinkClickEventArgs): void; +} +/** + * Provides data for the HyperlinkClick event. + */ +interface ASPxClientSpreadsheetHyperlinkClickEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value that specifies whether the event is handled, and the default processing is not required. + * Value: true, if if the event is completely handled by custom code and no default processing is required; otherwise, false. + */ + handled: boolean; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; + /** + * Gets a value identifying the clicked hyperlink type. + * Value: One of the values. + */ + hyperlinkType: ASPxClientOfficeDocumentLinkType; + /** + * Gets the clicked link's URI. + * Value: A sting value specifying the link's URI. + */ + targetUri: string; +} +/** + * A method that will handle the PopupMenuShowing event. + */ +interface ASPxClientSpreadsheetPopupMenuShowingEventHandler { + /** + * A method that will handle the PopupMenuShowing event. + * @param source The event sender (typically an ASPxClientSpreadsheet object). + * @param e A ASPxClientSpreadsheetPopupMenuShowingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetPopupMenuShowingEventArgs): void; +} +/** + * Provides data for the PopupMenuShowing event. + */ +interface ASPxClientSpreadsheetPopupMenuShowingEventArgs extends ASPxClientCancelEventArgs { + /** + * Provides access to a collection of menu items in the context menu being invoked. + * Value: A object representing the context menu's item collection. + */ + menuItems: ASPxClientSpreadsheetPopupMenuItemCollection; + /** + * Gets the currently displayed context menu's type. + * Value: One of the enumeration values. + */ + menuType: any; +} +/** + * A client-side equivalent of the ASPxSpreadsheet object. + */ +interface ASPxClientSpreadsheet extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientSpreadsheet. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client when a selection is changed in the ASPxSpreadsheet. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Occurs after a custom command has been executed on the client side. + */ + CustomCommandExecuted: ASPxClientEvent>; + /** + * Fires if any change is made to the Spreadsheet's document on the client. + */ + DocumentChanged: ASPxClientEvent>; + /** + * Fires after a client change has been made to the document and the client-server synchronization starts to apply the change on the server. + */ + BeginSynchronization: ASPxClientEvent>; + /** + * Fires after a document change has been applied to the server and server and client document models have been synchronized. + */ + EndSynchronization: ASPxClientEvent>; + /** + * Occurs on the client side after a hyperlink is clicked within the Spreadsheet's document. + */ + HyperlinkClick: ASPxClientEvent>; + /** + * Occurs before the context menu is displayed and allows menu customization. + */ + PopupMenuShowing: ASPxClientEvent>; + /** + * Sets input focus to the Spreadsheet. + */ + Focus(): void; + /** + * Gets access to the client ribbon object. + */ + GetRibbon(): ASPxClientRibbon; + /** + * Enables you to switch the full-screen mode of the Spreadsheet. + * @param fullscreen true to activate full-screen mode; false to deactivate full-screen mode. + */ + SetFullscreenMode(fullscreen: boolean): void; + /** + * Returns the current selection made in a Spreadsheet. + */ + GetSelection(): ASPxClientSpreadsheetSelection; + /** + * Indicates whether any unsaved changes are contained in the current document. + */ + HasUnsavedChanges(): boolean; + /** + * Gets the value of the specified cell. + * @param colModelIndex An integer value specifying the cell's column index. + * @param rowModelIndex An integer value specifying the cell's row index. + */ + GetCellValue(colModelIndex: number, rowModelIndex: number): Object; + /** + * Returns the comment associated with the specified data cell. + * @param colModelIndex An integer value specifying the data cell's column index. + * @param rowModelIndex An integer value specifying the data cell's row index. + */ + GetCellComment(colModelIndex: number, rowModelIndex: number): Object; + /** + * Gets the value of the currently active cell. + */ + GetActiveCellValue(): Object; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side DocumentCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side DocumentCallback event. + */ + PerformDocumentCallback(parameter: string): void; + /** + * Reconnects the Spreadsheet to an external ribbon. + */ + ReconnectToExternalRibbon(): void; +} +/** + * A method that will handle the client SelectionChanged event. + */ +interface ASPxClientSpreadsheetSelectionChangedEventHandler { + /** + * A method that will handle the SelectionChanged event. + * @param source An object representing the event source. Identifies the button editor that raised the event. + * @param e An ASPxClientSpreadsheetSelectionChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSpreadsheetSelectionChangedEventArgs): void; +} +/** + * Provides data for the SelectionChanged event. + */ +interface ASPxClientSpreadsheetSelectionChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets an object that determines the currently selected region within the Spreadsheet. + * Value: A object defining the current selection. + */ + selection: ASPxClientSpreadsheetSelection; +} +/** + * Represents the selection in the Spreadsheet. + */ +interface ASPxClientSpreadsheetSelection { + /** + * Gets the column index of the active cell. + * Value: An integer value specifying the active cell column index. + */ + activeCellColumnIndex: number; + /** + * Gets the row index of the active cell. + * Value: An integer value specifying the active cell row index. + */ + activeCellRowIndex: number; + /** + * Gets the index of the selection's left column. + * Value: An integer value specifying the index of the left column within the selection. + */ + leftColumnIndex: number; + /** + * Gets the index of the selection's top row. + * Value: An integer value specifying the index of the top row within the selection. + */ + topRowIndex: number; + /** + * Gets the index of the selection's right column. + * Value: An integer value specifying the index of the right column within the selection. + */ + rightColumnIndex: number; + /** + * Gets the index of the selection's bottom row. + * Value: An integer value specifying the index of the bottom row within the selection. + */ + bottomRowIndex: number; +} +/** + * Represents an individual item of the Spreadsheet's context menu. + */ +interface ASPxClientSpreadsheetPopupMenuItem { + /** + * Gets the immediate parent menu item to which the current menu item belongs. + * Value: A ASPxClientSpreadsheetPopupMenuItem object representing the menu item's immediate parent. + */ + parent: ASPxClientSpreadsheetPopupMenuItem; + /** + * Gets or sets the unique identifier name for the current menu item. + * Value: A string value that specifies the item's unique identifier name. + */ + name: string; + /** + * Gets or sets the text content of the current menu item. + * Value: A string value that specifies the text content of the menu item. + */ + text: string; + /** + * Gets or sets a value that indicates whether the menu item is enabled, allowing the item to respond to end-user interactions. + * Value: true if the item is enabled; otherwise, false. + */ + enabled: boolean; + /** + * Gets or sets the CSS class name defining the menu item's image. + * Value: A string value specifying the class name. + */ + imageClassName: string; + /** + * Gets or sets an URL which defines the navigation location. + * Value: A string value which represents an URL where the client web browser will navigate. + */ + navigateUrl: string; + /** + * Gets or sets the URL of the menu item's image. + * Value: A string value that specifies the location of an image. + */ + imageUrl: string; + /** + * Gets or sets a value that specifies whether the current menu item starts a group. + * Value: true if the current menu item starts a group; otherwise, false. + */ + beginGroup: boolean; + /** + * Gets or sets the current menu item's tooltip text. + * Value: A string which specifies the text content of the current menu item's tooltip. + */ + tooltip: string; + /** + * Gets or sets the window or frame at which to target the contents of the URL associated with the current menu item. + * Value: A string which identifies the window or frame at which to target the URL content. + */ + target: string; + /** + * Gets a collection that contains the submenu items of the current menu item. + */ + GetSubItems(): ASPxClientSpreadsheetPopupMenuItemCollection; + /** + * Returns the menu item's sub-item with the specified index. + * @param index An integer value specifying the index of the sub-item within a collection of the current menu item's submenu items. + */ + GetItem(index: number): ASPxClientSpreadsheetPopupMenuItem; + /** + * Returns the menu item's sub-item with the specified name property value. + * @param name A string value specifying the name property value of the sub-item to find. + */ + GetItemByName(name: string): ASPxClientSpreadsheetPopupMenuItem; + /** + * Returns the total number of the menu item's child items (submenu items). + */ + GetItemCount(): number; +} +/** + * Represents a collection of items in the Spreadhseet's context menu. + */ +interface ASPxClientSpreadsheetPopupMenuItemCollection { + /** + * Adds the specified menu item to the end of the collection. + * @param item An ASPxClientSpreadsheetPopupMenuItem object specifying the item to be added to the collection. + */ + Add(item: ASPxClientSpreadsheetPopupMenuItem): void; + /** + * Removes a menu item specified by its index within the collection. + * @param index An integer value specifying the index of the menu item to remove. + */ + Remove(index: number): void; + /** + * Removes a menu item specified by its name. + * @param name A string value specifying the name property value of a menu item to remove from the collection. + */ + RemoveByName(name: string): void; + /** + * Adds the specified item to the specified position within the collection. + * @param index An integer value that specifies the zero-based index at which the specified item should be inserted. + * @param item An ASPxClientSpreadsheetPopupMenuItem object to insert. + */ + Insert(index: number, item: ASPxClientSpreadsheetPopupMenuItem): void; + /** + * Returns the total number of menu items in the collection. + */ + GetCount(): number; + /** + * Returns an item object with the specified name property value. + * @param name A string value representing the name property value of the required item. + */ + GetByName(name: string): ASPxClientSpreadsheetPopupMenuItem; + /** + * Returns a menu item specified by its index in the collection. + * @param index An integer value that is the zero-based index of the to retrieve from the ASPxClientSpreadsheetPopupMenuItemCollection. + */ + Get(index: number): ASPxClientSpreadsheetPopupMenuItem; + /** + * Removes all menu items from the collection. + */ + Clear(): void; +} +/** + * Represents the client ASPxTreeList. + */ +interface ASPxClientTreeList extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any unhandled server error occurs during server-side processing of a callback sent by the ASPxClientTreeList. + */ + CallbackError: ASPxClientEvent>; + /** + * Enables you to display a context menu. + */ + ContextMenu: ASPxClientEvent>; + /** + * Occurs when a custom command button has been clicked. + */ + CustomButtonClick: ASPxClientEvent>; + /** + * Fires after a toolbar item has been clicked. + */ + ToolbarItemClick: ASPxClientEvent>; + /** + * Fires before the focused node has been changed. + */ + NodeFocusing: ASPxClientEvent>; + /** + * Fires in response to changing node focus. + */ + FocusedNodeChanged: ASPxClientEvent>; + /** + * Fires after the selection has been changed via end-user interaction. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Fires after the Customization Window has been closed. + */ + CustomizationWindowCloseUp: ASPxClientEvent>; + /** + * Fires after the callback has been processed in the CustomDataCallback event handler. + */ + CustomDataCallback: ASPxClientEvent>; + /** + * Fires on the client when a node is clicked. + */ + NodeClick: ASPxClientEvent>; + /** + * Fires on the client when a node is double clicked. + */ + NodeDblClick: ASPxClientEvent>; + /** + * Fires before a node is expanded. + */ + NodeExpanding: ASPxClientEvent>; + /** + * Fires before a node is collapsed. + */ + NodeCollapsing: ASPxClientEvent>; + /** + * Occurs before a node is dragged by an end-user. + */ + StartDragNode: ASPxClientEvent>; + /** + * Occurs after a node drag and drop operation is completed. + */ + EndDragNode: ASPxClientEvent>; + /** + * Enables you to prevent columns from being resized. + */ + ColumnResizing: ASPxClientEvent>; + /** + * Occurs after a column's width has been changed by an end-user. + */ + ColumnResized: ASPxClientEvent>; + /** + * Sets input focus to the ASPxTreeList. + */ + Focus(): void; + /** + * Gets the Popup Edit Form. + */ + GetPopupEditForm(): ASPxClientPopupControl; + /** + * Returns a toolbar specified by its name. + * @param name A string value specifying the toolbar name. + */ + GetToolbarByName(name: string): ASPxClientMenu; + /** + * Returns a toolbar specified by its index. + * @param index An integer value specifying the zero-based index of the toolbar object to retrieve. + */ + GetToolbar(index: number): ASPxClientMenu; + /** + * Returns the focused node's key value. + */ + GetFocusedNodeKey(): string; + /** + * Moves focus to the specified node. + * @param key A String value that uniquely identifies the node. + */ + SetFocusedNodeKey(key: string): void; + /** + * Indicates whether the specified node is selected. + * @param nodeKey A String value that identifies the node by its key value. + */ + IsNodeSelected(nodeKey: string): any; + /** + * Selects the specified node. + * @param nodeKey A string value that identifies the node. + */ + SelectNode(nodeKey: string): void; + /** + * Selects or deselects the specified node. + * @param nodeKey A string value that identifies the node. + * @param state true to select the node; otherwise, false. + */ + SelectNode(nodeKey: string, state: boolean): void; + /** + * Obtains key values of selected nodes that are displayed within the current page. + */ + GetVisibleSelectedNodeKeys(): string[]; + /** + * Indicates whether the Customization Window is displayed. + */ + IsCustomizationWindowVisible(): boolean; + /** + * Invokes the Customization Window. + */ + ShowCustomizationWindow(): void; + /** + * Invokes the Customization Window and displays it over the specified HTML element. + * @param htmlElement An object that specifies the HTML element relative to whose position the customization window is invoked. + */ + ShowCustomizationWindow(htmlElement: Object): void; + /** + * Closes the Customization Window. + */ + HideCustomizationWindow(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCustomCallback(arg: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. + */ + PerformCustomDataCallback(arg: string): void; + /** + * Obtains specified data source field values within a specified node, and submits them to the specified JavaScript function. + * @param nodeKey A string value that identifies the node. + * @param fieldNames A string value that contains the names of data source fields whose values within the specified node are returned. The field names should be separated by ';'. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetNodeValues(nodeKey: string, fieldNames: string, onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within a specified node, and submits them to the specified JavaScript function. + * @param nodeKey A string value that identifies the node. + * @param fieldNames The names of data source fields whose values within the specified node are returned. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetNodeValues(nodeKey: string, fieldNames: string[], onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within nodes that are displayed within the current page, and submits them to the specified JavaScript function. + * @param fieldNames A string value that contains the names of data source fields whose values within visible nodes are returned. The field names should be separated by ';'. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetVisibleNodeValues(fieldNames: string, onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within nodes that are displayed within the current page, and submits them to the specified JavaScript function. + * @param fieldNames The names of data source fields whose values within visible nodes are returned. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetVisibleNodeValues(fieldNames: string[], onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within selected nodes, and submits them to the specified JavaScript function. + * @param fieldNames A string value that contains the names of data source fields whose values within selected nodes are returned. The field names should be separated by ';'. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetSelectedNodeValues(fieldNames: string, onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within selected nodes, and submits them to the specified JavaScript function. + * @param fieldNames The names of data source fields whose values within selected nodes are returned. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + */ + GetSelectedNodeValues(fieldNames: string[], onCallback: ASPxClientTreeListValuesCallback): void; + /** + * Obtains specified data source field values within selected nodes, and submits them to the specified JavaScript function. + * @param fieldNames A string value that contains the names of data source fields whose values within selected nodes are returned. The field names should be separated by ';'. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + * @param visibleOnly true to return values within selected nodes that are displayed within the current page; false to return values within all selected nodes. + */ + GetSelectedNodeValues(fieldNames: string, onCallback: ASPxClientTreeListValuesCallback, visibleOnly: boolean): void; + /** + * Obtains specified data source field values within selected nodes, and submits them to the specified JavaScript function. + * @param fieldNames The names of data source fields whose values within selected nodes are returned. + * @param onCallback A ASPxClientTreeListValuesCallback object that represents the JavaScript function which receives the list of values as a parameter. + * @param visibleOnly true to return values within selected nodes that are displayed within the current page; false to return values within all selected nodes. + */ + GetSelectedNodeValues(fieldNames: string[], onCallback: ASPxClientTreeListValuesCallback, visibleOnly: boolean): void; + /** + * Selects the specified page. + * @param index An integer value that specifies the active page's index. + */ + GoToPage(index: number): void; + /** + * Activates the previous page. + */ + PrevPage(): void; + /** + * Activates the next page. + */ + NextPage(): void; + /** + * Gets the index of the page currently being selected. + */ + GetPageIndex(): number; + /** + * Gets the number of pages to which the ASPxTreeList's data is divided. + */ + GetPageCount(): number; + /** + * Returns the specified node's state. + * @param nodeKey A String value that identifies the node. + */ + GetNodeState(nodeKey: string): string; + /** + * Expands all nodes. + */ + ExpandAll(): void; + /** + * Collapses all Node. + */ + CollapseAll(): void; + /** + * Expands the specified node preserving the collapsed state of child nodes. + * @param key A String value that uniquely identifies the node. + */ + ExpandNode(key: string): void; + /** + * Collapses the specified node preserving the expanded state of child nodes. + * @param key A String value that uniquely identifies the node. + */ + CollapseNode(key: string): void; + /** + * Obtains key values of nodes that are displayed within the current page. + */ + GetVisibleNodeKeys(): string[]; + /** + * Returns an HTML table row that represents the specified node. + * @param nodeKey A string value that identifies the node. + */ + GetNodeHtmlElement(nodeKey: string): Object; + /** + * Returns the number of visible columns within the client ASPxTreeList. + */ + GetVisibleColumnCount(): number; + /** + * Returns the number of columns within the client ASPxTreeList. + */ + GetColumnCount(): number; + /** + * Returns the column located at the specified position within the Columns collection. + * @param index An integer value that identifies the column within the collection (the column's Index property value). + */ + GetColumnByIndex(index: number): ASPxClientTreeListColumn; + /** + * Returns the column with the specified name. + * @param name A string value that specifies the column's name (the column's Name property value). + */ + GetColumnByName(name: string): ASPxClientTreeListColumn; + /** + * Returns the client column which is bound to the specified data source field. + * @param fieldName A string value that specifies the name of the data source field to which the column is bound (the column's FieldName property value). + */ + GetColumnByFieldName(fieldName: string): ASPxClientTreeListColumn; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + */ + SortBy(columnIndex: number): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + */ + SortBy(columnIndex: number, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param columnIndex An integer value that specifies the column's position within the column collection. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(columnIndex: number, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param nameOrFieldName A String value that specifies the column's name or field name. + */ + SortBy(nameOrFieldName: string): void; + /** + * Sorts data by the specified data column's values. + * @param nameOrFieldName A String value that specifies the column's name or field name. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + */ + SortBy(nameOrFieldName: string, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param nameOrFieldName A String value that specifies the column's name or field name. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(nameOrFieldName: string, sortOrder: string, reset: boolean): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientTreeListColumn object that represents the data column. + */ + SortBy(column: ASPxClientTreeListColumn): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientTreeListColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + */ + SortBy(column: ASPxClientTreeListColumn, sortOrder: string): void; + /** + * Sorts data by the specified data column's values. + * @param column An ASPxClientTreeListColumn object that represents the data column. + * @param sortOrder A string value that specifies the column's sort order ('ASC', 'DESC' or 'NONE'). + * @param reset true to clear any previous sorting; otherwise, false. + */ + SortBy(column: ASPxClientTreeListColumn, sortOrder: string, reset: boolean): void; + /** + * Switches the ASPxTreeList to edit mode. + * @param nodeKey A string value that identifies the node by its key value. + */ + StartEdit(nodeKey: string): void; + /** + * Saves all the changes made and switches the ASPxTreeList to browse mode. + */ + UpdateEdit(): void; + /** + * Cancels all the changes made and switches the ASPxTreeList to browse mode. + */ + CancelEdit(): void; + /** + * Indicates whether the ASPxTreeList is in edit mode. + */ + IsEditing(): boolean; + /** + * Gets the key value of the node currently being edited. + */ + GetEditingNodeKey(): string; + /** + * Moves the specified node to a new position. + * @param nodeKey A string value that identifies the target node by its key value. + * @param parentNodeKey A string value that identifies the node to whose child collection the target node is moved. An empty string to display the target node within the root. + */ + MoveNode(nodeKey: string, parentNodeKey: string): void; + /** + * Deletes the specified node. + * @param nodeKey A string value that identifies the node. + */ + DeleteNode(nodeKey: string): void; + /** + * Switches the ASPxTreeList to edit mode and allows new root node values to be edited. + */ + StartEditNewNode(): void; + /** + * Switches the ASPxTreeList to edit mode and allows new node values to be edited. + * @param parentNodeKey A String value that identifies the parent node, which owns a new node. + */ + StartEditNewNode(parentNodeKey: string): void; + /** + * Returns the editor used to edit the specified column's values. + * @param column An ASPxClientTreeListColumn object that represents the data column within the client ASPxTreeList. + */ + GetEditor(column: ASPxClientTreeListColumn): Object; + /** + * Returns the editor used to edit the specified column's values. + * @param columnIndex An integer value that identifies the column by its position within the column collection. + */ + GetEditor(columnIndex: number): Object; + /** + * Returns the editor used to edit the specified column's values. + * @param columnNameOrFieldName A String value that identifies the column by its name or field name. + */ + GetEditor(columnNameOrFieldName: string): Object; + /** + * Returns the value of the specified edit cell. + * @param column An ASPxClientTreeListColumn object that represents the data column within the client ASPxTreeList. + */ + GetEditValue(column: ASPxClientTreeListColumn): Object; + /** + * Returns the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column by its index within the ASPxTreeList's column collection. + */ + GetEditValue(columnIndex: number): Object; + /** + * Returns the value of the specified edit cell. + * @param columnNameOrFieldName A String value that identifies the column by its name or field name. + */ + GetEditValue(columnNameOrFieldName: string): Object; + /** + * Sets the value of the specified edit cell. + * @param column An ASPxClientTreeListColumn object that represents the data column within the client ASPxTreeList. + * @param value An object that specifies the edit cell's new value. + */ + SetEditValue(column: ASPxClientTreeListColumn, value: Object): void; + /** + * Sets the value of the specified edit cell. + * @param columnIndex An integer value that identifies the data column by its index within the ASPxTreeList's column collection. + * @param value An object that specifies the edit cell's new value. + */ + SetEditValue(columnIndex: number, value: Object): void; + /** + * Sets the value of the specified edit cell. + * @param columnNameOrFieldName A String value that identifies the column by its name or field name. + * @param value An object that specifies the edit cell's new value. + */ + SetEditValue(columnNameOrFieldName: string, value: Object): void; + /** + * Moves focus to the specified editor within the edited node. + * @param column A ASPxClientTreeListColumn object that represents the data column within the client ASPxTreeList. + */ + FocusEditor(column: ASPxClientTreeListColumn): void; + /** + * Moves focus to the specified editor within the edited node. + * @param columnIndex An integer value that identifies the data column. + */ + FocusEditor(columnIndex: number): void; + /** + * Moves focus to the specified editor within the edited node. + * @param columnNameOrFieldName A String value that specifies the column's name or field name. + */ + FocusEditor(columnNameOrFieldName: string): void; + /** + * Scrolls the tree list so that the specified node becomes visible. + * @param nodeKey An integer value that specifies the node index within the tree list's client item list. + */ + MakeNodeVisible(nodeKey: string): void; + /** + * Returns the current vertical scroll position of the tree list's content. + */ + GetVerticalScrollPosition(): number; + /** + * Returns the current horizontal scroll position of the tree list's content. + */ + GetHorizontalScrollPosition(): number; + /** + * Specifies the vertical scroll position for the tree list's content. + * @param position An integer value specifying the vertical scroll position. + */ + SetVerticalScrollPosition(position: number): void; + /** + * Specifies the horizontal scroll position for the tree list's content. + * @param position An integer value specifying the horizontal scroll position. + */ + SetHorizontalScrollPosition(position: number): void; +} +/** + * Represents a client column. + */ +interface ASPxClientTreeListColumn { + /** + * Gets the column's position within the collection. + * Value: An integer zero-bazed index that specifies the column's position within the collection. + */ + index: number; + /** + * Gets the name that uniquely identifies the column. + * Value: A string value assigned to the column's Name property. + */ + name: string; + /** + * Gets the name of the database field assigned to the current column. + * Value: A String value that specifies the name of a data field. + */ + fieldName: string; +} +/** + * Provides data for the CustomDataCallback event. + */ +interface ASPxClientTreeListCustomDataCallbackEventArgs extends ASPxClientEventArgs { + /** + * Gets the information that has been collected on the client-side and sent to the server-side CustomDataCallback event. + * Value: A string value that represents the information that has been collected on the client-side and sent to the server-side CustomDataCallback event. + */ + arg: string; + /** + * Gets the information passed from the server-side CustomDataCallback event. + * Value: An object that represents the information passed from the server-side CustomDataCallback event. + */ + result: Object; +} +/** + * A method that will handle the CustomDataCallback event. + */ +interface ASPxClientTreeListCustomDataCallbackEventHandler { + /** + * A method that will handle the CustomDataCallback event. + * @param source The event source. + * @param e An ASPxClientTreeListCustomDataCallbackEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListCustomDataCallbackEventArgs): void; +} +/** + * Provides data for the NodeDblClick events. + */ +interface ASPxClientTreeListNodeEventArgs extends ASPxClientEventArgs { + /** + * Gets the processed node's key value. + * Value: A String value that identifies the processed node. + */ + nodeKey: string; + /** + * Provides access to the parameters associated with the NodeDblClick events. + * Value: An object that contains parameters associated with the event. + */ + htmlEvent: Object; + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the NodeDblClick event. + */ +interface ASPxClientTreeListNodeEventHandler { + /** + * A method that will handle the NodeDblClick event. + * @param source The event source. + * @param e An ASPxClientTreeListNodeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListNodeEventArgs): void; +} +/** + * Provides data for the ContextMenu event. + */ +interface ASPxClientTreeListContextMenuEventArgs extends ASPxClientEventArgs { + /** + * Identifies which tree list element has been right-clicked. + * Value: A string value that identifies which tree list element ('Header' or 'Node') has been right-clicked. + */ + objectType: string; + /** + * Gets a value that identifies the right-clicked object. + * Value: The right-clicked object's identifier. + */ + objectKey: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that relates to the processed event. + */ + htmlEvent: Object; + /** + * Gets or sets whether to invoke the browser's context menu. + * Value: true to hide the browser's context menu; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the ContextMenu event. + */ +interface ASPxClientTreeListContextMenuEventHandler { + /** + * A method that will handle the ContextMenu event. + * @param source The event sender. + * @param e An ASPxClientTreeListContextMenuEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListContextMenuEventArgs): void; +} +/** + * Provides data for the StartDragNode event. + */ +interface ASPxClientTreeListStartDragNodeEventArgs extends ASPxClientTreeListNodeEventArgs { + /** + * Gets an array of targets where a node can be dragged. + * Value: An array of objects that represent targets for the dragged node. + */ + targets: Object[]; +} +/** + * A method that will handle the StartDragNode event. + */ +interface ASPxClientTreeListStartDragNodeEventHandler { + /** + * A method that will handle the StartDragNode event. + * @param source The event source. + * @param e An ASPxClientTreeListStartDragNodeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListStartDragNodeEventArgs): void; +} +/** + * Provides data for the EndDragNode event. + */ +interface ASPxClientTreeListEndDragNodeEventArgs extends ASPxClientTreeListNodeEventArgs { + /** + * Gets the target element. + * Value: An object that represents the target element to which the dragged node has been dropped. + */ + targetElement: Object; +} +/** + * A method that will handle the EndDragNode event. + */ +interface ASPxClientTreeListEndDragNodeEventHandler { + /** + * A method that will handle the EndDragNode event. + * @param source The event source. + * @param e An ASPxClientTreeListEndDragNodeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListEndDragNodeEventArgs): void; +} +/** + * Provides data for the CustomButtonClick event. + */ +interface ASPxClientTreeListCustomButtonEventArgs extends ASPxClientEventArgs { + /** + * Gets the key value of the node whose custom button has been clicked. + * Value: A string value that uniquely identifies the node whose custom button has been clicked. + */ + nodeKey: string; + /** + * Gets the button's index. + * Value: An integer value that specifies the button's position within the CustomButtons collection. + */ + buttonIndex: number; + /** + * Gets the value which identifies the custom button. + * Value: A String value that identifies the clicked custom button. + */ + buttonID: string; +} +/** + * A method that will handle the CustomButtonClick event. + */ +interface ASPxClientTreeListCustomButtonEventHandler { + /** + * A method that will handle the CustomButtonClick event. + * @param source The event source. + * @param e An ASPxClientTreeListCustomButtonEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListCustomButtonEventArgs): void; +} +/** + * Represents a JavaScript function which receives the list of row values when a specific client method (such as the GetSelectedNodeValues) is called. + */ +interface ASPxClientTreeListValuesCallback { + /** + * A JavaScript function which receives the list of row values when a specific client method (such as the GetSelectedNodeValues) is called. + * @param result An object that represents the list of row values received from the server. + */ + (result: Object): void; +} +/** + * Provides data for the ColumnResizing event. + */ +interface ASPxClientTreeListColumnResizingEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the processed client column. + * Value: An object that is the processed column. + */ + column: ASPxClientTreeListColumn; +} +/** + * A method that will handle the client ColumnResizing event. + */ +interface ASPxClientTreeListColumnResizingEventHandler { + /** + * A method that will handle the ColumnResizing event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientTreeListColumnResizingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListColumnResizingEventArgs): void; +} +/** + * Provides data for the ColumnResized event. + */ +interface ASPxClientTreeListColumnResizedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the processed client column. + * Value: An object that is the processed column. + */ + column: ASPxClientTreeListColumn; +} +/** + * A method that will handle the client ColumnResized event. + */ +interface ASPxClientTreeListColumnResizedEventHandler { + /** + * A method that will handle the ColumnResized event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientTreeListColumnResizedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListColumnResizedEventArgs): void; +} +/** + * Provides data for the ToolbarItemClick event. + */ +interface ASPxClientTreeListToolbarItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the toolbar index related to the event. + * Value: An integer value that is the toolbar index. + */ + toolbarIndex: number; + /** + * Gets the toolbar name. + * Value: A string object that is the toolbar name. + */ + toolbarName: string; + /** + * Gets the toolbar item related to the event. + * Value: An ASPxClientMenuItem object that is the toolbar item. + */ + item: ASPxClientMenuItem; + /** + * Specifies whether a postback or a callback is used to finally process the event on the server side. + * Value: true to perform the round trip to the server side via postback; false to perform the round trip to the server side via callback. + */ + usePostBack: boolean; +} +/** + * A method that will handle the ToolbarItemClick event. + */ +interface ASPxClientTreeListToolbarItemClickEventHandler { + /** + * A method that will handle the ToolbarItemClick event. + * @param source The event source. + * @param e An ASPxClientTreeListToolbarItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeListToolbarItemClickEventArgs): void; +} +/** + * Represents a client-side equivalent of the BootstrapAccordion control. + */ +interface BootstrapClientAccordion extends ASPxClientNavBar { +} +interface BootstrapClientBinaryImage extends ASPxClientHyperLink { +} +/** + * Represents a client-side equivalent of the BootstrapButton control. + */ +interface BootstrapClientButton extends ASPxClientButton { + /** + * Returns the text displayed within the button. + */ + GetText(): string; + /** + * Sets the text to be displayed within the button. + * @param value A string value specifying the text to be displayed within the button. + */ + SetText(value: string): void; +} +/** + * Represents a client-side equivalent of the BootstrapCalendar control. + */ +interface BootstrapClientCalendar extends ASPxClientCalendar { +} +/** + * Represents a client-side equivalent of the BootstrapCallbackPanel control. + */ +interface BootstrapClientCallbackPanel extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the BootstrapClientCallbackPanel. + */ + CallbackError: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Returns the HTML code that specifies the contents of the control's window. + */ + GetContentHtml(): string; + /** + * Sets the HTML markup specifying the contents of the control's window. + * @param html A string value that specifies the HTML markup. + */ + SetContentHtml(html: string): void; + /** + * Sets a value specifying whether the callback panel is enabled. + * @param enabled true, to enable the callback panel; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value specifying whether a callback panel is enabled. + */ + GetEnabled(): boolean; +} +/** + * Serves as the base type for the BootstrapClientPieChart objects. + */ +interface BootstrapClientChartBase extends ASPxClientControl { + Done: ASPxClientEvent>; + LegendClick: ASPxClientEvent>; + PointClick: ASPxClientEvent>; + PointHoverChanged: ASPxClientEvent>; + PointSelectionChanged: ASPxClientEvent>; + TooltipHidden: ASPxClientEvent>; + TooltipShown: ASPxClientEvent>; + ArgumentAxisClick: ASPxClientEvent>; + SeriesClick: ASPxClientEvent>; + SeriesHoverChanged: ASPxClientEvent>; + SeriesSelectionChanged: ASPxClientEvent>; +} +/** + * Represents a client-side equivalent of the BootstrapChart control. + */ +interface BootstrapClientChart extends BootstrapClientChartBase { + ZoomStart: ASPxClientEvent>; + ZoomEnd: ASPxClientEvent>; +} +/** + * Represents a client-side equivalent of the BootstrapPolarChart control. + */ +interface BootstrapClientPolarChart extends BootstrapClientChartBase { +} +/** + * Represents a client-side equivalent of the BootstrapPieChart control. + */ +interface BootstrapClientPieChart extends BootstrapClientChartBase { +} +interface BootstrapClientChartBaseDoneEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapClientChartBaseLegendClickEventHandler { + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +interface BootstrapClientCoordinateSystemChartArgumentAxisClickEventHandler { + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +interface BootstrapClientChartBasePointClickEventHandler { + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +interface BootstrapClientChartBasePointHoverChangedEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientChartBasePointSelectionChangedEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientChartBaseTooltipHiddenEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientChartBaseTooltipShownEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientCoordinateSystemChartSeriesClickEventHandler { + (source: S, e: BootstrapUIWidgetElementClickEventArgs): void; +} +interface BootstrapClientCoordinateSystemChartSeriesHoverChangedEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientCoordinateSystemChartSeriesSelectionChangedEventHandler { + (source: S, e: BootstrapUIWidgetElementActionEventArgs): void; +} +interface BootstrapClientChartZoomStartEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapClientChartZoomEndEventHandler { + (source: S, e: BootstrapClientChartZoomEndEventArgs): void; +} +interface BootstrapUIWidgetEventArgsBase extends ASPxClientEventArgs { + component: Object; + element: Object; +} +interface BootstrapClientChartZoomEndEventArgs extends BootstrapUIWidgetEventArgsBase { + rangeStart: Object; + rangeEnd: Object; +} +/** + * Represents a client-side equivalent of the BootstrapCheckBox control. + */ +interface BootstrapClientCheckBox extends ASPxClientEdit { + /** + * Occurs on the client side when the editor's checked state is changed. + */ + CheckedChanged: ASPxClientEvent>; + /** + * Returns a value indicating whether the check box editor is checked. + */ + GetChecked(): boolean; + /** + * Sets a value which specifies the checked status of the check box editor. + * @param isChecked + */ + SetChecked(isChecked: boolean): void; + /** + * Returns the text displayed within the editor. + */ + GetText(): string; + /** + * Returns a value which specifies a check box checked state. + */ + GetCheckState(): string; + /** + * Sets a value specifying the state of a check box. + * @param checkState + */ + SetCheckState(checkState: string): void; + /** + * Sets the text to be displayed within the editor. + * @param text + */ + SetText(text: string): void; +} +/** + * Represents a client-side equivalent of the BootstrapRadioButton control. + */ +interface BootstrapClientRadioButton extends BootstrapClientCheckBox { +} +/** + * Represents a client-side equivalent of the BootstrapComboBox control. + */ +interface BootstrapClientComboBox extends ASPxClientComboBox { + /** + * Returns the combo box editor's selected item. + */ + GetSelectedItem(): BootstrapClientListBoxItem; + /** + * Sets the combo box editor's selected item. + * @param item + */ + SetSelectedItem(item: BootstrapClientListBoxItem): void; + /** + * Returns an item specified by its index within the combo box editor's item collection. + * @param index + */ + GetItem(index: number): BootstrapClientListBoxItem; + /** + * Returns a combo box item by its text. + * @param text + */ + FindItemByText(text: string): BootstrapClientListBoxItem; + /** + * Returns a combo box item by its value. + * @param value + */ + FindItemByValue(value: Object): BootstrapClientListBoxItem; + /** + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param texts An array of strings that specifies the item's display text. Array element positions relate to the positions of the corresponding fields within the editor's Fields collection. + */ + AddItem(texts: string[]): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts + * @param value + */ + AddItem(texts: string[], value: Object): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts + * @param value + * @param iconCssClass + */ + AddItem(texts: string[], value: Object, iconCssClass: string): number; + /** + * Adds a new item to the editor specifying the item's display text and returns the index of the added item. + * @param text + */ + AddItem(text: string): number; + /** + * Adds a new item to the editor specifying the item's display text and associated value, and returns the index of the added item. + * @param text + * @param value + */ + AddItem(text: string, value: Object): number; + /** + * Adds a new item to the editor specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text + * @param value + * @param iconCssClass + */ + AddItem(text: string, value: Object, iconCssClass: string): number; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + * @param value + * @param iconCssClass + */ + InsertItem(index: number, texts: string[], value: Object, iconCssClass: string): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + * @param value + */ + InsertItem(index: number, texts: string[], value: Object): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + */ + InsertItem(index: number, texts: string[]): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param text + * @param value + * @param iconCssClass + */ + InsertItem(index: number, text: string, value: Object, iconCssClass: string): void; + /** + * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. + * @param index + * @param text + * @param value + */ + InsertItem(index: number, text: string, value: Object): void; + /** + * Inserts a new item specified by its display text into the editor's item collection, at the position specified. + * @param index + * @param text + */ + InsertItem(index: number, text: string): void; + /** + * Sets the list editor's selected item. + * @param item An ASPxClientListEditItem object that specifies the item to select. + */ + SetSelectedItem(item: ASPxClientListEditItem): void; +} +/** + * Represents a client-side equivalent of the BootstrapDateEdit control. + */ +interface BootstrapClientDateEdit extends ASPxClientDateEdit { +} +/** + * Represents a client-side equivalent of the BootstrapDropDownEdit control. + */ +interface BootstrapClientDropDownEdit extends ASPxClientDropDownEdit { +} +/** + * Represents a client-side equivalent of the BootstrapFormLayout control. + */ +interface BootstrapClientFormLayout extends ASPxClientFormLayout { +} +/** + * Represents a client-side equivalent of the BootstrapHyperLink control. + */ +interface BootstrapClientHyperLink extends ASPxClientHyperLink { +} +interface BootstrapClientImage extends ASPxClientImage { +} +/** + * Represents the client-side equivalent of the BootstrapListEditItem object. + */ +interface BootstrapClientListBoxItem extends ASPxClientListEditItem { + /** + * This member is not in effect for this class. It is overridden only for the purpose of preventing it from appearing in Microsoft Visual Studio designer tools. + */ + imageUrl: string; + iconCssClass: string; + /** + * + * @param columnIndex + */ + GetColumnText(columnIndex: number): string; + /** + * + * @param columnName + */ + GetColumnText(columnName: string): string; + /** + * + * @param fieldIndex + */ + GetFieldText(fieldIndex: number): string; + /** + * + * @param fieldName + */ + GetFieldText(fieldName: string): string; +} +/** + * Represents a client-side equivalent of the BootstrapListBox control. + */ +interface BootstrapClientListBox extends ASPxClientListBox { + /** + * Returns the list box editor's selected item. + */ + GetSelectedItem(): BootstrapClientListBoxItem; + /** + * Sets the list box editor's selected item. + * @param item + */ + SetSelectedItem(item: BootstrapClientListBoxItem): void; + /** + * Returns an item specified by its index within the list box editor's item collection. + * @param index + */ + GetItem(index: number): BootstrapClientListBoxItem; + /** + * Returns an array of the list editor's selected items. + */ + GetSelectedItems(): BootstrapClientListBoxItem[]; + /** + * Selects the specified items within a list box. + * @param items + */ + SelectItems(items: BootstrapClientListBoxItem[]): void; + /** + * Unselects an array of the specified list box items. + * @param items + */ + UnselectItems(items: BootstrapClientListBoxItem[]): void; + /** + * Returns a list box item by its text. + * @param text + */ + FindItemByText(text: string): BootstrapClientListBoxItem; + /** + * Returns a list box item by its value. + * @param value + */ + FindItemByValue(value: Object): BootstrapClientListBoxItem; + /** + * Adds a new item to the end of the editor's items collection, specifying the item's display text, and returns the index of the added item. + * @param texts + */ + AddItem(texts: string[]): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts + * @param value + */ + AddItem(texts: string[], value: Object): number; + /** + * Adds a new item to the end of the control's items collection. + * @param texts + * @param value + * @param iconCssClass + */ + AddItem(texts: string[], value: Object, iconCssClass: string): number; + /** + * Adds a new item to the editor, specifying the item's display text, and returns the index of the added item. + * @param text + */ + AddItem(text: string): number; + /** + * Adds a new item to the editor, specifying the item's display text and associated value, and returns the index of the added item. + * @param text + * @param value + */ + AddItem(text: string, value: Object): number; + /** + * Adds a new item to the editor, specifying the item's display text, associated value and displayed image, and returns the index of the added item. + * @param text + * @param value + * @param iconCssClass + */ + AddItem(text: string, value: Object, iconCssClass: string): number; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + * @param value + * @param iconCssClass + */ + InsertItem(index: number, texts: string[], value: Object, iconCssClass: string): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + * @param value + */ + InsertItem(index: number, texts: string[], value: Object): void; + /** + * Adds a new item to the control's items collection at the specified index. + * @param index + * @param texts + */ + InsertItem(index: number, texts: string[]): void; + /** + * Inserts a new item specified by its display text, associated value and displayed image into the editor's item collection, at the position specified. + * @param index + * @param text + * @param value + * @param iconCssClass + */ + InsertItem(index: number, text: string, value: Object, iconCssClass: string): void; + /** + * Inserts a new item specified by its display text and associated value into the editor's item collection, at the position specified. + * @param index + * @param text + * @param value + */ + InsertItem(index: number, text: string, value: Object): void; + /** + * Inserts a new item specified by its display text into the editor's item collection, at the position specified. + * @param index + * @param text + */ + InsertItem(index: number, text: string): void; + /** + * Selects the specified items within a list box. + * @param items An array of ASPxClientListEditItem objects that represent the items. + */ + SelectItems(items: ASPxClientListEditItem[]): void; + /** + * Unselects an array of the specified list box items. + * @param items An array of ASPxClientListEditItem objects that represent the items. + */ + UnselectItems(items: ASPxClientListEditItem[]): void; + /** + * Sets the list editor's selected item. + * @param item An ASPxClientListEditItem object that specifies the item to select. + */ + SetSelectedItem(item: ASPxClientListEditItem): void; +} +/** + * Represents a client-side equivalent of the BootstrapCheckBoxList control. + */ +interface BootstrapClientCheckBoxList extends ASPxClientCheckBoxList { +} +/** + * Represents a client-side equivalent of the BootstrapRadioButtonList control. + */ +interface BootstrapClientRadioButtonList extends ASPxClientRadioButtonList { +} +/** + * Represents a client-side equivalent of the BootstrapMenu control. + */ +interface BootstrapClientMenu extends ASPxClientMenu { +} +/** + * Represents a client-side equivalent of the BootstrapPager control. + */ +interface BootstrapClientPager extends ASPxClientPager { +} +/** + * Represents a client-side equivalent of the BootstrapPopupControl control. + */ +interface BootstrapClientPopupControl extends ASPxClientPopupControl { + /** + * + * @param selector + */ + SetPopupElementCssSelector(selector: string): void; +} +/** + * Represents a client-side equivalent of the BootstrapPopupMenu control. + */ +interface BootstrapClientPopupMenu extends ASPxClientPopupMenu { + /** + * + * @param selector + */ + SetPopupElementCssSelector(selector: string): void; +} +/** + * Represents a client-side equivalent of the BootstrapProgressBar control. + */ +interface BootstrapClientProgressBar extends ASPxClientProgressBar { +} +/** + * Represents a client-side equivalent of the BootstrapSpinEdit control. + */ +interface BootstrapClientSpinEdit extends ASPxClientSpinEdit { +} +/** + * Represents a client-side equivalent of the BootstrapTabControl control. + */ +interface BootstrapClientTabControl extends ASPxClientTabControl { +} +/** + * Represents a client-side equivalent of the BootstrapPageControl control. + */ +interface BootstrapClientPageControl extends ASPxClientPageControl { +} +/** + * Represents a client-side equivalent of the BootstrapTextBox control. + */ +interface BootstrapClientTextBox extends ASPxClientTextBox { +} +/** + * Represents a client-side equivalent of the BootstrapMemo control. + */ +interface BootstrapClientMemo extends ASPxClientMemo { +} +/** + * Represents a client-side equivalent of the BootstrapButtonEdit control. + */ +interface BootstrapClientButtonEdit extends ASPxClientButtonEdit { +} +/** + * Represents a client-side equivalent of the BootstrapTreeView control. + */ +interface BootstrapClientTreeView extends ASPxClientTreeView { +} +interface BootstrapUIWidgetBase extends ASPxClientControl { + Init: ASPxClientEvent>; + Drawn: ASPxClientEvent>; + Disposing: ASPxClientEvent>; + OptionChanged: ASPxClientEvent>; + Exporting: ASPxClientEvent>; + Exported: ASPxClientEvent>; + FileSaving: ASPxClientEvent>; + IncidentOccurred: ASPxClientEvent>; + GetInstance(): Object; + SetOptions(options: Object): void; + SetDataSource(dataSource: Object): void; + GetDataSource(): Object; + ExportTo(format: string, fileName: string): void; + Print(): void; +} +interface BootstrapUIWidgetInitializedEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapUIWidgetDrawnEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapUIWidgetDisposingEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapUIWidgetExportedEventHandler { + (source: S, e: BootstrapUIWidgetEventArgsBase): void; +} +interface BootstrapUIWidgetOptionChangedEventHandler { + (source: S, e: BootstrapUIWidgetOptionChangedEventArgs): void; +} +interface BootstrapUIWidgetOptionChangedEventArgs extends BootstrapUIWidgetEventArgsBase { + fullName: string; + name: string; + previousValue: Object; + value: Object; +} +interface BootstrapUIWidgetExportingEventHandler { + (source: S, e: BootstrapUIWidgetExportEventArgs): void; +} +interface BootstrapUIWidgetFileSavingEventHandler { + (source: S, e: BootstrapUIWidgetExportEventArgs): void; +} +interface BootstrapUIWidgetExportEventArgs extends BootstrapUIWidgetEventArgsBase { + cancel: boolean; + data: Object; + fileName: string; + format: string; +} +interface BootstrapUIWidgetErrorEventHandler { + (source: S, e: BootstrapUIWidgetErrorEventArgs): void; +} +interface BootstrapUIWidgetErrorEventArgs extends BootstrapUIWidgetEventArgsBase { + target: Object; +} +interface BootstrapUIWidgetElementActionEventArgs extends BootstrapUIWidgetEventArgsBase { + target: Object; +} +interface BootstrapUIWidgetElementClickEventArgs extends BootstrapUIWidgetElementActionEventArgs { + jQueryEvent: Object; +} +/** + * Represents a client-side equivalent of the BootstrapUploadControl. + */ +interface BootstrapClientUploadControl extends ASPxClientUploadControl { +} +interface BootstrapClientGridView extends ASPxClientGridView { +} +/** + * A client-side counterpart of the Calendar and CalendarFor extensions. + */ +interface MVCxClientCalendar extends ASPxClientCalendar { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; +} +/** + * A client-side counterpart of the CallbackPanel extension. + */ +interface MVCxClientCallbackPanel extends ASPxClientCallbackPanel { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the Callback Panel by processing the passed information on the server, in an Action specified by the Callback Panel's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the Callback Panel by processing the passed information on the server, in an Action specified by the Callback Panel's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the CardView extension. + */ +interface MVCxClientCardView extends ASPxClientCardView { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the CardView by processing the passed information on the server, in an Action specified via the CardView's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CardView's CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the CardView by processing the passed information on the server, in an Action specified via the CardView's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CardView's CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the CardView's CustomDataActionRouteValues property, and then process the returned result in the specified client function. This method does not update the CardView. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + * @param onCallback A ASPxClientCardViewValuesCallback object that represents the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(data: Object, onCallback: ASPxClientCardViewValuesCallback): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback An ASPxClientCardViewValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientCardViewValuesCallback): void; +} +/** + * A client-side counterpart of the Chart extension. + */ +interface MVCxClientChart extends ASPxClientWebChartControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update a Chart by processing the passed information on the server, in an Action specified via the Chart's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update a Chart by processing the passed information on the server, in an Action specified via the Chart's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the ComboBox and ComboBoxFor extensions. + */ +interface MVCxClientComboBox extends ASPxClientComboBox { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the ComboBox by processing the passed information on the server, in an Action specified by the ComboBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the ComboBox by processing the passed information on the server, in an Action specified by the ComboBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A client-side counterpart of the DataView extension. + */ +interface MVCxClientDataView extends ASPxClientDataView { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the DataView by processing the passed information on the server, in an Action specified via the DataView's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the DataView by processing the passed information on the server, in an Action specified via the DataView's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the DateEdit extension. + */ +interface MVCxClientDateEdit extends ASPxClientDateEdit { +} +/** + * A client-side counterpart of the DockManager extension. + */ +interface MVCxClientDockManager extends ASPxClientDockManager { + /** + * Sends a callback with a parameter to update the DockManager by processing the passed information on the server, in an Action specified by the DockManager's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the DockManager by processing the passed information on the server, in an Action specified by the DockManager's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the DockPanel extension. + */ +interface MVCxClientDockPanel extends ASPxClientDockPanel { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the DockPanel by processing the passed information on the server, in an Action specified by the DockPanel's DockPanelSettings.CallbackRouteValues) property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the DockPanel by processing the passed information on the server, in an Action specified by the DockPanel's DockPanelSettings.CallbackRouteValues) property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side WindowCallback event, passing the specified argument to it. + * @param parameter A string value that is any information that needs to be sent to the server-side WindowCallback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A client-side counterpart of the FileManager extension. + */ +interface MVCxClientFileManager extends ASPxClientFileManager { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the FileManager by processing the passed information on the server, in an Action specified via the extension's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the file manager's CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param data A string value that specifies any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that specifies any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that specifies any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the GridView extension. + */ +interface MVCxClientGridView extends ASPxClientGridView { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the GridView by processing the passed information on the server, in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the GridView by processing the passed information on the server, in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the GridView's CustomDataActionRouteValues property, and then process the returned result in the specified client function. This method does not update the GridView. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + * @param onCallback A ASPxClientGridViewValuesCallback object that represents the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(data: Object, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientGridViewValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientGridViewValuesCallback): void; +} +/** + * A client-side counterpart of the HtmlEditor extension. + */ +interface MVCxClientHtmlEditor extends ASPxClientHtmlEditor { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the HtmlEditor's CustomDataCallback event on the client. This method does not update the HtmlEditor. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + */ + PerformDataCallback(data: Object): void; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the HtmlEditor's CustomDataCallback event on the client. This method does not update the HtmlEditor. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + * @param onCallback An ASPxClientDataCallback object that is the JavaScript function which receives the callback data as a parameter. + */ + PerformDataCallback(data: Object, onCallback: ASPxClientDataCallback): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientDataCallback object that represents the JavaScript function which receives the callback data as a parameter. + */ + PerformDataCallback(parameter: string, onCallback: ASPxClientDataCallback): void; +} +/** + * A client-side counterpart of the ImageGallery extension. + */ +interface MVCxClientImageGallery extends ASPxClientImageGallery { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the ImageGallery by processing the passed information on the server, in an Action specified via the ImageGallery's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the ImageGallery by processing the passed information on the server, in an Action specified via the ImageGallery's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the ListBox and ListBoxFor extensions. + */ +interface MVCxClientListBox extends ASPxClientListBox { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the ListBox by processing the passed information on the server, in an Action specified by the ListBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the ListBox by processing the passed information on the server, in an Action specified by the ListBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server, and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A client-side counterpart of the NavBar extension. + */ +interface MVCxClientNavBar extends ASPxClientNavBar { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; +} +/** + * A client-side counterpart of the PivotGrid extension. + */ +interface MVCxClientPivotGrid extends ASPxClientPivotGrid { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the PivotGrid by processing the passed information on the server, in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the PivotGrid by processing the passed information on the server, in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Passes PivotGrid callback parameters to the specified object. + * @param obj An object that receives PivotGrid callback parameters. + */ + FillStateObject(obj: Object): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the PopupControl extension. + */ +interface MVCxClientPopupControl extends ASPxClientPopupControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the PopupControl by processing the passed information on the server, in an Action specified via the PopupControl's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the PopupControl by processing the passed information on the server, in an Action specified via the PopupControl's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback with a parameters to update the popup window by processing the related popup window and the passed information on the server, in an Action specified by the PopupControl's CallbackRouteValues property. + * @param window A ASPxClientPopupWindow object identifying the processed popup window. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformWindowCallback(window: ASPxClientPopupWindow, data: Object): void; + /** + * + * @param window + * @param parameter + */ + PerformWindowCallback(window: ASPxClientPopupWindow, parameter: string): void; + /** + * Sends a callback with parameters to update the popup window by processing the related popup window and the passed information on the server. + * @param window A ASPxClientPopupWindow object identifying the processed popup window. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformWindowCallback(window: ASPxClientPopupWindow, parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side WindowCallback event, passing the specified argument to it. + * @param parameter A string value that is any information that needs to be sent to the server-side WindowCallback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A client-side equivalent of the MVCxDocumentViewer class. + */ +interface MVCxClientDocumentViewer extends ASPxClientDocumentViewer { + /** + * Occurs before performing a document export request. + */ + BeforeExportRequest: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; +} +/** + * Obsolete. Use the MVCxClientDocumentViewer class instead. + */ +interface MVCxClientReportViewer extends ASPxClientReportViewer { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs before performing a document export request. + */ + BeforeExportRequest: ASPxClientEvent>; +} +/** + * A method that will handle the BeforeExportRequest event. + */ +interface MVCxClientBeforeExportRequestEventHandler { + /** + * A method that will handle the BeforeExportRequest event. + * @param source An object which is the event source. Identifies the client object that raised the event. + * @param e A MVCxClientBeforeExportRequestEventArgs object that contains event data. + */ + (source: S, e: MVCxClientBeforeExportRequestEventArgs): void; +} +/** + * Provides data for client BeforeExportRequest events. + */ +interface MVCxClientBeforeExportRequestEventArgs extends ASPxClientEventArgs { + /** + * Gets an object containing specific information (if any, as name/value pairs) that should be passed as a request parameter from the client to the server side for further processing. + * Value: A hash table object containing named values to be passed from the client to the server side via request parameters. + */ + customArgs: Object; +} +/** + * A client-side equivalent of the MVCxReportDesigner class. + */ +interface MVCxClientReportDesigner extends ASPxClientReportDesigner { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs after executing the Save command on the client. + */ + SaveCommandExecuted: ASPxClientEvent>; + /** + * Sends a callback to the server with the specified argument. + * @param arg A Object value, specifying the callback argument. + */ + PerformCallback(arg: Object): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(arg: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server with the specified argument. + * @param arg A String value, specifying the callback argument. + */ + PerformCallback(arg: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; +} +/** + * A method that will handle the SaveCommandExecuted event. + */ +interface MVCxClientReportDesignerSaveCommandExecutedEventHandler { + /** + * A method that will handle the SaveCommandExecuted event. + * @param source An object which is the event source. Identifies the client object that raised the event. + * @param e A MVCxClientBeforeExportRequestEventArgs object that contains event data. + */ + (source: S, e: MVCxClientReportDesignerSaveCommandExecutedEventArgs): void; +} +/** + * Provides data for the SaveCommandExecuted event. + */ +interface MVCxClientReportDesignerSaveCommandExecutedEventArgs extends ASPxClientEventArgs { + /** + * Returns the operation result. + * Value: A String value, specifying the operation result. + */ + Result: string; +} +/** + * A client-side counterpart of the RichEdit extension. + */ +interface MVCxClientRichEdit extends ASPxClientRichEdit { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the RichEdit by processing the passed information on the server, in an Action specified via the CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the RichEdit by processing the passed information on the server, in an Action specified via the CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the RoundPanel extension. + */ +interface MVCxClientRoundPanel extends ASPxClientRoundPanel { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the Round Panel by processing the passed information on the server, in an Action specified by the Round Panel's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the Round Panel by processing the passed information on the server, in an Action specified by the Round Panel's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side ContentCallback event, passing it the specified argument. + * @param parameter A string value that is any information that needs to be sent to the server-side ContentCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side ContentCallback event, passing it the specified argument. + * @param parameter A string value that is any information that needs to be sent to the server-side ContentCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the Scheduler extension. + */ +interface MVCxClientScheduler extends ASPxClientScheduler { + /** + * Occurs on the client side when the tooltip is about to be displayed. + */ + ToolTipDisplaying: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the Scheduler by processing the passed information on the server, in an Action specified via the Scheduler's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the Scheduler by processing the passed information on the server, in an Action specified via the Scheduler's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A template that is rendered to display a tooltip. + */ +interface MVCxClientSchedulerTemplateToolTip extends ASPxClientToolTipBase { + /** + * Gets the tooltip type. + * Value: A MVCxSchedulerToolTipType object that specifies the tooltip type. + */ + type: MVCxSchedulerToolTipType; +} +/** + * A delegate method that enables you to adjust the tooltip content before displaying. + */ +interface MVCxClientSchedulerToolTipDisplayingEventHandler { + /** + * A method that will handle the ToolTipDisplaying event. + * @param source An object which is the event source. Identifies the client object that raised the event. + * @param e A MVCxClientSchedulerToolTipDisplayingEventArgs object that contains the related arguments. + */ + (source: S, e: MVCxClientSchedulerToolTipDisplayingEventArgs): void; +} +/** + * Provides data for the ToolTipDisplaying event. + */ +interface MVCxClientSchedulerToolTipDisplayingEventArgs extends ASPxClientEventArgs { + /** + * Gets the tooltip related to the event. + * Value: A MVCxClientSchedulerTemplateToolTip object that specifies the tooltip. + */ + toolTip: MVCxClientSchedulerTemplateToolTip; + /** + * Gets information about the tooltip related to the event. + * Value: A ASPxClientSchedulerToolTipData object that specifies information about the tooltip. + */ + data: ASPxClientSchedulerToolTipData; +} +/** + * Lists available tooltip types. + */ +interface MVCxSchedulerToolTipType { +} +/** + * A client-side counterpart of the Spreadsheet extension. + */ +interface MVCxClientSpreadsheet extends ASPxClientSpreadsheet { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the Spreadsheet by processing the passed information on the server, in an Action specified via the CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the Spreadsheet by processing the passed information on the server, in an Action specified via the CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the PageControl extension. + */ +interface MVCxClientPageControl extends ASPxClientPageControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the PageControl by processing the passed information on the server, in an Action specified by the PageControl's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the PageControl by processing the passed information on the server, in an Action specified by the PageControl's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A client-side counterpart of the TokenBox and TokenBoxFor extensions. + */ +interface MVCxClientTokenBox extends ASPxClientTokenBox { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the TokenBox by processing the passed information on the server, in an Action specified by the TokenBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the TokenBox by processing the passed information on the server, in an Action specified by the TokenBox's CallbackRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified by the CallbackRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; +} +/** + * A client-side counterpart of the TreeList extension. + */ +interface MVCxClientTreeList extends ASPxClientTreeList { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the TreeList by processing the passed information on the server, in an Action specified via the TreeList's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the TreeList by processing the passed information on the server, in an Action specified via the TreeList's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the TreeList's CustomDataCallback event. This method does not update the TreeList. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + */ + PerformCustomDataCallback(data: Object): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side CustomDataCallback event. + */ + PerformCustomDataCallback(arg: string): void; +} +/** + * A client-side counterpart of the TreeView extension. + */ +interface MVCxClientTreeView extends ASPxClientTreeView { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; +} +/** + * A client-side counterpart of the UploadControl extension. + */ +interface MVCxClientUploadControl extends ASPxClientUploadControl { +} +/** + * A method that will handle client BeginCallback events. + */ +interface MVCxClientBeginCallbackEventHandler { + /** + * A method that will handle client BeginCallback events. + * @param source An object which is the event source. Identifies the client object that raised the event. + * @param e A MVCxClientBeginCallbackEventArgs object that contains event data. + */ + (source: S, e: MVCxClientBeginCallbackEventArgs): void; +} +/** + * Provides data for client BeginCallback events. + */ +interface MVCxClientBeginCallbackEventArgs extends ASPxClientBeginCallbackEventArgs { + /** + * Gets an object containing specific information (if any, as name/value pairs) that should be passed as a request parameter from the client to the server side for further processing. + * Value: A hash table object containing named values to be passed from the client to the server side via request parameters. + */ + customArgs: Object; +} +/** + * A method that will handle the BeginCallback event. + */ +interface MVCxClientGlobalBeginCallbackEventHandler { + /** + * A method that will handle the BeginCallback event. + * @param source An object which is the event source. Identifies the client object that raised the event. + * @param e A MVCxClientGlobalBeginCallbackEventArgs object that contains event data. + */ + (source: S, e: MVCxClientGlobalBeginCallbackEventArgs): void; +} +/** + * Provides data for the BeginCallback event. + */ +interface MVCxClientGlobalBeginCallbackEventArgs extends ASPxClientGlobalBeginCallbackEventArgs { + /** + * Gets an object containing specific information (if any, as name/value pairs) that should be passed as a request parameter from the client to the server side for further processing. + * Value: A hash table object containing named values to be passed from the client to the server side via request parameters. + */ + customArgs: Object; +} +/** + * An ASP.NET MVC equivalent of the client ASPxClientGlobalEvents component. + */ +interface MVCxClientGlobalEvents { + /** + * Occurs on the client side after client object models of all DevExpress MVC extensions contained within the page have been initialized. + */ + ControlsInitialized: ASPxClientEvent>; + /** + * Occurs on the client when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by a DevExpress MVC extension. + */ + CallbackError: ASPxClientEvent>; +} +/** + * A client-side counterpart of the VerticalGrid extension. + */ +interface MVCxClientVerticalGrid extends ASPxClientVerticalGrid { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Sends a callback with a parameter to update the VerticalGrid by processing the passed information on the server in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + */ + PerformCallback(data: Object): void; + /** + * Sends a callback with a parameter to update the VerticalGrid by processing the passed information on the server in an Action specified via the grid's CustomActionRouteValues property. + * @param data An object containing any information that needs to be passed to a handling Action specified via the grid's CustomActionRouteValues property. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(data: Object, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback with a parameter to process the passed information on the server, in an Action specified via the VerticalGrid's CustomDataActionRouteValues property, and then process the returned result in the specified client function. This method does not update the VerticalGrid. + * @param data An object containing any information that needs to be passed to a handling Action specified via the CustomDataActionRouteValues property. + * @param onCallback A ASPxClientGridViewValuesCallback object that represents the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(data: Object, onCallback: ASPxClientGridViewValuesCallback): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing the specified argument to it. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Sends a callback to the server and generates the server-side CustomDataCallback event. + * @param args A string value that is any information that needs to be sent to the server-side CustomDataCallback event. + * @param onCallback A ASPxClientVerticalGridValuesCallback object that is the JavaScript function which receives the information on the client side. + */ + GetValuesOnCustomCallback(args: string, onCallback: ASPxClientVerticalGridValuesCallback): void; +} +/** + * A client-side equivalent of the MVCxWebDocumentViewer class. + */ +interface MVCxClientWebDocumentViewer extends ASPxClientWebDocumentViewer { +} +/** + * Serves as the base type for all the objects included in the client-side object model. + */ +interface ASPxClientControlBase { + /** + * Gets the unique, hierarchically-qualified identifier for the control. + * Value: The fully-qualified identifier for the control. + */ + name: string; + /** + * Occurs on the client side after the control has been initialized. + */ + Init: ASPxClientEvent>; + /** + * Returns an HTML element that is the root of the control's hierarchy. + */ + GetMainElement(): Object; + /** + * Specifies the text that Assistive Technologies (screen readers or braille display, for example) will provide to a user. + * @param message A String value that specifies a text. + */ + SendMessageToAssistiveTechnology(message: string): void; + /** + * Returns a value specifying whether a control is displayed. + */ + GetClientVisible(): boolean; + /** + * Specifies whether a control is displayed. + * @param visible + */ + SetClientVisible(visible: boolean): void; + /** + * Returns a value specifying whether a control is displayed. + */ + GetVisible(): boolean; + /** + * Specifies whether a control is displayed. + * @param visible true to make a control visible; false to make it hidden. + */ + SetVisible(visible: boolean): void; + /** + * Returns a value that determines whether a callback request sent by a web control is being currently processed on the server side. + */ + InCallback(): boolean; +} +/** + * Serves as the base type for all the objects included in the client-side object model. + */ +interface ASPxClientControl extends ASPxClientControlBase { + /** + * Returns the control's width. + */ + GetWidth(): number; + /** + * Returns the control's height. + */ + GetHeight(): number; + /** + * Specifies the control's width. + * @param width An integer value that specifies the control's width. + */ + SetWidth(width: number): void; + /** + * Specifies the control's height. Note that this method is not in effect for some controls. + * @param height An integer value that specifies the control's height. + */ + SetHeight(height: number): void; + /** + * Modifies the control's size against the control's container. + */ + AdjustControl(): void; +} +/** + * Represents a client-side equivalent of the ASPxCallback control. + */ +interface ASPxClientCallback extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientCallback. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires on the client side when a callback initiated by the client Callback event's handler returns back to the client. + */ + CallbackComplete: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side Callback event passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + SendCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A method that will handle the client events related to completion of callback server-side processing. + */ +interface ASPxClientCallbackCompleteEventHandler { + /** + * A method that will handle the client events related to completion of callback server-side processing. + * @param source An object representing the event source. Identifies the web control that raised the event. + * @param e An ASPxClientCallbackCompleteEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCallbackCompleteEventArgs): void; +} +/** + * Serves as the base class for arguments of the web controls' client-side events. + */ +interface ASPxClientEventArgs { +} +/** + * Provides data for events concerning the final processing of a callback. + */ +interface ASPxClientCallbackCompleteEventArgs extends ASPxClientEventArgs { + /** + * Gets a string that contains specific information (if any) passed from the client side for server-side processing. + * Value: A string value representing specific information passed from the client to the server side. + */ + parameter: string; + /** + * Gets a string that contains specific information (if any) that has been passed from the server to the client side for further processing. + * Value: A string value representing specific information passed from the server back to the client side. + */ + result: string; +} +/** + * Serves as the base class for controls that implement panel functionality. + */ +interface ASPxClientPanelBase extends ASPxClientControl { + /** + * Returns the HTML code that is the content of the panel. + */ + GetContentHtml(): string; + /** + * Sets the HTML content for the panel. + * @param html A string value that is the HTML code defining the content of the panel. + */ + SetContentHtml(html: string): void; + /** + * Sets a value specifying whether the panel is enabled. + * @param enabled true to enable the panel; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value specifying whether a panel is enabled. + */ + GetEnabled(): boolean; +} +/** + * Represents a client-side equivalent of the ASPxPanel control. + */ +interface ASPxClientPanel extends ASPxClientPanelBase { + /** + * Occurs when the expanded panel is closed. + */ + Collapsed: ASPxClientEvent>; + /** + * Occurs when an end-user opens the expand panel. + */ + Expanded: ASPxClientEvent>; + /** + * Expands or collapses the client panel. + */ + Toggle(): void; + /** + * Returns a value specifying whether the panel can be expanded. + */ + IsExpandable(): boolean; + /** + * Returns a value specifying whether the panel is expanded. + */ + IsExpanded(): boolean; + /** + * Expands the collapsed panel. + */ + Expand(): void; + /** + * Collapses the expanded panel. + */ + Collapse(): void; +} +/** + * Represents a client-side equivalent of the ASPxCallbackPanel control. + */ +interface ASPxClientCallbackPanel extends ASPxClientPanel { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientCallbackPanel. + */ + CallbackError: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Returns the text displayed within the control's loading panel. + */ + GetLoadingPanelText(): string; + /** + * Sets the text to be displayed within the control's loading panel. + * @param loadingPanelText A string value specifying the text to be displayed within the loading panel. + */ + SetLoadingPanelText(loadingPanelText: string): void; + /** + * Sets a value specifying whether the callback panel is enabled. + * @param enabled true, to enable the callback panel; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value specifying whether a callback panel is enabled. + */ + GetEnabled(): boolean; +} +/** + * Represents the event object used for client-side events. + */ +interface ASPxClientEvent { + /** + * Dynamically connects the event with an appropriate event handler function. + * @param handler An object representing the event handling function's content. + */ + AddHandler(handler: T): void; + /** + * Dynamically disconnects the event from the associated event handler function. + * @param handler An object representing the event handling function's content. + */ + RemoveHandler(handler: T): void; + /** + * Dynamically disconnects the event from all the associated event handler functions. + */ + ClearHandlers(): void; + /** + * For internal use only. + * @param source + * @param e + */ + FireEvent(source: Object, e: ASPxClientEventArgs): void; +} +/** + * A method that will handle the client-side events of a web control's client-side equivalent. + */ +interface ASPxClientEventHandler { + /** + * A method that will handle the client-side events of a web control's client-side equivalent. + * @param source An object representing the event source. Identifies the control that raised the event. + * @param e An ASPxClientEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEventArgs): void; +} +/** + * A method that will handle the cancelable events of a web control's client-side equivalent. + */ +interface ASPxClientCancelEventHandler { + /** + * A method that will handle the cancelable events of a web control's client-side equivalent. + * @param source An object representing the event source. Identifies the web control that raised the event. + * @param e An ASPxClientCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCancelEventArgs): void; +} +/** + * Provides data for cancelable client events. + */ +interface ASPxClientCancelEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the client events which can't be cancelled and allow the event's processing to be passed to the server side. + */ +interface ASPxClientProcessingModeEventHandler { + /** + * A method that will handle the client events which can't be cancelled and allow the event's processing to be passed to the server side. + * @param source An object representing the event source. Identifies the web control that raised the event. + * @param e An ASPxClientProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientProcessingModeEventArgs): void; +} +/** + * Provides data for the client events which can't be cancelled and allow the event's processing to be passed to the server side. + */ +interface ASPxClientProcessingModeEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value that specifies whether the event should be finally processed on the server side. + * Value: true to process the event on the server side; false to completely handle it on the client side. + */ + processOnServer: boolean; +} +/** + * A method that will handle the cancelable client-side events which allow the event's processing to be passed to the server side. + */ +interface ASPxClientProcessingModeCancelEventHandler { + /** + * A method that will handle the cancelable client-side events which allow the event's processing to be passed to the server side. + * @param source An object representing the event source. Identifies the web control that raised the event. + * @param e An ASPxClientProcessingModeCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientProcessingModeCancelEventArgs): void; +} +/** + * Provides data for the cancelable client-side events which allow the event's processing to be passed to the server side. + */ +interface ASPxClientProcessingModeCancelEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * Provides access to an observable boolean, that allows you to detect and respond to changes. + */ +interface KnockoutObservableBoolean { +} +/** + * Provides access to observable arrays that allow you to detect and respond to changes in a collection of things. + */ +interface KnockoutObservableArray { +} +/** + * Represents a JavaScript function which receives callback data obtained via a call to a specific client method (such as the PerformDataCallback). + */ +interface ASPxClientDataCallback { + /** + * A JavaScript function which receives a callback data obtained via a call to a specific client method (such as the PerformDataCallback). + * @param sender An object whose client method generated a callback. + * @param result A string value that represents the result of server-side callback processing. + */ + (sender: Object, result: string): void; +} +/** + * Represents a client-side equivalent of the ASPxCloudControl control. + */ +interface ASPxClientCloudControl extends ASPxClientControl { + /** + * Fires after an item has been clicked. + */ + ItemClick: ASPxClientEvent>; +} +/** + * A method that will handle client events involving manipulations with the control's items. + */ +interface ASPxClientCloudControlItemEventHandler { + /** + * A method that will handle client events concerning manipulations with items. + * @param source The event source. This parameter identifies the cloud control object which raised the event. + * @param e An ASPxClientCloudControlItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCloudControlItemEventArgs): void; +} +/** + * Provides data for events which involve clicking on the control's items. + */ +interface ASPxClientCloudControlItemEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the name that uniquely identifies the processed item. + * Value: A string value that represents the value assigned to the item's Name property. + */ + name: Object; + /** + * Gets the HTML object that contains the processed item. + * Value: An object representing a container for the item related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the client events related to the begining of a callback processing round trip. + */ +interface ASPxClientBeginCallbackEventHandler { + /** + * A method that will handle client BeginCallback events. + * @param source An object representing the event source. Identifies the web control that raised the event. + * @param e An ASPxClientBeginCallbackEventArgs object that contains event data. + */ + (source: S, e: ASPxClientBeginCallbackEventArgs): void; +} +/** + * Provides data for client events related to the beginning of a callback processing round trip. + */ +interface ASPxClientBeginCallbackEventArgs extends ASPxClientEventArgs { + /** + * Gets a command name that identifies which client action forced a callback to be occurred. + * Value: A string value that represents the name of the command which initiated a callback. + */ + command: string; +} +/** + * A method that will handle the BeginCallback event. + */ +interface ASPxClientGlobalBeginCallbackEventHandler { + /** + * A method that will handle the BeginCallback event. + * @param source The event source. + * @param e An ASPxDataValidationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGlobalBeginCallbackEventArgs): void; +} +/** + * Provides data for the BeginCallback event. + */ +interface ASPxClientGlobalBeginCallbackEventArgs extends ASPxClientBeginCallbackEventArgs { + /** + * Gets an object that initiated a callback. + * Value: An class descendant object that is the control that initiated a callback. + */ + control: ASPxClientControl; +} +/** + * A method that will handle the client events related to the completion of a callback processing round trip. + */ +interface ASPxClientEndCallbackEventHandler { + /** + * A method that will handle client EndCallback events. + * @param source An object representing the event source. + * @param e A MenuItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientEndCallbackEventArgs): void; +} +/** + * Provides data for client events related to the completion of a callback processing round trip. + */ +interface ASPxClientEndCallbackEventArgs extends ASPxClientEventArgs { +} +/** + * A method that will handle the EndCallback event. + */ +interface ASPxClientGlobalEndCallbackEventHandler { + /** + * A method that will handle the EndCallback event. + * @param source The event source. + * @param e An ASPxDataValidationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGlobalEndCallbackEventArgs): void; +} +/** + * Provides data for the EndCallback event. + */ +interface ASPxClientGlobalEndCallbackEventArgs extends ASPxClientEndCallbackEventArgs { + /** + * Gets an object that initiated a callback. + * Value: An class descendant object that is the control that initiated a callback. + */ + control: ASPxClientControl; +} +/** + * A method that will handle a CustomCallback client event exposed by some DevExpress web controls. + */ +interface ASPxClientCustomDataCallbackEventHandler { + /** + * A method that will handle the client CustomCallback event of some controls. + * @param source An object representing the event source. + * @param e An ASPxClientCustomDataCallbackEventHandler object that contains event data. + */ + (source: S, e: ASPxClientCustomDataCallbackEventArgs): void; +} +/** + * Provides data for the CustomCallback event. + */ +interface ASPxClientCustomDataCallbackEventArgs extends ASPxClientEventArgs { + /** + * Gets a string that contains specific information (if any) that has been passed from the server to the client side for further processing, related to the CustomCallback event. + * Value: A string value representing specific information passed from the server back to the client side. + */ + result: string; +} +/** + * A method that will handle client events related to server-side errors that occured during callback processing. + */ +interface ASPxClientCallbackErrorEventHandler { + /** + * A method that will handle client CallbackError events. + * @param source An object representing the event source. + * @param e A ASPxClientCallbackErrorEventArgs object that contains event data. + */ + (source: S, e: ASPxClientCallbackErrorEventArgs): void; +} +/** + * Provides data for client events related to server-side errors that occured during callback processing. + */ +interface ASPxClientCallbackErrorEventArgs extends ASPxClientEventArgs { + /** + * Gets the error message that describes the server error that occurred. + * Value: A string value that represents the error message. + */ + message: string; + /** + * Gets or sets whether the event is handled and the default error handling actions are not required. + * Value: true if the error is handled and no default processing is required; otherwise false. + */ + handled: boolean; +} +/** + * A method that will handle the CallbackError event. + */ +interface ASPxClientGlobalCallbackErrorEventHandler { + /** + * A method that will handle the CallbackError event. + * @param source The event source. + * @param e An ASPxDataValidationEventArgs object that contains event data. + */ + (source: S, e: ASPxClientGlobalCallbackErrorEventArgs): void; +} +/** + * Provides data for the CallbackError event. + */ +interface ASPxClientGlobalCallbackErrorEventArgs extends ASPxClientCallbackErrorEventArgs { + /** + * Gets an object that initiated a callback. + * Value: An class descendant object that is the control that initiated a callback. + */ + control: ASPxClientControl; +} +/** + * A method that will handle the ValidationCompleted client event. + */ +interface ASPxClientValidationCompletedEventHandler { + /** + * A method that will handle the ValidationCompleted event. + * @param source An object representing the event source. Identifies the ASPxClientGlobalEvents object that raised the event. + * @param e An ASPxClientValidationCompletedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientValidationCompletedEventArgs): void; +} +/** + * Provides data for the ValidationCompleted client event that allows you to centrally validate user input within all DevExpress web controls to which validation is applied. + */ +interface ASPxClientValidationCompletedEventArgs extends ASPxClientEventArgs { + /** + * Gets a container object that holds the validated control(s). + * Value: An object that represents a container of the validated control(s). + */ + container: Object; + /** + * Gets the name of the validation group name to which validation has been applied. + * Value: A string value that represents the name of the validation group that has been validated. + */ + validationGroup: string; + /** + * Gets a value that indicates whether validation has been applied to both visible and invisible controls. + * Value: true if validation has been applied to both visible and invisible controls; false if only visible controls have been validated. + */ + invisibleControlsValidated: boolean; + /** + * Gets a value specifying whether the validation has been completed successfully. + * Value: true if the validation has been completed successfully; otherwise, false. + */ + isValid: boolean; + /** + * Gets the first control (either visible or invisible) that hasn't passed the validation applied. + * Value: An ASPxClientControl object that represents the first invalid control. + */ + firstInvalidControl: ASPxClientControl; + /** + * Gets the first visible control that hasn't passed the validation applied. + * Value: An ASPxClientControl object that represents the first visible invalid control. + */ + firstVisibleInvalidControl: ASPxClientControl; +} +/** + * A method that will handle the client ControlsInitialized event. + */ +interface ASPxClientControlsInitializedEventHandler { + /** + * A method that will handle the client ControlsInitialized event. + * @param source An object representing the event source. + * @param e An ASPxClientControlsInitializedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientControlsInitializedEventArgs): void; +} +/** + * Provides data for the client ControlsInitialized event. + */ +interface ASPxClientControlsInitializedEventArgs extends ASPxClientEventArgs { + /** + * Gets a value that specifies whether a callback is sent during a controls initialization. + * Value: true if a callback is sent; otherwise, false. + */ + isCallback: boolean; +} +/** + * A JavaScript function which returns a value specifying whether an object meets the criteria defined within the method specified by this delegate. + */ +interface ASPxClientControlPredicate { + /** + * A JavaScript function which returns a value specifying whether an object meets the criteria defined within the method specified by this delegate. + * @param control An object to compare against the criteria defined within the method. + */ + (control: Object): boolean; +} +/** + * Represents a JavaScript function which receives the action to perform for a control when the client ForEachControl method is called. + */ +interface ASPxClientControlAction { + /** + * Represents a JavaScript function which receives the action to perform for a control when the client ForEachControl method is called. + * @param control An object that specifies a control. + */ + (control: Object): void; +} +/** + * A collection object used on the client side to maintain particular client control objects + */ +interface ASPxClientControlCollection { + /** + * Occurs on the client side after client object models of all DevExpress web controls contained within the page have been initialized. + */ + ControlsInitialized: ASPxClientEvent>; + /** + * Occurs when the browser window is being resized. + */ + BrowserWindowResized: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated by any DevExpress control. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side, after server-side processing of a callback initiated by any DevExpress web control, has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by any DevExpress web control. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs after the validation initiated for a DevExpress web control (or a group of DevExpress web controls) has been completed. + */ + ValidationCompleted: ASPxClientEvent>; + /** + * Returns a collection item identified by its unique hierarchically-qualified identifier. + * @param name A string value representing the hierarchically-qualified identifier of the required control. + */ + Get(name: Object): Object; + /** + * Returns a DevExpress client control object identified by its unique hierarchically-qualified identifier (either ClientInstanceName or ClientID property value). + * @param name A string value that is the hierarchically-qualified identifier of the required DevExpress control. + */ + GetByName(name: string): Object; + /** + * Returns all controls in the collection that satisfy the specified predicate. + * @param predicate An ASPxClientControlPredicate object that is a predicate used to search for controls in the collection. + */ + GetControlsByPredicate(predicate: ASPxClientControlPredicate): Object[]; + /** + * Returns all controls of the specified type. + * @param type The object specifying the client control type. + */ + GetControlsByType(type: Object): Object[]; + /** + * Performs the specified action for each control in the collection. + * @param action An ASPxClientControlAction object specifying an action to perform. + */ + ForEachControl(action: ASPxClientControlAction): void; +} +/** + * Represents a client-side equivalent of the ASPxDataView object. + */ +interface ASPxClientDataView extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientDataView. + */ + CallbackError: ASPxClientEvent>; + /** + * Activates the specified page. + * @param pageIndex An integer value that specifies the active page's index. + */ + GotoPage(pageIndex: number): void; + /** + * Gets the index of the page that is currently active. + */ + GetPageIndex(): number; + /** + * Gets the size of a single ASPxDataView's page. + */ + GetPageSize(): number; + /** + * Sets the size of a single ASPxDataView's page. + * @param pageSize An integer value that specifies the page size. + */ + SetPageSize(pageSize: number): void; + /** + * Gets the number of pages into which the ASPxDataView's data is divided. + */ + GetPageCount(): number; + /** + * Activates the next page. + */ + NextPage(): void; + /** + * Activates the previous page. + */ + PrevPage(): void; + /** + * Activates the first page. + */ + FirstPage(): void; + /** + * Activates the last page. + */ + LastPage(): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * A JavaScript function which returns a value specifying whether an object meets the criteria defined within the method specified by this delegate. + */ +interface ASPxClientDockingFilterPredicate { + /** + * A JavaScript function which returns a value specifying whether an object meets the criteria defined within the method specified by this delegate. + * @param item An object to compare against the criteria defined within the method. + */ + (item: Object): boolean; +} +/** + * A client-side equivalent of the ASPxDockManager object. + */ +interface ASPxClientDockManager extends ASPxClientControl { + /** + * Fires on the client side before a panel is docked in a zone and allows you to cancel the action. + */ + BeforeDock: ASPxClientEvent>; + /** + * Fires on the client side after a panel is docked in a zone. + */ + AfterDock: ASPxClientEvent>; + /** + * Fires on the client side before a panel is made floating (undocked from a zone) and allows you to cancel the action. + */ + BeforeFloat: ASPxClientEvent>; + /** + * Fires on the client side after a panel is undocked from a zone. + */ + AfterFloat: ASPxClientEvent>; + /** + * Occurs when a panel dragging operation is started. + */ + StartPanelDragging: ASPxClientEvent>; + /** + * Occurs after a panel dragging operation is complete. + */ + EndPanelDragging: ASPxClientEvent>; + /** + * Occurs on the client side before a panel is closed, and allows you to cancel the action. + */ + PanelClosing: ASPxClientEvent>; + /** + * Occurs on the client side when a panel is closed. + */ + PanelCloseUp: ASPxClientEvent>; + /** + * Occurs on the client side when a panel pops up. + */ + PanelPopUp: ASPxClientEvent>; + /** + * Occurs on the client side after a panel has been invoked. + */ + PanelShown: ASPxClientEvent>; + /** + * Occurs on the client side after a panel has been resized. + */ + PanelResize: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that contains any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Returns a zone specified by its unique identifier (zoneUID). + * @param zoneUID A string value specifying the unique identifier of the zone. + */ + GetZoneByUID(zoneUID: string): ASPxClientDockZone; + /** + * Returns a panel specified by its unique identifier (panelUID). + * @param panelUID A string value specifying the unique identifier of the panel. + */ + GetPanelByUID(panelUID: string): ASPxClientDockPanel; + /** + * Returns an array of panels contained in a page. + */ + GetPanels(): ASPxClientDockPanel[]; + /** + * Returns an array of panels that are contained in a page and meet a specified criteria. + * @param filterPredicate An ASPxClientDockingFilterPredicate delegate that defines a set of criteria and determines whether a panel meets those criteria. + */ + GetPanels(filterPredicate: ASPxClientDockingFilterPredicate): ASPxClientDockPanel[]; + /** + * Returns an array of zones contained in a page. + */ + GetZones(): ASPxClientDockZone[]; + /** + * Returns an array of zones that are contained in a page and meet a specified criteria. + * @param filterPredicate An ASPxClientDockingFilterPredicate delegate that defines a set of criteria and determines whether a zone meets those criteria. + */ + GetZones(filterPredicate: ASPxClientDockingFilterPredicate): ASPxClientDockZone[]; +} +/** + * A method that will handle the client BeforeDock event. + */ +interface ASPxClientDockManagerProcessingModeCancelEventHandler { + /** + * A method that will handle the BeforeDock event. + * @param source The event source. This parameter identifies the dock manager object which raised the event. + * @param e An ASPxClientDockManagerProcessingModeCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockManagerProcessingModeCancelEventArgs): void; +} +/** + * Provides data for the BeforeDock event. + */ +interface ASPxClientDockManagerProcessingModeCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; + /** + * Gets the zone currently being processed. + * Value: An ASPxClientDockZone object that is the processed zone. + */ + zone: ASPxClientDockZone; +} +/** + * A method that will handle the client AfterDock event. + */ +interface ASPxClientDockManagerProcessingModeEventHandler { + /** + * A method that will handle the AfterDock event. + * @param source The event source. This parameter identifies the dock manager object which raised the event. + * @param e An ASPxClientDockManagerProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockManagerProcessingModeEventArgs): void; +} +/** + * Provides data for the AfterDock event. + */ +interface ASPxClientDockManagerProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; + /** + * Gets the zone currently being processed. + * Value: An ASPxClientDockZone object that is the processed zone. + */ + zone: ASPxClientDockZone; +} +/** + * A method that will handle client-side events concerning manipulations with panels. + */ +interface ASPxClientDockManagerEventHandler { + /** + * A method that will handle client-side events concerning manipulations with panels. + * @param source The event source. This parameter identifies the dock manager object which raised the event. + * @param e An ASPxClientDockManagerEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockManagerEventArgs): void; +} +/** + * Provides data for events which concern manipulations on panels. + */ +interface ASPxClientDockManagerEventArgs extends ASPxClientEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; +} +/** + * A method that will handle the client BeforeDock event. + */ +interface ASPxClientDockManagerCancelEventHandler { + /** + * A method that will handle the PanelClosing event. + * @param source The event source. This parameter identifies the dock manager object which raised the event. + * @param e An ASPxClientDockManagerCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockManagerCancelEventArgs): void; +} +/** + * Provides data for the BeforeDock event. + */ +interface ASPxClientDockManagerCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; +} +/** + * Serves as a base class for the ASPxClientPopupControl classes. + */ +interface ASPxClientPopupControlBase extends ASPxClientControl { + /** + * Occurs on the client side when window resizing initiates. + */ + BeforeResizing: ASPxClientEvent>; + /** + * Occurs on the client side when window resizing completes. + */ + AfterResizing: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the control. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when a control's window closes or hides. + */ + CloseUp: ASPxClientEvent>; + /** + * Enables you to cancel window closing on the client side. + */ + Closing: ASPxClientEvent>; + /** + * Occurs on the client side when a control's window is invoked. + */ + PopUp: ASPxClientEvent>; + /** + * Occurs on the client side after a window has been resized. + */ + Resize: ASPxClientEvent>; + /** + * Occurs on the client side after a control's window has been invoked. + */ + Shown: ASPxClientEvent>; + /** + * Occurs on the client side when the window pin state is changed. + */ + PinnedChanged: ASPxClientEvent>; + /** + * Modifies a control's window size in accordance with the content. + */ + AdjustSize(): void; + /** + * Brings the window to the front of the z-order. + */ + BringToFront(): void; + /** + * Returns a value indicating whether the window is collapsed. + */ + GetCollapsed(): boolean; + /** + * Returns the HTML code that specifies the contents of the control's window. + */ + GetContentHtml(): string; + /** + * Returns an iframe object containing a web page specified via the control's SetContentUrl client method). + */ + GetContentIFrame(): Object; + /** + * Returns an iframe object containing a web page specified via the control's SetContentUrl client method). + */ + GetContentIFrameWindow(): Object; + /** + * Returns the URL pointing to the web page displayed within the control's window. + */ + GetContentUrl(): string; + /** + * Returns the URL pointing to the image displayed within the window footer by default. + */ + GetFooterImageUrl(): string; + /** + * Returns the URL where the web browser will navigate when the text or image is clicked within a window's footer. + */ + GetFooterNavigateUrl(): string; + /** + * Returns the text displayed within a window's footer. + */ + GetFooterText(): string; + /** + * Returns the URL pointing to the image displayed within the window header. + */ + GetHeaderImageUrl(): string; + /** + * Returns the URL where the web browser will navigate when the text or image is clicked within a window's header. + */ + GetHeaderNavigateUrl(): string; + /** + * Returns the text displayed within a window's header. + */ + GetHeaderText(): string; + /** + * Gets the width of the default window's (for ASPxPopupControl) or panel's (for ASPxDockPanel) content region. + */ + GetContentWidth(): number; + /** + * Gets the height of the default window's (for ASPxPopupControl) or panel's (for ASPxDockPanel) content region. + */ + GetContentHeight(): number; + /** + * Returns a value indicating whether the window is maximized. + */ + GetMaximized(): boolean; + /** + * Returns a value indicating whether the window is pinned. + */ + GetPinned(): boolean; + /** + * Sends a callback to the server and generates the server-side WindowCallback event, passing the specified argument to it. + * @param parameter A string value that is any information that needs to be sent to the server-side WindowCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Refreshes the content of the web page displayed within the control's window. + */ + RefreshContentUrl(): void; + /** + * Sets a value indicating whether the window is collapsed. + * @param value true, to collapse the window; otherwise, false. + */ + SetCollapsed(value: boolean): void; + /** + * Sets the HTML markup specifying the contents of the control's window. + * @param html A string value that specifies the HTML markup. + */ + SetContentHtml(html: string): void; + /** + * Sets the URL to point to the web page that should be loaded into, and displayed within the control's window. + * @param url A string value specifying the URL to the web page displayed within the control's window. + */ + SetContentUrl(url: string): void; + /** + * Specifies the URL which points to the image displayed within the window footer by default. + * @param value A string value that is the URL for the image displayed within the window footer. + */ + SetFooterImageUrl(value: string): void; + /** + * Specifies the URL where the web browser will navigate when the text or image is clicked within a window's footer. + * @param value A string value which specifies the required navigation location. + */ + SetFooterNavigateUrl(value: string): void; + /** + * Specifies the text displayed within a window's footer. + * @param value A string value that specifies a window's footer text. + */ + SetFooterText(value: string): void; + /** + * Specifies the URL which points to the image displayed within the window header. + * @param value A string value that is the URL to the image displayed within the header. + */ + SetHeaderImageUrl(value: string): void; + /** + * Specifies the URL where the web browser will navigate when the text or image is clicked within a window's header. + * @param value A string value which specifies the required navigation location. + */ + SetHeaderNavigateUrl(value: string): void; + /** + * Specifies the text displayed within a window's header. + * @param value A string value that specifies a window's header text. + */ + SetHeaderText(value: string): void; + /** + * Sets a value indicating whether the window is maximized. + * @param value true. to maximize the window; otherwise, false. + */ + SetMaximized(value: boolean): void; + /** + * Sets a value indicating whether the window is pinned. + * @param value true, to pin the window; otherwise, false. + */ + SetPinned(value: boolean): void; + /** + * Invokes the control's window. + */ + Show(): void; + /** + * Invokes the control's window at the popup element with the specified index. + * @param popupElementIndex An integer value specifying the zero-based index of the popup element. + */ + Show(popupElementIndex: number): void; + /** + * Invokes the control's window and displays it over the specified HTML element. + * @param htmlElement An object specifying the HTML element relative to whose position the window is invoked. + */ + ShowAtElement(htmlElement: Object): void; + /** + * Invokes the control's window and displays it over an HTML element specified by its unique identifier. + * @param id A string value that specifies the hierarchically qualified identifier of an HTML element relative to whose position the window is invoked. + */ + ShowAtElementByID(id: string): void; + /** + * Invokes the control's window at the specified position. + * @param x A integer value specifying the x-coordinate of the window's display position. + * @param y A integer value specifying the y-coordinate of the window's display position. + */ + ShowAtPos(x: number, y: number): void; + /** + * Closes the control's window. + */ + Hide(): void; + /** + * Returns a value that specifies whether the control's window is displayed. + */ + IsVisible(): boolean; +} +/** + * A client-side equivalent of the ASPxDockPanel object. + */ +interface ASPxClientDockPanel extends ASPxClientPopupControlBase { + /** + * Gets or sets the unique identifier of a panel on a page. + * Value: A string that is the unique identifier of a panel. + */ + panelUID: string; + /** + * Fires on the client side before a panel is docked in a zone and allows you to cancel the action. + */ + BeforeDock: ASPxClientEvent>; + /** + * Fires on the client side after a panel is docked in a zone. + */ + AfterDock: ASPxClientEvent>; + /** + * Fires on the client side before a panel is made floating (undocked from a zone) and allows you to cancel the action. + */ + BeforeFloat: ASPxClientEvent>; + /** + * Fires on the client side after a panel is undocked from a zone. + */ + AfterFloat: ASPxClientEvent>; + /** + * Occurs when a panel dragging operation is started. + */ + StartDragging: ASPxClientEvent>; + /** + * Occurs after a panel dragging operation is complete. + */ + EndDragging: ASPxClientEvent>; + /** + * Retrieves a zone that owns the current panel. + */ + GetOwnerZone(): ASPxClientDockZone; + /** + * Docks the current panel in the specified zone. + * @param zone An ASPxClientDockZone object specifying the zone. + */ + Dock(zone: ASPxClientDockZone): void; + /** + * Docks the current panel in a zone at the specified position. + * @param zone An ASPxClientDockZone object specifying the zone, where the panel is docked + * @param visibleIndex An integer value specifying the visible index position. + */ + Dock(zone: ASPxClientDockZone, visibleIndex: number): void; + /** + * Undocks the current panel. + */ + MakeFloat(): void; + /** + * Undocks the current panel and place it at the specified position. + * @param x An integer value that specifies the X-coordinate of the panel's display position. + * @param y An integer value that specifies the Y-coordinate of the panel's display position. + */ + MakeFloat(x: number, y: number): void; + /** + * Gets a value specifying the position of the current panel, amongst the visible panels within a zone. + */ + GetVisibleIndex(): number; + /** + * Sets a value specifying the position of the current panel, amongst the visible panels in a zone. + * @param visibleIndex An integer value specifying the zero-based index of the panel amongst visible panels in the zone. + */ + SetVisibleIndex(visibleIndex: number): void; + /** + * Returns a value indicating whether the panel is docked. + */ + IsDocked(): boolean; +} +/** + * A method that will handle the client BeforeDock event. + */ +interface ASPxClientDockPanelProcessingModeCancelEventHandler { + /** + * A method that will handle the BeforeDock event. + * @param source A ASPxClientDockPanel object that raised the event. + * @param e A ASPxClientDockPanelProcessingModeCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockPanelProcessingModeCancelEventArgs): void; +} +/** + * Provides data for the BeforeDock event. + */ +interface ASPxClientDockPanelProcessingModeCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the zone currently being processed. + * Value: An ASPxClientDockZone object that is the processed zone. + */ + zone: ASPxClientDockZone; +} +/** + * A method that will handle the client BeforeDock event. + */ +interface ASPxClientDockPanelProcessingModeEventHandler { + /** + * A method that will handle the AfterFloat event. + * @param source A ASPxClientDockPanel object that raised the event. + * @param e A ASPxClientDockPanelProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockPanelProcessingModeEventArgs): void; +} +/** + * Provides data for the AfterFloat event. + */ +interface ASPxClientDockPanelProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the zone currently being processed. + * Value: An ASPxClientDockZone object that is the processed zone. + */ + zone: ASPxClientDockZone; +} +/** + * A client-side equivalent of the ASPxDockZone object. + */ +interface ASPxClientDockZone extends ASPxClientControl { + /** + * Gets or sets the unique identifier of a zone on a page. + * Value: A string that is the unique identifier of a zone. + */ + zoneUID: string; + /** + * Fires on the client side before a panel is docked in a zone and allows you to cancel the action. + */ + BeforeDock: ASPxClientEvent>; + /** + * Fires on the client side after a panel is docked in a zone. + */ + AfterDock: ASPxClientEvent>; + /** + * Returns a value that indicates the orientation in which panels are stacked in the current zone. + */ + IsVertical(): boolean; + /** + * Gets a value that indicates whether the zone can enlarge its size. + */ + GetAllowGrowing(): boolean; + /** + * Gets the number of panels contained in the zone. + */ + GetPanelCount(): number; + /** + * Returns a panel specified by its unique identifier (panelUID). + * @param panelUID A string value specifying the unique identifier of the panel. + */ + GetPanelByUID(panelUID: string): ASPxClientDockPanel; + /** + * Returns a panel specified by its visible index. + * @param visibleIndex An integer value specifying the panel's position among the visible panels within the current zone. + */ + GetPanelByVisibleIndex(visibleIndex: number): ASPxClientDockPanel; + /** + * Returns an array of panels docked in the current zone. + */ + GetPanels(): ASPxClientDockPanel[]; + /** + * Returns an array of panels that are docked in the current zone and meet a specified criteria. + * @param filterPredicate An ASPxClientDockingFilterPredicate delegate that defines a set of criteria and determines whether a panel meets those criteria. + */ + GetPanels(filterPredicate: ASPxClientDockingFilterPredicate): ASPxClientDockPanel[]; +} +/** + * A method that will handle the client BeforeDock event. + */ +interface ASPxClientDockZoneCancelEventHandler { + /** + * A method that will handle the BeforeDock event. + * @param source The event source. This parameter identifies the zone object which raised the event. + * @param e A ASPxClientDockZoneCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockZoneCancelEventArgs): void; +} +/** + * Provides data for the BeforeDock event. + */ +interface ASPxClientDockZoneCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; +} +/** + * A method that will handle the client AfterDock event. + */ +interface ASPxClientDockZoneProcessingModeEventHandler { + /** + * A method that will handle the AfterDock event. + * @param source The event source. This parameter identifies the zone object which raised the event. + * @param e An ASPxClientDockZoneProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientDockZoneProcessingModeEventArgs): void; +} +/** + * Provides data for the AfterDock event. + */ +interface ASPxClientDockZoneProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the panel currently being processed. + * Value: An ASPxClientDockPanel object that is the processed panel. + */ + panel: ASPxClientDockPanel; +} +/** + * Represents the client-side equivalent of the ASPxFileManager control. + */ +interface ASPxClientFileManager extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientFileManager. + */ + CallbackError: ASPxClientEvent>; + /** + * Fires on the client side after the selected file has been changed. + */ + SelectedFileChanged: ASPxClientEvent>; + /** + * Fires on the client side when an end-user opens a file by double-clicking it or pressing the Enter key. + */ + SelectedFileOpened: ASPxClientEvent>; + /** + * Fires after the focused item has been changed. + */ + FocusedItemChanged: ASPxClientEvent>; + /** + * Fires after the selection has been changed. + */ + SelectionChanged: ASPxClientEvent>; + /** + * Fires on the client side after the current folder has been changed within a file manager. + */ + CurrentFolderChanged: ASPxClientEvent>; + /** + * Fires on the client side before the folder is created, and allows you to cancel the action. + */ + FolderCreating: ASPxClientEvent>; + /** + * Occurs on the client side after a folder has been created. + */ + FolderCreated: ASPxClientEvent>; + /** + * Fires on the client side before an item is renamed and allows you to cancel the action. + */ + ItemRenaming: ASPxClientEvent>; + /** + * Occurs on the client side after a file manager's item has been renamed. + */ + ItemRenamed: ASPxClientEvent>; + /** + * Fires on the client side before an item is deleted and allows you to cancel the action. + */ + ItemDeleting: ASPxClientEvent>; + /** + * Occurs on the client side after a file manager's item has been deleted. + */ + ItemDeleted: ASPxClientEvent>; + /** + * Occurs on the client side after all the selected items have been deleted. + */ + ItemsDeleted: ASPxClientEvent>; + /** + * Fires on the client side before an item is moved and allows you to cancel the action. + */ + ItemMoving: ASPxClientEvent>; + /** + * Occurs on the client side after a file manager's item has been moved. + */ + ItemMoved: ASPxClientEvent>; + /** + * Occurs on the client side after all the selected items have been moved . + */ + ItemsMoved: ASPxClientEvent>; + /** + * Fires on the client side before an item is copied and allows you to cancel the action. + */ + ItemCopying: ASPxClientEvent>; + /** + * Occurs on the client side after a file manager item has been copied. + */ + ItemCopied: ASPxClientEvent>; + /** + * Occurs on the client side after all the selected items have been copied. + */ + ItemsCopied: ASPxClientEvent>; + /** + * Fires on the client if any error occurs while editing an item. + */ + ErrorOccurred: ASPxClientEvent>; + /** + * Enables you to display the alert with the result error description. + */ + ErrorAlertDisplaying: ASPxClientEvent>; + /** + * Fires when a custom item is clicked, allowing you to perform custom actions. + */ + CustomCommand: ASPxClientEvent>; + /** + * Fires on the client side when the file manager updates the state of toolbar or context menu items. + */ + ToolbarUpdating: ASPxClientEvent>; + /** + * Enables you to highlight the search text, which is specified using the filter box, in templates. + */ + HighlightItemTemplate: ASPxClientEvent>; + /** + * Fires on the client side before a file upload starts, and allows you to cancel the action. + */ + FileUploading: ASPxClientEvent>; + /** + * Fires on the client side before the selected items are uploaded and allows you to cancel the action. + */ + FilesUploading: ASPxClientEvent>; + /** + * Occurs on the client side after a file has been uploaded. + */ + FileUploaded: ASPxClientEvent>; + /** + * Occurs on the client side after upload of all selected files has been completed. + */ + FilesUploaded: ASPxClientEvent>; + /** + * Enables you to specify whether the selected file(s) are valid and provide an error text. + */ + FileUploadValidationErrorOccurred: ASPxClientEvent>; + /** + * Fires on the client side before a file download starts, and allows you to cancel the action. + */ + FileDownloading: ASPxClientEvent>; + /** + * Gets the name of the currently active file manager area. + */ + GetActiveAreaName(): string; + /** + * Client-side scripting method which initiates a round trip to the server, so that the current page will be reloaded. + */ + Refresh(): void; + /** + * Executes the specified command. + * @param commandName A string value that specifies the command to perform. + */ + ExecuteCommand(commandName: string): boolean; + /** + * Returns the selected file within the ASPxFileManager control's file container. + */ + GetSelectedFile(): ASPxClientFileManagerFile; + /** + * Returns an array of the file manager's selected items. + */ + GetSelectedItems(): ASPxClientFileManagerFile[]; + /** + * Returns a list of files that are loaded on the current page. + */ + GetItems(): ASPxClientFileManagerFile[]; + /** + * Sends a callback to the server and returns a list of files that are contained within the current folder. + * @param onCallback A object that represents the JavaScript function which receives the list of row values as a parameter. + */ + GetAllItems(onCallback: ASPxClientFileManagerAllItemsCallback): void; + /** + * Returns a toolbar item specified by its command name. + * @param commandName A string value specifying the command name of the item. + */ + GetToolbarItemByCommandName(commandName: string): ASPxClientFileManagerToolbarItem; + /** + * Returns a context menu item specified by its command name. + * @param commandName A string value specifying the command name of the item. + */ + GetContextMenuItemByCommandName(commandName: string): ASPxClientFileManagerToolbarItem; + /** + * Gets the current folder's path. + */ + GetCurrentFolderPath(): string; + /** + * Gets the current folder's path with the specified separator. + * @param separator A string value that specifies the separator between the folder's name within a path. + */ + GetCurrentFolderPath(separator: string): string; + /** + * Gets the current folder's path with the specified settings. + * @param separator A string value that specifies the separator between the folder's name within the path. + * @param skipRootFolder true to skip the root folder; otherwise, false. + */ + GetCurrentFolderPath(separator: string, skipRootFolder: boolean): string; + /** + * Sets the current folder's path. + * @param path A String value that is the relative path to the folder (without the root folder). + * @param onCallback A ASPxClientFileManagerCallback object that is the JavaScript function that receives the callback data as a parameter. + */ + SetCurrentFolderPath(path: string, onCallback: ASPxClientFileManagerCallback): void; + /** + * Gets the current folder's ID. + */ + GetCurrentFolderId(): string; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that specifies any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param args A string value that specifies any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; +} +/** + * A JavaScript function which receives callback data obtained via a call to the client SetCurrentFolderPath method. + */ +interface ASPxClientFileManagerCallback { + /** + * A JavaScript function that receives callback data obtained via a call to the SetCurrentFolderPath method. + * @param result An object that contains a callback data. + */ + (result: Object): void; +} +/** + * A client-side equivalent of the file manager's FileManagerItem object and serves as a base class for client file and folder objects. + */ +interface ASPxClientFileManagerItem { + /** + * Gets the name of the current item. + * Value: A string value that is the item's name. + */ + name: string; + /** + * Gets the item's unique identifier. + * Value: A String value that specifies the item's unique identifier. + */ + id: string; + /** + * Gets a value that indicates if the current file manager item is a folder. + * Value: true if the current item is a folder or parent folder; false if the current item is a file. + */ + isFolder: boolean; + /** + * Specifies whether the file manager item is selected. + * @param selected true, to select the item; otherwise, false. + */ + SetSelected(selected: boolean): void; + /** + * Gets a value indicating whether the item is selected in the file manager. + */ + IsSelected(): boolean; + /** + * Gets the current item's full name. + */ + GetFullName(): string; + /** + * Gets the current item's full name with the specified separator. + * @param separator A string value that specifies the separator between the folder name inside the item's full name. + */ + GetFullName(separator: string): string; + /** + * Gets the current item's full name with the specified settings. + * @param separator A string value that specifies the separator between the folder name inside the item's full name. + * @param skipRootFolder true, to skip the root folder; otherwise, false. + */ + GetFullName(separator: string, skipRootFolder: boolean): string; +} +/** + * Represents the client-side equivalent of the FileManagerFile object. + */ +interface ASPxClientFileManagerFile extends ASPxClientFileManagerItem { + /** + * Downloads a file from a file manager. + */ + Download(): void; +} +/** + * A client-side equivalent of the FileManagerFolder object. + */ +interface ASPxClientFileManagerFolder extends ASPxClientFileManagerItem { + /** + * Gets a value specifying whether an item is a parent folder. + * Value: true if an item is a parent folder; false if an item is a file or folder. + */ + isParentFolder: boolean; +} +/** + * A JavaScript function which receives callback data obtained by a call to the client GetAllItems method. + */ +interface ASPxClientFileManagerAllItemsCallback { + /** + * A JavaScript function which receives callback data obtained by a call to the client GetAllItems method. + * @param items An array of ASPxClientFileManagerItem objects that are items contained in the current folder. + */ + (items: ASPxClientFileManagerItem[]): void; +} +/** + * A method that will handle the client SelectedFileOpened events. + */ +interface ASPxClientFileManagerFileEventHandler { + /** + * A method that will handle the SelectedFileOpened events. + * @param source An object representing the event's source. + * @param e An ASPxClientFileManagerFileEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFileEventArgs): void; +} +/** + * Provides data for the SelectedFileOpened events. + */ +interface ASPxClientFileManagerFileEventArgs extends ASPxClientEventArgs { + /** + * Gets a file related to the event. + * Value: An ASPxClientFileManagerFile object that represents a file currently being processed. + */ + file: ASPxClientFileManagerFile; +} +/** + * A method that will handle the client SelectedFileOpened event. + */ +interface ASPxClientFileManagerFileOpenedEventHandler { + /** + * A method that will handle the SelectedFileOpened event. + * @param source The event source. This parameter identifies the file manager object which raised the event. + * @param e An ASPxClientFileManagerFileOpenedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFileOpenedEventArgs): void; +} +/** + * Provides data for the SelectedFileOpened event. + */ +interface ASPxClientFileManagerFileOpenedEventArgs extends ASPxClientFileManagerFileEventArgs { + /** + * Gets or sets a value that specifies whether the event should be finally processed on the server side. + * Value: true to process the event on the server side; false to completely handle it on the client side. + */ + processOnServer: boolean; +} +/** + * Serves as a base for classes that are used as arguments for events generated on the client side. + */ +interface ASPxClientFileManagerActionEventArgsBase extends ASPxClientEventArgs { + /** + * Gets the full name of the item currently being processed. + * Value: A string value that is the item's full name. + */ + fullName: string; + /** + * Gets the name of the currently processed item. + * Value: A string value that specifies the item's name. + */ + name: string; + /** + * Gets a value specifying whether the current processed item is a folder. + * Value: true if the processed item is a folder; false if the processed item is a file. + */ + isFolder: boolean; +} +/** + * A method that will handle the client ItemRenaming events. + */ +interface ASPxClientFileManagerItemEditingEventHandler { + /** + * A method that will handle the ItemRenaming events. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemEditingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemEditingEventArgs): void; +} +/** + * Provides data for the item editing event. + */ +interface ASPxClientFileManagerItemEditingEventArgs extends ASPxClientFileManagerActionEventArgsBase { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the client ItemRenamed event. + */ +interface ASPxClientFileManagerItemRenamedEventHandler { + /** + * A method that will handle the ItemRenamed event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemRenamedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemRenamedEventArgs): void; +} +/** + * Provides data for the ItemRenamed event. + */ +interface ASPxClientFileManagerItemRenamedEventArgs extends ASPxClientFileManagerActionEventArgsBase { + /** + * Gets the previous name of the renamed item. + * Value: A string value that specifies the item name. + */ + oldName: string; +} +/** + * A method that will handle the client ItemDeleted event. + */ +interface ASPxClientFileManagerItemDeletedEventHandler { + /** + * A method that will handle the ItemDeleted event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemDeletedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemDeletedEventArgs): void; +} +/** + * Provides data for the ItemDeleted event. + */ +interface ASPxClientFileManagerItemDeletedEventArgs extends ASPxClientFileManagerActionEventArgsBase { +} +/** + * A method that will handle the client ItemsDeleted event. + */ +interface ASPxClientFileManagerItemsDeletedEventHandler { + /** + * A method that will handle the ItemsDeleted event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemsDeletedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemsDeletedEventArgs): void; +} +/** + * Provides data for the ItemsDeleted event. + */ +interface ASPxClientFileManagerItemsDeletedEventArgs extends ASPxClientEventArgs { + /** + * Gets an array of the currently processed items. + * Value: An array of ASPxClientFileManagerItem objects that are items currently being processed. + */ + items: ASPxClientFileManagerItem[]; +} +/** + * A method that will handle the client ItemMoved event. + */ +interface ASPxClientFileManagerItemMovedEventHandler { + /** + * A method that will handle the ItemMoved event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemMovedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemMovedEventArgs): void; +} +/** + * Provides data for the ItemMoved event. + */ +interface ASPxClientFileManagerItemMovedEventArgs extends ASPxClientFileManagerActionEventArgsBase { + /** + * Gets the full name of the folder from which an item is moved. + * Value: A string value that specifies the folder's full name. + */ + oldFolderFullName: string; +} +/** + * A method that will handle the client ItemsMoved event. + */ +interface ASPxClientFileManagerItemsMovedEventHandler { + /** + * A method that will handle the ItemsMoved event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemsMovedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemsMovedEventArgs): void; +} +/** + * Provides data for the ItemsMoved event. + */ +interface ASPxClientFileManagerItemsMovedEventArgs extends ASPxClientEventArgs { + /** + * Gets an array of the currently processed items. + * Value: An array of ASPxClientFileManagerItem objects that are items currently being processed. + */ + items: ASPxClientFileManagerItem[]; + /** + * Gets the full name of the folder from which items are moved. + * Value: A string value that specifies the folder's full name. + */ + oldFolderFullName: string; +} +/** + * A method that will handle the client ItemCopied event. + */ +interface ASPxClientFileManagerItemCopiedEventHandler { + /** + * A method that will handle the ItemCopied event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemCopiedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemCopiedEventArgs): void; +} +/** + * Provides data for the ItemCopied event. + */ +interface ASPxClientFileManagerItemCopiedEventArgs extends ASPxClientFileManagerActionEventArgsBase { + /** + * Gets the full name of the folder from which an item is copied. + * Value: A string value that specifies the folder's full name. + */ + oldFolderFullName: string; +} +/** + * A method that will handle the client ItemsCopied event. + */ +interface ASPxClientFileManagerItemsCopiedEventHandler { + /** + * A method that will handle the ItemsCopied event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemsCopiedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemsCopiedEventArgs): void; +} +/** + * Provides data for the ItemsCopied event. + */ +interface ASPxClientFileManagerItemsCopiedEventArgs extends ASPxClientEventArgs { + /** + * Gets an array of the currently processed items. + * Value: An array of ASPxClientFileManagerItem objects that are items currently being processed. + */ + items: ASPxClientFileManagerItem[]; + /** + * Gets the full name of the folder from which items are copied. + * Value: A string value that specifies the folder's full name. + */ + oldFolderFullName: string; +} +/** + * A method that will handle the client FolderCreated event. + */ +interface ASPxClientFileManagerItemCreatedEventHandler { + /** + * A method that will handle the FolderCreated event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerItemCreatedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerItemCreatedEventArgs): void; +} +/** + * Provides data for the FolderCreated event. + */ +interface ASPxClientFileManagerItemCreatedEventArgs extends ASPxClientFileManagerActionEventArgsBase { +} +/** + * A method that will handle the client ErrorOccurred event. + */ +interface ASPxClientFileManagerErrorEventHandler { + /** + * A method that will handle the client ErrorOccurred event. + * @param source An object representing the event's source. + * @param e An ASPxClientFileManagerErrorEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerErrorEventArgs): void; +} +/** + * Provides data for the ErrorOccurred event. + */ +interface ASPxClientFileManagerErrorEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value representing the processed command's name. + */ + commandName: string; + /** + * Gets or sets the error description. + * Value: A string value specifying the error description. + */ + errorText: string; + /** + * Gets or sets a value specifying whether an event error message is sent to the ErrorAlertDisplaying event. + * Value: true to sent an error message; otherwise, false. + */ + showAlert: boolean; + /** + * Gets a specifically generated code that uniquely identifies an error, which occurs while editing an item. + * Value: An integer value that specifies the code uniquely identifying an error. + */ + errorCode: number; +} +/** + * A method that will handle the client ErrorAlertDisplaying event. + */ +interface ASPxClientFileManagerErrorAlertDisplayingEventHandler { + /** + * A method that will handle the ErrorAlertDisplaying event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerErrorAlertDisplayingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerErrorAlertDisplayingEventArgs): void; +} +/** + * Provides data for the ErrorAlertDisplaying event. + */ +interface ASPxClientFileManagerErrorAlertDisplayingEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value that is the processed command's name. + */ + commandName: string; + /** + * Gets or sets the errors description. + * Value: A string that is the errors description. + */ + errorText: string; + /** + * Gets or sets a value specifying whether an alert message is displayed when the event fires. + * Value: true to display an alert message; otherwise, false. + */ + showAlert: boolean; +} +/** + * A method that will handle the client FileUploading event. + */ +interface ASPxClientFileManagerFileUploadingEventHandler { + /** + * A method that will handle the FileUploading event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFileUploadingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFileUploadingEventArgs): void; +} +/** + * Provides data for the FileUploading event. + */ +interface ASPxClientFileManagerFileUploadingEventArgs extends ASPxClientEventArgs { + /** + * Gets the path to the folder where a file is being uploaded. + * Value: A string value specifying the path where a file is being uploaded. + */ + folder: string; + /** + * Gets the name of a file selected for upload. + * Value: A string value that specifies the file name. + */ + fileName: string; + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the client FilesUploading event. + */ +interface ASPxClientFileManagerFilesUploadingEventHandler { + /** + * A method that will handle the FilesUploading event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFilesUploadingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFilesUploadingEventArgs): void; +} +/** + * Provides data for the FilesUploading event. + */ +interface ASPxClientFileManagerFilesUploadingEventArgs extends ASPxClientEventArgs { + /** + * Gets the path to the folder where files are being uploaded. + * Value: A string value specifying the folder path. + */ + folder: string; + /** + * Gets the names of files selected for upload. + * Value: An array of string values that are the file names. + */ + fileNames: string[]; + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the client FileUploaded event. + */ +interface ASPxClientFileManagerFileUploadedEventHandler { + /** + * A method that will handle the FileUploaded event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFileUploadedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFileUploadedEventArgs): void; +} +/** + * Provides data for the FileUploaded event. + */ +interface ASPxClientFileManagerFileUploadedEventArgs extends ASPxClientEventArgs { + /** + * Gets the path to the folder where a file is uploaded. + * Value: A string value specifying the uploaded file path. + */ + folder: string; + /** + * Gets the name of the uploaded file. + * Value: A string value that specifies the file name. + */ + fileName: string; +} +/** + * A method that will handle the client FilesUploaded event. + */ +interface ASPxClientFileManagerFilesUploadedEventHandler { + /** + * A method that will handle the FilesUploaded event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFilesUploadedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFilesUploadedEventArgs): void; +} +/** + * Provides data for the FilesUploaded event. + */ +interface ASPxClientFileManagerFilesUploadedEventArgs extends ASPxClientEventArgs { + /** + * Gets the path to the folder where files are uploaded. + * Value: A string value specifying the uploaded files path. + */ + folder: string; + /** + * Gets an array of uploaded file names. + * Value: An array of string values that are the file names. + */ + fileNames: string[]; +} +/** + * A method that will handle the client FileDownloading event. + */ +interface ASPxClientFileManagerFileDownloadingEventHandler { + /** + * A method that will handle the FileDownloading event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFileDownloadingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFileDownloadingEventArgs): void; +} +/** + * Provides data for the FileDownloading event. + */ +interface ASPxClientFileManagerFileDownloadingEventArgs extends ASPxClientFileManagerFileEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event, should be canceled. + * Value: true, if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the client FocusedItemChanged event. + */ +interface ASPxClientFileManagerFocusedItemChangedEventHandler { + /** + * A method that will handle the FocusedItemChanged event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerFocusedItemChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerFocusedItemChangedEventArgs): void; +} +/** + * Provides data for the FocusedItemChanged event. + */ +interface ASPxClientFileManagerFocusedItemChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the file manager item object related to the event. + * Value: An object, manipulations on which forced the event to be raised. + */ + item: ASPxClientFileManagerItem; + /** + * Gets the name of the focused item. + * Value: A string value that specifies the item's name. + */ + name: string; + /** + * Gets the full name of the item currently being processed. + * Value: A string value that is the item's full name. + */ + fullName: string; +} +/** + * A method that will handle the client CurrentFolderChanged event. + */ +interface ASPxClientFileManagerCurrentFolderChangedEventHandler { + /** + * A method that will handle the CurrentFolderChanged event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerCurrentFolderChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerCurrentFolderChangedEventArgs): void; +} +/** + * Provides data for the CurrentFolderChanged event. + */ +interface ASPxClientFileManagerCurrentFolderChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the currently processed folder. + * Value: A string value that specifies the folder's name. + */ + name: string; + /** + * Gets the full name of the folder currently being processed. + * Value: A string value that is the folder's full name. + */ + fullName: string; +} +/** + * A method that will handle the client SelectionChanged event. + */ +interface ASPxClientFileManagerSelectionChangedEventHandler { + /** + * A method that will handle the SelectionChanged event. + * @param source The event source. Identifies the ASPxFileManager control that raised the event. + * @param e A ASPxClientFileManagerSelectionChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerSelectionChangedEventArgs): void; +} +/** + * Provides data for the SelectionChanged event. + */ +interface ASPxClientFileManagerSelectionChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the file manager item object related to the event. + * Value: An object, manipulations on which forced the event to be raised. + */ + item: ASPxClientFileManagerItem; + /** + * Gets the name of the currently processed file. + * Value: A string value that specifies the file's name. + */ + name: string; + /** + * Gets the full name of the file currently being processed. + * Value: A string value that is the file's full name. + */ + fullName: string; + /** + * Gets whether the item has been selected. + * Value: true if the file has been selected; otherwise, false. + */ + isSelected: boolean; +} +/** + * A method that will handle the CustomCommand event. + */ +interface ASPxClientFileManagerCustomCommandEventHandler { + /** + * A method that will handle the CustomCommand event. + * @param source The event source. + * @param e An ASPxClientFileManagerCustomCommandEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerCustomCommandEventArgs): void; +} +/** + * Provides data for the CustomCommand event. + */ +interface ASPxClientFileManagerCustomCommandEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the processed command. + * Value: A string value that is the processed command's name. + */ + commandName: string; +} +/** + * A method that will handle the ToolbarUpdating event. + */ +interface ASPxClientFileManagerToolbarUpdatingEventHandler { + /** + * A method that will handle the ToolbarUpdating event. + * @param source The event source. + * @param e An ASPxClientFileManagerToolbarUpdatingEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerToolbarUpdatingEventArgs): void; +} +/** + * Provides data for the ToolbarUpdating event. + */ +interface ASPxClientFileManagerToolbarUpdatingEventArgs extends ASPxClientEventArgs { + /** + * Gets the name of the currently active file manager area. + * Value: A string value that identifies the active area. + */ + activeAreaName: string; +} +/** + * A method that will handle the client HighlightItemTemplate event. + */ +interface ASPxClientFileManagerHighlightItemTemplateEventHandler { + /** + * A method that will handle the HighlightItemTemplate event. + * @param source The event source. This parameter identifies the file manager object that raised the event. + * @param e An ASPxClientFileManagerHighlightItemTemplateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFileManagerHighlightItemTemplateEventArgs): void; +} +/** + * Provides data for the HighlightItemTemplate event. + */ +interface ASPxClientFileManagerHighlightItemTemplateEventArgs extends ASPxClientEventArgs { + /** + * Gets a string that is a filter value specified by the filter box. + * Value: A string that is a filter value. + */ + filterValue: string; + /** + * Gets the name of the item currently being processed. + * Value: A string that is the item name. + */ + itemName: string; + /** + * Gets an element containing the item template. + * Value: An object that is an element containing the item template. + */ + templateElement: string; + /** + * Get the name of the cascading style sheet (CSS) class associated with an item in the highlighted state. + * Value: A string that is the name of a CSS class. + */ + highlightCssClassName: string; +} +/** + * Represents a client-side equivalent of the menu's MenuItem object. + */ +interface ASPxClientMenuItem { + /** + * Gets the menu object to which the current item belongs. + * Value: An ASPxClientMenuBase object representing the menu to which the item belongs. + */ + menu: ASPxClientMenuBase; + /** + * Gets the immediate parent item to which the current item belongs. + * Value: An ASPxClientMenuItem object representing the item's immediate parent. + */ + parent: ASPxClientMenuItem; + /** + * Gets the item's index within the parent's collection of items. + * Value: An integer value representing the item's zero-based index within the Items collection of the parent object (a menu or item) to which the item belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the menu item. + * Value: A string value that represents the value assigned to the item's Name property. + */ + name: string; + /** + * For internal use only. + */ + indexPath: string; + /** + * Returns the number of the current menu item's immediate child items. + */ + GetItemCount(): number; + /** + * Returns the current menu item's immediate subitem specified by its index. + * @param index An integer value specifying the zero-based index of the submenu item to be retrieved. + */ + GetItem(index: number): ASPxClientMenuItem; + /** + * Returns the current menu item's subitem specified by its name. + * @param name A string value specifying the name of the menu item. + */ + GetItemByName(name: string): ASPxClientMenuItem; + /** + * Indicates whether the menu item is checked. + */ + GetChecked(): boolean; + /** + * Specifies whether the menu item is checked. + * @param value true if the menu item is checked; otherwise, false. + */ + SetChecked(value: boolean): void; + /** + * Returns a value specifying whether a menu item is enabled. + */ + GetEnabled(): boolean; + /** + * Specifies whether the menu item is enabled. + * @param value true to enable the menu item; otherwise, false. + */ + SetEnabled(value: boolean): void; + /** + * Returns the URL pointing to the image displayed within the menu item. + */ + GetImageUrl(): string; + /** + * Sets the URL which points to the image displayed within the menu item. + * @param value A string value specifying the URL to the image displayed within the menu item. + */ + SetImageUrl(value: string): void; + /** + * Gets a URL which defines the navigation location for the menu item. + */ + GetNavigateUrl(): string; + /** + * Specifies a URL which defines the navigation location for the menu item. + * @param value A string value which specifies a URL to where the client web browser will navigate when the menu item is clicked. + */ + SetNavigateUrl(value: string): void; + /** + * Returns text displayed within the menu item. + */ + GetText(): string; + /** + * Sets the text to be displayed within the menu item. + * @param value A string value specifying the text to be displayed within the menu item. + */ + SetText(value: string): void; + /** + * Returns a value specifying whether a menu item is displayed. + */ + GetVisible(): boolean; + /** + * Specifies the menu item's visibility. + * @param value true if the menu item is visible; otherwise, false. + */ + SetVisible(value: boolean): void; +} +/** + * A client-side equivalent of the file manager's FileManagerToolbarItemBase object. + */ +interface ASPxClientFileManagerToolbarItem extends ASPxClientMenuItem { + /** + * This property is not in effect for the ASPxClientFileManagerToolbarItem class. + */ + menu: ASPxClientMenuBase; + /** + * This property is not in effect for the ASPxClientFileManagerToolbarItem class. + */ + parent: ASPxClientMenuItem; + /** + * This property is not in effect for the ASPxClientFileManagerToolbarItem class. + */ + index: number; +} +/** + * A client-side equivalent of the ASPxFormLayout's LayoutItem object. + */ +interface ASPxClientLayoutItem { + /** + * Gets the form layout object to which the current item belongs. + * Value: An object representing the form layout to which the item belongs. + */ + formLayout: ASPxClientFormLayout; + /** + * Gets the name that uniquely identifies the layout item. + * Value: A string value that represents the value assigned to the layout item's Name property. + */ + name: string; + /** + * Gets the immediate parent layout item to which the current layout item belongs. + * Value: An object representing the item's immediate parent. + */ + parent: ASPxClientLayoutItem; + /** + * Returns the current layout item's subitem specified by its name. + * @param name A string value specifying the name of the layout item. + */ + GetItemByName(name: string): ASPxClientLayoutItem; + /** + * Returns a value specifying whether a layout item is displayed. + */ + GetVisible(): boolean; + /** + * Specifies the layout item's visibility. + * @param value true, if the layout item is visible; otherwise, false. + */ + SetVisible(value: boolean): void; + /** + * Specifies the text displayed in the layout item caption. + * @param caption A string value specifying the item caption. + */ + SetCaption(caption: string): void; + /** + * Returns the text displayed in the layout item caption. + */ + GetCaption(): string; +} +/** + * Represents a client-side equivalent of the ASPxFormLayout object. + */ +interface ASPxClientFormLayout extends ASPxClientControl { + /** + * Returns an item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): ASPxClientLayoutItem; +} +/** + * Represents a client-side equivalent of the ASPxGlobalEvents component. + */ +interface ASPxClientGlobalEvents { + /** + * Occurs on the client side after client object models of all DevExpress web controls contained within the page have been initialized. + */ + ControlsInitialized: ASPxClientEvent>; + /** + * Occurs when the browser window is being resized. + */ + BrowserWindowResized: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated by any DevExpress control. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side, after server-side processing of a callback initiated by any DevExpress web control, has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by any of DevExpress web controls. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side after the validation initiated for a DevExpress web control (or a group of DevExpress web controls) has been completed. + */ + ValidationCompleted: ASPxClientEvent>; +} +/** + * Represents a client-side equivalent of the ASPxHiddenField control. + */ +interface ASPxClientHiddenField extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientHiddenField. + */ + CallbackError: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side CustomCallback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Adds a new value to the control's collection of property name/value pairs, on the client side. + * @param propertyName A string value that specifies the property name. It can contain letters, digits, underline characters, and dollar signs. It cannot begin with a digit character. + * @param propertyValue An object that represents the value of the specified property. + */ + Add(propertyName: string, propertyValue: Object): void; + /** + * Returns the value with the specified property name. + * @param propertyName A string value that specifies the property name. + */ + Get(propertyName: string): Object; + /** + * Adds a new value to the control's collection of property name/value pairs, on the client side. + * @param propertyName A string value that specifies the property name. It can contain letters, digits, underline characters, and dollar signs. It cannot begin with a digit character. + * @param propertyValue An object that represents the property value. + */ + Set(propertyName: string, propertyValue: Object): void; + /** + * Removes the specified value from the ASPxHiddenField collection. + * @param propertyName A string value representing the property name. + */ + Remove(propertyName: string): void; + /** + * Clears the ASPxHiddenField's value collection. + */ + Clear(): void; + /** + * Returns a value indicating whether the value with the specified property name is contained within the ASPxHiddenField control's value collection. + * @param propertyName A string value that specifies the property name. + */ + Contains(propertyName: string): boolean; +} +/** + * Represents the client-side equivalent of the ASPxHint control. + */ +interface ASPxClientHint extends ASPxClientControl { + /** + * Occurs on the client side when a hint is about to be shown. + */ + Showing: ASPxClientEvent; + /** + * Occurs on the client side when a hint is about to be hidden. + */ + Hiding: ASPxClientEvent; + /** + * This method is not in effect for a ASPxClientHint object. + */ + GetMainElement(): Object; + /** + * Invokes a hint. + * @param targetElement A HTML DOM element near to which the hint is displayed in response to user interaction. + */ + Show(targetElement: Object): ASPxClientHintWindow; + /** + * Invokes a hint. + * @param targetSelector A string value that is the CSS selector used to specify for which UI elements on a web page a hint is displayed. + */ + Show(targetSelector: string): ASPxClientHintWindow; +} +/** + * Represents the client-side equivalent of the ASPxHint's window. + */ +interface ASPxClientHintWindow { + /** + * Forces the ASPxClientHint's window to recalculate its position. + */ + UpdatePosition(): void; +} +/** + * A method that will handle the Showing event. + */ +interface ASPxClientHintShowingEventHandler { + /** + * A method that will handle the Showing event. + * @param sender The event source. + * @param e A ASPxClientHintShowingEventArgs object that contains the required data. + */ + (sender: ASPxClientHintWindow, e: ASPxClientHintShowingEventArgs): void; +} +/** + * Provides data for the Showing event. + */ +interface ASPxClientHintShowingEventArgs extends ASPxClientEventArgs { + /** + * Gets the object that is the hint's target element. + * Value: An object representing the hint's target element related to the event. + */ + targetElement: Object; + /** + * Gets the object that is the hint. + * Value: An object representing the hint related to the event. + */ + hintElement: Object; + /** + * Gets the object that is the hint's content. + * Value: An object representing the hint's content element related to the event. + */ + contentElement: Object; + /** + * Gets the object that is the hint's title. + * Value: An object representing the hint's title element related to the event. + */ + titleElement: Object; + /** + * Gets or sets a value indicating whether the event should be canceled. + * Value: true, if the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that will handle the Hiding event. + */ +interface ASPxClientHintHidingEventHandler { + /** + * A method that will handle the Hiding event. + * @param sender The event source. + * @param e A ASPxClientHintHidingEventArgs object that contains the required data. + */ + (sender: ASPxClientHintWindow, e: ASPxClientHintHidingEventArgs): void; +} +/** + * Provides data for the Hiding event. + */ +interface ASPxClientHintHidingEventArgs extends ASPxClientEventArgs { + /** + * Gets the object that is the hint's target element. + * Value: An object representing the hint's target element. + */ + targetElement: Object; + /** + * Gets the object that is the hint element. + * Value: An object representing the hint related to the event. + */ + hintElement: Object; + /** + * Gets the object that is the hint's content. + * Value: An object representing the hint's content element related to the event. + */ + contentElement: Object; + /** + * Gets the object that is the hint's title. + * Value: An object representing the hint's title element related to the event. + */ + titleElement: Object; + /** + * Gets or sets a value indicating whether the event should be canceled. + * Value: true, if the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * The hint control's options. + */ +interface ASPxClientHintOptions { + /** + * Gets or sets which user action triggers a hint. + * Value: A string value that is a user action. + */ + triggerAction: string; + /** + * Gets or sets the delay in displaying the hint. + * Value: An integer value that specifies the time interval, in milliseconds, after which a hint is displayed. + */ + appearAfter: number; + /** + * Gets or sets the duration after which a hint disappears when the mouse pointer is no longer positioned over the target element. + * Value: The length of time (in milliseconds) a hint is displayed after the mouse pointer is no longer positioned over the target element. + */ + disappearAfter: number; + /** + * Gets or sets a value that specifies whether a hint is displayed in a callout box. + * Value: true, to display a hint in a callout box; otherwise, false. + */ + showCallout: boolean; + /** + * Gets or sets where a hint should be positioned. + * Value: A string value that specifies a hint position. + */ + position: string; + /** + * Gets or sets a custom CSS class name that will be assigned to the root ASPxHint element. + * Value: A string value that is the CSS class name. + */ + className: string; + /** + * Gets or sets the attribute name. + * Value: A string value that is the attribute name. + */ + contentAttribute: string; + /** + * Gets or sets the attribute name. + * Value: A string value that is the attribute name. + */ + titleAttribute: string; + /** + * Gets or sets the hint's content. + * Value: A string value that is the hint's content. + */ + content: string; + /** + * Gets or sets a value that is the hint's title. + * Value: A string value that is the title text. + */ + title: string; + /** + * Gets or sets a value that is the HTML DOM-element. + * Value: A string that is the DOM-element. + */ + container: string; + /** + * A handler for the Showing event. + * Value: An delegate method allowing you to implement custom processing. + */ + onShowing: ASPxClientHintShowingEventHandler; + /** + * A handler for the Hiding event. + * Value: An delegate method allowing you to implement custom processing. + */ + onHiding: ASPxClientHintHidingEventHandler; + /** + * Gets or sets a value that is the hint's width. + * Value: A string value that is the hint's width. + */ + width: string; + /** + * Gets or sets a value that is the hint's height. + * Value: A string value that is the hint's height. + */ + height: string; + /** + * Gets or sets the X coordinate. + * Value: An integer value that is the X coordinate. + */ + x: number; + /** + * Gets or sets the Y coordinate. + * Value: An integer value that is the Y coordinate. + */ + y: number; + /** + * Gets or sets a value that specifies whether to flip the hint to the opposite position relative to the target element. + * Value: true, to flip the hint; otherwise, false. + */ + allowFlip: boolean; + /** + * Gets or sets a value that specifies whether to shift a hint if its content and title are hidden outside of the client area. + * Value: true, to shift the hint; otherwise, false. + */ + allowShift: boolean; + /** + * Gets or sets whether it should use animation effects when a hint appears. + * Value: true if animation is enabled; otherwise false. + */ + animation: any; + /** + * Gets the offset of a hint. + * Value: An integer value. + */ + offset: number; +} +/** + * The client-side equivalent of the ASPxImageGallery control. + */ +interface ASPxClientImageGallery extends ASPxClientDataView { + /** + * Fires on the client side before the fullscreen viewer is shown and allows you to cancel the action. + */ + FullscreenViewerShowing: ASPxClientEvent>; + /** + * Occurs on the client side after an active item has been changed within the fullscreen viewer. + */ + FullscreenViewerActiveItemIndexChanged: ASPxClientEvent>; + /** + * Shows the fullscreen viewer with the specified active item. + * @param index An Int32 value that is an index of the active item. + */ + ShowFullscreenViewer(index: number): void; + /** + * Hides the fullscreen viewer. + */ + HideFullscreenViewer(): void; + /** + * Makes the specified item active within the fullscreen viewer on the client side. + * @param index An integer value specifying the index of the item to select. + * @param preventAnimation true to prevent the animation effect; false to change images using animation. + */ + SetFullscreenViewerActiveItemIndex(index: number, preventAnimation: boolean): void; + /** + * Gets the number of items contained in the control's item collection. + */ + GetFullscreenViewerItemCount(): number; + /** + * Returns the index of the active item within the fullscreen viewer. + */ + GetFullscreenViewerActiveItemIndex(): number; + /** + * Plays a slide show within a fullscreen viewer. + */ + PlaySlideShow(): void; + /** + * Pauses a slide show within a fullscreen viewer. + */ + PauseSlideShow(): void; +} +/** + * A method that will handle the client FullscreenViewerShowing event. + */ +interface ASPxClientImageGalleryCancelEventHandler { + /** + * A method that will handle the FullscreenViewerShowing event. + * @param source The event source. Identifies the ASPxImageGallery control that raised the event. + * @param e An ASPxClientImageGalleryCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientImageGalleryCancelEventArgs): void; +} +/** + * Provides data for the FullscreenViewerShowing event. + */ +interface ASPxClientImageGalleryCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the index of the item related to the event. + * Value: An value that is the related item's index. + */ + index: number; + /** + * Gets the unique identifier name of the item related to the event. + * Value: A string value that specifies the item's unique identifier name. + */ + name: string; +} +/** + * A method that will handle the client FullscreenViewerActiveItemIndexChanged event. + */ +interface ASPxClientImageGalleryFullscreenViewerEventHandler { + /** + * A method that will handle the FullscreenViewerActiveItemIndexChanged event. + * @param source The event source. Identifies the ASPxImageGallery control that raised the event. + * @param e An ASPxClientImageGalleryFullscreenViewerEventArgs object that contains event data. + */ + (source: S, e: ASPxClientImageGalleryFullscreenViewerEventArgs): void; +} +/** + * Provides data for the FullscreenViewerActiveItemIndexChanged event. + */ +interface ASPxClientImageGalleryFullscreenViewerEventArgs extends ASPxClientEventArgs { + /** + * Gets the index of the item related to the event. + * Value: An value that is the related item's index. + */ + index: number; + /** + * Gets the unique identifier name of the item related to the event. + * Value: A string value that specifies the item's unique identifier name. + */ + name: string; +} +/** + * A client-side equivalent of the ASPxImageSlider object. + */ +interface ASPxClientImageSlider extends ASPxClientControl { + /** + * Occurs after the active image, displayed within the image area, is changed. + */ + ActiveItemChanged: ASPxClientEvent>; + /** + * Fires after an image item has been clicked within the image area. + */ + ItemClick: ASPxClientEvent>; + /** + * Occurs on the client side when a thumbnail is clicked. + */ + ThumbnailItemClick: ASPxClientEvent>; + /** + * Returns an item specified by its index within the image slider's item collection. + * @param index An integer value specifying the zero-based index of the item to be retrieved. + */ + GetItem(index: number): ASPxClientImageSliderItem; + /** + * Returns an item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): ASPxClientImageSliderItem; + /** + * Returns the index of the active item within the image slider control. + */ + GetActiveItemIndex(): number; + /** + * Makes the specified item active within the image slider control on the client side. + * @param index An integer value specifying the index of the item to select. + * @param preventAnimation true to prevent the animation effect; false to change images using animation. + */ + SetActiveItemIndex(index: number, preventAnimation: boolean): void; + /** + * Returns the active item within the ASPxImageSlider control. + */ + GetActiveItem(): ASPxClientImageSliderItem; + /** + * Makes the specified item active within the image slider control on the client side. + * @param item An ASPxClientImageSliderItem object specifying the item to select. + * @param preventAnimation true to prevent animation effect; false to enable animation. + */ + SetActiveItem(item: ASPxClientImageSliderItem, preventAnimation: boolean): void; + /** + * Gets the number of items contained in the control's item collection. + */ + GetItemCount(): number; + /** + * Sets input focus to the ASPxImageSlider control. + */ + Focus(): void; + /** + * Plays a slide show within an image slider. + */ + Play(): void; + /** + * Pauses a slide show within image slider. + */ + Pause(): void; + /** + * Gets a value indicating whether the slide show is playing. + */ + IsSlideShowPlaying(): boolean; +} +/** + * A method that will handle the ItemClick events. + */ +interface ASPxClientImageSliderItemEventHandler { + /** + * A method that will handle the ItemClick events. + * @param source The event source. Identifies the ASPxImageSlider control that raised the event. + * @param e An ASPxClientImageSliderItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientImageSliderItemEventArgs): void; +} +/** + * Provides data for the ItemClick events. + */ +interface ASPxClientImageSliderItemEventArgs extends ASPxClientEventArgs { + /** + * Gets an item object related to the event. + * Value: An object, manipulations on which forced the event to be raised. + */ + item: ASPxClientImageSliderItem; +} +/** + * A client-side equivalent of the image slider's ImageSliderItem object. + */ +interface ASPxClientImageSliderItem { + /** + * Gets an image slider to which the current item belongs. + * Value: An object that is the item's owner. + */ + imageSlider: ASPxClientImageSlider; + /** + * Gets the item's index within an items collection. + * Value: An integer value is the item's zero-based index within the Items collection. + */ + index: number; + /** + * Gets the name that uniquely identifies the image slider item. + * Value: A string value that is the value assigned to the item's Name property. + */ + name: string; + /** + * Gets or sets the path to the image displayed within the ASPxClientImageSliderItem. + * Value: A value specifying the path to the image. + */ + imageUrl: string; + /** + * Gets the item's display text. + * Value: A string value that is the item's display text. + */ + text: string; +} +/** + * The client-side equivalent of the ASPxImageZoomNavigator object. + */ +interface ASPxClientImageZoomNavigator extends ASPxClientImageSlider { +} +/** + * A client-side equivalent of the ASPxImageZoom object. + */ +interface ASPxClientImageZoom extends ASPxClientControl { + /** + * Sets the properties on an image displayed in the image zoom control. + * @param imageUrl A string value specifying the path to the preview image displayed in the preview image. + * @param largeImageUrl A string value specifying the path to the preview image displayed in the zoom window and the expand window. + * @param zoomWindowText A string value specifying the text displayed in the zoom window. + * @param expandWindowText A string value specifying the text displayed in the expand window. + * @param alternateText A string value that specifies the alternate text displayed instead of the image. + */ + SetImageProperties(imageUrl: string, largeImageUrl: string, zoomWindowText: string, expandWindowText: string, alternateText: string): void; +} +/** + * Represents a client-side equivalent of the ASPxLoadingPanel control. + */ +interface ASPxClientLoadingPanel extends ASPxClientControl { + /** + * Invokes the loading panel. + */ + Show(): void; + /** + * Invokes the loading panel, displaying it over the specified HTML element. + * @param htmlElement An object that specifies the required HTML element. + */ + ShowInElement(htmlElement: Object): void; + /** + * Invokes the loading panel, displaying it over the specified element. + * @param id A string that specifies the required element's identifier. + */ + ShowInElementByID(id: string): void; + /** + * Invokes the loading panel at the specified position. + * @param x An integer value specifying the x-coordinate of the loading panel's display position. + * @param y An integer value specifying the y-coordinate of the loaidng panel's display position. + */ + ShowAtPos(x: number, y: number): void; + /** + * Sets the text to be displayed within the ASPxLoadingPanel. + * @param text A string value specifying the text to be displayed within the ASPxLoadingPanel. + */ + SetText(text: string): void; + /** + * Gets the text displayed within the ASPxLoadingPanel. + */ + GetText(): string; + /** + * Hides the loading panel. + */ + Hide(): void; +} +/** + * Represents the client-side equivalent of the area that is used within the Html Editor's media dialogs. + */ +interface ASPxClientMediaFileSelector extends ASPxClientControl { + /** + * Returns a URL text from the URL text box in Html Editor's media dialogs. + */ + GetUrl(): string; + /** + * Sets a URL text in the Html Editor's media dialogs. + * @param url A string value that is the Url text. + */ + SetUrl(url: string): void; +} +/** + * Serves as the base type for the ASPxClientPopupMenu objects. + */ +interface ASPxClientMenuBase extends ASPxClientControl { + /** + * Fires after a menu item has been clicked. + */ + ItemClick: ASPxClientEvent>; + /** + * Occurs on the client side when the mouse cursor is moved into a menu item. + */ + ItemMouseOver: ASPxClientEvent>; + /** + * Occurs on the client side when the mouse cursor moves outside a menu item. + */ + ItemMouseOut: ASPxClientEvent>; + /** + * Occurs on the client side when a submenu pops up. + */ + PopUp: ASPxClientEvent>; + /** + * Occurs on the client side when a submenu closes. + */ + CloseUp: ASPxClientEvent>; + /** + * Returns the number of menu items at the root menu level. + */ + GetItemCount(): number; + /** + * Returns the menu's root menu item specified by its index. + * @param index An integer value specifying the zero-based index of the root menu item to be retrieved. + */ + GetItem(index: number): ASPxClientMenuItem; + /** + * Returns a menu item specified by its name. + * @param name A string value specifying the name of the menu item. + */ + GetItemByName(name: string): ASPxClientMenuItem; + /** + * Returns the selected item within the menu control. + */ + GetSelectedItem(): ASPxClientMenuItem; + /** + * Selects the specified menu item within a menu control on the client side. + * @param item An ASPxClientMenuItem object specifying the menu item to select. + */ + SetSelectedItem(item: ASPxClientMenuItem): void; + /** + * Returns a root menu item. + */ + GetRootItem(): ASPxClientMenuItem; +} +/** + * Represents a client collection that maintains client menu objects. + */ +interface ASPxClientMenuCollection extends ASPxClientControlCollection { + /** + * Recalculates the position of visible sub menus. + */ + RecalculateAll(): void; + /** + * Hides all menus maitained by the collection. + */ + HideAll(): void; +} +/** + * Represents a client-side equivalent of the ASPxMenu object. + */ +interface ASPxClientMenu extends ASPxClientMenuBase { + /** + * Gets a value specifying the menu orientation. + */ + GetOrientation(): string; + /** + * Sets the menu orientation. + * @param orientation 'Vertical' to orient the menu vertically; 'Horizontal' to orient the menu horizontally. + */ + SetOrientation(orientation: string): void; +} +/** + * A method that will handle the menu's client events concerning manipulations with an item. + */ +interface ASPxClientMenuItemEventHandler { + /** + * A method that will handle the menu's client events concerning manipulations with an item. + * @param source The event source. This parameter identifies the menu object which raised the event. + * @param e An ASPxClientMenuItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientMenuItemEventArgs): void; +} +/** + * Provides data for events which concern manipulations on menu items. + */ +interface ASPxClientMenuItemEventArgs extends ASPxClientEventArgs { + /** + * Gets the menu item object related to the event. + * Value: An ASPxClientMenuItem object, manipulations on which forced the event to be raised. + */ + item: ASPxClientMenuItem; +} +/** + * A method that will handle client events which relate to mouse hovering (such as entering or leaving) over menu items. + */ +interface ASPxClientMenuItemMouseEventHandler { + /** + * A method that will handle the ItemMouseOver events. + * @param source An object representing the event source. + * @param e A MenuItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientMenuItemMouseEventArgs): void; +} +/** + * Provides data for client events which relate to mouse hovering (such as entering or leaving) over menu items. + */ +interface ASPxClientMenuItemMouseEventArgs extends ASPxClientMenuItemEventArgs { + /** + * Gets the HTML object that contains the processed item. + * Value: An HTML object representing a container for the item related to the event. + */ + htmlElement: Object; +} +/** + * A method that will handle client events concerning clicks on the control's items. + */ +interface ASPxClientMenuItemClickEventHandler { + /** + * A method that will handle client ItemClick events. + * @param source An object representing the event source. + * @param e A MenuItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientMenuItemClickEventArgs): void; +} +/** + * Provides data for events which concern clicking on the control's items. + */ +interface ASPxClientMenuItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the menu item object related to the event. + * Value: An ASPxClientMenuItem object, manipulations on which forced the event to be raised. + */ + item: ASPxClientMenuItem; + /** + * Gets the HTML object that contains the processed item. + * Value: An object representing a container for the item related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Contains options affecting the touch scrolling functionality. + */ +interface ASPxClientTouchUIOptions { + /** + * Gets or sets a value that specifies whether or not the horizontal scroll bar should be displayed. + * Value: true to display the horizontal scroll bar; otherwise, false. The default value is true. + */ + showHorizontalScrollbar: boolean; + /** + * Gets or sets a value that specifies whether or not the vertical scroll bar should be displayed. + * Value: true to display the vertical scroll bar; otherwise, false. The default value is true. + */ + showVerticalScrollbar: boolean; + /** + * Gets or sets the name of the CSS class defining the vertical scroll bar's appearance. + * Value: A string value specifying the class name. + */ + vScrollClassName: string; + /** + * Gets or sets the name of the CSS class defining the horizontal scroll bar's appearance. + * Value: A string value specifying the class name. + */ + hScrollClassName: string; +} +/** + * Contains a method allowing you to apply the current scroll extender to a specific element. + */ +interface ScrollExtender { + /** + * Applies the current scroll extender to the element specified by the ID. + * @param id A string value specifying the element's ID. + */ + ChangeElement(id: string): void; + /** + * Applies the current scroll extender to the specified DOM element. + * @param element An object specifying the required DOM element. + */ + ChangeElement(element: Object): void; +} +/** + * Represents a client-side equivalent of the ASPxNavBar control. + */ +interface ASPxClientNavBar extends ASPxClientControl { + /** + * Fires after an item has been clicked. + */ + ItemClick: ASPxClientEvent>; + /** + * Fires on the client side after a group's expansion state has been changed. + */ + ExpandedChanged: ASPxClientEvent>; + /** + * Fires on the client side before the expansion state of a group is changed. + */ + ExpandedChanging: ASPxClientEvent>; + /** + * Fires when a group header is clicked. + */ + HeaderClick: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientNavBar. + */ + CallbackError: ASPxClientEvent>; + /** + * Returns the number of groups in the navbar. + */ + GetGroupCount(): number; + /** + * Returns a group specified by its index. + * @param index An integer value specifying the zero-based index of the group object to retrieve. + */ + GetGroup(index: number): ASPxClientNavBarGroup; + /** + * Returns a group specified by its name. + * @param name A string value specifying the name of the group. + */ + GetGroupByName(name: string): ASPxClientNavBarGroup; + /** + * Returns the navbar's active group. + */ + GetActiveGroup(): ASPxClientNavBarGroup; + /** + * Makes the specified group active. + * @param group A ASPxClientNavBarGroup object that specifies the active group. + */ + SetActiveGroup(group: ASPxClientNavBarGroup): void; + /** + * Returns an item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): ASPxClientNavBarItem; + /** + * Returns the selected item within the navbar control. + */ + GetSelectedItem(): ASPxClientNavBarItem; + /** + * Selects the specified item within the navbar control on the client side. + * @param item An ASPxClientNavBarItem object specifying the item to select. + */ + SetSelectedItem(item: ASPxClientNavBarItem): void; + /** + * Collapses all groups of the navbar. + */ + CollapseAll(): void; + /** + * Expands all groups of the navbar. + */ + ExpandAll(): void; +} +/** + * Represents a client-side equivalent of the navbar's NavBarGroup object. + */ +interface ASPxClientNavBarGroup { + /** + * Gets the navbar to which the current group belongs. + * Value: An ASPxClientNavBar object representing the navbar to which the group belongs. + */ + navBar: ASPxClientNavBar; + /** + * Gets the group's index within a collection of a navbar's groups. + * Value: An integer value representing the group's zero-based index within the Groups collection of the navbar to which the group belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the group. + * Value: A string value that represents the value assigned to the group's Name property. + */ + name: string; + /** + * Returns a value specifying whether a group is enabled. + */ + GetEnabled(): boolean; + /** + * Returns a value specifying whether the group is expanded. + */ + GetExpanded(): boolean; + /** + * Sets the group's expansion state. + * @param value true to expand the group; false to collapse the group. + */ + SetExpanded(value: boolean): void; + /** + * Returns a value specifying whether a group is displayed. + */ + GetVisible(): boolean; + /** + * Returns text displayed within a group. + */ + GetText(): string; + /** + * Specifies the text displayed within a group. + * @param text A string value that is the text displayed within the navbar group. + */ + SetText(text: string): void; + /** + * Specifies whether the group is visible. + * @param value true if the group is visible; otherwise, false. + */ + SetVisible(value: boolean): void; + /** + * Returns the number of items in the group. + */ + GetItemCount(): number; + /** + * Returns the group's item specified by its index. + * @param index An integer value specifying the zero-based index of the item to be retrieved. + */ + GetItem(index: number): ASPxClientNavBarItem; + /** + * Returns a group item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): ASPxClientNavBarItem; +} +/** + * Represents a client-side equivalent of the navbar's NavBarItem object. + */ +interface ASPxClientNavBarItem { + /** + * Gets the navbar to which the current item belongs. + * Value: An ASPxClientNavBar object representing the navbar to which the item belongs. + */ + navBar: ASPxClientNavBar; + /** + * Gets the group to which the current item belongs. + * Value: An ASPxClientNavBarGroup object representing the group to which the item belongs. + */ + group: ASPxClientNavBarGroup; + /** + * Gets the item's index within a collection of a group's items. + * Value: An integer value representing the item's zero-based index within the Items collection of the group to which the item belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the item. + * Value: A string value that represents the value assigned to the item's Name property. + */ + name: string; + /** + * Returns a value indicating whether an item is enabled. + */ + GetEnabled(): boolean; + /** + * Specifies whether the item is enabled. + * @param value true if the item is enabled; otherwise, false. + */ + SetEnabled(value: boolean): void; + /** + * Returns the URL which points to the image displayed within the item. + */ + GetImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the item. + * @param value A string value that specifies the URL to the image displayed within the item. + */ + SetImageUrl(value: string): void; + /** + * Gets an URL which defines the item's navigation location. + */ + GetNavigateUrl(): string; + /** + * Specifies a URL which defines the item's navigation location. + * @param value A string value which represents the URL to where the client web browser will navigate when the item is clicked. + */ + SetNavigateUrl(value: string): void; + /** + * Returns text displayed within the item. + */ + GetText(): string; + /** + * Specifies the text displayed within the item. + * @param value A string value that represents the text displayed within the item. + */ + SetText(value: string): void; + /** + * Returns a value specifying whether an item is displayed. + */ + GetVisible(): boolean; + /** + * Specifies whether the item is visible. + * @param value true is the item is visible; otherwise, false. + */ + SetVisible(value: boolean): void; +} +/** + * A method that will handle the navbar's client events concerning manipulations with an item. + */ +interface ASPxClientNavBarItemEventHandler { + /** + * A method that will handle the navbar's client events concerning manipulations with an item. + * @param source An object representing the event's source. Identifies the navbar object that raised the event. + * @param e An ASPxClientNavBarItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientNavBarItemEventArgs): void; +} +/** + * Provides data for events which concern manipulations on items. + */ +interface ASPxClientNavBarItemEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the item object related to the event. + * Value: An ASPxClientNavBarItem object, manipulations on which forced the event to be raised. + */ + item: ASPxClientNavBarItem; + /** + * Gets the HTML object that contains the processed navbar item. + * Value: An object representing a container for the navbar item related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the navbar's client events concerning manipulations with a group. + */ +interface ASPxClientNavBarGroupEventHandler { + /** + * A method that will handle the navbar's client events concerning manipulations with a group. + * @param source An object representing the event's source. Identifies the navbar object that raised the event. + * @param e An ASPxClientNavBarGroupEventArgs object that contains event data. + */ + (source: S, e: ASPxClientNavBarGroupEventArgs): void; +} +/** + * Provides data for events which concern manipulations on groups. + */ +interface ASPxClientNavBarGroupEventArgs extends ASPxClientEventArgs { + /** + * Gets the group object related to the event. + * Value: An ASPxClientNavBarGroup object, manipulations on which forced the event to be raised. + */ + group: ASPxClientNavBarGroup; +} +/** + * A method that will handle the navbar's cancelable client events concerning manipulations with a group. + */ +interface ASPxClientNavBarGroupCancelEventHandler { + /** + * A method that will handle the navbar's cancelable client events concerning manipulations with a group. + * @param source An object representing the event's source. Identifies the navbar object that raised the event. + * @param e An ASPxClientNavBarGroupCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientNavBarGroupCancelEventArgs): void; +} +/** + * Provides data for cancellable events which concern manipulations on groups. + */ +interface ASPxClientNavBarGroupCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the group object related to the event. + * Value: An ASPxClientNavBarGroup object representing the group manipulations on which forced the navbar to raise the event. + */ + group: ASPxClientNavBarGroup; +} +/** + * A method that will handle client events concerning clicks on the control's group headers. + */ +interface ASPxClientNavBarGroupClickEventHandler { + /** + * A method that will handle the navbar's client events concerning clicks on groups. + * @param source The event source. This parameter identifies the navbar object which raised the event. + * @param e An ASPxClientNavBarGroupClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientNavBarGroupClickEventArgs): void; +} +/** + * Provides data for events which concern clicking on the control's group headers. + */ +interface ASPxClientNavBarGroupClickEventArgs extends ASPxClientNavBarGroupCancelEventArgs { + /** + * Gets the HTML object that contains the processed group. + * Value: An object representing a container for the group related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Represents a client-side equivalent of the ASPxNewsControl object. + */ +interface ASPxClientNewsControl extends ASPxClientDataView { + /** + * Fires after an item's tail has been clicked. + */ + TailClick: ASPxClientEvent>; +} +/** + * A method that will handle client events concerning manipulations with an item. + */ +interface ASPxClientNewsControlItemEventHandler { + /** + * A method that will handle the news control's client events concerning manipulations with an item. + * @param source An object representing the event's source. Identifies the news control object that raised the event. + * @param e An ASPxClientNewsControlItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientNewsControlItemEventArgs): void; +} +/** + * Provides data for events which concern tail clicking within the control's items. + */ +interface ASPxClientNewsControlItemEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the name that uniquely identifies the processed item. + * Value: A string value that represents the value assigned to the processed item's Name property. + */ + name: Object; + /** + * Gets the HTML object that contains the processed item. + * Value: An object representing a container for the item related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Represents a client-side equivalent of the ASPxObjectContainer control. + */ +interface ASPxClientObjectContainer extends ASPxClientControl { + /** + * Occurs on the client side when the FSCommand action is called within the associated flash object's action script. + */ + FlashScriptCommand: ASPxClientEvent>; + /** + * Play the Flash movie backwards. + */ + Back(): void; + /** + * Returns the value of the Flash variable specified. + * @param name A string value that specifies the Flash variable. + */ + GetVariable(name: string): string; + /** + * Play the Flash movie forwards. + */ + Forward(): void; + /** + * Activates the specified frame in the Flash movie. + * @param frameNumber An integer value that specifies the requested frame. + */ + GotoFrame(frameNumber: number): void; + /** + * Indicates whether the Flash movie is currently playing. + */ + IsPlaying(): boolean; + /** + * Loads the Flash movie to the specified layer. + * @param layerNumber An integer value that identifies a layer in which to load the movie. + * @param url A string value that specifies the movie's URL. + */ + LoadMovie(layerNumber: number, url: string): void; + /** + * Pans a zoomed-in Flash movie to the specified coordinates. + * @param x An integer value that specifies the X-coordinate. + * @param y An integer value that specifies the Y-coordinate. + * @param mode 0 the coordinates are pixels; 1 the coordinates are a percentage of the window. + */ + Pan(x: number, y: number, mode: number): void; + /** + * Returns the percent of the Flash Player movie that has streamed into the browser so far. + */ + PercentLoaded(): string; + /** + * Starts playing the Flash movie. + */ + Play(): void; + /** + * Rewinds the Flash movie to the first frame. + */ + Rewind(): void; + /** + * Sets the value of the specified Flash variable. + * @param name A string value that specifies the Flash variable. + * @param value A string value that represents a new value. + */ + SetVariable(name: string, value: string): void; + /** + * Zooms in on the specified rectangular area of the Flash movie. + * @param left An integer value that specifies the x-coordinate of the rectangle's left side, in twips. + * @param top An integer value that specifies the y-coordinate of the rectangle's top side, in twips. + * @param right An integer value that specifies the x-coordinate of the rectangle's right side, in twips. + * @param bottom An integer value that specifies the y-coordinate of the rectangle's bottom side, in twips. + */ + SetZoomRect(left: number, top: number, right: number, bottom: number): void; + /** + * Stops playing the Flash movie. + */ + StopPlay(): void; + /** + * Returns the total number of frames in the Flash movie. + */ + TotalFrames(): number; + /** + * Zooms the Flash view by a relative scale factor. + * @param percent An integer value that specifies the relative scale factor, as a percentage. + */ + Zoom(percent: number): void; + /** + * Starts playing a Quick Time movie. + */ + QTPlay(): void; + /** + * Stops playing a Quick Time movie. + */ + QTStopPlay(): void; + /** + * Rewinds a Quick Time movie to the first frame. + */ + QTRewind(): void; + /** + * Steps through a Quick Time video stream by a specified number of frames. + * @param count An integer value that specifies the number of frames to step. + */ + QTStep(count: number): void; +} +/** + * A method that will handle the FlashScriptCommand event. + */ +interface ASPxClientFlashScriptCommandEventHandler { + /** + * A method that will handle the FlashScriptCommand event. + * @param source The event source. + * @param e A ASPxClientFlashScriptCommandEventArgs object that contains event data. + */ + (source: S, e: ASPxClientFlashScriptCommandEventArgs): void; +} +/** + * Provides data for the FlashScriptCommand client event. + */ +interface ASPxClientFlashScriptCommandEventArgs extends ASPxClientEventArgs { + /** + * Gets a command passed via the FSCommand action of the flash object. + * Value: A string that represents the value of the FSCommand action's command parameter. + */ + command: string; + /** + * Gets arguments passed via the FSCommand action of the flash object. + * Value: A string that represents the value of the FSCommand action's args parameter. + */ + args: string; +} +/** + * Lists the available link types within office documents. + */ +interface ASPxClientOfficeDocumentLinkType { +} +/** + * Represents the client-side equivalent of the ASPxPager control. + */ +interface ASPxClientPager extends ASPxClientControl { +} +/** + * Represents a client-side equivalent of the ASPxPopupControl control. + */ +interface ASPxClientPopupControl extends ASPxClientPopupControlBase { + /** + * Occurs when a popup window's close button is clicked. + */ + CloseButtonClick: ASPxClientEvent>; + /** + * This method is not in effect for a ASPxClientPopupControl object. + */ + GetMainElement(): Object; + /** + * Returns an object containing the information about a mouse event that invoked a default popup window. + */ + GetPopUpReasonMouseEvent(): Object; + /** + * Returns an object containing the information about a mouse event that invoked the specified popup window. + * @param window A ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowPopUpReasonMouseEvent(window: ASPxClientPopupWindow): Object; + /** + * + * @param window + * @param parameter + */ + PerformWindowCallback(window: ASPxClientPopupWindow, parameter: string): void; + /** + * Sends a callback with parameters to update the popup window by processing the related popup window and the passed information on the server. + * @param window A ASPxClientPopupWindow object identifying the processed popup window. + * @param parameter A string value that represents any information that needs to be sent to the server-side CustomCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformWindowCallback(window: ASPxClientPopupWindow, parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Specifies the default popup window's size. + * @param width An integer value that specifies the default popup window's width. + * @param height An integer value that specifies the default popup window's height. + */ + SetSize(width: number, height: number): void; + /** + * Gets the width of the specified popup window's content region. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowContentWidth(window: ASPxClientPopupWindow): number; + /** + * Gets the height of the specified popup window's content region. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowContentHeight(window: ASPxClientPopupWindow): number; + /** + * Returns the height of a specific popup window. + * @param window A ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowHeight(window: ASPxClientPopupWindow): number; + /** + * Returns the width of a specific popup window. + * @param window A ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowWidth(window: ASPxClientPopupWindow): number; + /** + * Specifies the size of a specific popup window. + * @param window A ASPxClientPopupWindow object that specifies the required popup window. + * @param width An integer value that specifies the required popup window's width. + * @param height An integer value that specifies the required popup window's height. + */ + SetWindowSize(window: ASPxClientPopupWindow, width: number, height: number): void; + /** + * Returns the HTML code that is the content of the popup control's default popup window. + */ + GetContentHTML(): string; + /** + * Defines the HTML content for the popup control's default popup window. + * @param html A string value that is the HTML code defining the content of the popup window. + */ + SetContentHTML(html: string): void; + /** + * Sets the ID of a web control or HTML element (or a list of IDs) with which the current popup control's window is associated. + * @param window An ASPxClientPopupWindow object representing a popup control's window. + * @param popupElementId A string value specifying the ID (or a list of IDs) of the web control or HTML element with which the popup control's window is associated. + */ + SetWindowPopupElementID(window: ASPxClientPopupWindow, popupElementId: string): void; + /** + * Sets the ID of a web control or HTML element (or a list of IDs) with which the current popup control is associated. + * @param popupElementId A string value specifying the ID (or a list of IDs) of the web control or HTML element to which the popup control is associated. + */ + SetPopupElementID(popupElementId: string): void; + /** + * Returns an index of the object that invoked the default window within the PopupElementID list. + */ + GetCurrentPopupElementIndex(): number; + /** + * Returns an index of the object that invoked the specified popup window, within the window's PopupElementID list. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowCurrentPopupElementIndex(window: ASPxClientPopupWindow): number; + /** + * Returns an object that invoked the default window. + */ + GetCurrentPopupElement(): Object; + /** + * Returns an object that invoked the specified popup window. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowCurrentPopupElement(window: ASPxClientPopupWindow): Object; + /** + * Returns a value that specifies whether the popup control's specific window is displayed. + * @param window A ASPxClientPopupWindow object representing the popup window whose visibility is checked. + */ + IsWindowVisible(window: ASPxClientPopupWindow): boolean; + /** + * Returns a popup window specified by its index. + * @param index An integer value specifying the zero-based index of the popup window object to be retrieved. + */ + GetWindow(index: number): ASPxClientPopupWindow; + /** + * Returns a popup window specified by its name. + * @param name A string value specifying the name of the popup window. + */ + GetWindowByName(name: string): ASPxClientPopupWindow; + /** + * Returns the number of popup windows in the popup control. + */ + GetWindowCount(): number; + /** + * Invokes the popup control's specific window. + * @param window A ASPxClientPopupWindow object representing the popup window to display. + */ + ShowWindow(window: ASPxClientPopupWindow): void; + /** + * Invokes the specified popup window at the popup element with the specified index. + * @param window A ASPxClientPopupWindow object that specifies the required popup window. + * @param popupElementIndex An integer value specifying the zero-based index of the popup element within the window's PopupElementID list. + */ + ShowWindow(window: ASPxClientPopupWindow, popupElementIndex: number): void; + /** + * Invokes the popup control's specific window and displays it over the specified HTML element. + * @param window A ASPxClientPopupWindow object representing the popup window to display. + * @param htmlElement An object specifying the HTML element relative to whose position the default popup window is invoked. + */ + ShowWindowAtElement(window: ASPxClientPopupWindow, htmlElement: Object): void; + /** + * Invokes the popup control's specific window and displays it over an HTML element specified by its unique identifier. + * @param window A ASPxClientPopupWindow object representing the popup window to display. + * @param id A string value that specifies the hierarchically qualified identifier of an HTML element relative to whose position the default popup window is invoked. + */ + ShowWindowAtElementByID(window: ASPxClientPopupWindow, id: string): void; + /** + * Invokes the popup control's specific popup window at the specified position. + * @param window A ASPxClientPopupWindow object representing the popup window to display. + * @param x A integer value specifying the x-coordinate of the popup window's display position. + * @param y A integer value specifying the y-coordinate of the popup window's display position. + */ + ShowWindowAtPos(window: ASPxClientPopupWindow, x: number, y: number): void; + /** + * Brings the specified popup window to the front of the z-order. + * @param window A ASPxClientPopupWindow object representing the popup window. + */ + BringWindowToFront(window: ASPxClientPopupWindow): void; + /** + * Closes the popup control's specified window. + * @param window A ASPxClientPopupWindow object representing the popup window to close. + */ + HideWindow(window: ASPxClientPopupWindow): void; + /** + * Returns the HTML code that represents the contents of the specified popup window. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + GetWindowContentHtml(window: ASPxClientPopupWindow): string; + /** + * Defines the HTML content for a specific popup window within the popup control. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + * @param html A string value that represents the HTML code defining the content of the specified popup window. + */ + SetWindowContentHtml(window: ASPxClientPopupWindow, html: string): void; + /** + * Returns an iframe object containing a web page specified via the specified popup window's SetWindowContentUrl client method). + * @param window A ASPxClientPopupWindow object representing the required popup window. + */ + GetWindowContentIFrame(window: ASPxClientPopupWindow): Object; + /** + * Returns the URL pointing to the web page displayed within the control's specific popup window. + * @param window A ASPxClientPopupWindow object representing the required popup window. + */ + GetWindowContentUrl(window: ASPxClientPopupWindow): string; + /** + * Sets the URL pointing to the web page that should be loaded into and displayed within the control's specific popup window. + * @param window A ASPxClientPopupWindow object representing the required popup window. + * @param url A string value specifying the URL to the web page to be displayed within the specified popup window. + */ + SetWindowContentUrl(window: ASPxClientPopupWindow, url: string): void; + /** + * Returns a value indicating whether the specified window is pinned. + * @param window An ASPxClientPopupWindow object specifying the popup window. + */ + GetWindowPinned(window: ASPxClientPopupWindow): boolean; + /** + * Sets a value indicating whether the specified window is pinned. + * @param window An ASPxClientPopupWindow object specifying the popup window. + * @param value true to pin the window; otherwise, false. + */ + SetWindowPinned(window: ASPxClientPopupWindow, value: boolean): void; + /** + * Returns a value indicating whether the specified window is maximized. + * @param window An ASPxClientPopupWindow object specifying the popup window. + */ + GetWindowMaximized(window: ASPxClientPopupWindow): boolean; + /** + * Sets a value indicating whether the specified window is maximized. + * @param window An ASPxClientPopupWindow object specifying the popup window. + * @param value true to maximize the window; otherwise, false. + */ + SetWindowMaximized(window: ASPxClientPopupWindow, value: boolean): void; + /** + * Returns a value indicating whether the specified window is collapsed. + * @param window An ASPxClientPopupWindow object specifying the popup window. + */ + GetWindowCollapsed(window: ASPxClientPopupWindow): boolean; + /** + * Sets a value indicating whether the specified window is collapsed. + * @param window An ASPxClientPopupWindow object specifying the popup window. + * @param value true to collapse the window; otherwise, false. + */ + SetWindowCollapsed(window: ASPxClientPopupWindow, value: boolean): void; + /** + * Refreshes the content of the web page displayed within the control's specific popup window. + * @param window A ASPxClientPopupWindow object representing the required popup window. + */ + RefreshWindowContentUrl(window: ASPxClientPopupWindow): void; + /** + * Updates the default popup window's position, to correctly align it at either the specified element, or the center of the browser's window. + */ + UpdatePosition(): void; + /** + * Updates the default popup window's position, to correctly align it at the specified HTML element. + * @param htmlElement An object specifying the HTML element to which the default popup window is aligned using the PopupVerticalAlign properties. + */ + UpdatePositionAtElement(htmlElement: Object): void; + /** + * Updates the specified popup window's position, to correctly align it at either the specified element, or the center of the browser's window. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + */ + UpdateWindowPosition(window: ASPxClientPopupWindow): void; + /** + * Updates the specified popup window's position, to correctly align it at the specified HTML element. + * @param window An ASPxClientPopupWindow object that specifies the required popup window. + * @param htmlElement An object specifying the HTML element to which the specified popup window is aligned using the PopupVerticalAlign properties. + */ + UpdateWindowPositionAtElement(window: ASPxClientPopupWindow, htmlElement: Object): void; + /** + * Refreshes the connection between the ASPxPopupControl and the popup element. + */ + RefreshPopupElementConnection(): void; +} +/** + * Represents a client-side equivalent of a popup control's PopupWindow object. + */ +interface ASPxClientPopupWindow { + /** + * Gets the popup control to which the current popup window belongs. + * Value: An ASPxClientPopupControl object representing the popup control to which the window belongs. + */ + popupControl: ASPxClientPopupControl; + /** + * Gets the index of the current popup window within the popup control's Windows collection. + * Value: An integer value representing the zero-based index of the current popup window within the Windows collection of the popup control to which the window belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the current popup window. + * Value: A string value that represents a value assigned to the popup window's Name property. + */ + name: string; + /** + * Returns the URL pointing to the image displayed within the window header. + */ + GetHeaderImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the window header. + * @param value A string value that is the URL to the image displayed within the header. + */ + SetHeaderImageUrl(value: string): void; + /** + * Returns the URL pointing to the image displayed within the window footer. + */ + GetFooterImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the window footer. + * @param value A string value that is the URL to the image displayed within the window footer. + */ + SetFooterImageUrl(value: string): void; + /** + * Returns the URL where the web browser will navigate when the text or image is clicked within the popup window's header. + */ + GetHeaderNavigateUrl(): string; + /** + * Returns the URL where the web browser will navigate when the text or image is clicked within the popup window's header. + * @param value A string value which specifies the required navigation location. + */ + SetHeaderNavigateUrl(value: string): void; + /** + * Returns the URL where the web browser will navigate when the text or image is clicked within the popup window's footer. + */ + GetFooterNavigateUrl(): string; + /** + * Specifies the URL where the web browser will navigate when the text or image is clicked within the popup window's footer. + * @param value A string value which specifies the required navigation location. + */ + SetFooterNavigateUrl(value: string): void; + /** + * Returns the text displayed within the window's header. + */ + GetHeaderText(): string; + /** + * Specifies the text displayed within the window's header. + * @param value A string value that specifies the window's header text. + */ + SetHeaderText(value: string): void; + /** + * Returns the text displayed within the popup window's footer. + */ + GetFooterText(): string; + /** + * Specifies the text displayed within the window's footer. + * @param value A string value that specifies the window's footer text. + */ + SetFooterText(value: string): void; +} +/** + * A method that will handle the popup control's client events invoked in response to manipulating a popup window. + */ +interface ASPxClientPopupWindowEventHandler { + /** + * A method that will handle the popup control's client events when a popup window is manipulated. + * @param source An object representing the event's source. Identifies the popup control object (ASPxClientPopupControl) that raised the event. + * @param e An ASPxClientPopupWindowEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPopupWindowEventArgs): void; +} +/** + * Provides data for events concerning client manipulations on popup windows. + */ +interface ASPxClientPopupWindowEventArgs extends ASPxClientEventArgs { + /** + * Gets the popup window object related to the event. + * Value: An ASPxClientPopupWindow object representing the popup window that was manipulated, causing the popup control to raise the event. + */ + window: ASPxClientPopupWindow; +} +/** + * A method that will handle the popup window's cancellable client events, such as the Closing. + */ +interface ASPxClientPopupWindowCancelEventHandler { + /** + * A method that will handle the popup window's cancelable client events. + * @param source An object representing the event's source. Identifies the popup window object that raised the event. + * @param e An ASPxClientPopupWindowCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPopupWindowCancelEventArgs): void; +} +/** + * Provides data for the popup control's cancellable client events, such as the Closing. + */ +interface ASPxClientPopupWindowCancelEventArgs extends ASPxClientCancelEventArgs { + /** + * Gets the popup window object related to the event. + * Value: An ASPxClientPopupWindow object representing the popup window that was manipulated, causing the popup control to raise the event. + */ + window: ASPxClientPopupWindow; + /** + * Gets the value that identifies the reason the popup window is about to close. + * Value: One of the ASPxClientPopupControlCloseReason enumeration values. + */ + closeReason: ASPxClientPopupControlCloseReason; +} +/** + * A method that will handle the CloseUp event. + */ +interface ASPxClientPopupWindowCloseUpEventHandler { + /** + * A method that will handle the CloseUp event. + * @param source The event source. + * @param e An ASPxClientPopupWindowCloseUpEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPopupWindowCloseUpEventArgs): void; +} +/** + * Provides data for the CloseUp event. + */ +interface ASPxClientPopupWindowCloseUpEventArgs extends ASPxClientPopupWindowEventArgs { + /** + * Gets the value that identifies the reason the popup window closes. + * Value: One of the ASPxClientPopupControlCloseReason enumeration values. + */ + closeReason: ASPxClientPopupControlCloseReason; +} +/** + * A method that will handle the Resize event. + */ +interface ASPxClientPopupWindowResizeEventHandler { + /** + * A method that will handle the Resize event. + * @param source The event source. + * @param e A ASPxClientPopupWindowResizeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPopupWindowResizeEventArgs): void; +} +/** + * Provides data for the Resize event. + */ +interface ASPxClientPopupWindowResizeEventArgs extends ASPxClientPopupWindowEventArgs { + /** + * Returns the value indicating the window state after resizing. + * Value: The integer value indicating the window resize state. + */ + resizeState: number; +} +/** + * A method that will handle the PinnedChanged event. + */ +interface ASPxClientPopupWindowPinnedChangedEventHandler { + /** + * A method that will handle the PinnedChanged event. + * @param source The event source. + * @param e A ASPxClientPopupWindowPinnedChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientPopupWindowPinnedChangedEventArgs): void; +} +/** + * Provides data for the PinnedChanged event. + */ +interface ASPxClientPopupWindowPinnedChangedEventArgs extends ASPxClientPopupWindowEventArgs { + /** + * Gets a value indicating whether the processed popup window has been pinned. + * Value: true, if the window has been pinned; otherwise, false. + */ + pinned: boolean; +} +/** + * Represents a client collection that maintains client popup control objects. + */ +interface ASPxClientPopupControlCollection extends ASPxClientControlCollection { + /** + * Hides all popup windows maintained by the collection. + */ + HideAllWindows(): void; +} +/** + * Declares client constants that identify the reason the popup window closes. + */ +interface ASPxClientPopupControlCloseReason { +} +/** + * Represents a client-side equivalent of the ASPxPopupMenu object. + */ +interface ASPxClientPopupMenu extends ASPxClientMenuBase { + /** + * Sets the ID of a web control or HTML element (or a list of IDs) with which the current popup menu is associated. + * @param popupElementId A string value specifying the ID (or a list of IDs) of the web control or HTML element with which the popup menu is associated. + */ + SetPopupElementID(popupElementId: string): void; + /** + * Returns an index of the object that invoked the popup menu within the PopupElementID list. + */ + GetCurrentPopupElementIndex(): number; + /** + * Returns an object that invoked the popup menu. + */ + GetCurrentPopupElement(): Object; + /** + * Refreshes the connection between the ASPxPopupMenu and the popup element. + */ + RefreshPopupElementConnection(): void; + /** + * Hides the popup menu. + */ + Hide(): void; + /** + * Invokes the popup menu. + */ + Show(): void; + /** + * Invokes the popup menu at the popup element with the specified index. + * @param popupElementIndex An integer value specifying the zero-based index of the popup element. + */ + Show(popupElementIndex: number): void; + /** + * Invokes the popup menu and displays it over the specified HTML element. + * @param htmlElement An object specifying the HTML element relative to which position the popup menu is invoked. + */ + ShowAtElement(htmlElement: Object): void; + /** + * Invokes the popup menu and displays it over an HTML element specified by its unique identifier. + * @param id A string value that specifies the hierarchically qualified identifier of an HTML element relative to which position the popup menu is invoked. + */ + ShowAtElementByID(id: string): void; + /** + * Invokes the popup menu at the specified position. + * @param x An integer value specifying the x-coordinate of the popup menu's display position. + * @param y An integer value specifying the y-coordinate of the popup menu's display position. + */ + ShowAtPos(x: number, y: number): void; +} +/** + * Represents the client-side equivalent of the ASPxRatingControl control. + */ +interface ASPxClientRatingControl extends ASPxClientControl { + /** + * Fires on the server after an item has been clicked. + */ + ItemClick: ASPxClientEvent>; + /** + * Occurs on the client side when the mouse cursor is moved into a rating control item. + */ + ItemMouseOver: ASPxClientEvent>; + /** + * Occurs on the client side when the mouse cursor moves outside a rating control item. + */ + ItemMouseOut: ASPxClientEvent>; + /** + * Gets the item tooltip title specified by the item index. + * @param index An integer value specifying the item index. + */ + GetTitle(index: number): string; + /** + * Returns a value indicating whether the control's status is read-only. + */ + GetReadOnly(): boolean; + /** + * Specifies whether the control's status is read-only. + * @param value true to make the control read-only; otherwise, false. + */ + SetReadOnly(value: boolean): void; + /** + * Returns the value of the ASPxRatingControl. + */ + GetValue(): number; + /** + * Modifies the value of the ASPxRatingControl on the client side. + * @param value A decimal value representing the value of the control. + */ + SetValue(value: number): void; +} +/** + * A method that will handle the client ItemClick event. + */ +interface ASPxClientRatingControlItemClickEventHandler { + /** + * A method that will handle the client ItemClick event. + * @param source An object representing the event source. + * @param e A ASPxClientRatingControlItemClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRatingControlItemClickEventArgs): void; +} +/** + * Provides data for the ItemClick event. + */ +interface ASPxClientRatingControlItemClickEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the index of the item related to the event. + * Value: An integer value that represents the clicked item's index. + */ + index: number; +} +/** + * A method that will handle the rating control's ItemMouseOver and ItemMouseOut client events (such as ItemMouseOut). + */ +interface ASPxClientRatingControlItemMouseEventHandler { + /** + * A method that will handle the ItemMouseOver events. + * @param source The event source. + * @param e An ASPxClientRatingControlItemMouseEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRatingControlItemMouseEventArgs): void; +} +/** + * Provides data for the rating control's ItemMouseOver and ItemMouseOut client events (such as ItemMouseOut). + */ +interface ASPxClientRatingControlItemMouseEventArgs extends ASPxClientEventArgs { + /** + * Gets the index of the item related to the event. + * Value: An integer value that represents the related item's index. + */ + index: number; +} +/** + * Represents the client-side equivalent of the ASPxRibbon control. + */ +interface ASPxClientRibbon extends ASPxClientControl { + /** + * Occurs after an end-user executes an action on a ribbon item. + */ + CommandExecuted: ASPxClientEvent>; + /** + * Fires on the client side after the active tab has been changed within a ribbon control. + */ + ActiveTabChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the ribbon minimization state is changed by end-user actions. + */ + MinimizationStateChanged: ASPxClientEvent>; + /** + * Occurs when the file tab is clicked. + */ + FileTabClicked: ASPxClientEvent>; + /** + * Fires on the client side after a dialog box launcher has been clicked. + */ + DialogBoxLauncherClicked: ASPxClientEvent>; + /** + * Fires after key tips are closed by pressing Esc. + */ + KeyTipsClosedOnEscape: ASPxClientEvent>; + /** + * Specifies whether the ribbon control is enabled. + * @param enabled true to enable the ribbon; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value indicating whether the ribbon is enabled. + */ + GetEnabled(): boolean; + /** + * Returns a tab specified by its index. + * @param index An integer value specifying the zero-based index of the tab object to retrieve. + */ + GetTab(index: number): ASPxClientRibbonTab; + /** + * Returns a tab specified by its name. + * @param name A string value specifying the name of the tab. + */ + GetTabByName(name: string): ASPxClientRibbonTab; + /** + * Returns the number of tabs in the ribbon Tabs collection. + */ + GetTabCount(): number; + /** + * Returns the active tab within the ribbon control. + */ + GetActiveTab(): ASPxClientRibbonTab; + /** + * Makes the specified tab active in the ribbon control on the client side. + * @param tab A ASPxClientRibbonTab object specifying the tab selection. + */ + SetActiveTab(tab: ASPxClientRibbonTab): void; + /** + * Makes a tab active within the ribbon control, specifying the tab's index. + * @param index An integer value specifying the index of the tab to select. + */ + SetActiveTabIndex(index: number): void; + /** + * Returns a ribbon item specified by its name. + * @param name A string value specifying the name of the item. + */ + GetItemByName(name: string): ASPxClientRibbonItem; + /** + * Returns a value of item with the specified name. + * @param name A string value specifying the name of the item. + */ + GetItemValueByName(name: string): Object; + /** + * Sets the value of the item with the specified name. + * @param name A string value specifying the name of the item. + * @param value An object that is the new item value. + */ + SetItemValueByName(name: string, value: Object): void; + /** + * Specifies whether the ribbon is minimized. + * @param minimized true to set the ribbon state to minimized; false to set the ribbon state to normal. + */ + SetMinimized(minimized: boolean): void; + /** + * Gets a value specifying whether the ribbon is minimized. + */ + GetMinimized(): boolean; + /** + * Specifies the visibility of a context tab category specified by its name. + * @param categoryName A Name property value of the required category. + * @param visible true to make a category visible; false to make it hidden. + */ + SetContextTabCategoryVisible(categoryName: string, visible: boolean): void; + /** + * Shows ribbon key tips. + */ + ShowKeyTips(): void; +} +/** + * A client-side equivalent of the ribbon's RibbonTab object. + */ +interface ASPxClientRibbonTab { + /** + * Gets the client ribbon object to which the current tab belongs. + * Value: An object to which the tab belongs. + */ + ribbon: ASPxClientRibbon; + /** + * Gets or sets the tab's index within the collection. + * Value: An integer value that is the zero-based index of the tab within the collection. + */ + index: number; + /** + * Gets the name of the current ribbon tab. + * Value: A string value that is the tab's name. + */ + name: string; + /** + * Returns the text displayed in the tab. + */ + GetText(): string; + /** + * Sets a value specifying whether the tab is enabled. + * @param enabled true to enable the tab; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value indicating whether a ribbon tab is enabled. + */ + GetEnabled(): boolean; + /** + * Returns a value specifying whether a ribbon tab is displayed. + */ + GetVisible(): boolean; +} +/** + * A client-side equivalent of the ribbon's RibbonGroup object. + */ +interface ASPxClientRibbonGroup { + /** + * Gets the client ribbon object to which the current group belongs. + * Value: An object to which the group belongs. + */ + ribbon: ASPxClientRibbon; + /** + * Gets the client tab object to which the current group belongs. + * Value: An object to which the group belongs. + */ + tab: ASPxClientRibbonTab; + /** + * Gets or sets the group's index within the collection. + * Value: An integer value that is the zero-based index of the group within the collection. + */ + index: number; + /** + * Gets the name of the current ribbon group. + * Value: A string value that is the group's name. + */ + name: string; + /** + * Returns a value specifying whether a ribbon group is displayed. + */ + GetVisible(): boolean; +} +/** + * A client-side equivalent of the ribbon's RibbonItemBase object. + */ +interface ASPxClientRibbonItem { + /** + * Gets the client group object to which the current item belongs. + * Value: An object to which the item belongs. + */ + group: ASPxClientRibbonGroup; + /** + * Gets or sets the item's index within the collection. + * Value: An integer value that is the zero-based index of the item within the collection. + */ + index: number; + /** + * Gets the name of the current ribbon item. + * Value: A string value that is the item's name. + */ + name: string; + /** + * Gets the client ribbon object to which the current item belongs. + * Value: An object to which the item belongs. + */ + ribbon: ASPxClientRibbon; + /** + * Returns a value indicating whether a ribbon item is enabled. + */ + GetEnabled(): boolean; + /** + * Sets a value specifying whether the item is enabled. + * @param enabled true to enable the item; false to disable it. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns the item value. + */ + GetValue(): Object; + /** + * Sets the item value. + * @param value An that specifies the item value. + */ + SetValue(value: Object): void; + /** + * Returns a value specifying whether a ribbon item is displayed. + */ + GetVisible(): boolean; +} +/** + * A method that will handle the CommandExecuted event. + */ +interface ASPxClientRibbonCommandExecutedEventHandler { + /** + * A method that will handle the CommandExecuted event. + * @param source The event source. Identifies the ASPxRibbon control that raised the event. + * @param e An ASPxClientRibbonCommandExecutedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRibbonCommandExecutedEventArgs): void; +} +/** + * Provides data for the CommandExecuted event. + */ +interface ASPxClientRibbonCommandExecutedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets an item object related to the event. + * Value: An object, manipulations on which forced the event to be raised. + */ + item: ASPxClientRibbonItem; + /** + * Gets an optional parameter that complements the processed command. + * Value: A string value containing additional information about the processed command. + */ + parameter: string; +} +/** + * A method that will handle the ActiveTabChanged event. + */ +interface ASPxClientRibbonTabEventHandler { + /** + * A method that will handle the ActiveTabChanged event. + * @param source The event source. Identifies the ASPxRibbon control that raised the event. + * @param e A ASPxClientRibbonTabEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRibbonTabEventArgs): void; +} +/** + * Provides data for the ActiveTabChanged event. + */ +interface ASPxClientRibbonTabEventArgs extends ASPxClientEventArgs { + /** + * Gets the tab object related to the event. + * Value: An object that is the tab, manipulations on which forced the ribbon control to raise the event. + */ + tab: ASPxClientRibbonTab; +} +/** + * A method that will handle the MinimizationStateChanged event. + */ +interface ASPxClientRibbonMinimizationStateEventHandler { + /** + * A method that will handle the MinimizationStateChanged event. + * @param source The event source. Identifies the ASPxRibbon control that raised the event. + * @param e An ASPxClientRibbonMinimizationStateEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRibbonMinimizationStateEventArgs): void; +} +/** + * Provides data for the MinimizationStateChanged event. + */ +interface ASPxClientRibbonMinimizationStateEventArgs extends ASPxClientEventArgs { + /** + * Returns the value indicating the new ribbon state. + * Value: The integer value indicating the ribbon minimization state. + */ + ribbonState: number; +} +/** + * A method that will handle the DialogBoxLauncherClicked event. + */ +interface ASPxClientRibbonDialogBoxLauncherClickedEventHandler { + /** + * A method that will handle the DialogBoxLauncherClicked event. + * @param source The event source. This parameter identifies the ribbon object which raised the event. + * @param e An ASPxClientRibbonDialogBoxLauncherClickedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientRibbonDialogBoxLauncherClickedEventArgs): void; +} +/** + * Provides data for the DialogBoxLauncherClicked event. + */ +interface ASPxClientRibbonDialogBoxLauncherClickedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the client group object to which the clicked dialog box launcher belongs. + * Value: An object to which the dialog box launcher belongs. + */ + group: ASPxClientRibbonGroup; +} +/** + * Represents a client-side equivalent of the ASPxRoundPanel control. + */ +interface ASPxClientRoundPanel extends ASPxClientPanelBase { + /** + * Fires on the client side after a panel has been expanded or collapsed via end-user interactions, i.e., by clicking a panel header or collapse button. + */ + CollapsedChanged: ASPxClientEvent>; + /** + * Fires on the client side before a panel is expanded or collapsed by end-user interactions, i.e., by clicking a panel header or collapse button. + */ + CollapsedChanging: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientRoundPanel. + */ + CallbackError: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side ContentCallback event, passing it the specified argument. + * @param parameter A string value that is any information that needs to be sent to the server-side ContentCallback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side ContentCallback event, passing it the specified argument. + * @param parameter A string value that is any information that needs to be sent to the server-side ContentCallback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; + /** + * Returns the text displayed within the panel's header. + */ + GetHeaderText(): string; + /** + * Specifies the text displayed in the panel's header. + * @param text A string value that specifies the panel header's text. + */ + SetHeaderText(text: string): void; + /** + * Returns a value indicating whether the panel is collapsed. + */ + GetCollapsed(): boolean; + /** + * Sets a value indicating whether the panel is collapsed. + * @param collapsed true, to collapse the panel; otherwise, false. + */ + SetCollapsed(collapsed: boolean): void; +} +/** + * Represents a client-side equivalent of the ASPxSplitter object. + */ +interface ASPxClientSplitter extends ASPxClientControl { + /** + * Fires before a pane is resized. + */ + PaneResizing: ASPxClientEvent>; + /** + * Fires after a pane has been resized. + */ + PaneResized: ASPxClientEvent>; + /** + * Fires before a pane is collapsed. + */ + PaneCollapsing: ASPxClientEvent>; + /** + * Fires after a pane has been collapsed. + */ + PaneCollapsed: ASPxClientEvent>; + /** + * Fires before a pane is expanded. + */ + PaneExpanding: ASPxClientEvent>; + /** + * Fires after a pane has been expanded. + */ + PaneExpanded: ASPxClientEvent>; + /** + * Occurs when a pane resize operation has been completed. + */ + PaneResizeCompleted: ASPxClientEvent>; + /** + * Fires after a specific web page has been loaded into a pane. + */ + PaneContentUrlLoaded: ASPxClientEvent>; + /** + * Returns the number of panes at the root level of a splitter. + */ + GetPaneCount(): number; + /** + * Returns the splitter's root pane specified by its index within the Panes collection. + * @param index An integer value specifying the zero-based index of the root pane to be retrieved. + */ + GetPane(index: number): ASPxClientSplitterPane; + /** + * Returns a pane specified by its name. + * @param name A string value specifying the name of the pane. + */ + GetPaneByName(name: string): ASPxClientSplitterPane; + /** + * Specifies whether the control's panes can be resized by end-users on the client side. + * @param allowResize true if pane resizing is allowed; otherwise, false. + */ + SetAllowResize(allowResize: boolean): void; + /** + * Returns a string value that represents the client state of splitter panes. + */ + GetLayoutData(): string; +} +/** + * Represents a client-side equivalent of the splitter's SplitterPane object. + */ +interface ASPxClientSplitterPane { + /** + * Gets the index of the current pane within the pane collection to which it belongs. + * Value: An integer value representing the zero-based index of the current pane within the SplitterPaneCollection collection. + */ + index: number; + /** + * Gets the name that uniquely identifies the current splitter pane. + * Value: A string value that represents the value assigned to the pane's Name property. + */ + name: string; + /** + * Returns a client splitter object that contains the current pane. + */ + GetSplitter(): ASPxClientSplitter; + /** + * Returns the immediate parent of the current pane. + */ + GetParentPane(): ASPxClientSplitterPane; + /** + * Returns the previous sibling pane of the current pane. + */ + GetPrevPane(): ASPxClientSplitterPane; + /** + * Returns the next sibling pane of the current pane. + */ + GetNextPane(): ASPxClientSplitterPane; + /** + * Determines whether the current pane is the first pane within the SplitterPaneCollection. + */ + IsFirstPane(): boolean; + /** + * Determines whether the current pane is the last pane within the SplitterPaneCollection. + */ + IsLastPane(): boolean; + /** + * Returns a value that indicates the orientation in which the current pane and its sibling panes are stacked. + */ + IsVertical(): boolean; + /** + * Returns the number of the current pane's immediate child panes. + */ + GetPaneCount(): number; + /** + * Returns the current pane's immediate child pane specified by its index. + * @param index An integer value specifying the zero-based index of the child pane to be retrieved. + */ + GetPane(index: number): ASPxClientSplitterPane; + /** + * Returns the current pane's child pane specified by its name. + * @param name A string value specifying the name of the pane. + */ + GetPaneByName(name: string): ASPxClientSplitterPane; + /** + * Gets the width of the pane's content area. + */ + GetClientWidth(): number; + /** + * Gets the height of the pane's content area. + */ + GetClientHeight(): number; + /** + * Collapses the current pane and occupies its space by maximizing the specified pane. + * @param maximizedPane A ASPxClientSplitterPane object specifying the pane to be maximized to occupy the freed space. + */ + Collapse(maximizedPane: ASPxClientSplitterPane): boolean; + /** + * Collapses the current pane in a forward direction and occupies its space by maximizing the previous adjacent pane. + */ + CollapseForward(): boolean; + /** + * Collapses the current pane in a backward direction, and occupies its space by maximizing the next adjacent pane. + */ + CollapseBackward(): boolean; + /** + * Expands the current pane object on the client side. + */ + Expand(): boolean; + /** + * Returns whether the pane is collapsed. + */ + IsCollapsed(): boolean; + /** + * Returns whether the pane's content is loaded from an external web page. + */ + IsContentUrlPane(): boolean; + /** + * Gets the URL of a web page displayed as a pane's content. + */ + GetContentUrl(): string; + /** + * Sets the URL to point to a web page that should be loaded into, and displayed within the current pane. + * @param url A string value specifying the URL to a web page displayed within the pane. + */ + SetContentUrl(url: string): void; + /** + * Sets the URL to point to a web page that should be loaded into, and displayed within the current pane, but should not be cached by a client browser. + * @param url A string value specifying the URL to a web page displayed within the pane. + * @param preventBrowserCaching true to prevent the browser to cache the loaded content; false to allow browser caching. + */ + SetContentUrl(url: string, preventBrowserCaching: boolean): void; + /** + * Refreshes the content of the web page displayed within the current pane. + */ + RefreshContentUrl(): void; + /** + * Returns an iframe object containing a web page specified via the pane's SetContentUrl client method). + */ + GetContentIFrame(): Object; + /** + * Specifies whether the current pane can be resized by end-users on the client side. + * @param allowResize true if pane resizing is allowed; otherwise, false. + */ + SetAllowResize(allowResize: boolean): void; + /** + * Forces the client PaneResized event to be generated. + */ + RaiseResizedEvent(): void; + /** + * Returns an HTML element representing a splitter pane object. + */ + GetElement(): Object; + /** + * Specifies the splitter pane's size in pixels. + * @param size An integer value that specifies the splitter pane's size. + */ + SetSize(size: number): void; + /** + * Specifies the splitter pane's size, in pixels or percents. + * @param size A string value that specifies the splitter pane's size, in pixels or percents. + */ + SetSize(size: string): void; + /** + * Returns the splitter pane's size, in pixels or percents. + */ + GetSize(): string; + /** + * Returns the distance between the top edge of the pane content and the topmost portion of the content currently visible in the pane. + */ + GetScrollTop(): number; + /** + * Specifies the distance between the top edge of the pane content and the topmost portion of the content currently visible in the pane. + * @param value An integer value that is the distance (in pixels). + */ + SetScrollTop(value: number): void; + /** + * Returns the distance between the left edge of the pane content and the leftmost portion of the content currently visible in the pane. + */ + GetScrollLeft(): number; + /** + * Specifies the distance between the left edge of the pane content and the leftmost portion of the content currently visible in the pane. + * @param value An integer value that is the distance (in pixels). + */ + SetScrollLeft(value: number): void; +} +/** + * A method that will handle the splitter's client events concerning manipulations with a pane. + */ +interface ASPxClientSplitterPaneEventHandler { + /** + * A method that will handle the splitter's client events concerning pane manipulations. + * @param source An object representing the event's source. Identifies the splitter object that raised the event. + * @param e An ASPxClientSplitterPaneEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSplitterPaneEventArgs): void; +} +/** + * A method that will handle the splitter's client events concerning manipulations with a pane. + */ +interface ASPxClientSplitterPaneEventArgs extends ASPxClientEventArgs { + /** + * Gets the pane object related to the event. + * Value: An ASPxClientSplitterPane object, manipulations on which forced the event to be raised. + */ + pane: ASPxClientSplitterPane; +} +/** + * A method that will handle a splitter control's cancelable client events concerning manipulations with a pane. + */ +interface ASPxClientSplitterPaneCancelEventHandler { + /** + * A method that will handle a splitter control's cancelable client events concerning pane manipulations. + * @param source An object representing the event's source. Identifies the splitter control object that raised the event. + * @param e An ASPxClientSplitterPaneCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientSplitterPaneCancelEventArgs): void; +} +/** + * Provides data for a splitter control's cancelable client events concerning manipulations with a pane. + */ +interface ASPxClientSplitterPaneCancelEventArgs extends ASPxClientSplitterPaneEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * Represents a base for the ASPxClientPageControl objects. + */ +interface ASPxClientTabControlBase extends ASPxClientControl { + /** + * Fires when a tab is clicked. + */ + TabClick: ASPxClientEvent>; + /** + * Fires on the client side after the active tab has been changed within a tab control. + */ + ActiveTabChanged: ASPxClientEvent>; + /** + * Fires on the client side before the active tab is changed within a tab control. + */ + ActiveTabChanging: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by a client tab control. + */ + CallbackError: ASPxClientEvent>; + /** + * Modifies a tab page's size in accordance with the content. + */ + AdjustSize(): void; + /** + * Returns the active tab within the tab control. + */ + GetActiveTab(): ASPxClientTab; + /** + * Makes the specified tab active within the tab control on the client side. + * @param tab An ASPxClientTab object specifying the tab to select. + */ + SetActiveTab(tab: ASPxClientTab): void; + /** + * Returns the index of the active tab within the tab control. + */ + GetActiveTabIndex(): number; + /** + * Makes a tab active within the tab control, specifying the tab's index. + * @param index An integer value specifying the index of the tab to select. + */ + SetActiveTabIndex(index: number): void; + /** + * Returns the number of tabs in the ASPxTabControl. + */ + GetTabCount(): number; + /** + * Returns a tab specified by its index. + * @param index An integer value specifying the zero-based index of the tab object to retrieve. + */ + GetTab(index: number): ASPxClientTab; + /** + * Returns a tab specified by its name. + * @param name A string value specifying the name of the tab. + */ + GetTabByName(name: string): ASPxClientTab; +} +/** + * Represents a client-side equivalent of the ASPxTabControl object. + */ +interface ASPxClientTabControl extends ASPxClientTabControlBase { +} +/** + * Represents a client-side equivalent of the ASPxPageControl object. + */ +interface ASPxClientPageControl extends ASPxClientTabControlBase { + /** + * Returns the HTML code that represents the contents of the specified page within the page control. + * @param tab An ASPxClientTab object that specifies the required page. + */ + GetTabContentHTML(tab: ASPxClientTab): string; + /** + * Defines the HTML content for a specific tab page within the page control. + * @param tab An ASPxClientTab object that specifies the required tab page. + * @param html A string value that represents the HTML code defining the content of the specified page. + */ + SetTabContentHTML(tab: ASPxClientTab, html: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + */ + PerformCallback(parameter: string): void; + /** + * Sends a callback to the server and generates the server-side Callback event, passing it the specified argument. + * @param parameter A string value that represents any information that needs to be sent to the server-side Callback event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(parameter: string, onSuccess: (arg1: string) => void): void; +} +/** + * Represents a client-side equivalent of a tab control's TabPage object. + */ +interface ASPxClientTab { + /** + * Gets the tab control to which the current tab belongs. + * Value: An ASPxClientTabControlBase object representing the control to which the tab belongs. + */ + tabControl: ASPxClientTabControlBase; + /** + * Gets the index of the current tab (tabbed page) within the control's collection of tabs (tabbed pages). + * Value: An integer value representing the zero-based index of the current tab (tabbed page) within the TabPages) collection of the control to which the tab belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the current tab. + * Value: A string value that represents the value assigned to the tab's Name property. + */ + name: string; + /** + * Returns a value specifying whether a tab is enabled. + */ + GetEnabled(): boolean; + /** + * Specifies whether the tab is enabled. + * @param value true to enable the tab; otherwise, false. + */ + SetEnabled(value: boolean): void; + /** + * Returns the URL pointing to the image displayed within the tab. + */ + GetImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the tab. + * @param value A string value that is the URL to the image displayed within the tab. + */ + SetImageUrl(value: string): void; + /** + * Returns the URL pointing to the image displayed within the active tab. + */ + GetActiveImageUrl(): string; + /** + * Specifies the URL which points to the image displayed within the active tab. + * @param value A string value that is the URL to the image displayed within the active tab. + */ + SetActiveImageUrl(value: string): void; + /** + * Gets an URL which defines the navigation location for the tab. + */ + GetNavigateUrl(): string; + /** + * Specifies a URL which defines the navigation location for the tab. + * @param value A string value which is a URL to where the client web browser will navigate when the tab is clicked. + */ + SetNavigateUrl(value: string): void; + /** + * Returns text displayed within the tab. + */ + GetText(): string; + /** + * Specifies the text displayed within the tab. + * @param value A string value that is the text displayed within the tab. + */ + SetText(value: string): void; + /** + * Returns a value specifying whether a tab is displayed. + */ + GetVisible(): boolean; + /** + * Specifies whether the tab is visible. + * @param value true is the tab is visible; otherwise, false. + */ + SetVisible(value: boolean): void; +} +/** + * A method that will handle a tab control's client events concerning manipulations with a tab. + */ +interface ASPxClientTabControlTabEventHandler { + /** + * A method that will handle a tab control's client events concerning manipulations with a tab. + * @param source An object representing the event's source. Identifies the tab control object that raised the event. + * @param e An ASPxClientTabControlTabEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTabControlTabEventArgs): void; +} +/** + * Provides data for events which concern manipulations on tabs. + */ +interface ASPxClientTabControlTabEventArgs extends ASPxClientEventArgs { + /** + * Gets the tab object related to the event. + * Value: An ASPxClientTab object, manipulations on which forced the event to be raised. + */ + tab: ASPxClientTab; +} +/** + * A method that will handle a tab control's cancelable client events concerning manipulations with a tab. + */ +interface ASPxClientTabControlTabCancelEventHandler { + /** + * A method that will handle a tab control's cancelable client events concerning manipulations with a tab. + * @param source An object representing the event's source. Identifies the tab control object that raised the event. + * @param e An ASPxClientTabControlTabCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTabControlTabCancelEventArgs): void; +} +/** + * Provides data for cancellable events which concern manipulations on tabs. + */ +interface ASPxClientTabControlTabCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets the tab object related to the event. + * Value: An ASPxClientTab object representing the tab manipulations on which forced the tab control to raise the event. + */ + tab: ASPxClientTab; + /** + * Gets or sets a value specifying whether a callback should be sent to the server to reload the content of the page being activated. + * Value: true to reload the page's content; otherwise, false. + */ + reloadContentOnCallback: boolean; +} +/** + * A method that will handle client events concerning clicks on the control's tabs. + */ +interface ASPxClientTabControlTabClickEventHandler { + /** + * A method that will handle client events concerning clicks on tabs. + * @param source The event source. This parameter identifies the tab control object which raised the event. + * @param e An ASPxClientTabControlTabClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTabControlTabClickEventArgs): void; +} +/** + * Provides data for events which concern clicking on the control's tabs. + */ +interface ASPxClientTabControlTabClickEventArgs extends ASPxClientTabControlTabCancelEventArgs { + /** + * Gets the HTML object that contains the processed tab. + * Value: An object representing a container for the tab related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Represents a client-side equivalent of the ASPxTimer object. + */ +interface ASPxClientTimer extends ASPxClientControl { + /** + * Fires on the client side when the specified timer interval has elapsed, and the timer is enabled. + */ + Tick: ASPxClientEvent>; + /** + * Returns a value indicating whether the timer is enabled. + */ + GetEnabled(): boolean; + /** + * Enables the timer. + * @param enabled true to turn the timer on; false, to turn the timer off. + */ + SetEnabled(enabled: boolean): void; + /** + * Gets the time before the Tick event. + */ + GetInterval(): number; + /** + * Specifies the time before the Tick event. + * @param interval An integer value that specifies the number of milliseconds before the Tick event is raised relative to the last occurrence of the Tick event. The value cannot be less than one. + */ + SetInterval(interval: number): void; +} +/** + * Represents a client-side equivalent of the ASPxTitleIndex object. + */ +interface ASPxClientTitleIndex extends ASPxClientControl { + /** + * Fires after an item has been clicked. + */ + ItemClick: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientTitleIndex. + */ + CallbackError: ASPxClientEvent>; +} +/** + * A method that will handle client events concerning manipulations with an item. + */ +interface ASPxClientTitleIndexItemEventHandler { + /** + * A method that will handle the title index control's client events concerning manipulations with an item. + * @param source An object representing the event's source. Identifies the title index control object that raised the event. + * @param e An ASPxClientTitleIndexItemEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTitleIndexItemEventArgs): void; +} +/** + * Provides data for events which concern manipulations on the control's items. + */ +interface ASPxClientTitleIndexItemEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the name that uniquely identifies the processed item. + * Value: A string value that represents the value assigned to the processed item's Name property. + */ + name: Object; + /** + * Gets the HTML object that contains the processed item. + * Value: An object representing a container for the item related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * Represents a client-side equivalent of the ASPxTreeView object. + */ +interface ASPxClientTreeView extends ASPxClientControl { + /** + * Fires on the client side after a node has been clicked. + */ + NodeClick: ASPxClientEvent>; + /** + * Fires on the client side after a node's expansion state has been changed by end-user interaction. + */ + ExpandedChanged: ASPxClientEvent>; + /** + * Fires on the client side before the expansion state of a node is changed via end-user interaction. + */ + ExpandedChanging: ASPxClientEvent>; + /** + * Occurs on the client side when the node's checked state is changed by clicking on a check box. + */ + CheckedChanged: ASPxClientEvent>; + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientTreeView. + */ + CallbackError: ASPxClientEvent>; + /** + * Returns a node specified by its index within the ASPxTreeView's node collection. + * @param index An integer value specifying the zero-based index of the node to be retrieved. + */ + GetNode(index: number): ASPxClientTreeViewNode; + /** + * Returns a node specified by its name. + * @param name A string value specifying the name of the node. + */ + GetNodeByName(name: string): ASPxClientTreeViewNode; + /** + * Returns a node specified by its text. + * @param text A string value specifying the text content of the node. + */ + GetNodeByText(text: string): ASPxClientTreeViewNode; + /** + * Returns the number of nodes at the ASPxTreeView's zero level. + */ + GetNodeCount(): number; + /** + * Returns the selected node within the ASPxTreeView control on the client side. + */ + GetSelectedNode(): ASPxClientTreeViewNode; + /** + * Selects the specified node within the ASPxTreeView control on the client side. + * @param node An ASPxClientTreeViewNode object specifying the node to select. + */ + SetSelectedNode(node: ASPxClientTreeViewNode): void; + /** + * Gets the root node of the ASPxTreeView object. + */ + GetRootNode(): ASPxClientTreeViewNode; + /** + * Collapses all nodes in the ASPxTreeView on the client side. + */ + CollapseAll(): void; + /** + * Expands all nodes in the ASPxTreeView on the client side. + */ + ExpandAll(): void; +} +/** + * Represents a client-side equivalent of the ASPxTreeView's TreeViewNode object. + */ +interface ASPxClientTreeViewNode { + /** + * Gets the client representation of the ASPxTreeView control to which the current node belongs. + * Value: An ASPxClientTreeView object representing the control to which the node belongs. + */ + treeView: ASPxClientTreeView; + /** + * Gets the current node's parent node. + * Value: An ASPxClientTreeViewNode object representing the node's immediate parent. + */ + parent: ASPxClientTreeViewNode; + /** + * Gets the node's index within the parent's collection of nodes. + * Value: An integer value representing the node's zero-based index within the Nodes collection of the node to which the node belongs. + */ + index: number; + /** + * Gets the name that uniquely identifies the node. + * Value: A string value that represents the value assigned to the node's Name property. + */ + name: string; + /** + * Returns the number of the current node's immediate child nodes. + */ + GetNodeCount(): number; + /** + * Returns the current node's immediate child node specified by its index. + * @param index An integer value specifying the zero-based index of the node to be retrieved. + */ + GetNode(index: number): ASPxClientTreeViewNode; + /** + * Returns the current node's child node specified by its name. + * @param name A string value specifying the name of the node. + */ + GetNodeByName(name: string): ASPxClientTreeViewNode; + /** + * Returns the current node's child node specified by its text. + * @param text A string value specifying the text content of the node. + */ + GetNodeByText(text: string): ASPxClientTreeViewNode; + /** + * Returns a value indicating whether the node is expanded. + */ + GetExpanded(): boolean; + /** + * Sets a value which specifies the node's expansion state. + * @param value true if the node is expanded; otherwise, false. + */ + SetExpanded(value: boolean): void; + /** + * Returns a value indicating whether the node is checked. + */ + GetChecked(): boolean; + /** + * Sets a value indicating whether the node is checked. + * @param value true if the node is checked; otherwise, false. + */ + SetChecked(value: boolean): void; + /** + * Returns a value which specifies the node's check state. + */ + GetCheckState(): string; + /** + * Returns a value specifying whether the node is enabled. + */ + GetEnabled(): boolean; + /** + * Sets a value specifying whether the node is enabled. + * @param value true to make the node enabled; false to disable it. + */ + SetEnabled(value: boolean): void; + /** + * Returns the URL pointing to the image displayed within the node. + */ + GetImageUrl(): string; + /** + * Sets the URL which points to the image displayed within the node. + * @param value A string value specifying the URL to the image displayed within the node. + */ + SetImageUrl(value: string): void; + /** + * Gets an URL which defines the navigation location for the node's hyperlink. + */ + GetNavigateUrl(): string; + /** + * Specifies a URL which defines the node's navigate URL. + * @param value A string value which specifies a URL to where the client web browser will navigate when the node is clicked. + */ + SetNavigateUrl(value: string): void; + /** + * Gets the text, displayed within the node. + */ + GetText(): string; + /** + * Specifies the text, displayed within the node. + * @param value A string value that represents the text displayed within the node. + */ + SetText(value: string): void; + /** + * Returns a value specifying whether a node is displayed. + */ + GetVisible(): boolean; + /** + * Specifies whether the node is visible. + * @param value true if the node is visible; otherwise, false. + */ + SetVisible(value: boolean): void; + /** + * Gets the HTML object that contains the current node. + */ + GetHtmlElement(): Object; +} +/** + * A method that will handle the client events concerned with node processing. + */ +interface ASPxClientTreeViewNodeProcessingModeEventHandler { + /** + * A method that will handle the client events concerned with node processing. + * @param source An object representing the event source. Identifies the ASPxClientTreeView control that raised the event. + * @param e An ASPxClientTreeViewNodeProcessingModeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeViewNodeProcessingModeEventArgs): void; +} +/** + * Provides data for the client events concerned with node processing, and that allow the event's processing to be passed to the server side. + */ +interface ASPxClientTreeViewNodeProcessingModeEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets a node object related to the event. + * Value: An ASPxClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: ASPxClientTreeViewNode; +} +/** + * A method that will handle the ASPxClientTreeView.ItemClick event. + */ +interface ASPxClientTreeViewNodeClickEventHandler { + /** + * A method that will handle the NodeClick event. + * @param source The ASPxClientTreeView control which fires the event. + * @param e An ASPxClientTreeViewNodeClickEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeViewNodeClickEventArgs): void; +} +/** + * Provides data for the NodeClick event. + */ +interface ASPxClientTreeViewNodeClickEventArgs extends ASPxClientTreeViewNodeProcessingModeEventArgs { + /** + * Gets the HTML object that contains the processed node. + * Value: An object representing a container for the node related to the event. + */ + htmlElement: Object; + /** + * Gets a DHTML event object that relates to the processed event. + * Value: An object that maintains DHTML event-specific information. + */ + htmlEvent: Object; +} +/** + * A method that will handle the ASPxTreeView control's client events concerning manipulations with a node. + */ +interface ASPxClientTreeViewNodeEventHandler { + /** + * A method that will handle the ASPxTreeView control's client events, concerning manipulations with a node. + * @param source An object representing the event's source. Identifies the ASPxClientTreeView control object that raised the event. + * @param e An ASPxClientTreeViewNodeEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeViewNodeEventArgs): void; +} +/** + * Provides data for the ExpandedChanged events. + */ +interface ASPxClientTreeViewNodeEventArgs extends ASPxClientEventArgs { + /** + * Gets a node object related to the event. + * Value: An ASPxClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: ASPxClientTreeViewNode; +} +/** + * A method that will handle the ASPxTreeView's cancelable client events, concerning manipulations with nodes. + */ +interface ASPxClientTreeViewNodeCancelEventHandler { + /** + * A method that will handle the ASPxTreeView's cancelable client events, concerning manipulations with nodes. + * @param source An object representing the event's source. Identifies the ASPxClientTreeView object that raised the event. + * @param e An ASPxClientTreeViewNodeCancelEventArgs object that contains event data. + */ + (source: S, e: ASPxClientTreeViewNodeCancelEventArgs): void; +} +/** + * Provides data for the ExpandedChanging event. + */ +interface ASPxClientTreeViewNodeCancelEventArgs extends ASPxClientProcessingModeCancelEventArgs { + /** + * Gets a node object related to the event. + * Value: An ASPxClientTreeViewNode object, manipulations on which forced the event to be raised. + */ + node: ASPxClientTreeViewNode; +} +/** + * Represents a client-side equivalent of the ASPxUploadControl control. + */ +interface ASPxClientUploadControl extends ASPxClientControl { + /** + * Occurs on the client after a file has been uploaded. + */ + FileUploadComplete: ASPxClientEvent>; + /** + * Occurs on the client after upload of all selected files has been completed. + */ + FilesUploadComplete: ASPxClientEvent>; + /** + * Occurs on the client side before upload of the specified files starts. + */ + FileUploadStart: ASPxClientEvent>; + /** + * Occurs on the client side before file upload is started. + */ + FilesUploadStart: ASPxClientEvent>; + /** + * Fires on the client side when the text within the control's edit box is changed while the control has focus. + */ + TextChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the progress bar indicator position is changed. + */ + UploadingProgressChanged: ASPxClientEvent>; + /** + * Occurs on the client side when the file input elements count is changed. + */ + FileInputCountChanged: ASPxClientEvent>; + /** + * Enables you to specify whether the selected file(s) are valid and provide an error text. + */ + ValidationErrorOccurred: ASPxClientEvent>; + /** + * Fires when the mouse enters a drop zone or an external drop zone element while dragging a file. + */ + DropZoneEnter: ASPxClientEvent>; + /** + * Fires when the mouse leaves a drop zone or an external drop zone element while dragging a file. + */ + DropZoneLeave: ASPxClientEvent>; + /** + * Specifies whether the upload control's Advanced mode is enabled. + */ + IsAdvancedModeEnabled(): boolean; + /** + * Initiates uploading of the specified file to the web server's memory. + */ + UploadFile(): void; + /** + * Adds a new file input element to the ASPxUploadControl. + */ + AddFileInput(): void; + /** + * Removes a file input element from the ASPxUploadControl. + * @param index An integer value that represents a file input element's index. + */ + RemoveFileInput(index: number): void; + /** + * Removes a file with the specified index from the selected file list. + * @param fileIndex An integer value that is the zero-based index of an item in the file list. + */ + RemoveFileFromSelection(fileIndex: number): void; + /** + * Removes the specified file from the list of files selected for uploading in the upload control. + * @param file An ASPxClientUploadControl object that is the file to be removed from the list of files. + */ + RemoveFileFromSelection(file: ASPxClientUploadControlFile): void; + /** + * Returns files selected for uploading within the specified file input. + * @param inputIndex An integer value that specifies the index of a file input. Default value is "0". + */ + GetSelectedFiles(inputIndex: number): ASPxClientUploadControlFile[]; + /** + * Gets the text displayed within the edit box of the specified file input element. + * @param index An integer value that specifies the required file input element's index. + */ + GetText(index: number): string; + /** + * Gets the number of file input elements contained within the ASPxUploadControl. + */ + GetFileInputCount(): number; + /** + * Specifies the count of the file input elements within the upload control. + * @param count An integer value that specifies the file input elements count. + */ + SetFileInputCount(count: number): void; + /** + * Specifies whether the upload control is enabled. + * @param enabled true, to enable the upload control; otherwise, false. + */ + SetEnabled(enabled: boolean): void; + /** + * Returns a value indicating whether the upload control is enabled. + */ + GetEnabled(): boolean; + /** + * Initiates uploading of the specified file(s) to the web server's memory. + */ + Upload(): void; + /** + * Cancels the initiated file uploading process. + */ + Cancel(): void; + /** + * Clears the file selection in the upload control. + */ + ClearText(): void; + /** + * Sets the text to be displayed within the add button. + * @param text A string value specifying the text to be displayed within the button. + */ + SetAddButtonText(text: string): void; + /** + * Sets the text to be displayed within the upload button. + * @param text A string value specifying the text to be displayed within the button. + */ + SetUploadButtonText(text: string): void; + /** + * Returns the text displayed within the add button. + */ + GetAddButtonText(): string; + /** + * Returns the text displayed within the upload button. + */ + GetUploadButtonText(): string; + /** + * Sets the ID of a web control or HTML element (or a list of IDs), a click on which invokes file upload dialog. + * @param ids A string value specifying the ID or a list of IDs separated by the semicolon (;). + */ + SetDialogTriggerID(ids: string): void; +} +/** + * A method that will handle the client FilesUploadStart event. + */ +interface ASPxClientUploadControlFilesUploadStartEventHandler { + /** + * A method that will handle the FilesUploadStart event. + * @param source The event source. Identifies the ASPxUploadControl control that raised the event. + * @param e A ASPxClientUploadControlFilesUploadStartEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlFilesUploadStartEventArgs): void; +} +/** + * Provides data for the FilesUploadStart event. + */ +interface ASPxClientUploadControlFilesUploadStartEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value indicating whether the action which raised the event should be canceled. + * Value: true if the action that raised the event should be canceled; otherwise, false. + */ + cancel: boolean; +} +/** + * A method that handles the FileUploadComplete client event. + */ +interface ASPxClientUploadControlFileUploadCompleteEventHandler { + /** + * A method that will handle the corresponding client event. + * @param source The event source. This parameter identifies the upload control which raised the event. + * @param e An ASPxClientUploadControlFileUploadCompleteEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlFileUploadCompleteEventArgs): void; +} +/** + * Provides data for the FileUploadComplete event. + */ +interface ASPxClientUploadControlFileUploadCompleteEventArgs extends ASPxClientEventArgs { + /** + * Gets the index of a file input element within the ASPxUploadControl. + * Value: An integer value that specifies the file input element's index. + */ + inputIndex: number; + /** + * Gets or sets a value indicating whether the uploaded file passes validation. + * Value: true if the file is valid; otherwise, false. + */ + isValid: boolean; + /** + * Gets the error text to be displayed within the ASPxUploadControl's error frame. + * Value: A string value that represents the error text. + */ + errorText: string; + /** + * Gets a string that contains specific information (if any) passed from the server side for further client processing. + * Value: A string value representing callback data passed from the server. + */ + callbackData: string; +} +/** + * A method that will handle the FilesUploadComplete client event. + */ +interface ASPxClientUploadControlFilesUploadCompleteEventHandler { + /** + * A method that will handle the client FilesUploadComplete event. + * @param source The event source. This parameter identifies the upload control which raised the event. + * @param e A object that contains event data. + */ + (source: S, e: ASPxClientUploadControlFilesUploadCompleteEventArgs): void; +} +/** + * Provides data for the FilesUploadComplete client event, which enables you to perform specific actions after all selected files have been uploaded. + */ +interface ASPxClientUploadControlFilesUploadCompleteEventArgs extends ASPxClientEventArgs { + /** + * Gets the error text to be displayed within the upload control's error frame. + * Value: A string value that is the error text. + */ + errorText: string; + /** + * Gets a string that contains specific information (if any) passed from the server side for further client processing. + * Value: A string value that is the callback data passed from the server. + */ + callbackData: string; +} +/** + * A method that will handle the TextChanged client event. + */ +interface ASPxClientUploadControlTextChangedEventHandler { + /** + * A method that will handle the TextChanged client event. + * @param source The event source. This parameter identifies the upload control which raised the event. + * @param e An ASPxClientUploadControlTextChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlTextChangedEventArgs): void; +} +/** + * Provides data for the TextChanged client event that allows you to respond to an end-user changing an edit box's text. + */ +interface ASPxClientUploadControlTextChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the index of a file input element within the ASPxUploadControl. + * Value: An integer value that specifies the file input element's index. + */ + inputIndex: number; +} +/** + * A method that will handle the ASPxUploadControl's client event, concerned with changes in upload progress. + */ +interface ASPxClientUploadControlUploadingProgressChangedEventHandler { + /** + * A method that will handle the ASPxUploadControl's client event concerning the uploading process being changed. + * @param source An object representing the event's source. Identifies the ASPxUploadControl object that raised the event. + * @param e An ASPxClientUploadControlUploadingProgressChangedEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlUploadingProgressChangedEventArgs): void; +} +/** + * Provides data for the UploadingProgressChanged event. + */ +interface ASPxClientUploadControlUploadingProgressChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets the number of the files selected for upload. + * Value: An integer value that represents the total number of selected files. + */ + fileCount: number; + /** + * Gets the name of the file being currently uploaded. + * Value: A string value that represents the file name. + */ + currentFileName: string; + /** + * Gets the content length of the currently uploaded file. + * Value: An integer value specifying the content length. + */ + currentFileContentLength: number; + /** + * Gets the content length of the current file already uploaded to the server. + * Value: An integer value that is the content length. + */ + currentFileUploadedContentLength: number; + /** + * Gets the position of the current file upload progress. + * Value: An value specifying the upload progress position. + */ + currentFileProgress: number; + /** + * Gets the content length of the files selected for upload. + * Value: An integer value specifying the total content length of the selected files. + */ + totalContentLength: number; + /** + * Gets the content length of the files already uploaded to the server. + * Value: An integer value that represents the content length. + */ + uploadedContentLength: number; + /** + * Gets the current position of total upload progress. + * Value: An value specifying the total upload progress position. + */ + progress: number; +} +/** + * A method that will handle the ValidationErrorOccurred client event. + */ +interface ASPxClientUploadControlValidationErrorOccurredEventHandler { + /** + * A method that will handle the ValidationErrorOccurred event. + * @param source The event source. + * @param e An ASPxClientUploadControlValidationErrorOccurredEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlValidationErrorOccurredEventArgs): void; +} +/** + * Provides data for the ValidationErrorOccurred event. + */ +interface ASPxClientUploadControlValidationErrorOccurredEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets the error text. + * Value: A string value that represents the error text. + */ + errorText: string; + /** + * Gets or sets a value specifying whether an alert message is displayed when the ValidationErrorOccurred event fires. + * Value: true, to display an alert message; otherwise, false. + */ + showAlert: boolean; + /** + * Gets the validation settings for the selected files. + * Value: An ASPxClientUploadControlValidationSettings object that provides validation settings. + */ + validationSettings: ASPxClientUploadControlValidationSettings; + /** + * Returns an array of invalid files. + * Value: An array of the ASPxClientUploadControlInvalidFileInfo objects. + */ + invalidFiles: ASPxClientUploadControlInvalidFileInfo[]; +} +/** + * Contains settings that relate to the ValidationErrorOccurred client event. + */ +interface ASPxClientUploadControlValidationSettings { + /** + * Gets the maximum file size. + * Value: An value that specifies the maximum file size, in bytes. + */ + maxFileSize: any; + /** + * Gets the maximum count of files that can be selected for uploading at once. + * Value: An integer value that specifies the maximum count of files. + */ + maxFileCount: number; + /** + * Gets the allowed file extensions. + * Value: An array of string values that contains file extensions that are allowed. + */ + allowedFileExtensions: string[]; + /** + * Gets which characters in a file name are not allowed. + * Value: An array of string values that contains characters that are not allowed. + */ + invalidFileNameCharacters: string[]; +} +/** + * Contains settings of the file that hasn't passed validation. + */ +interface ASPxClientUploadControlInvalidFileInfo { + /** + * Gets the name of the invalid file. + * Value: A string value that specifies the file name. + */ + fileName: string; + /** + * Gets the size of the invalid file. + * Value: An integer value that specifies the file size. + */ + fileSize: number; + /** + * Gets the error type. + * Value: An ASPxClientUploadControlValidationErrorTypeConsts object that provides possible types of errors. + */ + errorType: ASPxClientUploadControlValidationErrorTypeConsts; +} +/** + * Declares client constants containing codes of validation errors that can occur while selecting files for uploading. + */ +interface ASPxClientUploadControlValidationErrorTypeConsts { +} +/** + * Represents a client file that corresponds to a particular file selected for uploading in the upload control. + */ +interface ASPxClientUploadControlFile { + /** + * Gets the name of the file selected for uploading. + * Value: A string value that specifies the file's name. + */ + name: string; + /** + * Gets the size of the file selected for uploading. + * Value: An Int64 value specifying the file's size, in bytes. + */ + size: any; + /** + * Provides access to the file as a native Javascript object. + * Value: A JavaScript object that is the file selected for uploading. + */ + sourceFileObject: any; +} +/** + * A method that will handle the DropZoneEnter event. + */ +interface ASPxClientUploadControlDropZoneEnterEventHandler { + /** + * A method that will handle the DropZoneEnter event. + * @param source The event source. This parameter identifies the upload control object which raised the event. + * @param e An ASPxClientUploadControlDropZoneEnterEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlDropZoneEnterEventArgs): void; +} +/** + * Provides data for the DropZoneEnter event. + */ +interface ASPxClientUploadControlDropZoneEnterEventArgs extends ASPxClientEventArgs { + /** + * Gets a drop zone object related to the processed event. + * Value: An object that is a drop zone related to the processed event. + */ + dropZone: Object; +} +/** + * A method that will handle the DropZoneLeave event. + */ +interface ASPxClientUploadControlDropZoneLeaveEventHandler { + /** + * A method that will handle the DropZoneLeave event. + * @param source The event source. Identifies the upload control object that raised the event. + * @param e A ASPxClientUploadControlDropZoneLeaveEventArgs object that contains event data. + */ + (source: S, e: ASPxClientUploadControlDropZoneLeaveEventArgs): void; +} +/** + * Provides data for the DropZoneLeave event. + */ +interface ASPxClientUploadControlDropZoneLeaveEventArgs extends ASPxClientEventArgs { + /** + * Gets a drop zone object related to the processed event. + * Value: An object that is a drop zone related to the processed event. + */ + dropZone: Object; +} +/** + * The JavaScript equivalent of the ASPxChartDesigner class. + */ +interface ASPxClientChartDesigner extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientChartDesigner. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs when executing the Save command on the client. + */ + SaveCommandExecute: ASPxClientEvent>; + /** + * Enables you to customize the menu actions of a Client Chart Designer. + */ + CustomizeMenuActions: ASPxClientEvent>; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(arg: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; + /** + * Updates the localization settings of the ASPxClientChartDesigner properties. + * @param localization A dictionary containing the property names, along with their localized equivalents. + */ + UpdateLocalization(localization: { [key: string]: string; }): void; + /** + * Returns the model of the Client Chart Designer. + */ + GetDesignerModel(): Object; + /** + * For internal use. + */ + GetJsonChartModel(): string; +} +/** + * A method that will handle the SaveCommandExecute event. + */ +interface ASPxClientChartDesignerSaveCommandExecuteEventHandler { + /** + * Represents a method that will handle the SaveCommandExecute event. + * @param source The event source. This parameter identifies the ASPxChartDesigner which raised the event. + * @param e A ASPxClientChartDesignerSaveCommandExecuteEventArgs object which contains event data. + */ + (source: S, e: ASPxClientChartDesignerSaveCommandExecuteEventArgs): void; +} +/** + * Provides data for a chart control's SaveCommandExecute event. + */ +interface ASPxClientChartDesignerSaveCommandExecuteEventArgs extends ASPxClientEventArgs { + /** + * Gets or sets a value specifying whether an event has been handled. + * Value: true, if the event hasn't been handled by a control; otherwise, false. + */ + handled: boolean; +} +/** + * Represents a method that will handle the CustomizeMenuActions events. + */ +interface ASPxClientChartDesignerCustomizeMenuActionsEventHandler { + /** + * Represents a method that will handle the CustomizeMenuActions event. + * @param source The event source. This parameter identifies the ASPxChartDesigner which raised the event. + * @param e An ASPxClientChartDesignerCustomizeMenuActionsEventArgs object which contains event data. + */ + (source: S, e: ASPxClientChartDesignerCustomizeMenuActionsEventArgs): void; +} +/** + * An action of the Client Chart Designer's menu. + */ +interface ASPxClientChartDesignerMenuAction { + /** + * Provides access to the text for the command. + * Value: A String value. + */ + text: string; + /** + * Provides access to the CSS class of the command's glyph. + * Value: A String value. + */ + imageClassName: string; + /** + * Provides access to the action performed when the Client Chart Designer's button is clicked. + * Value: The specific action implementation. + */ + clickAction: Function; + /** + * Provides access to the value that specifies whether or not the command is disabled by default. + * Value: true, if the command is disabled by default; otherwise, false. + */ + disabled: boolean; + /** + * Provides access to the value that specifies whether or not the command is visible in the designer user interface. + * Value: true if the command is visible; otherwise false. + */ + visible: boolean; + /** + * Provides access to the keyboard shortcut used to invoke the command. + * Value: A String value. + */ + hotKey: string; + /** + * Provides access to the value that specifies whether or not the command has a visual separator. + * Value: true, if the command has a visual separator; otherwise, false. + */ + hasSeparator: string; + /** + * Provides access to the location of the displayed command. + * Value: A String value. + */ + container: string; +} +/** + * Provides data for a chart control's CustomizeMenuActions event on the client side. + */ +interface ASPxClientChartDesignerCustomizeMenuActionsEventArgs extends ASPxClientEventArgs { + /** + * Returns an array of the Client Chart Designer's menu actions. + * Value: An array of the ASPxClientChartDesignerMenuAction objects. + */ + actions: ASPxClientChartDesignerMenuAction[]; +} +/** + * A class which provides access to the entire hierarchy of chart elements on the client side. + */ +interface ASPxClientWebChartControl extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client side after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientWebChartControl. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when any chart element is hot-tracked. + */ + ObjectHotTracked: ASPxClientEvent>; + /** + * Occurs before crosshair items are drawn when the chart's contents are being drawn. + */ + CustomDrawCrosshair: ASPxClientEvent>; + /** + * Occurs on the client side when any chart element is selected. + */ + ObjectSelected: ASPxClientEvent>; + /** + * Returns an ASPxClientWebChart object, which contains information about the hierarchy of a chart control, and provides access to the main properties of chart elements on the client side. + */ + GetChart(): ASPxClientWebChart; + /** + * Returns the printing options of the chart control. + */ + GetPrintOptions(): ASPxClientChartPrintOptions; + /** + * Changes the mouse pointer, which is shown when the mouse is over the chart control, to the pointer with the specified name. + * @param cursor A string value representing the name of the desired cursor. + */ + SetCursor(cursor: string): void; + /** + * Returns the specific chart element which is located under the test point. + * @param x An integer value that specifies the x coordinate of the test point. + * @param y An integer value that specifies the y coordinate of the test point. + */ + HitTest(x: number, y: number): ASPxClientHitObject[]; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side event. + */ + PerformCallback(args: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param args A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(args: string, onSuccess: (arg1: string) => void): void; + /** + * Prints the current chart on the client side. + */ + Print(): void; + /** + * Loads a chart which should be customized from its object model. + * @param serializedChartObjectModel A String object representing the chart model. + */ + LoadFromObjectModel(serializedChartObjectModel: string): void; + /** + * Exports a chart to the file of the specified format, and saves it to the disk. + * @param format A string value specifying the format, to which a chart should be exported. + */ + SaveToDisk(format: string): void; + /** + * Exports a chart to a file in the specified format, and saves it to disk, using the specified file name. + * @param format A string value specifying the format, to which a chart should be exported. + * @param filename A string value specifying the file name, to which a chart should be exported. If this parameter is missing or set to an empty string, then the created file will be named using the client-side name of a chart. + */ + SaveToDisk(format: string, filename: string): void; + /** + * Exports a report to the file of the specified format, and shows it in a new Web Browser window. + * @param format A string value specifying a format in which a report should be exported. + */ + SaveToWindow(format: string): void; + /** + * Gets the main DOM (Document Object Model) element on a Web Page representing this ASPxClientWebChartControl object. + */ + GetMainDOMElement(): Object; +} +/** + * A method that will handle the CustomDrawCrosshair event. + */ +interface ASPxClientWebChartControlCustomDrawCrosshairEventHandler { + /** + * A method that will handle the CustomDrawCrosshair event. + * @param source The event source. This parameter identifies the chartControl which raised the event. + * @param e An ASPxClientWebChartControlCustomDrawCrosshairEventArgs object which contains event data. + */ + (source: S, e: ASPxClientWebChartControlCustomDrawCrosshairEventArgs): void; +} +/** + * Provides data for a chart control's CustomDrawCrosshair event. + */ +interface ASPxClientWebChartControlCustomDrawCrosshairEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets crosshair elements settings to custom draw a crosshair cursor. + * Value: An ASPxClientCrosshairElement object. + */ + crosshairElements: ASPxClientCrosshairElement; + /** + * Gets the settings of crosshair axis label elements to customize their appearance. + * Value: An ASPxClientCrosshairAxisLabelElement object. + */ + cursorCrosshairAxisLabelElements: ASPxClientCrosshairAxisLabelElement; + /** + * Gets crosshair line element settings that are used to custom draw a crosshair cursor. + * Value: An ASPxClientCrosshairLineElement object that contains crosshair line element settings. + */ + cursorCrosshairLineElement: ASPxClientCrosshairLineElement; + /** + * Gets the settings of crosshair group header elements to customize their appearance. + * Value: An ASPxClientCrosshairGroupHeaderElement object. + */ + crosshairGroupHeaderElements: ASPxClientCrosshairGroupHeaderElement; + /** + * Provides access to the settings of crosshair elements and crosshair group header elements to customize their appearance. + * Value: An ASPxClientCrosshairElementGroup object. + */ + crosshairElementGroups: ASPxClientCrosshairElementGroup; +} +/** + * Represents the client-side equivalent of the CrosshairElement class. + */ +interface ASPxClientCrosshairElement { + /** + * Gets a series that a crosshair element hovers over when implementing a custom draw. + * Value: An ASPxClientSeries object which represents the series currently being painted. + */ + Series: ASPxClientSeries; + /** + * Gets the series point that a crosshair element hovers over when implementing a custom draw. + * Value: An ASPxClientSeriesPoint object, representing the series point that a crosshair element hovers over. + */ + Point: ASPxClientSeriesPoint; + /** + * Gets or sets the crosshair line element to custom draw a crosshair cursor. + * Value: An ASPxClientCrosshairLineElement object, representing the crosshair line element. + */ + LineElement: ASPxClientCrosshairLineElement; + /** + * Provides access to the crosshair axis label element. + * Value: An ASPxClientCrosshairAxisLabelElement object, representing the crosshair axis label element. + */ + AxisLabelElement: ASPxClientCrosshairAxisLabelElement; + /** + * Gets the crosshair label element. + * Value: An ASPxClientCrosshairSeriesLabelElement object, representing the crosshair label element. + */ + LabelElement: ASPxClientCrosshairSeriesLabelElement; + /** + * Specifies whether the crosshair element is visible when implementing custom drawing in the crosshair cursor. + * Value: true, if the crosshair element is visible; otherwise, false. + */ + visible: boolean; +} +/** + * Represents the client-side equivalent of the CrosshairLineElement class. + */ +interface ASPxClientCrosshairLineElement { +} +/** + * Represents the client-side equivalent of the CrosshairAxisLabelElement class. + */ +interface ASPxClientCrosshairAxisLabelElement { +} +/** + * The client-side equivalent of the CrosshairGroupHeaderElement class. + */ +interface ASPxClientCrosshairGroupHeaderElement { +} +/** + * The client-side equivalent of the CrosshairLabelElement class. + */ +interface ASPxClientCrosshairSeriesLabelElement { +} +/** + * Represents the client-side equivalent of the CrosshairElementGroup class. + */ +interface ASPxClientCrosshairElementGroup { +} +/** + * Represents a method that will handle the ObjectSelected events. + */ +interface ASPxClientWebChartControlHotTrackEventHandler { + /** + * Represents a method that will handle the ObjectSelected events. + * @param source The event source. This parameter identifies the ASPxClientWebChartControl which raised the event. + * @param e An ASPxClientWebChartControlHotTrackEventArgs object which contains event data. + */ + (source: S, e: ASPxClientWebChartControlHotTrackEventArgs): void; +} +/** + * Provides data for a chart control's ObjectSelected events on the client side. + */ +interface ASPxClientWebChartControlHotTrackEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Provides access on the client side to the chart element, for which the event was raised. + * Value: An ASPxClientWebChartElement object, which represents the chart element for which the event was raised. + */ + hitObject: ASPxClientWebChartElement; + /** + * Provides access on the client side to the object, which is in some way related to the object being hit. The returned value depends on the hitObject type and hit point location. + * Value: An ASPxClientWebChartElement object representing an additional object that relates to the one being hit. + */ + additionalHitObject: ASPxClientWebChartElement; + /** + * Gets details on the chart elements located at the point where an end-user has clicked when hot-tracking or selecting a chart element on the client side. + * Value: An ASPxClientWebChartHitInfo object, which contains information about the chart elements located at the point where an end-user has clicked. + */ + hitInfo: ASPxClientWebChartHitInfo; + /** + * Provides access on the client side to the chart and all its elements. + * Value: An ASPxClientWebChart object, which provides access to chart properties. + */ + chart: ASPxClientWebChart; + /** + * Gets the HTML object that contains the processed item. + * Value: An object representing a container for the item related to the event. + */ + htmlElement: Object; + /** + * Gets the X-coordinate of the hit test point, relative to the top left corner of the chart. + * Value: An integer value specifying X-coordinate of the hit test point (in pixels). + */ + x: number; + /** + * Gets the Y-coordinate of the hit test point, relative to the top left corner of the chart. + * Value: An integer value specifying Y-coordinate of the hit test point (in pixels). + */ + y: number; + /** + * Gets the X-coordinate of the hit test point, relative to the top left corner of the Web Page containing this chart. + * Value: An integer value specifying X-coordinate of the hit test point (in pixels). + */ + absoluteX: number; + /** + * Gets the Y-coordinate of the hit test point, relative to the top left corner of the Web Page containing this chart. + * Value: An integer value specifying Y-coordinate of the hit test point (in pixels). + */ + absoluteY: number; + /** + * Gets a value indicating whether the hot-tracking or object selection should be canceled. + * Value: true to cancel the hot-tracking or selection of an object; otherwise, false. + */ + cancel: boolean; +} +/** + * Represents an object under the hit test point within a chart control, on the client side. + */ +interface ASPxClientHitObject { + /** + * Gets the chart element for which the event was raised. + * Value: An ASPxClientWebChartElement object, representing the chart element for which the event was raised. + */ + Object: ASPxClientWebChartElement; + /** + * Provides access to an object, which is in some way related to the object being hit. The returned value depends on the Object type and hit point location. + * Value: An ASPxClientWebChartElement object that represents an additional object related to the one being hit. + */ + AdditionalObject: ASPxClientWebChartElement; +} +/** + * Contains information about a specific test point within a chart control, on the client side. + */ +interface ASPxClientWebChartHitInfo { + /** + * Gets a value indicating whether the test point is within the chart. + * Value: true if the test point is within a chart; otherwise, false. + */ + inChart: boolean; + /** + * Gets a value indicating whether the test point is within the chart title. + * Value: true if the test point is within a chart title; otherwise, false. + */ + inChartTitle: boolean; + /** + * Gets a value indicating whether the test point is within the axis. + * Value: true if the test point is within an axis; otherwise, false. + */ + inAxis: boolean; + /** + * Gets a value indicating whether the test point is within the axis label item. + * Value: true if the test point is within an axis label item; otherwise, false. + */ + inAxisLabelItem: boolean; + /** + * Gets a value indicating whether the test point is within the axis title. + * Value: true if the test point is within an axis title; otherwise, false. + */ + inAxisTitle: boolean; + /** + * Gets a value indicating whether the test point is within the constant line. + * Value: true if the test point is within a constant line; otherwise, false. + */ + inConstantLine: boolean; + /** + * Gets a value indicating whether the test point is within the diagram. + * Value: true if the test point is within a diagram; otherwise, false. + */ + inDiagram: boolean; + /** + * Gets a value indicating whether the test point is within the non-default pane. + * Value: true if the test point is within a non-default pane; otherwise, false. + */ + inNonDefaultPane: boolean; + /** + * Gets a value indicating whether the test point is within the legend. + * Value: true if the test point is within a legend; otherwise, false. + */ + inLegend: boolean; + /** + * Gets the value indicating whether or not the test point is within a custom legend item. + * Value: true if the test point is within a custom legend item; otherwise, false. + */ + inCustomLegendItem: boolean; + /** + * Gets a value indicating whether the test point is within the series. + * Value: true if the test point is within a series; otherwise, false. + */ + inSeries: boolean; + /** + * Gets a value indicating whether the test point is within the series label. + * Value: true if the test point is within a series label; otherwise, false. + */ + inSeriesLabel: boolean; + /** + * Gets a value indicating whether the test point is within the series point. + * Value: true if the test point is within a series point; otherwise, false. + */ + inSeriesPoint: boolean; + /** + * Gets a value indicating whether the test point is within the series title. + * Value: true if the test point is within a series title; otherwise, false. + */ + inSeriesTitle: boolean; + /** + * Gets a value indicating whether the test point is within the trendline. + * Value: true if the test point is within a trendline; otherwise, false. + */ + inTrendLine: boolean; + /** + * Gets a value indicating whether the test point is within the Fibonacci Indicator. + * Value: true if the test point is within a Fibonacci Indicator; otherwise, false. + */ + inFibonacciIndicator: boolean; + /** + * Gets a value indicating whether the test point is within the regression line. + * Value: true if the test point is within a regression line; otherwise, false. + */ + inRegressionLine: boolean; + /** + * Gets a value specifying whether the test point is within an indicator. + * Value: true if the test point is within an indicator; otherwise, false. + */ + inIndicator: boolean; + /** + * Gets a value indicating whether the test point is within an annotation. + * Value: true if the test point is within an annotation; otherwise, false. + */ + inAnnotation: boolean; + /** + * Gets a value indicating whether the test point is within a hyperlink. + * Value: true, if the test point is within a hyperlink; otherwise, false. + */ + inHyperlink: boolean; + /** + * Gets the client-side chart instance from under the test point. + * Value: An ASPxClientWebChart object. + */ + chart: ASPxClientWebChart; + /** + * Gets the client-side chart title instance from under the test point. + * Value: An ASPxClientChartTitle object. + */ + chartTitle: ASPxClientChartTitle; + /** + * Gets the client-side axis instance from under the test point. + * Value: An ASPxClientAxisBase descendant. + */ + axis: ASPxClientAxisBase; + /** + * Gets the client-side constant line instance from under the test point. + * Value: An ASPxClientConstantLine object. + */ + constantLine: ASPxClientConstantLine; + /** + * Gets the client-side diagram instance from under the test point. + * Value: An ASPxClientXYDiagramBase descendant. + */ + diagram: ASPxClientXYDiagramBase; + /** + * Gets the client-side non-default pane instance from under the test point. + * Value: An ASPxClientXYDiagramPane object. + */ + nonDefaultPane: ASPxClientXYDiagramPane; + /** + * Gets the client-side legend instance from under the test point. + * Value: An ASPxClientLegend object. + */ + legend: ASPxClientLegend; + /** + * Gets a custom legend item which is located under the test point. + * Value: An ASPxClientCustomLegendItem object which represents the item located under the test point. + */ + customLegendItem: ASPxClientCustomLegendItem; + /** + * Gets the client-side series instance from under the test point. + * Value: An ASPxClientSeries object. + */ + series: ASPxClientSeries; + /** + * Gets the client-side series label instance from under the test point. + * Value: An ASPxClientSeriesLabel object. + */ + seriesLabel: ASPxClientSeriesLabel; + /** + * Gets the client-side series title instance from under the test point. + * Value: An ASPxClientSeriesTitle object. + */ + seriesTitle: ASPxClientSeriesTitle; + /** + * Gets the client-side trendline instance from under the test point. + * Value: An ASPxClientTrendLine object. + */ + trendLine: ASPxClientTrendLine; + /** + * Gets the client-side Fibonacci indicator instance from under the test point. + * Value: An ASPxClientFibonacciIndicator object. + */ + fibonacciIndicator: ASPxClientFibonacciIndicator; + /** + * Gets the client-side regression line instance from under the test point. + * Value: An ASPxClientRegressionLine object. + */ + regressionLine: ASPxClientRegressionLine; + /** + * Gets the client-side indicator instance from under the test point. + * Value: An ASPxClientIndicator descendant. + */ + indicator: ASPxClientIndicator; + /** + * Gets the client-side annotation instance from under the test point. + * Value: An ASPxClientAnnotation object. + */ + annotation: ASPxClientAnnotation; + /** + * Gets the client-side series point instance from under the test point. + * Value: An ASPxClientSeriesPoint object. + */ + seriesPoint: ASPxClientSeriesPoint; + /** + * Gets the client-side axis label item instance from under the test point. + * Value: An ASPxClientAxisLabelItem object. + */ + axisLabelItem: ASPxClientAxisLabelItem; + /** + * Gets the client-side axis title instance from under the test point. + * Value: An ASPxClientAxisTitle object. + */ + axisTitle: ASPxClientAxisTitle; + /** + * Returns a hyperlink which is located under the test point. + * Value: A String object representing a hyperlink. + */ + hyperlink: string; +} +/** + * Represents the client-side equivalent of the DiagramCoordinates class. + */ +interface ASPxClientDiagramCoordinates { + /** + * Gets the type of the argument scale. + * Value: A string object which contains the current scale type. + */ + argumentScaleType: string; + /** + * Gets the type of the value scale. + * Value: A string object which contains the current scale type. + */ + valueScaleType: string; + /** + * Gets the argument of the data point as a text string. + * Value: A string object, representing a data point's argument. + */ + qualitativeArgument: string; + /** + * Gets the numerical representation of the data point's argument. + * Value: A Double value, representing the data point's argument. + */ + numericalArgument: number; + /** + * Gets the date-time representation of the data point's argument. + * Value: A date object, representing the point's argument. + */ + dateTimeArgument: Date; + /** + * Gets the numerical representation of the data point's value. + * Value: A Double value, representing the data point's value. + */ + numericalValue: number; + /** + * Gets the date-time representation of the data point's value. + * Value: A date object, representing the point's value. + */ + dateTimeValue: Date; + /** + * Gets the X-axis of the diagram point. + * Value: An ASPxClientAxisBase descendant, representing the axis of arguments (X-axis). + */ + axisX: ASPxClientAxisBase; + /** + * Gets the Y-axis of the diagram point. + * Value: An ASPxClientAxisBase descendant, representing the axis of values (Y-axis). + */ + axisY: ASPxClientAxisBase; + /** + * Gets the pane of the diagram point. + * Value: An ASPxClientXYDiagramPane descendant, representing the pane. + */ + pane: ASPxClientXYDiagramPane; + /** + * Checks whether the current object represents a point outside the diagram area. + */ + IsEmpty(): boolean; + /** + * Gets the value of the client-side axis instance. + * @param axis An ASPxClientAxisBase class descendant, representing the axis that contains the requested value. + */ + GetAxisValue(axis: ASPxClientAxisBase): ASPxClientAxisValue; +} +/** + * Contains the information about an axis value. + */ +interface ASPxClientAxisValue { + /** + * Gets the axis scale type. + * Value: A String value, specifying the axis scale type. + */ + scaleType: string; + /** + * Gets the axis value, if the axis scale type is qualitative. + * Value: A String value, specifying the axis value. + */ + qualitativeValue: string; + /** + * Gets the axis value, if the axis scale type is numerical. + * Value: A Double value, specifying the axis value. + */ + numericalValue: number; + /** + * Gets the axis value, if the axis scale type is date-time. + * Value: A DateTime value, specifying the axis value. + */ + dateTimeValue: Date; +} +/** + * Represents the client-side equivalent of the ControlCoordinates class. + */ +interface ASPxClientControlCoordinates { + /** + * Gets the point's pane. + * Value: An ASPxClientXYDiagramPane object. + */ + pane: ASPxClientXYDiagramPane; + /** + * Gets the point's X-coordinate, in pixels. + * Value: An integer value, specifying the X-coordinate (in pixels). + */ + x: number; + /** + * Gets the point's Y-coordinate, in pixels. + * Value: An integer value, specifying the Y-coordinate (in pixels). + */ + y: number; + /** + * Gets the point's visibility state. + * Value: "Visible", "Hidden", or "Undefined". + */ + visibility: string; +} +/** + * Represents the client-side equivalent of the ChartElement class. + */ +interface ASPxClientWebChartElement { + /** + * Gets the chart that owns the current chart element. + * Value: An ASPxClientWebChart object, to which the chart element belongs. + */ + chart: ASPxClientWebChart; +} +/** + * Represents a base class for chart elements, which are not necessarily required to be present on the client side. + */ +interface ASPxClientWebChartEmptyElement extends ASPxClientWebChartElement { +} +/** + * Represents a base class for chart elements, which are required to be present on the client side. + */ +interface ASPxClientWebChartRequiredElement extends ASPxClientWebChartElement { +} +/** + * Represents the client-side equivalent of the ChartElementNamed class. + */ +interface ASPxClientWebChartElementNamed extends ASPxClientWebChartRequiredElement { + /** + * Gets the name of the chart element. + * Value: A string object representing the name of the chart element. + */ + name: string; +} +/** + * Represents the client-side equivalent of the WebChartControl control. + */ +interface ASPxClientWebChart extends ASPxClientWebChartRequiredElement { + /** + * Gets the client-side Chart Control that owns the current chart. + * Value: An ASPxClientWebChartControl object, to which the chart belongs. + */ + chartControl: ASPxClientWebChartControl; + /** + * Gets the chart's diagram and provides access to its settings. + * Value: An ASPxClientRadarDiagram), that represents the chart's diagram. + */ + diagram: ASPxClientWebChartElement; + /** + * Provides access to the chart's collection of series. + * Value: An array of ASPxClientSeries objects that represent the collection of series. + */ + series: ASPxClientSeries[]; + /** + * Provides access to the collection of chart titles. + * Value: An array of ASPxClientChartTitle objects, that represent the collection of chart titles. + */ + titles: ASPxClientChartTitle[]; + /** + * Provides access to the chart's collection of annotations. + * Value: An array of ASPxClientAnnotation objects, representing the collection of annotations. + */ + annotations: ASPxClientAnnotation[]; + /** + * Gets the chart's legend and provides access to its settings. + * Value: An ASPxClientLegend object that represents the chart's legend. + */ + legend: ASPxClientLegend; + /** + * Returns the collection of legends. + * Value: An array of ASPxClientLegend objects. + */ + legends: ASPxClientLegend[]; + /** + * Gets the name of the appearance, which is currently used to draw the chart's elements. + * Value: A string value that represents the appearance name. + */ + appearanceName: string; + /** + * Gets the name of the palette currently used to draw the chart's series. + * Value: A string value that represents the palette name. + */ + paletteName: string; + /** + * Gets a value indicating whether series tooltips should be shown. + * Value: true to show tooltips for series; otherwise, false. + */ + showSeriesToolTip: boolean; + /** + * Gets a value indicating whether point tooltips should be shown. + * Value: true to show tooltips for series points; otherwise, false. + */ + showPointToolTip: boolean; + /** + * Gets a value indicating whether a crosshair cursor should be shown. + * Value: true to show a crosshair cursor; otherwise, false. + */ + showCrosshair: boolean; + /** + * Gets a value that contains information on how the tooltip position is defined, for example, relative to a mouse pointer or chart element. + * Value: An ASPxClientToolTipPosition class descendant that defines the tooltip position type. + */ + toolTipPosition: ASPxClientToolTipPosition; + /** + * Returns the tooltip controller that shows tooltips for chart elements. + * Value: An ASPxClientToolTipController object. + */ + toolTipController: ASPxClientToolTipController; + /** + * Gets the settings for a crosshair cursor concerning its position and appearance on a diagram. + * Value: An ASPxClientCrosshairOptions object descendant which provides access to crosshair cursor options on a diagram. + */ + crosshairOptions: ASPxClientCrosshairOptions; + /** + * Gets a css postfix for a chart. + * Value: A string value. + */ + cssPostfix: string; + /** + * Gets or sets a value which specifies how the chart elements are selected. + * Value: A String object representing the name of the selection mode. + */ + selectionMode: string; +} +/** + * Represents the client-side equivalent of the SimpleDiagram class. + */ +interface ASPxClientSimpleDiagram extends ASPxClientWebChartEmptyElement { +} +/** + * Represents the base class for all diagram classes, which have X and Y axes. + */ +interface ASPxClientXYDiagramBase extends ASPxClientWebChartRequiredElement { + /** + * Gets the X-axis. + * Value: An ASPxClientAxisBase object which represents the X-axis. + */ + axisX: ASPxClientAxisBase; + /** + * Gets the Y-axis. + * Value: An ASPxClientAxisBase object which represents the Y-axis. + */ + axisY: ASPxClientAxisBase; +} +/** + * Represents the client-side equivalent of the XYDiagram2D class. + */ +interface ASPxClientXYDiagram2D extends ASPxClientXYDiagramBase { + /** + * Provides access to a collection of secondary X-axes for a given 2D XY-diagram. + * Value: An array of ASPxClientAxis objects, that is a collection of secondary X-axes. + */ + secondaryAxesX: ASPxClientAxis[]; + /** + * Provides access to a collection of secondary Y-axes for a given 2D XY-diagram. + * Value: An array of ASPxClientAxis objects, that is a collection of secondary X-axes. + */ + secondaryAxesY: ASPxClientAxis[]; + /** + * Provides access to a default pane object. + * Value: An ASPxClientXYDiagramPane object which represents the default pane of a chart. + */ + defaultPane: ASPxClientXYDiagramPane; + /** + * Provides access to an array of a diagram's panes. + * Value: An array of ASPxClientXYDiagramPane objects. + */ + panes: ASPxClientXYDiagramPane[]; + /** + * Converts the display coordinates into a diagram coordinates object. + * @param x An integer value, representing the X-coordinate of a point (measured in pixels relative to the top left corner of a chart). + * @param y An integer value, representing the Y-coordinate of a point (measured in pixels relative to the top left corner of a chart). + */ + PointToDiagram(x: number, y: number): ASPxClientDiagramCoordinates; + /** + * Converts the diagram coordinates of a point into screen coordinates. + * @param argument An object, representing the point's argument. + * @param value An object, representing the point's value. + * @param axisX An ASPxClientAxis2D descendant, representing the X-axis. + * @param axisY An ASPxClientAxis2D descendant, representing the Y-axis. + * @param pane An ASPxClientXYDiagramPane object, representing the pane. + */ + DiagramToPoint(argument: Object, value: Object, axisX: ASPxClientAxis2D, axisY: ASPxClientAxis2D, pane: ASPxClientXYDiagramPane): ASPxClientControlCoordinates; + /** + * Shows the Crosshair Cursor at the point with the specified coordinates. + * @param screenX The horizontal coordinate that is related to the top-left angle of the chart. + * @param screenY The vertical coordinate that is related to the top-left angle of the chart. + */ + ShowCrosshair(screenX: number, screenY: number): void; +} +/** + * Represents the client-side equivalent of the XYDiagram class. + */ +interface ASPxClientXYDiagram extends ASPxClientXYDiagram2D { + /** + * Gets a value indicating whether the diagram is rotated. + * Value: true if the diagram is rotated; otherwise, false. + */ + rotated: boolean; +} +/** + * Represents the client-side equivalent of the SwiftPlotDiagram class. + */ +interface ASPxClientSwiftPlotDiagram extends ASPxClientXYDiagram2D { +} +/** + * Represents the client-side equivalent of the XYDiagramPane class. + */ +interface ASPxClientXYDiagramPane extends ASPxClientWebChartElementNamed { + /** + * Gets the diagram that owns the current pane object. + * Value: An ASPxClientXYDiagram object, to which the pane belongs. + */ + diagram: ASPxClientXYDiagram; +} +/** + * Represents the client-side equivalent of the XYDiagram3D class. + */ +interface ASPxClientXYDiagram3D extends ASPxClientXYDiagramBase { +} +/** + * Represents the client-side equivalent of the RadarDiagram class. + */ +interface ASPxClientRadarDiagram extends ASPxClientXYDiagramBase { + /** + * Converts the display coordinates into a diagram coordinates object. + * @param x An integer value, representing the X-coordinate of a point (measured in pixels relative to the top left corner of a chart). + * @param y An integer value, representing the Y-coordinate of a point (measured in pixels relative to the top left corner of a chart). + */ + PointToDiagram(x: number, y: number): ASPxClientDiagramCoordinates; + /** + * Converts the diagram coordinates of a point into screen coordinates. + * @param argument An object, representing the point's argument. + * @param value An object, representing the point's value. + */ + DiagramToPoint(argument: Object, value: Object): ASPxClientControlCoordinates; +} +/** + * Represents the client-side equivalent of the AxisBase class. + */ +interface ASPxClientAxisBase extends ASPxClientWebChartElementNamed { + /** + * Provides access to the XY-diagram which contains the current axis. + * Value: An ASPxClientXYDiagramBase class descendant. + */ + diagram: ASPxClientXYDiagramBase; + /** + * Provides acess to the range of the axis coordinates. + * Value: An ASPxClientAxisRange object, which contains the common range settings of the axis coordinates. + */ + range: ASPxClientAxisRange; +} +/** + * Represents the client-side equivalent of the Axis2D class. + */ +interface ASPxClientAxis2D extends ASPxClientAxisBase { + /** + * Provides access to an axis title object. + * Value: An ASPxClientAxisTitle object which represents the axis title. + */ + axisTitle: ASPxClientAxisTitle; + /** + * Provides access to the axis strips collection. + * Value: An array of ASPxClientStrip objects. + */ + strips: ASPxClientStrip[]; + /** + * Provides access to the collection of the axis constant lines. + * Value: An array of ASPxClientConstantLine objects which represent constant lines that belong to this axis. + */ + constantLines: ASPxClientConstantLine[]; +} +/** + * Represents the client-side equivalent of the Axis class. + */ +interface ASPxClientAxis extends ASPxClientAxis2D { + /** + * Gets a value indicating whether the axis is reversed. + * Value: true if the axis is reversed; otherwise, false. + */ + reverse: boolean; +} +/** + * Represents the client-side equivalent of the SwiftPlotDiagramAxis class. + */ +interface ASPxClientSwiftPlotDiagramAxis extends ASPxClientAxis2D { +} +/** + * Represents the client-side equivalent of the Axis3D class. + */ +interface ASPxClientAxis3D extends ASPxClientAxisBase { +} +/** + * Represents the client-side equivalent of the RadarAxis class. + */ +interface ASPxClientRadarAxis extends ASPxClientAxisBase { +} +/** + * Represents the client-side equivalent of the AxisTitle class. + */ +interface ASPxClientAxisTitle extends ASPxClientWebChartRequiredElement { + /** + * Gets the axis to which the axis title belongs. + * Value: An ASPxClientAxisBase descendant, which identifies the axis. + */ + axis: ASPxClientAxisBase; + /** + * Gets the text of the axis title. + * Value: A string object which contains the axis title's text. + */ + text: string; +} +/** + * Represents the client-side equivalent of the AxisLabelItem class. + */ +interface ASPxClientAxisLabelItem extends ASPxClientWebChartRequiredElement { + /** + * Gets the axis to which an axis label item belongs. + * Value: An ASPxClientAxisBase descendant, which identifies the axis. + */ + axis: ASPxClientAxisBase; + /** + * Gets the text of an axis label item. + * Value: A string object which contains the axis label item's text. + */ + text: string; + /** + * Gets the axis value to which an axis label item corresponds. + * Value: An object that specifies the axis value. + */ + axisValue: Object; + /** + * Gets the internal representation of the axis value to which an axis label item corresponds. + * Value: A Double value which specifies the internal representation of the axis value. + */ + axisValueInternal: number; +} +/** + * Represents the client-side equivalent of the AxisRange class. + */ +interface ASPxClientAxisRange extends ASPxClientWebChartRequiredElement { + /** + * Gets the axis that owns the current axis range object. + * Value: An ASPxClientAxisBase object, to which the axis range belongs. + */ + axis: ASPxClientAxisBase; + /** + * Gets the minimum value to display on an axis. + * Value: An object representing the minimum value of the axis range. + */ + minValue: Object; + /** + * Gets the maximum value to display on an axis. + * Value: An object representing the maximum value of the axis range. + */ + maxValue: Object; + /** + * Gets the internal float representation of the range minimum value. + * Value: A Double value which specifies the internal representation of the range minimum value. + */ + minValueInternal: number; + /** + * Gets the internal float representation of the range maximum value. + * Value: A Double value which specifies the internal representation of the range maximum value. + */ + maxValueInternal: number; +} +/** + * Represents the client-side equivalent of the Strip class. + */ +interface ASPxClientStrip extends ASPxClientWebChartElementNamed { + /** + * Gets the axis that owns the current strip object. + * Value: An ASPxClientAxis object, to which the strip belongs. + */ + axis: ASPxClientAxis; + /** + * Gets the minimum value of the strip's range. + * Value: An object that represents the minimum value of the strip's range. + */ + minValue: Object; + /** + * Gets the maximum value of the strip's range. + * Value: An object that represents the maximum value of the strip's range. + */ + maxValue: Object; +} +/** + * Represents the client-side equivalent of the ConstantLine class. + */ +interface ASPxClientConstantLine extends ASPxClientWebChartElementNamed { + /** + * Gets the axis that owns the current constant line object. + * Value: An ASPxClientAxis object, to which the constant line belongs. + */ + axis: ASPxClientAxis; + /** + * Gets the constant line's position along the axis. + * Value: An object that specifies the constant line's position. + */ + value: Object; + /** + * Gets the constant line title. + * Value: A string object, representing the title's text. + */ + title: string; +} +/** + * Represents the client-side equivalent of the Series class. + */ +interface ASPxClientSeries extends ASPxClientWebChartElementNamed { + /** + * Gets a value that specifies the view type of the series. + * Value: A string object which contains the current view type. + */ + viewType: string; + /** + * Gets a value that specifies the scale type for the argument data of the series' data points. + * Value: A string object which contains the current scale type. + */ + argumentScaleType: string; + /** + * Gets a value that specifies the scale type for the value data of the series' data points. + * Value: A string object which contains the current scale type. + */ + valueScaleType: string; + /** + * Gets the X-Axis that is used to plot the current series on the XY-diagram. + * Value: A string object, which represents the X-axis name. + */ + axisX: string; + /** + * Gets the Y-Axis that is used to plot the current series on the XY-diagram. + * Value: A string object, which represents the Y-axis name. + */ + axisY: string; + /** + * Gets the pane that is used to plot the current series on the XY-diagram. + * Value: A string object, which represents the pane's name. + */ + pane: string; + /** + * Gets a value indicating whether the series is visible. + * Value: true if the series is visible; otherwise, false. + */ + visible: boolean; + /** + * Gets a value that specifies whether or not a tooltip is enabled for a chart. + * Value: true - a tooltip is enabled for a chart; false - a tooltip is disabled. + */ + toolTipEnabled: boolean; + /** + * Gets the text to be displayed within series tooltips. + * Value: A string value. + */ + toolTipText: string; + /** + * Gets an image to be displayed within series tooltips. + * Value: A string value. + */ + toolTipImage: string; + /** + * Gets the settings of series labels. + * Value: An ASPxClientSeriesLabel object, which provides the series label settings. + */ + label: ASPxClientSeriesLabel; + /** + * Gets the series' collection of data points. + * Value: An array of ASPxClientSeriesPoint objects, that represent the series' data points. + */ + points: ASPxClientSeriesPoint[]; + /** + * Provides access to the collection of series titles. + * Value: An array of ASPxClientSeriesTitle objects, that represent the collection of series titles. + */ + titles: ASPxClientSeriesTitle[]; + /** + * Gets the series' collection of indicators. + * Value: An array of ASPxClientIndicator objects, that belong to the series. + */ + indicators: ASPxClientIndicator[]; + /** + * Provides access to the collection of regression lines. + * Value: An array of ASPxClientRegressionLine objects which represent regression lines available for the series. + */ + regressionLines: ASPxClientRegressionLine[]; + /** + * Provides access to the collection of trendlines. + * Value: An array of ASPxClientTrendLine objects, that represent the collection of trendlines. + */ + trendLines: ASPxClientTrendLine[]; + /** + * Provides access to the collection of Fibonacci Indicators. + * Value: An array of ASPxClientFibonacciIndicator objects, that represent the collection of Fibonacci Indicators. + */ + fibonacciIndicators: ASPxClientFibonacciIndicator[]; + /** + * Gets the color of a series. + * Value: A string value. + */ + color: string; + /** + * Gets a value that defines a group for stacked series. + * Value: A string value. + */ + stackedGroup: string; + /** + * Gets a string which represents the pattern specifying the text to be displayed within a crosshair label for the current Series type. + * Value: A Empty. + */ + crosshairLabelPattern: string; + /** + * This property is intended for internal use only. + * Value: A String value. + */ + groupedElementsPattern: string; + /** + * Returns a collection of crosshair value items. + * Value: An array of ASPxClientCrosshairValueItem objects. + */ + crosshairValueItems: ASPxClientCrosshairValueItem[]; + /** + * Gets a value indicating whether a crosshair cursor is enabled. + * Value: true if a crosshair cursor is enabled; otherwise, false. + */ + actualCrosshairEnabled: boolean; + /** + * Gets a value indicating whether a crosshair label should be shown for this series. + * Value: true if crosshair labels are visible; otherwise, false. + */ + actualCrosshairLabelVisibility: boolean; +} +/** + * Represents the client-side equivalent of the SeriesLabelBase class. + */ +interface ASPxClientSeriesLabel extends ASPxClientWebChartElement { + /** + * Gets the series that owns the current series label object. + * Value: An ASPxClientSeries object, to which the series label belongs. + */ + series: ASPxClientSeries; + /** + * Gets the common text for all series point labels. + * Value: Returns an empty string object. + */ + text: string; +} +/** + * Represents the client-side equivalent of the SeriesPoint class. + */ +interface ASPxClientSeriesPoint extends ASPxClientWebChartRequiredElement { + /** + * Gets the series that owns the current series point object. + * Value: An ASPxClientSeries object, to which the series point belongs. + */ + series: ASPxClientSeries; + /** + * Gets the data point's argument. + * Value: An object that specifies the data point's argument. + */ + argument: Object; + /** + * Gets the point's data value(s). + * Value: An array of objects that represent the data value(s) of the series data point. + */ + values: Object[]; + /** + * Gets the text to be displayed within series points tooltips. + * Value: A string value. + */ + toolTipText: string; + /** + * Gets the color of a series point. + * Value: A string value. + */ + color: string; + /** + * Gets the percent value of a series point. + * Value: A float value. + */ + percentValue: number; + /** + * Gets a hint that is shown in series points tooltips. + * Value: A string value. + */ + toolTipHint: string; +} +/** + * Represents the client-side equivalent of the Legend class. + */ +interface ASPxClientLegend extends ASPxClientWebChartEmptyElement { + /** + * Returns a value which determines whether to use checkboxes instead of markers on a chart legend for all legend items. + * Value: true, if legend checkboxes are shown instead of markers for all legend items; otherwise, false. + */ + useCheckBoxes: boolean; + /** + * Returns a collection of custom legend items of the legend. + * Value: A collection of ASPxClientCustomLegendItem objects. + */ + customItems: ASPxClientCustomLegendItem[]; + /** + * Returns the name of the legend. + * Value: The string value representing the name of the legend. + */ + name: string; +} +/** + * Represents the base for ASPxClientSeriesTitle classes. + */ +interface ASPxClientTitleBase extends ASPxClientWebChartRequiredElement { + /** + * Gets the lines of text within a title. + * Value: An array of string values containing the text of a title. + */ + lines: string[]; + /** + * Gets the alignment of the title. + * Value: A string value containing the text, which specifies the alignment of a title. + */ + alignment: string; + /** + * Gets a value that specifies to which edges of a parent element the title should be docked. + * Value: A string value. + */ + dock: string; +} +/** + * Represents the client-side equivalent of the ChartTitle class. + */ +interface ASPxClientChartTitle extends ASPxClientTitleBase { +} +/** + * Represents the client-side equivalent of the SeriesTitle class. + */ +interface ASPxClientSeriesTitle extends ASPxClientTitleBase { + /** + * Gets the series that owns the current title object. + * Value: An ASPxClientSeries object, to which the series title belongs. + */ + series: ASPxClientSeries; +} +/** + * Represents the client-side equivalent of the Indicator class. + */ +interface ASPxClientIndicator extends ASPxClientWebChartElementNamed { + /** + * Gets the indicator's associated series. + * Value: An ASPxClientSeries object. + */ + series: ASPxClientSeries; +} +/** + * Represents the client-side equivalent of the FinancialIndicator class. + */ +interface ASPxClientFinancialIndicator extends ASPxClientIndicator { + /** + * Gets the first point of the financial indicator. + * Value: An ASPxClientFinancialIndicatorPoint object, which represents a financial indicator's first point. + */ + point1: ASPxClientFinancialIndicatorPoint; + /** + * Gets the second point of the financial indicator. + * Value: An ASPxClientFinancialIndicatorPoint object, which represents a financial indicator's second point. + */ + point2: ASPxClientFinancialIndicatorPoint; +} +/** + * Represents the client-side equivalent of the TrendLine class. + */ +interface ASPxClientTrendLine extends ASPxClientFinancialIndicator { +} +/** + * Represents the client-side equivalent of the FibonacciIndicator class. + */ +interface ASPxClientFibonacciIndicator extends ASPxClientFinancialIndicator { +} +/** + * Represents the client-side equivalent of the FinancialIndicatorPoint class. + */ +interface ASPxClientFinancialIndicatorPoint extends ASPxClientWebChartRequiredElement { + /** + * Gets the financial indicator that owns the current financial indicator point. + * Value: An ASPxClientFinancialIndicator object, to which the point belongs. + */ + financialIndicator: ASPxClientFinancialIndicator; + /** + * Gets the argument of the financial indicator's point. + * Value: An object that specifies the point argument. + */ + argument: Object; + /** + * Gets a value, indicating how the value of a financial indicator's point is obtained. + * Value: A string value, which indicates how to obtain a financial indicator point's value. + */ + valueLevel: string; +} +/** + * The client-side equivalent of the SingleLevelIndicator class. + */ +interface ASPxClientSingleLevelIndicator extends ASPxClientIndicator { + /** + * Gets a value specifying the value level to which the single-level indicator corresponds. + * Value: A string value. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the RegressionLine class. + */ +interface ASPxClientRegressionLine extends ASPxClientSingleLevelIndicator { +} +/** + * The client-side equivalent of the MovingAverage class. + */ +interface ASPxClientMovingAverage extends ASPxClientSingleLevelIndicator { + /** + * Gets the number of data points used to calculate the moving average. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value specifying whether to display a Moving Average, Envelope, or both. + * Value: A string value. + */ + kind: string; + /** + * Gets a value specifying the Envelope percent. + * Value: A double value which specifies the Envelope percent. + */ + envelopePercent: number; +} +/** + * The client-side equivalent of the SimpleMovingAverage class. + */ +interface ASPxClientSimpleMovingAverage extends ASPxClientMovingAverage { +} +/** + * The client-side equivalent of the ExponentialMovingAverage class. + */ +interface ASPxClientExponentialMovingAverage extends ASPxClientMovingAverage { +} +/** + * The client-side equivalent of the WeightedMovingAverage class. + */ +interface ASPxClientWeightedMovingAverage extends ASPxClientMovingAverage { +} +/** + * The client-side equivalent of the TriangularMovingAverage class. + */ +interface ASPxClientTriangularMovingAverage extends ASPxClientMovingAverage { +} +/** + * Represents the client-side equivalent of the TripleExponentialMovingAverageTema class. + */ +interface ASPxClientTripleExponentialMovingAverageTema extends ASPxClientMovingAverage { +} +/** + * Represents the client-side equivalent of the BollingerBands class. + */ +interface ASPxClientBollingerBands extends ASPxClientIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the MedianPrice class. + */ +interface ASPxClientMedianPrice extends ASPxClientIndicator { +} +/** + * Represents the client-side equivalent of the TypicalPrice class. + */ +interface ASPxClientTypicalPrice extends ASPxClientIndicator { +} +/** + * Represents the client-side equivalent of the WeightedClose class. + */ +interface ASPxClientWeightedClose extends ASPxClientIndicator { +} +/** + * Represents the client-side equivalent of the SeparatePaneIndicator class. + */ +interface ASPxSeparatePaneIndicator extends ASPxClientIndicator { + /** + * Returns the name of the Y-axis that is used to plot the current indicator on a ASPxClientXYDiagram. + * Value: A string value specifying the Y-axis name. + */ + axisY: string; + /** + * Returns the name of a pane, used to plot the separate pane indicator on an XYDiagram. + * Value: A string that is the name of a pane. + */ + pane: string; +} +/** + * Represents the client-side equivalent of the AverageTrueRange class. + */ +interface ASPxClientAverageTrueRange extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; +} +/** + * Represents the client-side equivalent of the ChaikinsVolatility class. + */ +interface ASPxClientChaikinsVolatility extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; +} +/** + * Represents the client-side equivalent of the CommodityChannelIndex class. + */ +interface ASPxClientCommodityChannelIndex extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; +} +/** + * Represents the client-side equivalent of the DetrendedPriceOscillator class. + */ +interface ASPxClientDetrendedPriceOscillator extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the MassIndex class. + */ +interface ASPxClientMassIndex extends ASPxSeparatePaneIndicator { + /** + * Returns the count of points used to calculate the exponential moving average (EMA). + * Value: An integer value, specifying the count of points used to calculate EMA. + */ + movingAveragePointsCount: number; + /** + * Returns the count of summable values. + * Value: An integer value specifying the count of summable ratios. + */ + sumPointsCount: number; +} +/** + * Represents the client-side equivalent of the MovingAverageConvergenceDivergence class. + */ +interface ASPxClientMovingAverageConvergenceDivergence extends ASPxSeparatePaneIndicator { + /** + * Returns the short period value required to calculate the indicator. + * Value: An integer value specifying the short period value. + */ + shortPeriod: number; + /** + * Returns the long period value required to calculate the indicator. + * Value: An integer value specifying the long period. + */ + longPeriod: number; + /** + * Returns the smoothing period value required to calculate the indicator. + * Value: An integer value specifying the smoothing period value. + */ + signalSmoothingPeriod: number; +} +/** + * Represents the client-side equivalent of the RateOfChange class. + */ +interface ASPxClientRateOfChange extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the RelativeStrengthIndex class. + */ +interface ASPxClientRelativeStrengthIndex extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the StandardDeviation class. + */ +interface ASPxClientStandardDeviation extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the TripleExponentialMovingAverageTrix class. + */ +interface ASPxClientTripleExponentialMovingAverageTrix extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; + /** + * Gets a value, indicating whose series point values are used to calculate the indicator's values. + * Value: A string value, which indicates which series point value should be used to calculate indicator values. + */ + valueLevel: string; +} +/** + * Represents the client-side equivalent of the WilliamsR class. + */ +interface ASPxClientWilliamsR extends ASPxSeparatePaneIndicator { + /** + * Gets the number of data points used to calculate the indicator values. + * Value: An integer value, specifying the number of points. + */ + pointsCount: number; +} +/** + * Represents the client-side equivalent of the FixedValueErrorBars class. + */ +interface ASPxClientFixedValueErrorBars extends ASPxClientIndicator { + /** + * Gets or sets the fixed positive error value. + * Value: A double value specifying the positive error value. + */ + positiveError: number; + /** + * Returns the fixed negative error value. + * Value: A double value specifying the negative error value. + */ + negativeError: number; +} +/** + * Represents the client-side equivalent of the PercentageErrorBars class. + */ +interface ASPxClientPercentageErrorBars extends ASPxClientIndicator { + /** + * Returns the value specifying the percentage of error values of series point values. + * Value: A double value specifying the percentage. Values less than or equal to 0 are not allowed. + */ + percent: number; +} +/** + * Represents the client-side equivalent of the StandardDeviationErrorBars class. + */ +interface ASPxClientStandardDeviationErrorBars extends ASPxClientIndicator { + /** + * Returns the multiplier on which the standard deviation value is multiplied before display. + * Value: A double value specifying the multiplier. Values less than 0 are not allowed. + */ + multiplier: number; +} +/** + * Represents the client-side equivalent of the StandardErrorBars class. + */ +interface ASPxClientStandardErrorBars extends ASPxClientIndicator { +} +/** + * Represents the client-side equivalent of the DataSourceBasedErrorBars class. + */ +interface ASPxClientDataSourceBasedErrorBars extends ASPxClientIndicator { +} +/** + * Represents the client-side equivalent of the Annotation class. + */ +interface ASPxClientAnnotation extends ASPxClientWebChartElementNamed { +} +/** + * Represents the client-side equivalent of the TextAnnotation class. + */ +interface ASPxClientTextAnnotation extends ASPxClientAnnotation { + /** + * Gets the lines of text within an annotation. + * Value: An array of string values containing the text of a title. + */ + lines: string[]; +} +/** + * Represents the client-side equivalent of the ImageAnnotation class. + */ +interface ASPxClientImageAnnotation extends ASPxClientAnnotation { +} +/** + * The client-side equivalent of the CrosshairValueItem class. + */ +interface ASPxClientCrosshairValueItem { + /** + * Gets the value that is displayed in a crosshair label. + * Value: A float value. + */ + value: number; + /** + * Gets an index of a point for which this crosshair value item is displayed. + * Value: An integer value. + */ + pointIndex: number; +} +/** + * The client-side equivalent of the ChartToolTipController class. + */ +interface ASPxClientToolTipController extends ASPxClientWebChartEmptyElement { + /** + * Gets a value indicating whether an image should be shown in tooltips. + * Value: true to show an image in tooltips; otherwise, false. + */ + showImage: boolean; + /** + * Gets a value indicating whether it is necessary to show text in tooltips. + * Value: true to show text in tooltips; otherwise, false. + */ + showText: boolean; + /** + * Gets a value that defines the position of an image within a tooltip. + * Value: A string value. + */ + imagePosition: string; + /** + * Gets a value that defines when tooltips should be invoked. + * Value: A string value. + */ + openMode: string; +} +/** + * The client-side equivalent of the ToolTipPosition class. + */ +interface ASPxClientToolTipPosition { +} +/** + * The client-side equivalent of the ToolTipRelativePosition class. + */ +interface ASPxClientToolTipRelativePosition extends ASPxClientToolTipPosition { + /** + * Gets the horizontal offset of a tooltip. + * Value: An integer value. + */ + offsetX: number; + /** + * Gets the vertical offset of a tooltip. + * Value: An integer value. + */ + offsetY: number; +} +/** + * The client-side equivalent of the ToolTipFreePosition class. + */ +interface ASPxClientToolTipFreePosition extends ASPxClientToolTipPosition { + /** + * Gets the horizontal offset of a tooltip. + * Value: An integer value. + */ + offsetX: number; + /** + * Gets the vertical offset of a tooltip. + * Value: An integer value. + */ + offsetY: number; + /** + * Gets the ID of a pane. + * Value: An integer value. + */ + paneID: number; + /** + * Gets an object containing settings that define how a tooltip should be docked. + * Value: A string value. + */ + dockPosition: string; +} +/** + * The client-side equivalent of the CrosshairLabelPosition class. + */ +interface ASPxClientCrosshairPosition { + /** + * Gets the horizontal offset of a crosshair cursor. + * Value: An integer value that is the X-offset. + */ + offsetX: number; + /** + * Gets the vertical offset of a crosshair cursor. + * Value: An integer value that is the Y-offset. + */ + offsetY: number; +} +/** + * The client-side equivalent of the CrosshairMousePosition class. + */ +interface ASPxClientCrosshairMousePosition extends ASPxClientCrosshairPosition { +} +/** + * The client-side equivalent of the CrosshairFreePosition class. + */ +interface ASPxClientCrosshairFreePosition extends ASPxClientCrosshairPosition { + /** + * Gets a Pane's ID when the crosshair cursor is in the free position mode. + * Value: An integer value that is the pane's ID. + */ + paneID: number; + /** + * Gets a string containing information on a crosshair label's dock position when the crosshair cursor is in the free position mode. + * Value: A string value containing information on a crosshair label's dock position. + */ + dockPosition: string; +} +/** + * Defines line style settings. + */ +interface ASPxClientLineStyle extends ASPxClientWebChartElement { + /** + * Gets the dash style used to paint the line. + * Value: A string value that contains information about the style used to paint the line. + */ + dashStyle: string; + /** + * Gets the thickness that corresponds to the value of the current ASPxClientLineStyle object. + * Value: An integer value which specifies the thickness, in pixels. + */ + thickness: number; + /** + * Returns the join style for the ends of consecutive lines. + * Value: A string representing the name of the line join type. + */ + lineJoin: string; +} +/** + * The client-side equivalent of the CrosshairOptions class. + */ +interface ASPxClientCrosshairOptions extends ASPxClientWebChartEmptyElement { + /** + * Gets a value indicating whether it is necessary to show a crosshair label for the X-axis. + * Value: true to show a crosshair label for the X-axis; otherwise, false. + */ + showAxisXLabels: boolean; + /** + * Gets a value indicating whether it is necessary to show a crosshair label for the Y-axis. + * Value: true to show the crosshair label for the Y-axis; otherwise, false. + */ + showAxisYLabels: boolean; + /** + * Gets a value that defines whether a crosshair label of a series point indicated by a crosshair cursor is shown on a diagram. + * Value: true if a crosshair label indicated by a crosshair cursor is shown on a diagram; otherwise, false. + */ + showCrosshairLabels: boolean; + /** + * Gets a value that indicates whether a crosshair cursor argument line is shown for a series point on a diagram. + * Value: true if a crosshair cursor argument line is displayed on a diagram; otherwise, false. + */ + showArgumentLine: boolean; + /** + * Specifies whether to show a value line of a series point indicated by a crosshair cursor on a diagram. + * Value: true to display a value line indicated by a crosshair cursor on a diagram; otherwise, false. + */ + showValueLine: boolean; + /** + * Gets a value that specifies whether to show a crosshair cursor in a focused pane only. + * Value: true to display a crosshair cursor in a focused pane; otherwise, false. + */ + showOnlyInFocusedPane: boolean; + /** + * Specifies the current snap mode of a crosshair cursor. + * Value: A string value. + */ + snapMode: string; + /** + * Specifies the way in which the crosshair label is shown for a series on a diagram. + * Value: A string value that specifies how the crosshair label is shown for a series. + */ + crosshairLabelMode: string; + /** + * Gets a value that indicates whether to show a header for each series group in crosshair cursor labels. + * Value: true, to show a group header in crosshair cursor labels; otherwise, false. + */ + showGroupHeaders: boolean; + /** + * Gets a string which represents the pattern specifying the group header text to be displayed within the crosshair label. + * Value: A String, which represents the group header's pattern. + */ + groupHeaderPattern: string; + /** + * Gets a value that specifies whether the Crosshair cursor should show points that are out of visual range. + * Value: true if the out of visual range points should be shown in the Crosshair label; otherwise false. + */ + showOutOfRangePoints: boolean; + /** + * Gets the identifier specifying the behavior of the selection of points shown in the crosshair label. + * Value: The selection behavior identifier. + */ + valueSelectionMode: string; + /** + * Gets the color of a crosshair argument line. + * Value: A String value, specifying the color of a crosshair argument line. + */ + argumentLineColor: string; + /** + * Gets the color of a crosshair value line. + * Value: A String value, specifying the color of a crosshair value line. + */ + valueLineColor: string; +} +/** + * The chart print options storage. + */ +interface ASPxClientChartPrintOptions { + /** + * Gets the size mode used to print a chart. + */ + GetSizeMode(): string; + /** + * Sets the size mode used to print a chart. + * @param sizeMode A System.String object, specifying the name of the size mode. + */ + SetSizeMode(sizeMode: string): void; + /** + * Gets a value indicating that the landscape orientation will be used to print a chart. + */ + GetLandscape(): boolean; + /** + * Sets a value indicating that the landscape orientation will be used to print a chart. + * @param landscape A Boolean value, specifying that the landscape orientation will be used to print a chart. + */ + SetLandscape(landscape: boolean): void; + /** + * Gets the left margin which will be used to print a chart. + */ + GetMarginLeft(): number; + /** + * Sets the left margin which will be used to print a chart. + * @param marginLeft A System.Int32 value, specifying the margin in hundredths of an inch. + */ + SetMarginLeft(marginLeft: number): void; + /** + * Gets the top margin which will be used to print a chart. + */ + GetMarginTop(): number; + /** + * Sets the top margin which will be used to print a chart. + * @param marginTop A System.Int32 value, specifying the margin in hundredths of an inch. + */ + SetMarginTop(marginTop: number): void; + /** + * Gets the right margin which will be used to print a chart. + */ + GetMarginRight(): number; + /** + * Sets the right margin which will be used to print a chart. + * @param marginRight A System.Int32 value, specifying the margin in hundredths of an inch. + */ + SetMarginRight(marginRight: number): void; + /** + * Gets the bottom margin which will be used to print a chart. + */ + GetMarginBottom(): number; + /** + * Sets the bottom margin which will be used to print a chart. + * @param marginBottom A System.Int32 value, specifying the margin in hundredths of an inch. + */ + SetMarginBottom(marginBottom: number): void; + /** + * Gets the predefined size ratio of the paper which will be used to print a chart. + */ + GetPaperKind(): string; + /** + * Sets the predefined size ratio of the paper which will be used to print a chart. + * @param paperKind A System.String object, specifying the name of a size ratio. + */ + SetPaperKind(paperKind: string): void; + /** + * Gets the custom paper width which will be used to print a chart. + */ + GetCustomPaperWidth(): number; + /** + * Sets the custom paper width which will be used to print a chart. + * @param customPaperWidth A System.Int32 object, specifying the width in hundredths of an inch. + */ + SetCustomPaperWidth(customPaperWidth: number): void; + /** + * Gets the custom paper height which will be used to print a chart. + */ + GetCustomPaperHeight(): number; + /** + * Sets the custom paper height which will be used to print a chart. + * @param customPaperHeight A System.Int32 object, specifying the height in hundredths of an inch. + */ + SetCustomPaperHeight(customPaperHeight: number): void; + /** + * Gets the name of the custom paper width-height ratio used to print the chart. + */ + GetCustomPaperName(): string; + /** + * Sets the name of the custom paper width-height ratio used to print a chart. + * @param customPaperName A String object, specifying the name of the custom paper width-height ratio. + */ + SetCustomPaperName(customPaperName: string): void; +} +/** + * Represents the client-side equivalent of the CustomLegendItem class. + */ +interface ASPxClientCustomLegendItem extends ASPxClientWebChartElementNamed { + /** + * Returns the text displayed by the custom legend item. + * Value: A string value that specifies legend item text. + */ + text: string; +} +/** + * The client-side equivalent of the ASPxDocumentViewer control. + */ +interface ASPxClientDocumentViewer extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientDocumentViewer. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs when the value of an item within the Document Viewer's report toolbar is changed. + */ + ToolbarItemValueChanged: ASPxClientEvent>; + /** + * Occurs when an item within the Document Viewer's report toolbar is clicked. + */ + ToolbarItemClick: ASPxClientEvent>; + /** + * Occurs on the client side when a report page is loaded into this ASPxClientDocumentViewer instance. + */ + PageLoad: ASPxClientEvent>; + /** + * Provides access to the Splitter of the ASPxClientDocumentViewer. + */ + GetSplitter(): ASPxClientSplitter; + /** + * Provides access to the ASPxClientDocumentViewer's preview that exposes methods to print and export the document. + */ + GetViewer(): ASPxClientReportViewer; + /** + * Provides access to the Document Viewer toolbar on the client. + */ + GetToolbar(): ASPxClientReportToolbar; + /** + * Provides access to the Ribbon of the ASPxClientDocumentViewer. + */ + GetRibbonToolbar(): ASPxClientRibbon; + /** + * Provides access to the parameters panel of the ASPxClientDocumentViewer. + */ + GetParametersPanel(): ASPxClientReportParametersPanel; + /** + * Provides access to the document of the ASPxClientDocumentViewer. + */ + GetDocumentMap(): ASPxClientReportDocumentMap; + /** + * Sets focus on the report control specified by its bookmark. + * @param pageIndex An integer value, specifying the page index. + * @param bookmarkPath A String value, specifying the path to the bookmark. + */ + GotoBookmark(pageIndex: number, bookmarkPath: string): void; + /** + * Initiates a round trip to the server so that the current page will be reloaded. + */ + Refresh(): void; + /** + * Prints the current document. + */ + Print(): void; + /** + * Prints the document's page with the specified page index. + * @param pageIndex A Int32 representing the index of the page to be printed. + */ + Print(pageIndex: number): void; + /** + * Displays the specified report page. + * @param pageIndex An integer value, identifying the report page. + */ + GotoPage(pageIndex: number): void; + /** + * Invokes the Search dialog, which allows end-users to search for specific text in a report. + */ + Search(): void; + /** + * Gets a value indicating whether or not searching text across a report is permitted in the web browser. + */ + IsSearchAllowed(): boolean; + /** + * Exports a report to a file of the specified format, and shows it in a new Web Browser window. + * @param format A string specifying the format to which a report should be exported. + */ + SaveToWindow(format: string): void; + /** + * Exports a report to a file of the specified format, and saves it to the disk. + * @param format A string specifying the format to which a report should be exported. + */ + SaveToDisk(format: string): void; +} +/** + * A method that will handle the ItemValueChanged event. + */ +interface ASPxClientToolbarItemValueChangedEventHandler { + /** + * A method that will handle the ToolbarItemValueChanged event. + * @param source A Object that is the event source. + * @param e An ASPxClientToolbarItemValueChangedEventArgs object, containing the event arguments. + */ + (source: S, e: ASPxClientToolbarItemValueChangedEventArgs): void; +} +/** + * Provides data for the ItemValueChanged event. + */ +interface ASPxClientToolbarItemValueChangedEventArgs extends ASPxClientProcessingModeEventArgs { + /** + * Gets the menu item object related to the event. + * Value: An ASPxClientMenuItem object, manipulations on which forced the event to be raised. + */ + item: ASPxClientMenuItem; + /** + * Provides access to the toolbar's value editor on the client. + * Value: An ASPxClientControl descendant. + */ + editor: ASPxClientControl; +} +/** + * The client-side equivalent of the ASPxQueryBuilder control. + */ +interface ASPxClientQueryBuilder extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientQueryBuilder. + */ + CallbackError: ASPxClientEvent>; + /** + * Enables you to customize the menu actions of a Query Builder. + */ + CustomizeToolbarActions: ASPxClientEvent>; + /** + * Occurs when executing the Save command on the client. + */ + SaveCommandExecute: ASPxClientEvent>; + /** + * Sends a callback to the server with the specified argument. + * @param arg A String value, specifying the callback argument. + */ + PerformCallback(arg: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; + /** + * Updates the localization settings of the ASPxClientQueryBuilder properties. + * @param localization A dictionary containing the property names, along with their localized equivalents. + */ + UpdateLocalization(localization: { [key: string]: string; }): void; + /** + * Returns the object model of a Query Builder. + */ + GetDesignerModel(): Object; + /** + * Gets a client-side model of the currently opened query serialized to Json. + */ + GetJsonQueryModel(): string; + /** + * Saves the current query. + */ + Save(): void; + /** + * Invokes a Data Preview for the current query. + */ + ShowPreview(): void; + /** + * Specifies whether or not the current query is a valid SQL string. + */ + IsQueryValid(): boolean; +} +/** + * A method that will handle the SaveCommandExecute event. + */ +interface ASPxClientQueryBuilderSaveCommandExecuteEventHandler { + /** + * A method that will handle the SaveCommandExecute event. + * @param source The event sender. + * @param e An ASPxClientQueryBuilderSaveCommandExecuteEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientQueryBuilderSaveCommandExecuteEventArgs): void; +} +/** + * Provides data for the SaveCommandExecute event. + */ +interface ASPxClientQueryBuilderSaveCommandExecuteEventArgs extends ASPxClientEventArgs { + /** + * Specifies whether or not the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * A method that will handle the CustomizeToolbarActions event. + */ +interface ASPxClientQueryBuilderCustomizeToolbarActionsEventHandler { + /** + * A method that will handle the CustomizeToolbarActions event. + * @param source The event sender. + * @param e An ASPxClientCustomizeMenuActionsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeMenuActionsEventArgs): void; +} +/** + * The client-side equivalent of the Web Report Designer control. + */ +interface ASPxClientReportDesigner extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientReportDesigner. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs when executing the Save command on the client. + */ + SaveCommandExecute: ASPxClientEvent>; + /** + * Enables you to customize the menu actions of the Web Report Designer. + */ + CustomizeMenuActions: ASPxClientEvent>; + /** + * Occurs each time a standard editor is created for a report parameter based on a parameter type. + */ + CustomizeParameterEditors: ASPxClientEvent>; + /** + * Occurs each time a look-up editor is created for a report parameter. + */ + CustomizeParameterLookUpSource: ASPxClientEvent>; + /** + * Occurs on the client side when the Report Designer is being closed. + */ + ExitDesigner: ASPxClientEvent>; + /** + * Occurs when a report is about to be saved in the Web Report Designer. + */ + ReportSaving: ASPxClientEvent>; + /** + * Occurs when a report has been saved in the Web Report Designer. + */ + ReportSaved: ASPxClientEvent>; + /** + * Occurs when a report is about to be opened in the Web Report Designer. + */ + ReportOpening: ASPxClientEvent>; + /** + * Occurs when a report has been opened in the Web Report Designer. + */ + ReportOpened: ASPxClientEvent>; + /** + * Occurs on the client each time a server-side error raises. + */ + OnServerError: ASPxClientEvent>; + /** + * Occurs after a component has been added to the report currently being edited in the Web Report Designer. + */ + ComponentAdded: ASPxClientEvent>; + /** + * Enables you to customize UI elements of the Web Report Designer. + */ + CustomizeElements: ASPxClientEvent>; + /** + * Enables you to customize the Save dialog of the Web Report Designer. + */ + CustomizeSaveDialog: ASPxClientEvent>; + /** + * Enables you to customize the Save Report dialog of the Web Report Designer. + */ + CustomizeSaveAsDialog: ASPxClientEvent>; + /** + * Enables you to customize the Open Report dialog of the Web Report Designer. + */ + CustomizeOpenDialog: ASPxClientEvent>; + /** + * Enables you to customize the Toolbox of the Web Report Designer. + */ + CustomizeToolbox: ASPxClientEvent>; + /** + * Occurs after a report has been switched to Print Preview. + */ + PreviewDocumentReady: ASPxClientEvent>; + /** + * Occurs each time a value of an editing field changes in Print Preview. + */ + PreviewEditingFieldChanged: ASPxClientEvent>; + /** + * Enables you to customize UI elements of a Document Viewer built into a Web Report Designer. + */ + PreviewCustomizeElements: ASPxClientEvent>; + /** + * Enables you to customize the actions of a Document Viewer built into a Web Report Designer. + */ + PreviewCustomizeMenuActions: ASPxClientEvent>; + /** + * Occurs when the left mouse button has been clicked over a report document in Print Preview. + */ + PreviewClick: ASPxClientEvent>; + /** + * Occurs after report parameter values have been reset to their default values in Print Preview. + */ + PreviewParametersReset: ASPxClientEvent>; + /** + * Occurs after report parameter values have been submitted in Print Preview. + */ + PreviewParametersSubmitted: ASPxClientEvent>; + /** + * Sends a callback to the server with the specified argument. + * @param arg A String value, specifying the callback argument. + */ + PerformCallback(arg: string): void; + /** + * Sends a callback to the server and generates the server-side event, passing it the specified argument. + * @param arg A string value that represents any information that needs to be sent to the server-side event. + * @param onSuccess A client action to perform if the server round-trip completed successfully. + */ + PerformCallback(arg: string, onSuccess: (arg1: string) => void): void; + /** + * Updates the localization settings of the ASPxClientReportDesigner properties. + * @param localization A dictionary containing the property names, along with their localized equivalents. + */ + UpdateLocalization(localization: { [key: string]: string; }): void; + /** + * Returns the object model of a Web Report Designer. + */ + GetDesignerModel(): Object; + /** + * Provides access to the preview model of the ASPxClientReportDesigner. + */ + GetPreviewModel(): Object; + /** + * Returns information about the specified property of the specified control. + * @param controlType A string that specifies the control type. + * @param path A string that specifies the path to the property. + */ + GetPropertyInfo(controlType: string, path: string): ASPxDesignerElementSerializationInfo; + /** + * Returns information about the specified properties of the specified control. + * @param controlType A string that specifies the control type. + * @param path An array of strings that specify paths to properties. + */ + GetPropertyInfo(controlType: string, path: string[]): ASPxDesignerElementSerializationInfo; + /** + * Returns actions performed by buttons available in the menu and toolbar of the Web Report Designer. + */ + GetButtonStorage(): Object; + /** + * Gets a client-side model of the currently opened report serialized to Json. + */ + GetJsonReportModel(): string; + /** + * Indicates whether or not the current ASPxClientReportDesigner instance has been modified. + */ + IsModified(): boolean; + /** + * Resets the value returned by the IsModified method. + */ + ResetIsModified(): void; + /** + * Adds a custom property to the Properties Panel. + * @param groupName A string that specifies the name of group to which a property should be added. + * @param property An object that provides information required to serialize a property. + */ + AddToPropertyGrid(groupName: string, property: ASPxDesignerElementSerializationInfo): void; + /** + * Adds a custom parameter type to the Web End-User Report Designer. + * @param parameterInfo An object that provides information about a parameter type to be added. + * @param editorOptions An object that provides information about an editor used to specify parameter values in design mode. + */ + AddParameterType(parameterInfo: ASPxDesignerParameterType, editorOptions: ASPxDesignerEditorOptions): void; + /** + * Removes the specified parameter type from the Web End-User Report Designer. + * @param parameterType A string that specifies a parameter type to be deleted. + */ + RemoveParameterType(parameterType: string): void; + /** + * Returns an object that contains information on the specified parameter type. + * @param parameterType A string that specifies a parameter type. + */ + GetParameterInfo(parameterType: string): ASPxDesignerParameterType; + /** + * Returns a value editor associated with the specified parameter type. + * @param parameterType A string that specifies a parameter type. + */ + GetParameterEditor(parameterType: string): ASPxDesignerEditorOptions; + /** + * Returns the report layout stored in a report storage under the specified URL. + * @param url A string that specifies the report URL. + */ + ReportStorageGetData(url: string): any; + /** + * Stores the specified report to a report storage using the specified URL. + * @param reportLayout A string that specifies the report layout to be saved. + * @param url A string that specifies the URL used to save a report. + */ + ReportStorageSetData(reportLayout: string, url: string): any; + /** + * Stores the specified report to a report storage using a new URL. + * @param reportLayout A string that specifies the report layout to be saved. + * @param url A string that specifies the default report URL. + */ + ReportStorageSetNewData(reportLayout: string, url: string): any; + /** + * Saves the current report. + */ + SaveReport(): any; + /** + * Closes the report tab currently being opened in the Web Report Designer. + */ + CloseCurrentTab(): void; + /** + * Saves the current report under a new name. + * @param reportName A string that specifies the report name. + */ + SaveNewReport(reportName: string): any; + /** + * Returns the report URLs and display names existing in a report storage. + */ + ReportStorageGetUrls(): any; + /** + * Opens the specified report on the client side of the Web Report Designer. + * @param url A string that specifies the URL of a report to be opened. + */ + OpenReport(url: string): void; + /** + * Switches the Web Report Designer to the preview mode. + */ + ShowPreview(): void; +} +/** + * A method that will handle the SaveCommandExecute event. + */ +interface ASPxClientReportDesignerSaveCommandExecuteEventHandler { + /** + * A method that will handle the SaveCommandExecute event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerSaveCommandExecuteEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerSaveCommandExecuteEventArgs): void; +} +/** + * Provides data for the SaveCommandExecute event. + */ +interface ASPxClientReportDesignerSaveCommandExecuteEventArgs extends ASPxClientEventArgs { + /** + * Specifies whether or not the event was handled. + * Value: true if the event was handled and default processing should not occur; false if the event should be handled using default processing. + */ + handled: boolean; +} +/** + * Provides data for the ExitDesigner event. + */ +interface ASPxClientReportDesignerExitDesignerEventArgs extends ASPxClientEventArgs { +} +/** + * Provides data for the events related to opening and saving reports in the Web Report Designer. + */ +interface ASPxClientReportDesignerDialogEventArgs extends ASPxClientEventArgs { + /** + * Specifies the URL of the report currently being processed. + * Value: A string that specifies the URL of the report currently being processed. + */ + Url: string; + /** + * Specifies the report currently being processed. + * Value: An object that specifies the report currently being processed. + */ + Report: Object; + /** + * Specifies whether or not the operation performed with a report should be canceled. + * Value: true, if the operation should be canceled; otherwise, false. + */ + Cancel: boolean; +} +/** + * Provides data for the OnServerError event. + */ +interface ASPxClientReportDesignerErrorEventArgs extends ASPxClientEventArgs { + /** + * Provides access to information about a server-side error. + * Value: An object that provides information about an error. + */ + Error: Object; +} +/** + * Provides data for the ComponentAdded event. + */ +interface ASPxClientReportDesignerComponentAddedEventArgs extends ASPxClientEventArgs { + /** + * Gets the model of a component that has been added to a report. + * Value: An object that specifies the component model. + */ + Model: Object; + /** + * Gets the parent of a component that has been added to a report. + * Value: An object that specifies the component parent. + */ + Parent: Object; +} +/** + * Provides data for the CustomizeSaveDialog event. + */ +interface ASPxClientReportDesignerCustomizeSaveDialogEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the Save dialog. + * Value: An object that specifies the Save dialog. + */ + Popup: ASPxDesignerSaveDialog; + /** + * Customizes the Save dialog based on the specified template and model. + * @param template A string that specifies the name of an HTML template for the dialog. + * @param model A model of the Save dialog. + */ + Customize(template: string, model: ASPxDesignerDialogModel): void; +} +/** + * Provides data for the CustomizeSaveAsDialog event. + */ +interface ASPxClientReportDesignerCustomizeSaveAsDialogEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the Save Report dialog. + * Value: An object that specifies the Save Report dialog. + */ + Popup: ASPxDesignerSaveAsDialog; + /** + * Customizes the Save Report dialog based on the specified template and model. + * @param template A string that specifies the name of an HTML template for the dialog. + * @param model A model of the Save Report dialog. + */ + Customize(template: string, model: ASPxDesignerDialogModel): void; +} +/** + * Provides data for the CustomizeOpenDialog event. + */ +interface ASPxClientReportDesignerCustomizeOpenDialogEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the Open Report dialog. + * Value: An object that specifies the Open Report dialog. + */ + Popup: ASPxDesignerOpenDialog; + /** + * Customizes the Open Report dialog based on the specified template and model. + * @param template A string that specifies the name of an HTML template for the dialog. + * @param model A model of the Open Report dialog. + */ + Customize(template: string, model: ASPxDesignerDialogModel): void; +} +/** + * Provides data for the CustomizeToolbox event. + */ +interface ASPxClientReportDesignerCustomizeToolboxEventArgs extends ASPxClientEventArgs { + /** + * Provides information about all controls available in the Toolbox. + * Value: An ASPxDesignerControlsFactory object that provides information about toolbox controls. + */ + ControlsFactory: ASPxDesignerControlsFactory; +} +/** + * A method that will handle the CustomizeMenuActions event. + */ +interface ASPxClientReportDesignerCustomizeMenuActionsEventHandler { + /** + * A method that will handle the CustomizeMenuActions event. + * @param source The event sender. + * @param e An ASPxClientCustomizeMenuActionsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeMenuActionsEventArgs): void; +} +/** + * A method that will handle the CustomizeParameterLookUpSource event. + */ +interface ASPxClientReportDesignerCustomizeParameterLookUpSourceEventHandler { + /** + * A method that will handle the CustomizeParameterLookUpSource event. + * @param source The event sender. + * @param e An ASPxClientCustomizeParameterLookUpSourceEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeParameterLookUpSourceEventArgs): void; +} +/** + * A method that will handle the CustomizeParameterEditors event. + */ +interface ASPxClientReportDesignerCustomizeParameterEditorsEventHandler { + /** + * A method that will handle the CustomizeParameterEditors event. + * @param source The event sender. + * @param e An ASPxClientCustomizeParameterEditorsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeParameterEditorsEventArgs): void; +} +/** + * A method that will handle the CustomizeElements event. + */ +interface ASPxClientReportDesignerCustomizeElementsEventHandler { + /** + * A method that will handle the CustomizeElements event. + * @param source The event sender. + * @param e An ASPxClientCustomizeElementsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeElementsEventArgs): void; +} +/** + * A method that will handle the ExitDesigner event. + */ +interface ASPxClientReportDesignerExitDesignerEventHandler { + /** + * A method that will handle the ExitDesigner event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerExitDesignerEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerExitDesignerEventArgs): void; +} +/** + * A method that will handle the ReportSaving event. + */ +interface ASPxClientReportDesignerReportSavingEventHandler { + /** + * A method that will handle the ReportSaving event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; +} +/** + * A method that will handle the ReportSaved event. + */ +interface ASPxClientReportDesignerReportSavedEventHandler { + /** + * A method that will handle the ReportSaved event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; +} +/** + * A method that will handle the ReportOpening event. + */ +interface ASPxClientReportDesignerReportOpeningEventHandler { + /** + * A method that will handle the ReportOpening event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; +} +/** + * A method that will handle the ReportOpened event. + */ +interface ASPxClientReportDesignerReportOpenedEventHandler { + /** + * A method that will handle the ReportOpened event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerDialogEventArgs): void; +} +/** + * A method that will handle the OnServerError event. + */ +interface ASPxClientReportDesignerErrorEventHandler { + /** + * A method that will handle the OnServerError event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerErrorEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerErrorEventArgs): void; +} +/** + * A method that will handle the ComponentAdded event. + */ +interface ASPxClientReportDesignerComponentAddedEventHandler { + /** + * A method that will handle the ComponentAdded event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerComponentAddedEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerComponentAddedEventArgs): void; +} +/** + * A method that will handle the CustomizeSaveDialog event. + */ +interface ASPxClientReportDesignerCustomizeSaveDialogEventHandler { + /** + * A method that will handle the CustomizeSaveDialog event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerCustomizeSaveDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerCustomizeSaveDialogEventArgs): void; +} +/** + * A method that will handle the CustomizeSaveAsDialog event. + */ +interface ASPxClientReportDesignerCustomizeSaveAsDialogEventHandler { + /** + * A method that will handle the CustomizeSaveAsDialog event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerCustomizeSaveAsDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerCustomizeSaveAsDialogEventArgs): void; +} +/** + * A method that will handle the CustomizeOpenDialog event. + */ +interface ASPxClientReportDesignerCustomizeOpenDialogEventHandler { + /** + * A method that will handle the CustomizeOpenDialog event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerCustomizeOpenDialogEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerCustomizeOpenDialogEventArgs): void; +} +/** + * A method that will handle the CustomizeToolbox event. + */ +interface ASPxClientReportDesignerCustomizeToolboxEventHandler { + /** + * A method that will handle the CustomizeToolbox event. + * @param source The event sender. + * @param e An ASPxClientReportDesignerCustomizeToolboxEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportDesignerCustomizeToolboxEventArgs): void; +} +/** + * Provides information about a value editor used in the Property Grid. + */ +interface ASPxDesignerEditorOptions { + /** + * Provides access to the name of an HTML template specifying the editor and header of a complex object. + * Value: A string that specifies the HTML template. + */ + header: string; + /** + * Provides access to the name of an HTML template used by a complex object's editor. + * Value: A string that specifies the name of an HTML template. + */ + content: string; + /** + * Provides access to the type of the editor model. + * Value: An object that specifies the editor type. + */ + editorType: Object; +} +/** + * Provides functionality to an undo/redo engine in the Web Report Designer. + */ +interface ASPxDesignerUndoEngine { + /** + * Provides access to a value that specifies whether or not the redo action can currently be performed. + * Value: A knockout observable boolean object, whose value is true if the redo action can be performed, and false otherwise. + */ + redoEnabled: any; + /** + * Provides access to a value that specifies whether or not the undo action can currently be performed. + * Value: A knockout observable boolean object, whose value is true if the undo action can be performed, and false otherwise. + */ + undoEnabled: any; + /** + * Provides access to a value that specifies whether or not a report has been changed. + * Value: A knockout observable boolean object, whose value is true if the report has been modified, and false otherwise. + */ + isDirty: any; + /** + * Undoes all changes made to a report. + */ + undoAll(): void; + /** + * Clears information about edit operations made to a report, so they cannot not be undone. + */ + clearHistory(): void; + /** + * Undoes the last edit action in a report. + */ + undo(): void; + /** + * Reverses the results of the last undo action. + */ + redo(): void; +} +/** + * Provides functionality for a tab displayed a report in the Web Report Designer. + */ +interface ASPxDesignerNavigateTab { + /** + * Provides access to a value that specifies the display name of the current tab. + * Value: A knockout computed string that specifies the tab's display name. + */ + displayName: any; + /** + * Provides access to a value that specifies whether or not the report in the current tab has been changed. + * Value: A knockout computed boolean object, whose value is true if the report has been modified, and false otherwise. + */ + isDirty: any; + /** + * Provides access to a report opened in the current tab. + * Value: A knockout observable object that specifies a report opened in the current tab. + */ + report: any; + /** + * Provides access to an engine that manages undo and redo operations in the Web Report Designer. + * Value: An object that specifies an undo/redo engine. + */ + undoEngine: ASPxDesignerUndoEngine; + /** + * Provides access to the URL of a report opened in the current tab. + * Value: A knockout observable string that specifies the report URL. + */ + url: any; +} +/** + * A model of dialogs used to save and open reports in the Web Report Designer. + */ +interface ASPxDesignerDialogModel { + /** + * Provides access to the collection of buttons displayed in a dialog. + * Value: An array of objects that specify buttons displayed in a dialog. + */ + popupButtons: Object[]; + /** + * Specifies a function that gets the report URL. + */ + getUrl(): string; + /** + * Specifies a function that sets the report URL. + * @param url A string that specifies the report URL. + */ + setUrl(url: string): void; + /** + * Specifies a function to be executed when showing a dialog. + * @param tab An object that specifies the report tab for which a dialog is invoked. + */ + onShow(tab: ASPxDesignerNavigateTab): void; +} +/** + * Provides the base functionality for dialogs used to open and save reports on the client side of the Web Report Designer. + */ +interface ASPxDesignerReportDialogBase { + /** + * Provides access to a dialog's width. + * Value: A knockout observable object that specifies a dialog's width. + */ + width: any; + /** + * Provides access to a dialog's height. + * Value: A knockout observable object that specifies a dialog's height. + */ + height: any; + /** + * Provides access to the name of an HTML template used by a dialog. + * Value: A knockout observable string that specifies the name of the HTML template used by a dialog. + */ + template: any; + /** + * Provides access to buttons displayed in a dialog. + * Value: An array of objects that specify buttons displayed in the dialog. + */ + buttons: Object[]; + /** + * Provides access to a dialog's model. + * Value: A knockout observable object of the ASPxDesignerDialogModel type. + */ + model: any; + /** + * Provides access to a report tab for which a dialog appears. + * Value: A knockout observable object of the ASPxDesignerNavigateTab type. + */ + tab: any; + /** + * Provides access to a value that specifies a dialog's visibility state. + * Value: true, if the dialog is visible; otherwise, false; + */ + visible: any; + /** + * Provides access to a dialog's title. + * Value: A string that specifies a dialog's title. + */ + title: string; + /** + * Shows the dialog for the specified report tab. + * @param tab A report tab for which the dialog should be shown. + */ + show(tab: ASPxDesignerNavigateTab): void; + /** + * Customizes the dialog based on the specified template and model. + * @param template A string that specifies the name of an HTML template for the dialog. + * @param model An object that specifies the dialog model. + */ + customize(template: string, model: ASPxDesignerDialogModel): void; + /** + * Cancels the dialog. + */ + cancel(): void; +} +/** + * Provides functionality for the Save dialog on the client side of the Web Report Designer. + */ +interface ASPxDesignerSaveDialog extends ASPxDesignerReportDialogBase { + /** + * Provides access to the Save Report dialog that appears if a user selected to save changes in the Save dialog. + * Value: An object that specifies the Save As dialog. + */ + saveReportDialog: ASPxDesignerSaveAsDialog; + /** + * Saves the report with the specified URL. + * @param url A string that specifies an URL of the report to be saved. + */ + save(url: string): void; + /** + * Closes the dialog without saving the current report. + */ + notSave(): void; +} +/** + * Provides functionality for the Save Report dialog on the client side of the Web Report Designer. + */ +interface ASPxDesignerSaveAsDialog extends ASPxDesignerReportDialogBase { + /** + * Saves the report with the specified URL. + * @param url A string that specifies a URL of the report to be saved. + */ + save(url: string): void; +} +/** + * Provides functionality for the Open Report dialog on the client side of the Web Report Designer. + */ +interface ASPxDesignerOpenDialog extends ASPxDesignerReportDialogBase { + /** + * Opens the report with the specified URL. + * @param url A string that specifies an URL of the report to be opened. + */ + open(url: string): void; +} +/** + * Provides information about a toolbox control item. + */ +interface ASPxDesignerToolboxItem { + /** + * Provides access to information required to serialize a toolbox control. + * Value: An array of ASPxDesignerElementSerializationInfo objects that provide information required to serialize an element. + */ + info: ASPxDesignerElementSerializationInfo[]; + /** + * Provides access to a surface type of toolbox control. + * Value: A surface type of toolbox control. + */ + surfaceType: any; + /** + * Provides access to a toolbox control type. + * Value: A toolbox control type. + */ + type: any; + /** + * Provides access to a zero-based index of a control in the toolbox. + * Value: An integer value that specifies a control index in the toolbox. + */ + toolboxIndex: number; + /** + * Provides access to the default property values used for a toolbox control. + * Value: An object that specifies default propery values. + */ + defaultVal: Object; + /** + * Provides access to popular properties of a toolbox control. + * Value: An array of strings that specify names of popular properties. + */ + popularProperties: string[]; + /** + * Gets whether a control item is displayed in a toolbox. + * Value: true, if the control is available in the toolbox; otherwise, false. + */ + isToolboxItem: boolean; +} +/** + * Enables you to customize controls available in the Toolbox of the Web Report Designer. + */ +interface ASPxDesignerControlsFactory { + /** + * Returns information about the specified toolbox control. + * @param controlType A string that specifies the control type. + */ + getControlInfo(controlType: string): ASPxDesignerToolboxItem; + /** + * Returns a control type by the specified model. + * @param model An object that specifies the control model. + */ + getControlType(model: Object): string; + /** + * Registers the specified control in the Toolbox of the Web Report Designer. + * @param typeName A string that specifies the name of a custom control. + * @param metadata An ASPxDesignerToolboxItem object that provides information about a toolbox item. + */ + registerControl(typeName: string, metadata: ASPxDesignerToolboxItem): void; + /** + * Returns information about the specified property of the specified control. + * @param controlType A string that specifies the control type. + * @param propertyDisplayName A string that specifies the property display name. + */ + getPropertyInfo(controlType: string, propertyDisplayName: string): ASPxDesignerElementSerializationInfo; +} +/** + * Provides information about a report parameter type. + */ +interface ASPxDesignerParameterType { + /** + * Provides access to an actual parameter type. + * Value: A string that specifies the parameter type. + */ + value: string; + /** + * Provides access to a text displayed to end-users when creating parameters of the current type. + * Value: A string displayed to end-users. + */ + displayValue: string; + /** + * Provides access to the default value for parameters of the current type. + * Value: An object that specifies the default value. + */ + defaultVal: Object; + /** + * Provides access to the specifics of a current parameter type. + * Value: Parameter type specifics. + */ + specifics: string; + /** + * Converts the specified parameter value to the current parameter type. + * @param val An object that specifies the parameter value to be converted. + */ + valueConverter(val: Object): Object; +} +/** + * The client-side equivalent of the ASPxClientDocumentViewer control's Document Map. + */ +interface ASPxClientReportDocumentMap extends ASPxClientControl { + /** + * Occurs after the content of the Document Viewer's document map is updated. + */ + ContentChanged: ASPxClientEvent>; +} +/** + * The client-side equivalent of the ASPxClientDocumentViewer control's Parameters Panel. + */ +interface ASPxClientReportParametersPanel extends ASPxClientControl { + /** + * Assigns a value to a parameter of the report displayed in the document viewer. + * @param parametersInfo An array of ASPxClientReportParameterInfo values specifying parameters and values to assign. + */ + AssignParameters(parametersInfo: ASPxClientReportParameterInfo[]): void; + /** + * Assigns a value to a parameter of the report displayed in the document viewer. + * @param path A System.String specifying the parameter's path. + * @param value An object specifying the parameter value. + */ + AssignParameter(path: string, value: Object): void; + /** + * Returns an array storing the names of parameters available in a report. + */ + GetParameterNames(): string[]; + /** + * Returns a value editor that is associated with a parameter with the specified name. + * @param parameterName A String value, specifying the parameter name. + */ + GetEditorByParameterName(parameterName: string): ASPxClientControl; +} +/** + * Provides information about a report parameter on the client side. + */ +interface ASPxClientReportParameterInfo { + /** + * Specifies the parameter path, relative to its parent container (e.g., "subreport1.subreportParameter1" for a subreport's parameter, or "parameter1" for a report's parameter). + * Value: A String value, specifying the parameter path (e.g., "subreport1.subreportParameter1"). + */ + Path: string; + /** + * Provides access to a parameter value on the client. + * Value: A Object value. + */ + Value: Object; +} +/** + * The client-side equivalent of the ASPxClientDocumentViewer control's toolbar. + */ +interface ASPxClientReportToolbar extends ASPxClientControl { + /** + * Provides access to the control template assigned for the specified menu item. + * @param name A String value, specifying the menu item name. + */ + GetItemTemplateControl(name: string): ASPxClientControl; +} +/** + * The client-side equivalent of the ReportViewer. + */ +interface ASPxClientReportViewer extends ASPxClientControl { + /** + * Occurs when a callback for server-side processing is initiated. + */ + BeginCallback: ASPxClientEvent>; + /** + * Occurs on the client after a callback's server-side processing has been completed. + */ + EndCallback: ASPxClientEvent>; + /** + * Fires on the client if any server error occurs during server-side processing of a callback sent by the ASPxClientReportViewer. + */ + CallbackError: ASPxClientEvent>; + /** + * Occurs on the client side when another report page is loaded into this ASPxClientReportViewer instance. + */ + PageLoad: ASPxClientEvent>; + /** + * Submits the values of the specified parameters. + * @param parameters A dictionary containing the parameter names, along with their Object values. + */ + SubmitParameters(parameters: { [key: string]: Object; }): void; + /** + * Prints a report shown in the ReportViewer. + */ + Print(): void; + /** + * Prints a report page with the specified page index. + * @param pageIndex An integer value which specifies an index of the page to be printed. + */ + Print(pageIndex: number): void; + /** + * Displays a report page with the specified page index in the ReportViewer. + * @param pageIndex An integer value which specifies the index of a page to be displayed. + */ + GotoPage(pageIndex: number): void; + /** + * Initiates a round trip to the server so that the current page will be reloaded. + */ + Refresh(): void; + /** + * Invokes the Search dialog, which allows end-users to search for specific text in a report. + */ + Search(): void; + /** + * Exports a report to a file of the specified format, and shows it in a new Web Browser window. + * @param format A string specifying the format, to which a report should be exported. + */ + SaveToWindow(format: string): void; + /** + * Exports a report to a file of the specified format, and saves it to the disk. + * @param format A string specifying the format, to which a report should be exported. + */ + SaveToDisk(format: string): void; + /** + * Gets a value indicating whether or not searching text across a report is permitted in the web browser. + */ + IsSearchAllowed(): boolean; +} +/** + * A method that will handle the PageLoad events. + */ +interface ASPxClientReportViewerPageLoadEventHandler { + /** + * A method that will handle the PageLoad event. + * @param source The event sender. + * @param e An ASPxClientReportViewerPageLoadEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientReportViewerPageLoadEventArgs): void; +} +/** + * Provides data for the PageLoad events on the client side. + */ +interface ASPxClientReportViewerPageLoadEventArgs extends ASPxClientEventArgs { + /** + * Gets a value specifying a zero-based index of a page to be displayed in a report viewer. + * Returns: $ + */ + PageIndex: number; + /** + * Gets a value specifying the total number of pages displayed in a report viewer. + * Returns: $ + */ + PageCount: number; + /** + * Gets a value indicating whether a report page, which is currently loaded into the ASPxClientReportViewer, is the first page of a report. + */ + IsFirstPage(): boolean; + /** + * Gets a value indicating whether a report page, which is currently loaded into the ASPxClientReportViewer, is the last page of a report. + */ + IsLastPage(): boolean; +} +/** + * Provides data for the CustomizeParameterEditors events. + */ +interface ASPxClientCustomizeParameterEditorsEventArgs extends ASPxClientEventArgs { + /** + * Provides access to an object that stores information about a parameter. + * Value: An ASPxDesignerElementParameterDescriptor object. + */ + parameter: ASPxDesignerElementParameterDescriptor; + /** + * Provides access to an object that stores information required to serialize a parameter editor. + * Value: An ASPxDesignerElementSerializationInfo object. + */ + info: ASPxDesignerElementSerializationInfo; +} +/** + * Provides data for the CustomizeParameterLookUpSource events. + */ +interface ASPxClientCustomizeParameterLookUpSourceEventArgs extends ASPxClientEventArgs { + /** + * Provides access to an object that stores information about a parameter. + * Value: An ASPxDesignerElementParameterDescriptor object that stores information about the parameter. + */ + parameter: ASPxDesignerElementParameterDescriptor; + /** + * Provides access to the collection of look-up parameter values. + * Value: An array of ASPxDesignerElementEditorItem objects that store information about look-up parameter values. + */ + items: ASPxDesignerElementEditorItem[]; + /** + * Specifies the data source that provides look-up values for the parameter editor. + * Value: An Object specifying the data source that provides look-up values to the parameter editor. + */ + dataSource: Object; +} +/** + * Provides information about a command available in the toolbar or menu. + */ +interface ASPxClientMenuAction { + /** + * Provides access to the text for the command. + * Value: A string that is the command text. + */ + text: string; + /** + * Provides access to the CSS class of the command's glyph. + * Value: A string that specifies the name of the CSS class. + */ + imageClassName: string; + /** + * Provides access to the action performed when a button is clicked. + * Value: The specific action implementation. + */ + clickAction: Function; + /** + * Provides access to the value that specifies whether or not the command is disabled by default. + * Value: true, if the command is disabled by default; otherwise, false. + */ + disabled: boolean; + /** + * Provides access to the value that specifies whether or not the command is visible in the user interface. + * Value: true if the command is visible; otherwise false. + */ + visible: boolean; + /** + * Provides access to the keyboard shortcut used to invoke the command. + * Value: An ASPxClientMenuActionHotKey object that specifies the keyboard shortcut. + */ + hotKey: ASPxClientMenuActionHotKey; + /** + * Provides access to the value that specifies whether or not the command has a visual separator. + * Value: true, if the command has a visual separator; otherwise, false. + */ + hasSeparator: string; + /** + * Provides access to a value that specifies the command location. + * Value: A string that specifies the command location. + */ + container: string; +} +/** + * Provides information about a hot key used to perform an action assigned to a menu item. + */ +interface ASPxClientMenuActionHotKey { + /** + * Provides access to a hot key code. + * Value: An integer value that specifies the hot key code. + */ + keyCode: number; + /** + * Provides access to a value that specifies whether the CTRL key is used in combination with a hot key. + * Value: true, if the CTRL key is included into the key combination; otherwise, false. + */ + ctrlKey: boolean; +} +/** + * Provides data for the CustomizeMenuActions. + */ +interface ASPxClientCustomizeMenuActionsEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the collection of actions available in the toolbar and menu. + * Value: An array of ASPxClientMenuAction objects. + */ + Actions: ASPxClientMenuAction[]; + /** + * Returns a menu action with the specified ID. + * @param actionId A String value that specifies the action ID. + */ + GetById(actionId: string): ASPxClientMenuAction; +} +/** + * Provides data for the CustomizeElements events. + */ +interface ASPxClientCustomizeElementsEventArgs extends ASPxClientEventArgs { + /** + * Provides access to the collection of UI elements. + * Value: An array of the ASPxReportUIElement objects. + */ + Elements: ASPxReportUIElement[]; + /** + * Returns UI elements with the specified ID. + * @param templateId A string that specifies the element ID. + */ + GetById(templateId: string): ASPxReportUIElement[]; +} +/** + * Provides general information about a report parameter. + */ +interface ASPxDesignerElementParameterDescriptor { + /** + * Provides access to the parameter description. + * Value: A String value, specifying the parameter description. + */ + description: string; + /** + * Provides access to the parameter name. + * Value: A String value, specifying the parameter name. + */ + name: string; + /** + * Provides access to the parameter type. + * Value: A String value, specifying the parameter type. + */ + type: string; + /** + * Provides access to the parameter value. + * Value: A Object, specifying the parameter value. + */ + value: Object; + /** + * Provides access to the parameter visibility state. + * Value: true if the parameter is visible; otherwise false. + */ + visible: boolean; +} +/** + * Provides information required to serialize an element. + */ +interface ASPxDesignerElementSerializationInfo { + /** + * Gets the property name that will be used in the model to store the property value. + * Value: A String value. + */ + propertyName: string; + /** + * Gets the property name in the model that is displayed in the Property grid. + * Value: A String value. + */ + displayName: string; + /** + * Gets the property name that will be used during serialization to store the property value. + * Value: A String value. + */ + modelName: string; + /** + * Gets the default property value used for serialization. + * Value: A Object value. + */ + defaultVal: Object; + /** + * Gets the information about a complex object's content. + * Value: An array of ASPxDesignerElementSerializationInfo objects. + */ + info: ASPxDesignerElementSerializationInfo[]; + /** + * Gets a value indicating whether or not the property returns an array. + * Value: true if the property returns an array; otherwise false. + */ + array: boolean; + /** + * Gets a value indicating whether an object should be serialized to the ComponentStorage property. + * Value: true to serialize an object to the ObjectStorage; otherwise false. + */ + link: boolean; + /** + * Gets a value specifying the type of value editor for the Property Grid. + * Value: An ASPxDesignerElementEditor object. + */ + editor: ASPxDesignerElementEditor; + /** + * Gets the collection of values displayed in the Property grid. + * Value: An array of ASPxDesignerElementEditorItem objects. + */ + valuesArray: ASPxDesignerElementEditorItem[]; + /** + * Gets the rules for validating the property value entered into its editor. + * Value: An array of Object values. + */ + validationRules: Object[]; + /** + * Gets the visibility state of the value editor in the Property Grid. + * Value: A Object value. + */ + visible: Object; + /** + * Gets a value, indicating whether or not the property value can be edited. + * Value: true to disable the property editing; otherwise false. + */ + disabled: Object; +} +/** + * Provides information about a serialized property's value editor used in the Property Grid. + */ +interface ASPxDesignerElementEditor { + /** + * Gets the name of an HTML template specifying the editor and header of a complex object (i.e., an object having its content properties specified). + * Value: A String value. + */ + header: string; + /** + * Gets a nullable value, specifying the name of an HTML template used by a complex object's editor. + * Value: A String value. + */ + content: string; + /** + * Gets additional options for DevExtreme UI widgets. + * Value: An object that provides editor options. + */ + extendedOptions: Object; + /** + * Gets a nullable value, specifying the type of the editor's model. + * Value: A Object value. + */ + editorType: Object; +} +/** + * Provides information about property values. + */ +interface ASPxDesignerElementEditorItem { + /** + * Gets an actual property value. + * Value: A Object value. + */ + value: Object; + /** + * Gets a value displayed by a property editor. + * Value: A String value. + */ + displayValue: string; +} +/** + * Provides information about a UI element of the Web Report Designer or Web Document Viewer. + */ +interface ASPxReportUIElement { + /** + * Provides access to an element model. + * Value: An object that specifies the element model. + */ + model: Object; + /** + * Provides access to the name of an HTML template used by an element. + * Value: A string that specifies the name of the HTML template. + */ + templateName: string; +} +/** + * Provides data for the PreviewDocumentReady events. + */ +interface ASPxClientWebDocumentViewerDocumentReadyEventArgs extends ASPxClientEventArgs { + /** + * Specifies the report ID. + */ + ReportId: string; + /** + * Specifies the report document ID. + */ + DocumentId: string; + /** + * Specifies the total number of pages in a report document. + */ + PageCount: number; +} +/** + * Provides data for the PreviewEditingFieldChanged events. + */ +interface ASPxClientWebDocumentViewerEditingFieldChangedEventArgs extends ASPxClientEventArgs { + /** + * Gets an editing field whose value has been changed. + * Value: An object that specifies an editing field whose content has been changed. + */ + Field: ASPxClientWebDocumentViewerEditingField; + /** + * Provides access to a previous value of an editing field. + * Value: An object that specifies an editing field's previous value. + */ + OldValue: Object; + /** + * Provides access to a new value of an editing field. + * Value: An object that specifies an editing field's new value. + */ + NewValue: Object; +} +/** + * Provides functionality for a field whose content can be edited in the Web Document Viewer. + */ +interface ASPxClientWebDocumentViewerEditingField { + /** + * Provides access to a value that specifies whether or not an editing field's content can be customized in Print Preview. + * Returns: true, if a field cannot be edited in Print Preview; otherwise, false. + */ + readOnly: any; + /** + * Provides access to the current value of an editing field. + * Returns: An object that specifies the current field value. + */ + editValue: any; + /** + * Returns the unique identifier of an editing field. + */ + id(): string; + /** + * Returns the ID of a logical group to which an editing field for a check box belongs. + */ + groupID(): string; + /** + * Returns the name of an editor used to change a field value in Print Preview. + */ + editorName(): string; + /** + * Returns the index of the page on which an editing field is located. + */ + pageIndex(): number; +} +/** + * Provides data for the PreviewParametersSubmitted events. + */ +interface ASPxClientParametersSubmittedEventArgs extends ASPxClientEventArgs { + /** + * Provides access to a View Model for report parameters. + * Value: A View Model object. + */ + ParametersViewModel: Object; + /** + * Provides access to report parameters and their submitted values. + * Value: A dictionary containing the parameter names along with their values. + */ + Parameters: { [key: string]: Object; }; +} +/** + * Provides data for the PreviewParametersReset events. + */ +interface ASPxClientParametersResetEventArgs extends ASPxClientEventArgs { + /** + * Provides access to a View Model for report parameters. + * Value: A View Model object. + */ + ParametersViewModel: Object; + /** + * Provides access to report parameters whose values have been reset. + * Value: An ASPxClientWebDocumentViewerParameter array. + */ + Parameters: ASPxClientWebDocumentViewerParameter[]; +} +/** + * Provides general information about a report parameter on the client-side of the Web Document Viewer. + */ +interface ASPxClientWebDocumentViewerParameter { + /** + * Provides access to the current value of a report parameter. + * Value: An object that specifies the report parameter's current value. + */ + value: Object; + /** + * Provides access to a report parameter's value type. + * Value: An object that specifies the report parameter type. + */ + type: Object; + /** + * Provides access to a value that specifies whether or not a parameter can have multiple values. + * Value: true, if a parameter can have multiple values; otherwise, false. + */ + isMultiValue: boolean; + /** + * Returns an object that provides general information about a report parameter. + */ + getParameterDescriptor(): ASPxDesignerElementParameterDescriptor; +} +/** + * Provides data for the PreviewClick events. + */ +interface ASPxClientPreviewClickEventArgs extends ASPxClientEventArgs { + /** + * Gets a value specifying the zero-based index of the page that has been clicked. + * Value: An integer value that specifies a page index. + */ + PageIndex: number; + /** + * Provides information on a visual brick representing content of a report control that has been clicked. + * Value: An object that provides information on a visual brick. + */ + Brick: ASPxClientWebDocumentViewerBrick; + /** + * Specifies whether or not the event was handled and no default processing is required. + * Value: true, if the event is completely handled by custom code and no default processing is required; otherwise, false. + */ + Handled: boolean; + /** + * Specifies the default function used to handle the PreviewClick event. + */ + DefaultHandler(): void; + /** + * Returns the text displayed by the Brick. + */ + GetBrickText(): string; + /** + * Returns a string providing additional information on the Brick. + */ + GetBrickValue(): string; +} +/** + * Provides information about a visual brick used to render a report control to construct a document in the Web Document Viewer. + */ +interface ASPxClientWebDocumentViewerBrick { + /** + * Provides access to a brick's content. + * Value: A dictionary that stores content keys along with the corresponding contents. + */ + content: { [key: string]: string; }; + /** + * Provides access to navigation settings of the current brick. + * Value: An object that provides a brick's navigation settings. + */ + navigation: ASPxClientWebDocumentViewerBrickNavigation; + /** + * Provides access to a brick's top vertical coordinate. + * Value: An integer value that specifies the brick's top coordinate. + */ + top: number; + /** + * Provides access to a brick's left horizontal coordinate. + * Value: An integer value that specifies the brick's left coordinate. + */ + left: number; + /** + * Provides access to a brick's width. + * Value: An integer value that specifies the brick width. + */ + width: number; + /** + * Provides access to a brick's height. + * Value: An integer value that specifies the brick height. + */ + height: number; + /** + * Provides access to a value that specifies whether or not the right-to-left feature is enabled for a brick. + * Value: true, if the right-to-left feature is enabled; otherwise, false. + */ + rtl: boolean; +} +/** + * Provides navigation settings for a brick used to construct a document in the Web Document Viewer. + */ +interface ASPxClientWebDocumentViewerBrickNavigation { + /** + * Provides access to the URL to navigate to when a brick is a clicked. + * Value: A string that specifies the URL. + */ + url: string; + /** + * Provides access to a value that specifies the target window or frame in which to display the linked Web page's content when the brick is clicked. + * Value: A string that specifies the window or frame to which to target the URL's content. + */ + target: string; + /** + * Provides access to a drill-down key. + * Value: A string that specifies a drill-down key. + */ + drillDownKey: string; +} +/** + * A client-side equivalent of the ASPxWebDocumentViewer class. + */ +interface ASPxClientWebDocumentViewer extends ASPxClientControl { + /** + * Occurs after a report document has been loaded to the Web Document Viewer. + */ + DocumentReady: ASPxClientEvent>; + /** + * Occurs each time a value of an editing field changes. + */ + EditingFieldChanged: ASPxClientEvent>; + /** + * Enables you to customize UI elements of the Web Document Viewer. + */ + CustomizeElements: ASPxClientEvent>; + /** + * Enables you to customize the menu actions of a Web Document Viewer. + */ + CustomizeMenuActions: ASPxClientEvent>; + /** + * Occurs each time a standard editor is created for a report parameter based on a parameter type. + */ + CustomizeParameterEditors: ASPxClientEvent>; + /** + * Occurs each time a look-up editor is created for a report parameter. + */ + CustomizeParameterLookUpSource: ASPxClientEvent>; + /** + * Occurs when the left mouse button has been clicked over a report document. + */ + PreviewClick: ASPxClientEvent>; + /** + * Occurs after report parameter values have been reset to their default values. + */ + ParametersReset: ASPxClientEvent>; + /** + * Occurs after report parameter values have been submitted. + */ + ParametersSubmitted: ASPxClientEvent>; + /** + * Provides access to the preview model of the ASPxClientWebDocumentViewer. + */ + GetPreviewModel(): Object; + /** + * Returns a model for a report parameter. + */ + GetParametersModel(): Object; + /** + * Opens the specified report on the client side of the Web Document Viewer. + * @param url A string that specifies the URL of a report to be opened. + */ + OpenReport(url: string): any; + /** + * Prints the current document. + */ + Print(): void; + /** + * Prints the document's page with the specified index. + * @param pageIndex An index of the page to be printed. + */ + Print(pageIndex: number): void; + /** + * Exports the document to a PDF file. + */ + ExportTo(): void; + /** + * Exports the document to a specified file format. + * @param format A String value, specifying the export format. The following formats are currently supported: 'csv', 'html', 'image', 'mht', 'pdf', 'rtf', 'docx', 'txt', 'xls', and 'xlsx'. + */ + ExportTo(format: string): void; + /** + * Exports the document to a specified file format. + * @param format A String value that specifies the export format. The following formats are currently supported: 'csv', 'html', 'image', 'mht', 'pdf', 'rtf', 'docx', 'txt', 'xls', and 'xlsx'. + * @param inlineResult true, to try opening the result file in a new browser tab without a download; otherwise, false. + */ + ExportTo(format: string, inlineResult: boolean): void; + /** + * Returns the zero-based index of the currently displayed page. + */ + GetCurrentPageIndex(): number; + /** + * Displays the report page with the specified page index. + * @param pageIndex A zero-based integer value that specifies the index of a page to be displayed. + */ + GoToPage(pageIndex: number): void; + /** + * Closes the document currently being opened in the Web Document Viewer. + */ + Close(): void; + /** + * Resets the values of report parameters to their default values. + */ + ResetParameters(): void; + /** + * Starts building a report document. + */ + StartBuild(): void; + /** + * Updates the localization settings of the ASPxClientWebDocumentViewer properties. + * @param localization A dictionary containing the property names, along with their localized equivalents. + */ + UpdateLocalization(localization: { [key: string]: string; }): void; +} +/** + * A method that will handle the EditingFieldChanged event. + */ +interface ASPxClientWebDocumentViewerEditingFieldChangedEventHandler { + /** + * A method that will handle the PreviewEditingFieldChanged event. + * @param source The event sender. + * @param e An ASPxClientWebDocumentViewerEditingFieldChangedEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientWebDocumentViewerEditingFieldChangedEventArgs): void; +} +/** + * A method that will handle the DocumentReady event. + */ +interface ASPxClientWebDocumentViewerDocumentReadyEventHandler { + /** + * A method that will handle the PreviewDocumentReady event. + * @param source The event sender. + * @param e An ASPxClientWebDocumentViewerDocumentReadyEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientWebDocumentViewerDocumentReadyEventArgs): void; +} +/** + * A method that will handle the CustomizeElements event. + */ +interface ASPxClientWebDocumentViewerCustomizeElementsEventHandler { + /** + * A method that will handle the PreviewCustomizeElements event. + * @param source The event sender. + * @param e An ASPxClientCustomizeElementsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeElementsEventArgs): void; +} +/** + * A method that will handle the CustomizeMenuActions event. + */ +interface ASPxClientWebDocumentViewerCustomizeMenuActionsEventHandler { + /** + * A method that will handle the CustomizeMenuActions event. + * @param source The event sender. + * @param e An ASPxClientCustomizeMenuActionsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeMenuActionsEventArgs): void; +} +/** + * A method that will handle the CustomizeParameterEditors event. + */ +interface ASPxClientWebDocumentViewerCustomizeParameterEditorsEventHandler { + /** + * A method that will handle the CustomizeParameterEditors event. + * @param source The event sender. + * @param e An ASPxClientCustomizeParameterEditorsEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeParameterEditorsEventArgs): void; +} +/** + * A method that will handle the CustomizeParameterLookUpSource event. + */ +interface ASPxClientWebDocumentViewerCustomizeParameterLookUpSourceEventHandler { + /** + * A method that will handle the CustomizeParameterLookUpSource event. + * @param source The event sender. + * @param e An ASPxClientCustomizeParameterLookUpSourceEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientCustomizeParameterLookUpSourceEventArgs): void; +} +/** + * A method that will handle the PreviewClick event. + */ +interface ASPxClientWebDocumentViewerPreviewClickEventHandler { + /** + * A method that will handle the PreviewClick event. + * @param source The event sender. + * @param e An ASPxClientPreviewClickEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientPreviewClickEventArgs): void; +} +/** + * A method that will handle the ParametersReset event. + */ +interface ASPxClientWebDocumentViewerParametersResetEventHandler { + /** + * A method that will handle the PreviewParametersReset event. + * @param source The event sender. + * @param e An ASPxClientParametersResetEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientParametersResetEventArgs): void; +} +/** + * A method that will handle the ParametersSubmitted event. + */ +interface ASPxClientWebDocumentViewerParametersSubmittedEventHandler { + /** + * A method that will handle the PreviewParametersSubmitted event. + * @param source The event sender. + * @param e An ASPxClientParametersSubmittedEventArgs object that contains data related to the event. + */ + (source: S, e: ASPxClientParametersSubmittedEventArgs): void; +} + +interface MVCxClientDashboardViewerStatic extends ASPxClientDashboardViewerStatic { +} +interface DashboardDataAxisNamesStatic { + /** + * Identifies a default axis in all data-bound dashboard items. + */ + DefaultAxis: string; + /** + * Identifies a series axis in a chart and pie. + */ + ChartSeriesAxis: string; + /** + * Identifies an argument axis in a chart, scatter chart and pie. + */ + ChartArgumentAxis: string; + /** + * Identifies a sparkline axis in a grid and cards. + */ + SparklineAxis: string; + /** + * Identifies a pivot column axis. + */ + PivotColumnAxis: string; + /** + * Identifies a pivot row axis. + */ + PivotRowAxis: string; +} +interface DashboardSpecialValuesStatic { + /** + * Represents a null value. + */ + NullValue: string; + /** + * Represents a null value in OLAP mode. + */ + OlapNullValue: string; + /** + * Represents an Others value. + */ + OthersValue: string; + /** + * Represents an error value for calculated fields. + */ + ErrorValue: string; + /** + * Returns whether or not the specified value is an NullValue. + * @param value The specified value. + */ + IsNullValue(value: Object): boolean; + /** + * Returns whether or not the specified value is an OlapNullValue. + * @param value The specified value. + */ + IsOlapNullValue(value: Object): boolean; + /** + * Returns whether or not the specified value is an OthersValue. + * @param value The specified value. + */ + IsOthersValue(value: Object): boolean; + /** + * Returns whether or not the specified value is an ErrorValue. + * @param value The specified value. + */ + IsErrorValue(value: Object): boolean; +} +interface DashboardExportPageLayoutStatic { + /** + * The page orientation used to export a dashboard (dashboard item) is portrait. + */ + Portrait: string; + /** + * The page orientation used to export a dashboard (dashboard item) is landscape. + */ + Landscape: string; +} +interface DashboardExportPaperKindStatic { + /** + * Letter paper (8.5 in. by 11 in.). + */ + Letter: string; + /** + * Legal paper (8.5 in. by 14 in.). + */ + Legal: string; + /** + * Executive paper (7.25 in. by 10.5 in.). + */ + Executive: string; + /** + * A5 paper (148 mm by 210 mm). + */ + A5: string; + /** + * A4 paper (210 mm by 297 mm). + */ + A4: string; + /** + * A3 paper (297 mm by 420 mm). + */ + A3: string; +} +interface DashboardExportScaleModeStatic { + /** + * The dashboard (dashboard item) on the exported page retains its original size. + */ + None: string; + /** + * The size of the dashboard (dashboard item) on the exported page is changed according to the scale factor value. + */ + UseScaleFactor: string; + /** + * The size of the dashboard (dashboard item) is changed according to the width of the exported page. + */ + AutoFitToPageWidth: string; + /** + * The size of the dashboard (dashboard item) is changed to fit its content on a single page. + */ + AutoFitWithinOnePage: string; +} +interface DashboardExportFilterStateStatic { + /** + * The filter state is not included in the exported document. + */ + None: string; + /** + * The filter state is placed below the dashboard (dashboard item) in the exported document. + */ + Below: string; + /** + * The filter state is placed on a separate page in the exported document. + */ + SeparatePage: string; +} +interface DashboardStateExportPositionStatic { + /** + * The dashboard state is placed below the exported dashboard/dashboard item. + */ + Below: string; + /** + * The dashboard state is placed on a separate page. + */ + SeparatePage: string; +} +interface DashboardStateExcelExportPositionStatic { + /** + * The dashboard state is placed below the exported data. + */ + Below: string; + /** + * The dashboard state is placed on a separate sheet. + */ + SeparateSheet: string; +} +interface DashboardExportImageFormatStatic { + /** + * The PNG image format. + */ + Png: string; + /** + * The GIF image format. + */ + Gif: string; + /** + * The JPG image format. + */ + Jpg: string; +} +interface ExcelExportFilterStateStatic { + none: string; + below: string; + separatePage: string; +} +interface DashboardExportExcelFormatStatic { + /** + * The Excel 97 - Excel 2003 (XLS) file format. + */ + Xls: string; + /** + * The Office Excel 2007 XML-based (XLSX) file format. + */ + Xlsx: string; + /** + * A comma-separated values (CSV) file format. + */ + Csv: string; +} +interface ChartExportSizeModeStatic { + /** + * A chart dashboard item is exported in a size identical to that shown on the dashboard. + */ + None: string; + /** + * A chart dashboard item is stretched or shrunk to fit the page to which it is exported. + */ + Stretch: string; + /** + * A chart dashboard item is resized proportionally to best fit the exported page. + */ + Zoom: string; +} +interface MapExportSizeModeStatic { + /** + * A map dashboard item is exported in a size identical to that shown on the dashboard + */ + None: string; + /** + * A map dashboard item is resized proportionally to best fit the exported page. + */ + Zoom: string; +} +interface TreemapExportSizeModeStatic { + /** + * For internal use. + */ + none: string; + /** + * For internal use. + */ + zoom: string; +} +interface RangeFilterExportSizeModeStatic { + /** + * A Range Filter dashboard item is exported in a size identical to that shown on the dashboard. + */ + None: string; + /** + * A Range Filter dashboard item is stretched or shrunk to fit the page to which it is exported. + */ + Stretch: string; + /** + * A Range Filter dashboard item is resized proportionally to best fit the printed page. + */ + Zoom: string; +} +interface DashboardSelectionModeStatic { + None: string; + Single: string; + Multiple: string; +} +interface ASPxClientDashboardStatic extends ASPxClientControlStatic { +} +interface ASPxClientDashboardViewerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDashboardViewer; +} +interface ASPxClientEditBaseStatic extends ASPxClientControlStatic { +} +interface ASPxClientEditStatic extends ASPxClientEditBaseStatic { + /** + * Assigns a null value to all editors in a specified visibility state, which are located within a specified container and belong to a specific validation group. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value specifying the validation group's name. + * @param clearInvisibleEditors true to clear both visible and invisible editors that belong to the specified container and group; false to clear only visible editors. + */ + ClearEditorsInContainer(container: Object, validationGroup: string, clearInvisibleEditors: boolean): void; + /** + * Assigns a null value to all visible editors located within a specified container, and belonging to a specific validation group. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value specifying the validation group's name. + */ + ClearEditorsInContainer(container: Object, validationGroup: string): void; + /** + * Assigns a null value to all visible editors located within a specified container. + * @param container An HTML element specifying the container of editors to be validated. + */ + ClearEditorsInContainer(container: Object): void; + /** + * Assigns a null value to all editors which are located within the specified container object, and belonging to a specific validation group, dependent on the visibility state specified. + * @param containerId A string value specifying the editor container's identifier. + * @param validationGroup A string value specifying the validatiion group's name. + * @param clearInvisibleEditors true to clear both visible and invisible editors that belong to the specified container and group; false to clear only visible editors. + */ + ClearEditorsInContainerById(containerId: string, validationGroup: string, clearInvisibleEditors: boolean): void; + /** + * Assigns a null value to all visible editors that are located within the specified container object, and belonging to a specific validation group. + * @param containerId A string value specifying the editor container's identifier. + * @param validationGroup A string value specifying the validatiion group's name. + */ + ClearEditorsInContainerById(containerId: string, validationGroup: string): void; + /** + * Assigns a null value to all visible editors that are located within the specified container object. + * @param containerId A string value specifying the editor container's identifier. + */ + ClearEditorsInContainerById(containerId: string): void; + /** + * Assigns a null value to all editors which belong to a specific validation group, dependent on the visibility state specified. + * @param validationGroup A string value specifying the validation group's name. + * @param clearInvisibleEditors true to clear both visible and invisible editors that belong to the specified validation group; false to clear only visible editors. + */ + ClearGroup(validationGroup: string, clearInvisibleEditors: boolean): void; + /** + * Assigns a null value to all visible editors which belong to a specific validation group. + * @param validationGroup A string value specifying the validation group's name. + */ + ClearGroup(validationGroup: string): void; + /** + * Performs validation of all editors in a specified visibility state, which are located within a specified container and belong to a specific validation group. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value that specifies the validation group's name. + * @param validateInvisibleEditors true to validate both visible and invisible editors that belong to the specified container and group; false to validate only visible editors. + */ + ValidateEditorsInContainer(container: Object, validationGroup: string, validateInvisibleEditors: boolean): boolean; + /** + * Performs validation of visible editors that are located within the specified container and belong to a specific validation group. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value that specifies the validation group's name. + */ + ValidateEditorsInContainer(container: Object, validationGroup: string): boolean; + /** + * Performs validation of visible editors that are located within the specified container. + * @param container An HTML element specifying the container of editors to be validated. + */ + ValidateEditorsInContainer(container: Object): boolean; + /** + * Performs validation of the editors which are located within the specified container and belong to a specific validation group, dependent on the visibility state specified. + * @param containerId A string value specifying the editor container's identifier. + * @param validationGroup A string value that specifies the validation group's name. + * @param validateInvisibleEditors true to validate both visible and invisible editors that belong to the specified container and group; false to validate only visible editors. + */ + ValidateEditorsInContainerById(containerId: string, validationGroup: string, validateInvisibleEditors: boolean): boolean; + /** + * Performs validation of visible editors that are located within the specified container and belong to a specific validation group. + * @param containerId A string value that specifies the container's unique identifier. + * @param validationGroup A string value that specifies the validation group's name. + */ + ValidateEditorsInContainerById(containerId: string, validationGroup: string): boolean; + /** + * Performs validation of visible editors which are located within the specified container. + * @param containerId A string value that specifies the container's unique identifier. + */ + ValidateEditorsInContainerById(containerId: string): boolean; + /** + * Performs validation of editors contained within the specified validation group, dependent on the editor visibility state specified. + * @param validationGroup A string value specifying the validation group's name. + * @param validateInvisibleEditors true to validate both visible and invisible editors that belong to the specified validation group; false to validate only visible editors. + */ + ValidateGroup(validationGroup: string, validateInvisibleEditors: boolean): boolean; + /** + * Performs validation of visible editors contained within the specified validation group. + * @param validationGroup A string value specifying the validation group's name. + */ + ValidateGroup(validationGroup: string): boolean; + /** + * Verifies whether the editors in a specified visibility state, which are located within a specified container and belong to a specific validation group, are valid. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value that specifies the validation group's name. + * @param checkInvisibleEditors true to check both visible and invisible editors that belong to the specified container; false to check only visible editors. + */ + AreEditorsValid(container: Object, validationGroup: string, checkInvisibleEditors: boolean): boolean; + /** + * Verifies whether visible editors, which are located within a specified container and belong to a specific validation group, are valid. + * @param container An HTML element specifying the container of editors to be validated. + * @param validationGroup A string value that specifies the validation group's name. + */ + AreEditorsValid(container: Object, validationGroup: string): boolean; + /** + * Verifies whether visible editors located in a specified container are valid. + * @param container An HTML element specifying the container of editors to be validated. + */ + AreEditorsValid(container: Object): boolean; + /** + * Verifies whether the editors with the specified settings are valid. + * @param containerId A string value that specifies the container's unique identifier. + * @param validationGroup A string value that specifies the validation group's name. + * @param checkInvisibleEditors true to check both visible and invisible editors that belong to the specified container; false to check only visible editors. + */ + AreEditorsValid(containerId: string, validationGroup: string, checkInvisibleEditors: boolean): boolean; + /** + * Verifies whether visible editors with the specified settings are valid. + * @param containerId A string value that specifies the container's unique identifier. + * @param validationGroup A string value that specifies the validation group's name. + */ + AreEditorsValid(containerId: string, validationGroup: string): boolean; + /** + * Verifies whether visible editors with the specified settings are valid. + * @param containerId A string value that specifies the container's unique identifier. + */ + AreEditorsValid(containerId: string): boolean; + /** + * Verifies whether visible editors on a page are valid. + */ + AreEditorsValid(): boolean; +} +interface ASPxClientBinaryImageStatic extends ASPxClientEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientBinaryImage; +} +interface ASPxClientButtonStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientButton; +} +interface ASPxClientCalendarStatic extends ASPxClientEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCalendar; +} +interface ASPxClientCaptchaStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCaptcha; +} +interface ASPxClientCheckBoxStatic extends ASPxClientEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCheckBox; +} +interface ASPxClientRadioButtonStatic extends ASPxClientCheckBoxStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRadioButton; +} +interface ASPxClientTextEditStatic extends ASPxClientEditStatic { +} +interface ASPxClientTextBoxBaseStatic extends ASPxClientTextEditStatic { +} +interface ASPxClientButtonEditBaseStatic extends ASPxClientTextBoxBaseStatic { +} +interface ASPxClientDropDownEditBaseStatic extends ASPxClientButtonEditBaseStatic { +} +interface ASPxClientColorEditStatic extends ASPxClientDropDownEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientColorEdit; +} +interface ASPxClientComboBoxStatic extends ASPxClientDropDownEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientComboBox; +} +interface ASPxClientDateEditStatic extends ASPxClientDropDownEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDateEdit; +} +interface ASPxClientDropDownEditStatic extends ASPxClientDropDownEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDropDownEdit; +} +interface ASPxClientFilterControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientFilterControl; +} +interface ASPxClientListEditStatic extends ASPxClientEditStatic { +} +interface ASPxClientListBoxStatic extends ASPxClientListEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientListBox; +} +interface ASPxClientCheckListBaseStatic extends ASPxClientListEditStatic { +} +interface ASPxClientRadioButtonListStatic extends ASPxClientCheckListBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRadioButtonList; +} +interface ASPxClientCheckBoxListStatic extends ASPxClientCheckListBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCheckBoxList; +} +interface ASPxClientProgressBarStatic extends ASPxClientEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientProgressBar; +} +interface ASPxClientSpinEditBaseStatic extends ASPxClientButtonEditBaseStatic { +} +interface ASPxClientSpinEditStatic extends ASPxClientSpinEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientSpinEdit; +} +interface ASPxClientTimeEditStatic extends ASPxClientSpinEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTimeEdit; +} +interface ASPxClientStaticEditStatic extends ASPxClientEditBaseStatic { +} +interface ASPxClientHyperLinkStatic extends ASPxClientStaticEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientHyperLink; +} +interface ASPxClientImageBaseStatic extends ASPxClientStaticEditStatic { +} +interface ASPxClientImageStatic extends ASPxClientImageBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientImage; +} +interface ASPxClientLabelStatic extends ASPxClientStaticEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientLabel; +} +interface ASPxClientTextBoxStatic extends ASPxClientTextBoxBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTextBox; +} +interface ASPxClientMemoStatic extends ASPxClientTextEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientMemo; +} +interface ASPxClientButtonEditStatic extends ASPxClientButtonEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientButtonEdit; +} +interface ASPxClientTokenBoxStatic extends ASPxClientComboBoxStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTokenBox; +} +interface ASPxClientTrackBarStatic extends ASPxClientEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTrackBar; +} +interface ASPxClientValidationSummaryStatic extends ASPxClientControlStatic { +} +interface ASPxClientGaugeControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientGaugeControl; +} +interface ASPxClientGridBaseStatic extends ASPxClientControlStatic { +} +interface ASPxClientGridViewCallbackCommandStatic { + /** + * Default value: "NEXTPAGE" + */ + NextPage: string; + /** + * Default value: "PREVPAGE" + */ + PreviousPage: string; + /** + * Default value: "GOTOPAGE" + */ + GotoPage: string; + /** + * Default value: "SELECTROWS" + */ + SelectRows: string; + /** + * Default value: "SELECTROWSKEY" + */ + SelectRowsKey: string; + /** + * Default value: "SELECTION" + */ + Selection: string; + /** + * Default value: "FOCUSEDROW" + */ + FocusedRow: string; + /** + * Default value: "GROUP" + */ + Group: string; + /** + * Default value: "UNGROUP" + */ + UnGroup: string; + /** + * Default value: "SORT" + */ + Sort: string; + /** + * Default value: "COLUMNMOVE" + */ + ColumnMove: string; + /** + * Default value: "COLLAPSEALL" + */ + CollapseAll: string; + /** + * Default value: "EXPANDALL" + */ + ExpandAll: string; + /** + * Default value: "EXPANDROW" + */ + ExpandRow: string; + /** + * Default value: "COLLAPSEROW" + */ + CollapseRow: string; + /** + * Default value: "HIDEALLDETAIL" + */ + HideAllDetail: string; + /** + * Default value: "SHOWALLDETAIL" + */ + ShowAllDetail: string; + /** + * Default value: "SHOWDETAILROW" + */ + ShowDetailRow: string; + /** + * Default value: "HIDEDETAILROW" + */ + HideDetailRow: string; + /** + * Default value: "PAGERONCLICK" + */ + PagerOnClick: string; + /** + * Default value: "APPLYFILTER" + */ + ApplyFilter: string; + /** + * Default value: "APPLYCOLUMNFILTER" + */ + ApplyColumnFilter: string; + /** + * Default value: "APPLYMULTICOLUMNFILTER" + */ + ApplyMultiColumnFilter: string; + /** + * Default value: "APPLYHEADERCOLUMNFILTER" + */ + ApplyHeaderColumnFilter: string; + /** + * Default value: "APPLYSEARCHPANELFILTER" + */ + ApplySearchPanelFilter: string; + /** + * Default value: "APPLYCUSTOMIZATIONDIALOGCHANGES" + */ + ApplyCustomizationDialogChanges: string; + /** + * Default value: "FILTERROWMENU" + */ + FilterRowMenu: string; + /** + * Default value: "STARTEDIT" + */ + StartEdit: string; + /** + * Default value: "CANCELEDIT" + */ + CancelEdit: string; + /** + * Default value: "UPDATEEDIT" + */ + UpdateEdit: string; + /** + * Default value: "ADDNEWROW" + */ + AddNewRow: string; + /** + * Default value: "DELETEROW" + */ + DeleteRow: string; + /** + * Default value: "CUSTOMBUTTON" + */ + CustomButton: string; + /** + * Default value: "CUSTOMCALLBACK" + */ + CustomCallback: string; + /** + * Default value: "SHOWFILTERCONTROL" + */ + ShowFilterControl: string; + /** + * Default value: "CLOSEFILTERCONTROL" + */ + CloseFilterControl: string; + /** + * Default value: "SETFILTERENABLED" + */ + SetFilterEnabled: string; + /** + * Default value: "REFRESH" + */ + Refresh: string; + /** + * Default value: "SELFIELDVALUES" + */ + SelFieldValues: string; + /** + * Default value: "ROWVALUES" + */ + RowValues: string; + /** + * Default value: "PAGEROWVALUES" + */ + PageRowValues: string; + /** + * Default value: "FILTERPOPUP" + */ + FilterPopup: string; + /** + * Default value: "CONTEXTMENU" + */ + ContextMenu: string; + /** + * Default value: "TOOLBAR" + */ + Toolbar: string; + /** + * Default value: "CUSTOMVALUES" + */ + CustomValues: string; +} +interface ASPxClientGridLookupStatic extends ASPxClientDropDownEditBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientGridLookup; +} +interface ASPxClientCardViewStatic extends ASPxClientGridBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCardView; +} +interface ASPxClientGridViewStatic extends ASPxClientGridBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientGridView; +} +interface ASPxClientVerticalGridStatic extends ASPxClientGridBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientVerticalGrid; +} +interface ASPxClientVerticalGridCallbackCommandStatic { + /** + * Default value: "EXPANDROW" + */ + ExpandRow: string; +} +interface ASPxClientCommandConstsStatic { + /** + * Identifies a command that shows a search panel. + * Value: "showsearchpanel" + */ + SHOWSEARCHPANEL_COMMAND: string; + /** + * Identifies a command that invokes the Find and Replace dialog. + * Value: "findandreplacedialog" + */ + FINDANDREPLACE_DIALOG_COMMAND: string; + /** + * Identifies a command that applies the bold text formatting to the selected text. If it's already applied, cancels it. + * Value: "bold" + */ + BOLD_COMMAND: string; + /** + * Identifies a command that makes the selected text italic or regular type depending on the current state. + * Value: "italic" + */ + ITALIC_COMMAND: string; + /** + * Identifies a command that applies the underline text formatting to the selected text. If it's already applied, cancels it. + * Value: "underline" + */ + UNDERLINE_COMMAND: string; + /** + * Identifies a command that applies the strike through text formatting to the selected text. If it's already applied, cancels it. + * Value: "strikethrough" + */ + STRIKETHROUGH_COMMAND: string; + /** + * Identifies a command that applies the superscript text formatting to the selected text. If it's already applied, cancels it. + * Value: "superscript" + */ + SUPERSCRIPT_COMMAND: string; + /** + * Identifies a command that applies the subscript text formatting to the selected text. If it's already applied, cancels it. + * Value: "subscript" + */ + SUBSCRIPT_COMMAND: string; + /** + * Identifies a command that centers the content of the currently focused paragraph. + * Value: "justifycenter" + */ + JUSTIFYCENTER_COMMAND: string; + /** + * Identifies a command that left justifies the content of the currently focused paragraph. + * Value: "justifyleft" + */ + JUSTIFYLEFT_COMMAND: string; + /** + * Identifies a command that creates an indent for the selected paragarph. + * Value: "indent" + */ + INDENT_COMMAND: string; + /** + * Identifies a command that creates an outdent for the focused paragarph. + * Value: "outdent" + */ + OUTDENT_COMMAND: string; + /** + * Identifies a command that right justifies the content of the currently focused paragraph. + * Value: "justifyright" + */ + JUSTIFYRIGHT_COMMAND: string; + /** + * Identifies a command that fully justifies the content of the currently focused paragraph (aligned with both the left and right margines). + * Value: "justifyfull" + */ + JUSTIFYFULL_COMMAND: string; + /** + * Identifies a command that changes the size of the selected text. + * Value: "fontsize" + */ + FONTSIZE_COMMAND: string; + /** + * Identifies a command that changes the font of the selected text. + * Value: "fontname" + */ + FONTNAME_COMMAND: string; + /** + * Identifies a command that changes the color of a fore color pickers and sets the selected text fore color. + * Value: "forecolor" + */ + FONTCOLOR_COMMAND: string; + /** + * Identifies a command that changes the color of a back color pickers and sets the selected text back color. + * Value: "backcolor" + */ + BACKCOLOR_COMMAND: string; + /** + * Identifies a command that wraps the selected paragraph in the specified html tag. + * Value: "formatblock" + */ + FORMATBLOCK_COMMAND: string; + /** + * Identifies a command that wraps the currently selected text content in a specific html tag with a css class assigned to it. + * Value: "applycss" + */ + APPLYCSS_COMMAND: string; + /** + * Identifies a command that removes all formatting from the selected content. + * Value: "removeformat" + */ + REMOVEFORMAT_COMMAND: string; + /** + * Identifies a command that cancels the last action. + * Value: "undo" + */ + UNDO_COMMAND: string; + /** + * Identifies a command that returns a previously canceled action. + * Value: "redo" + */ + REDO_COMMAND: string; + /** + * Identifies a command that copies the selected content. + * Value: "copy" + */ + COPY_COMMAND: string; + /** + * Identifies a command that pastes the content of the clipboard at the current cursor position. + * Value: "paste" + */ + PASTE_COMMAND: string; + /** + * Identifies a command that pastes a specified content taking into account that it was copied from Word. + * Value: "pastefromword" + */ + PASTEFROMWORD_COMMAND: string; + /** + * Identifies a command that invokes the Paste from Word dialog. + * Value: "pastefromworddialog" + */ + PASTEFROMWORDDIALOG_COMMAND: string; + /** + * Identifies a command that cuts the selected content. + * Value: "cut" + */ + CUT_COMMAND: string; + /** + * Identifies a command that selects all content inside the html editor. + * Value: "selectall" + */ + SELECT_ALL: string; + /** + * Identifies a command that deletes the selected content. + * Value: "delete" + */ + DELETE_COMMAND: string; + /** + * Identifies a command that can be used to correctly insert HTML code into the editor. + * Value: "pastehtml" + */ + PASTEHTML_COMMAND: string; + /** + * Identifies a command that inserts a new ordered list. + * Value: "insertorderedlist" + */ + INSERTORDEREDLIST_COMMAND: string; + /** + * Identifies a command that inserts a new unordered list. + * Value: "insertunorderedlist" + */ + INSERTUNORDEREDLIST_COMMAND: string; + /** + * Identifies a command that restarts the current ordered list. + * Value: "restartorderedlist" + */ + RESTARTORDEREDLIST_COMMAND: string; + /** + * Identifies a command that continues a disrupted ordered list. + * Value: "continueorderedlist" + */ + CONTINUEORDEREDLIST_COMMAND: string; + /** + * Identifies a command that removes a hyperlink from the selected text or image. + * Value: "unlink" + */ + UNLINK_COMMAND: string; + /** + * Identifies a command that inserts a new hyperlink. + * Value: "insertlink" + */ + INSERTLINK_COMMAND: string; + /** + * Identifies a command that inserts a new image. + * Value: "insertimage" + */ + INSERTIMAGE_COMMAND: string; + /** + * Identifies a command that changes the selected image. + * Value: "changeimage" + */ + CHANGEIMAGE_COMMAND: string; + /** + * Identifies a command that initiates spell checking. + * Value: "checkspelling" + */ + CHECKSPELLING_COMMAND: string; + /** + * Identifies a command that invokes the Insert Image dialog. + * Value: "insertimagedialog" + */ + INSERTIMAGE_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Image dialog. + * Value: "changeimagedialog" + */ + CHANGEIMAGE_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Insert Link dialog. + * Value: "insertlinkdialog" + */ + INSERTLINK_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Link dialog. + * Value: "changelinkdialog" + */ + CHANGELINK_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Insert Table dialog. + * Value: "inserttabledialog" + */ + INSERTTABLE_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Table Properties dialog. + * Value: "tablepropertiesdialog" + */ + TABLEPROPERTIES_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Cell Properties dialog. + * Value: "tablecellpropertiesdialog" + */ + TABLECELLPROPERTIES_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Column Properties dialog. + * Value: "tablecolumnpropertiesdialog" + */ + TABLECOLUMNPROPERTIES_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Row Properties dialog. + * Value: "tablerowpropertiesdialog" + */ + TABLEROWPROPERTIES_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes a default browser Print dialog, allowing an end-user to print the content of the html editor. + * Value: "print" + */ + PRINT_COMMAND: string; + /** + * Identifies a command that toggles the full-screen mode. + * Value: "fullscreen" + */ + FULLSCREEN_COMMAND: string; + /** + * Identifies a command that inserts a new table. + * Value: "inserttable" + */ + INSERTTABLE_COMMAND: string; + /** + * Identifies a command that changes the selected table. + * Value: "changetable" + */ + CHANGETABLE_COMMAND: string; + /** + * Identifies a command that changes the selected table cell. + * Value: "changetablecell" + */ + CHANGETABLECELL_COMMAND: string; + /** + * Identifies a command that changes the selected table row. + * Value: "changetablerow" + */ + CHANGETABLEROW_COMMAND: string; + /** + * Identifies a command that changes the selected table column. + * Value: "changetablecolumn" + */ + CHANGETABLECOLUMN_COMMAND: string; + /** + * Identifies a command that deletes the currently selected table. + * Value: "deletetable" + */ + DELETETABLE_COMMAND: string; + /** + * Identifies a command that deletes the currently selected table row. + * Value: "deletetablerow" + */ + DELETETABLEROW_COMMAND: string; + /** + * Identifies a command that deletes the currently selected table column. + * Value: "deletetablecolumn" + */ + DELETETABLECOLUMN_COMMAND: string; + /** + * Identifies a command that inserts a new column to the left from the currently focused one. + * Value: "inserttablecolumntoleft" + */ + INSERTTABLECOLUMNTOLEFT_COMMAND: string; + /** + * Identifies a command that inserts a new column to the right from the currently focused one. + * Value: "inserttablecolumntoright" + */ + INSERTTABLECOLUMNTORIGHT_COMMAND: string; + /** + * Identifies a command that inserts a new row below the currently focused one. + * Value: "inserttablerowbelow" + */ + INSERTTABLEROWBELOW_COMMAND: string; + /** + * Identifies a command that inserts a new row above the currently focused one. + * Value: "inserttablerowabove" + */ + INSERTTABLEROWABOVE_COMMAND: string; + /** + * Identifies a command that splits the current table cell horizontally. + * Value: "splittablecellhorizontally" + */ + SPLITTABLECELLHORIZONTALLY_COMMAND: string; + /** + * Identifies a command that splits the current table cell vertically. + * Value: "splittablecellvertically" + */ + SPLITTABLECELLVERTICALLY_COMMAND: string; + /** + * Identifies a command that merges the focused table cell with the one to the right. + * Value: "mergetablecellright" + */ + MERGETABLECELLRIGHT_COMMAND: string; + /** + * Identifies a command that merges the focused table cell with the one below. + * Value: "mergetablecelldown" + */ + MERGETABLECELLDOWN_COMMAND: string; + /** + * Identifies a command that invokes a custom dialog. + * Value: "customdialog" + */ + CUSTOMDIALOG_COMMAND: string; + /** + * Identifies a command that exports the html editor content. + * Value: "export" + */ + EXPORT_COMMAND: string; + /** + * Identifies a command that inserts a new audio element. + * Value: "insertaudio" + */ + INSERTAUDIO_COMMAND: string; + /** + * Identifies a command that inserts a new video. + * Value: "insertvideo" + */ + INSERTVIDEO_COMMAND: string; + /** + * Identifies a command that inserts a new flash element. + * Value: "insertflash" + */ + INSERTFLASH_COMMAND: string; + /** + * Identifies a command that inserts a new YouTube video. + * Value: "insertyoutubevideo" + */ + INSERTYOUTUBEVIDEO_COMMAND: string; + /** + * Identifies a command that changes the selected audio element. + * Value: "changeaudio" + */ + CHANGEAUDIO_COMMAND: string; + /** + * Identifies a command that changes the selected video element. + * Value: "changevideo" + */ + CHANGEVIDEO_COMMAND: string; + /** + * Identifies a command that changes the selected flash element. + * Value: "changeflash" + */ + CHANGEFLASH_COMMAND: string; + /** + * Identifies a command that changes the selected YouTube video element. + * Value: "changeyoutubevideo" + */ + CHANGEYOUTUBEVIDEO_COMMAND: string; + /** + * Identifies a command that invokes the Insert Audio dialog. + * Value: "insertaudiodialog" + */ + INSERTAUDIO_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Insert Video dialog. + * Value: "insertvideodialog" + */ + INSERTVIDEO_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Insert Flash dialog. + * Value: "insertflashdialog" + */ + INSERTFLASH_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Insert YouTube Video dialog. + * Value: "insertyoutubevideodialog" + */ + INSERTYOUTUBEVIDEO_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Audio dialog. + * Value: "changeaudiodialog" + */ + CHANGEAUDIO_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Video dialog. + * Value: "changevideodialog" + */ + CHANGEVIDEO_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Flash dialog. + * Value: "changeflash" + */ + CHANGEFLASH_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change YouTube Video dialog. + * Value: "changeyoutubevideodialog" + */ + CHANGEYOUTUBEVIDEO_DIALOG_COMMAND: string; + /** + * Identifies a command that pastes the content of the clipboard to the current cursor position, taking into account that the PasteMode property is set to SourceFormatting. + * Value: "pastehtmlsourceformatting" + */ + PASTEHTMLSOURCEFORMATTING_COMMAND: string; + /** + * Identifies a command that pastes the content of the clipboard to the current cursor position, taking into account that the PasteMode property is set to PlainText. + * Value: "pastehtmlplaintext" + */ + PASTEHTMLPLAINTEXT_COMMAND: string; + /** + * Identifies a command that pastes the content of the clipboard to the current cursor position, taking into account that the PasteMode property is set to MergeFormatting. + * Value: "pastehtmlmergeformatting" + */ + PASTEHTMLMERGEFORMATTING_COMMAND: string; + /** + * Identifies a command that inserts a new placeholder. + * Value: "insertplaceholder" + */ + INSERTPLACEHOLDER_COMMAND: string; + /** + * Identifies a command that changes the selected placeholder. + * Value: "changeplaceholder" + */ + CHANGEPLACEHOLDER_COMMAND: string; + /** + * Identifies a command that invokes the Insert Placeholder dialog. + * Value: "insertplaceholderdialog" + */ + INSERTPLACEHOLDER_DIALOG_COMMAND: string; + /** + * Identifies a command that invokes the Change Placeholder dialog. + * Value: "changeplaceholderdialog" + */ + CHANGEPLACEHOLDER_DIALOG_COMMAND: string; + /** + * Identifies a command that updates the editor content. + * Value: "updatedocument" + */ + UPDATEDOCUMENT_COMMAND: string; + /** + * Identifies a command that changes properties of the element selected in the tag inspector. + * Value: "changeelementproperties" + */ + CHANGEELEMENTPROPERTIES_COMMAND: string; + /** + * Identifies a command that invokes the Change Element Properties dialog. + * Value: "changeelementpropertiesdialog" + */ + CHANGEELEMENTPROPERTIES_DIALOG_COMMAND: string; + /** + * Identifies a command that comments the selected HTML code. If no code is selected, it comments the focused tag. + * Value: "comment" + */ + COMMENT_COMMAND: string; + /** + * Identifies a command that uncomments the selected HTML code. If no code is selected, the command uncomments the currently focused tag. + * Value: "uncomment" + */ + UNCOMMENTHTML_COMMAND: string; + /** + * Identifies a command that formats the current HTML document. + * Value: "formatdocument" + */ + FORMATDOCUMENT_COMMAND: string; + /** + * Identifies a command that applies the indent formatting to the selected content. + * Value: "indent" + */ + INDENTLINE_COMMAND: string; + /** + * Identifies a command that applies the outdent formatting to the focused content. + * Value: "outdent" + */ + OUTDENTLINE_COMMAND: string; + /** + * Identifies a command that collapses the selected HTML tag. + * Value: "collapsetag" + */ + COLLAPSETAG_COMMAND: string; + /** + * Identifies a command that expands the selected HTML tag. + * Value: "expandtag" + */ + EXPANDTAG_COMMAND: string; + /** + * Identifies a command that shows intellisense for the HTML code editor. + * Value: "showintellisense" + */ + SHOWINTELLISENSE_COMMAND: string; +} +interface ASPxClientHtmlEditorStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientHtmlEditor; + /** + * Programmatically closes a custom dialog, supplying it with specific parameters. + * @param status An object representing a custom dialog's closing status. + * @param data An object representing custom data associated with a custom dialog. + */ + CustomDialogComplete(status: Object, data: Object): void; +} +interface ASPxClientHtmlEditorMediaPreloadModeStatic { + /** + * The browser does not load a media file when the page loads. + */ + None: string; + /** + * The browser loads the entire video when the page loads. + */ + Auto: string; + /** + * The browser loads only metadata when the page loads. + */ + Metadata: string; +} +interface ASPxClientPivotGridStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPivotGrid; +} +interface ASPxClientPivotCustomizationStatic extends ASPxClientControlStatic { +} +interface ASPxClientRichEditStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRichEdit; +} +interface ASPxSchedulerDateTimeHelperStatic { + /** + * Returns the date part of the specified DateTime value. + * @param date A DateTime object from which to extract the date. + */ + TruncToDate(date: Date): Date; + /** + * Returns the day time part of the specified DateTime value. + * @param date A DateTime object from which to extract the day time. + */ + ToDayTime(date: Date): any; + /** + * Adds the specified number of days to a DateTime object and returns the result. + * @param date A DateTime object to which to add days. + * @param dayCount The number of days to add. + */ + AddDays(date: Date, dayCount: number): Date; + /** + * Adds the specified timespan to a DateTime object and returns the result. + * @param date A DateTime object to which to add a timespan. + * @param timeSpan A TimeSpan object specifying the timespan to add. + */ + AddTimeSpan(date: Date, timeSpan: any): Date; + /** + * Rounds a DateTime value up to the nearest interval. + * @param date A DateTime object containing a value to round. + * @param spanInMs A TimeSpan object specifying an interval to which to round. + */ + CeilDateTime(date: Date, spanInMs: any): Date; +} +interface ASPxClientWeekDaysCheckEditStatic extends ASPxClientControlStatic { +} +interface ASPxClientRecurrenceRangeControlStatic extends ASPxClientControlStatic { +} +interface ASPxClientRecurrenceControlBaseStatic extends ASPxClientControlStatic { +} +interface ASPxClientDailyRecurrenceControlStatic extends ASPxClientRecurrenceControlBaseStatic { +} +interface ASPxClientWeeklyRecurrenceControlStatic extends ASPxClientRecurrenceControlBaseStatic { +} +interface ASPxClientMonthlyRecurrenceControlStatic extends ASPxClientRecurrenceControlBaseStatic { +} +interface ASPxClientYearlyRecurrenceControlStatic extends ASPxClientRecurrenceControlBaseStatic { +} +interface ASPxClientRecurrenceTypeEditStatic extends ASPxClientRadioButtonListStatic { +} +interface ASPxClientTimeIntervalStatic { + /** + * Gets the duration of a time interval between two points in time. + * @param start A DateTime object specifying the starting point of the time interval. + * @param end A DateTime object specifying the ending point of the time interval. + */ + CalculateDuration(start: Date, end: Date): number; +} +interface ASPxClientSchedulerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientScheduler; +} +interface ASPxClientSpellCheckerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientSpellChecker; +} +interface ASPxClientSpellCheckerStopCheckingReasonStatic { + /** + * Spell checking is finished normally. + */ + Default: string; + /** + * The user stopped spell checking. + */ + User: string; +} +interface ASPxClientSpreadsheetStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientSpreadsheet; +} +interface ASPxClientTreeListStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTreeList; +} +interface BootstrapClientAccordionStatic extends ASPxClientNavBarStatic { +} +interface BootstrapClientBinaryImageStatic extends ASPxClientHyperLinkStatic { +} +interface BootstrapClientButtonStatic extends ASPxClientButtonStatic { +} +interface BootstrapClientCalendarStatic extends ASPxClientCalendarStatic { +} +interface BootstrapClientCallbackPanelStatic extends ASPxClientControlStatic { +} +interface BootstrapClientChartBaseStatic extends ASPxClientControlStatic { +} +interface BootstrapClientChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientPolarChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientPieChartStatic extends BootstrapClientChartBaseStatic { +} +interface BootstrapClientCheckBoxStatic extends ASPxClientEditStatic { +} +interface BootstrapClientRadioButtonStatic extends BootstrapClientCheckBoxStatic { +} +interface BootstrapClientComboBoxStatic extends ASPxClientComboBoxStatic { +} +interface BootstrapClientDateEditStatic extends ASPxClientDateEditStatic { +} +interface BootstrapClientDropDownEditStatic extends ASPxClientDropDownEditStatic { +} +interface BootstrapClientFormLayoutStatic extends ASPxClientFormLayoutStatic { +} +interface BootstrapClientHyperLinkStatic extends ASPxClientHyperLinkStatic { +} +interface BootstrapClientImageStatic extends ASPxClientImageStatic { +} +interface BootstrapClientListBoxStatic extends ASPxClientListBoxStatic { +} +interface BootstrapClientCheckBoxListStatic extends ASPxClientCheckBoxListStatic { +} +interface BootstrapClientRadioButtonListStatic extends ASPxClientRadioButtonListStatic { +} +interface BootstrapClientMenuStatic extends ASPxClientMenuStatic { +} +interface BootstrapClientPagerStatic extends ASPxClientPagerStatic { +} +interface BootstrapClientPopupControlStatic extends ASPxClientPopupControlStatic { +} +interface BootstrapClientPopupMenuStatic extends ASPxClientPopupMenuStatic { +} +interface BootstrapClientProgressBarStatic extends ASPxClientProgressBarStatic { +} +interface BootstrapClientSpinEditStatic extends ASPxClientSpinEditStatic { +} +interface BootstrapClientTabControlStatic extends ASPxClientTabControlStatic { +} +interface BootstrapClientPageControlStatic extends ASPxClientPageControlStatic { +} +interface BootstrapClientTextBoxStatic extends ASPxClientTextBoxStatic { +} +interface BootstrapClientMemoStatic extends ASPxClientMemoStatic { +} +interface BootstrapClientButtonEditStatic extends ASPxClientButtonEditStatic { +} +interface BootstrapClientTreeViewStatic extends ASPxClientTreeViewStatic { +} +interface BootstrapUIWidgetBaseStatic extends ASPxClientControlStatic { +} +interface BootstrapClientUploadControlStatic extends ASPxClientUploadControlStatic { +} +interface BootstrapClientGridViewStatic extends ASPxClientGridViewStatic { +} +interface MVCxClientCalendarStatic extends ASPxClientCalendarStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientCalendar; +} +interface MVCxClientCallbackPanelStatic extends ASPxClientCallbackPanelStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientCallbackPanel; +} +interface MVCxClientCardViewStatic extends ASPxClientCardViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientCardView; +} +interface MVCxClientChartStatic extends ASPxClientWebChartControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientChart; +} +interface MVCxClientComboBoxStatic extends ASPxClientComboBoxStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientComboBox; +} +interface MVCxClientDataViewStatic extends ASPxClientDataViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientDataView; +} +interface MVCxClientDateEditStatic extends ASPxClientDateEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientDateEdit; +} +interface MVCxClientDockManagerStatic extends ASPxClientDockManagerStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientDockManager; +} +interface MVCxClientDockPanelStatic extends ASPxClientDockPanelStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientDockPanel; +} +interface MVCxClientFileManagerStatic extends ASPxClientFileManagerStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientFileManager; +} +interface MVCxClientGridViewStatic extends ASPxClientGridViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientGridView; +} +interface MVCxClientHtmlEditorStatic extends ASPxClientHtmlEditorStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientHtmlEditor; +} +interface MVCxClientImageGalleryStatic extends ASPxClientImageGalleryStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientImageGallery; +} +interface MVCxClientListBoxStatic extends ASPxClientListBoxStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientListBox; +} +interface MVCxClientNavBarStatic extends ASPxClientNavBarStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientNavBar; +} +interface MVCxClientPivotGridStatic extends ASPxClientPivotGridStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientPivotGrid; +} +interface MVCxClientPopupControlStatic extends ASPxClientPopupControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientPopupControl; +} +interface MVCxClientDocumentViewerStatic extends ASPxClientDocumentViewerStatic { +} +interface MVCxClientReportViewerStatic extends ASPxClientReportViewerStatic { +} +interface MVCxClientReportDesignerStatic extends ASPxClientReportDesignerStatic { +} +interface MVCxClientRichEditStatic extends ASPxClientRichEditStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientRichEdit; +} +interface MVCxClientRoundPanelStatic extends ASPxClientRoundPanelStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientRoundPanel; +} +interface MVCxClientSchedulerStatic extends ASPxClientSchedulerStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientScheduler; +} +interface MVCxSchedulerToolTipTypeStatic { + /** + * The tooltip is displayed for a selected appointment. + */ + Appointment: number; + /** + * The tooltip is displayed for a dragged appointment. + */ + AppointmentDrag: number; + /** + * The tooltip is displayed for a selected time interval. + */ + Selection: number; +} +interface MVCxClientSpreadsheetStatic extends ASPxClientSpreadsheetStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientSpreadsheet; +} +interface MVCxClientPageControlStatic extends ASPxClientPageControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientPageControl; +} +interface MVCxClientTokenBoxStatic extends ASPxClientTokenBoxStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientTokenBox; +} +interface MVCxClientTreeListStatic extends ASPxClientTreeListStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientTreeList; +} +interface MVCxClientTreeViewStatic extends ASPxClientTreeViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientTreeView; +} +interface MVCxClientUploadControlStatic extends ASPxClientUploadControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientUploadControl; +} +interface MVCxClientUtilsStatic { + /** + * Loads service resources (such as scripts, CSS files, etc.) required for DevExpress functionality to work properly after a non DevExpress callback has been processed on the server and returned back to the client. + */ + FinalizeCallback(): void; + /** + * Returns values of editors placed in the specified container. + * @param containerOrId A container of editors, or its ID. + */ + GetSerializedEditorValuesInContainer(containerOrId: Object): Object; + /** + * Returns values of editors placed in the specified container. + * @param containerOrId A container of editors, or its ID. + * @param processInvisibleEditors true to process both visible and invisible editors that belong to the specified container; false to process only visible editors. + */ + GetSerializedEditorValuesInContainer(containerOrId: Object, processInvisibleEditors: boolean): Object; +} +interface MVCxClientGlobalEventsStatic { + /** + * Dynamically connects the ControlsInitialized client event with an appropriate event handler function. + * @param handler A object representing the event handling function's content. + */ + AddControlsInitializedEventHandler(handler: ASPxClientControlsInitializedEventHandler): void; + /** + * Dynamically connects the BeginCallback client event with an appropriate event handler function. + * @param handler A object containing the event handling function's content. + */ + AddBeginCallbackEventHandler(handler: MVCxClientBeginCallbackEventHandler): void; + /** + * Dynamically connects the EndCallback client event with an appropriate event handler function. + * @param handler A object containing the event handling function's content. + */ + AddEndCallbackEventHandler(handler: ASPxClientEndCallbackEventHandler): void; + /** + * Dynamically connects the CallbackError client event with an appropriate event handler function. + * @param handler A object containing the event handling function's content. + */ + AddCallbackErrorHandler(handler: ASPxClientCallbackErrorEventHandler): void; +} +interface MVCxClientVerticalGridStatic extends ASPxClientVerticalGridStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): MVCxClientVerticalGrid; +} +interface MVCxClientWebDocumentViewerStatic extends ASPxClientWebDocumentViewerStatic { +} +interface ASPxClientControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientControlBase; +} +interface ASPxClientControlStatic extends ASPxClientControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientControl; + /** + * Modifies the controls size on the page. + */ + AdjustControls(): void; + /** + * Modifies the controls size within the specified container. + * @param container An HTML element that is the container of the controls. + */ + AdjustControls(container: Object): void; + /** + * Returns a collection of client web control objects. + */ + GetControlCollection(): ASPxClientControlCollection; +} +interface ASPxClientCallbackStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCallback; +} +interface ASPxClientPanelBaseStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPanelBase; +} +interface ASPxClientPanelStatic extends ASPxClientPanelBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPanel; +} +interface ASPxClientCallbackPanelStatic extends ASPxClientPanelStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCallbackPanel; +} +interface ASPxClientCloudControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientCloudControl; +} +interface ASPxClientDataViewStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDataView; +} +interface ASPxClientDockManagerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDockManager; +} +interface ASPxClientPopupControlBaseStatic extends ASPxClientControlStatic { +} +interface ASPxClientDockPanelStatic extends ASPxClientPopupControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDockPanel; +} +interface ASPxClientDockZoneStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDockZone; +} +interface ASPxClientFileManagerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientFileManager; +} +interface ASPxClientFileManagerCommandConstsStatic { + /** + * The name of a command that is executed when an end-user renames an item. + */ + Rename: string; + /** + * The name of a command that is executed when an end-user moves an item. + */ + Move: string; + /** + * The name of a command that is executed when an end-user deletes an item. + */ + Delete: string; + /** + * The name of a command that is executed when an end-user creates a folder. + */ + Create: string; + /** + * The name of a command that is executed when an end-user uploads a file. + */ + Upload: string; + /** + * The name of a command that is executed when an end-user downloads an item. + */ + Download: string; + /** + * The name of a command that is executed when an end-user copies an item. + */ + Copy: string; + /** + * The name of a command that is executed when an end-user opens an item. + */ + Open: string; +} +interface ASPxClientFileManagerErrorConstsStatic { + /** + * The specified file is not found. Return Value: 0 + */ + FileNotFound: number; + /** + * The specified folder is not found. Return Value: 1 + */ + FolderNotFound: number; + /** + * Access is denied. Return Value: 2 + */ + AccessDenied: number; + /** + * Unspecified IO error occurs. Return Value: 3 + */ + UnspecifiedIO: number; + /** + * Unspecified error occurs. Return Value: 4 + */ + Unspecified: number; + /** + * The file/folder name is empty. Return Value: 5 + */ + EmptyName: number; + /** + * The operation was canceled. Return Value: 6 + */ + CanceledOperation: number; + /** + * The specified name contains invalid characters. Return Value: 7 + */ + InvalidSymbols: number; + /** + * The specified file extension is not allowed. Return Value: 8 + */ + WrongExtension: number; + /** + * The file/folder is being used by another process. Return Value: 9 + */ + UsedByAnotherProcess: number; + /** + * The specified file/folder already exists. Return Value: 10 + */ + AlreadyExists: number; +} +interface ASPxClientFormLayoutStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientFormLayout; +} +interface ASPxClientHiddenFieldStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientHiddenField; +} +interface ASPxClientHintStatic extends ASPxClientControlStatic { + /** + * Forces the hint to reselect target UI elements according to the specified CSS selector. + */ + Update(): void; + /** + * Forces the hint to recalculate its position. + */ + UpdatePosition(): void; + /** + * Forces the hint to recalculate its position. + * @param hintElementOrTargetElement An object that is the hint element or the target element. + */ + UpdatePosition(hintElementOrTargetElement: Object): void; + /** + * Registers a hint's functionality with the specified settings. + * @param targetSelector A string value that is the CSS selector. Specifies to which UI elements the hint is displayed. + * @param options An ASPxClientHintOptions object that is the hint's options. + */ + Register(targetSelector: string, options: ASPxClientHintOptions): ASPxClientHint; + /** + * Registers a hint's functionality with the specified settings. + * @param targetSelector A string value that is the CSS selector. Specifies to which UI elements the hint is displayed. + * @param contentAttribute A string value that is the attribute name. Specifies from which target element's attribute a hint obtains its content. + */ + Register(targetSelector: string, contentAttribute: string): ASPxClientHint; + /** + * Registers a hint's functionality with the specified settings. + * @param targetSelector A string value that is the CSS selector. Specifies for which UI elements the hint is displayed. + * @param onShowing An ASPxClientHintShowingEventHandler object that is a handler for the displayed event. + */ + Register(targetSelector: string, onShowing: ASPxClientHintShowingEventHandler): ASPxClientHint; + /** + * Invokes a hint. + * @param targetSelector A string value that is the CSS selector. + * @param options An ASPxClientHintOptions object that is the hint's options. + */ + Show(targetSelector: string, options: ASPxClientHintOptions): void; + /** + * Invokes a hint. + * @param targetSelector A string value that is the CSS selector used to specify for which UI elements on a web page a hint is displayed. + * @param content A string value that is the hint's content. + */ + Show(targetSelector: string, content: string): void; + /** + * Invokes a hint. + * @param targetElement An object that is the target element. + * @param options An ASPxClientHintOptions object that is the hint's options. + */ + Show(targetElement: Object, options: ASPxClientHintOptions): void; + /** + * Invokes a hint. + * @param targetElement A HTML DOM element near to which the hint is displayed in response to user interaction. + * @param content A string value that is the hint's content. + */ + Show(targetElement: Object, content: string): void; + /** + * Invokes a hint. + * @param options An ASPxClientHintOptions object that is the hint's options. + */ + Show(options: ASPxClientHintOptions): void; + /** + * Hides a hint window. + * @param targetSelector A string value that is the CSS selector. + */ + Hide(targetSelector: string): void; + /** + * Hides a hint window. + * @param targetElementOrHintElement An object that is the target element or hint element. + */ + Hide(targetElementOrHintElement: Object): void; + /** + * Hides all hints. + */ + HideAll(): void; +} +interface ASPxClientImageGalleryStatic extends ASPxClientDataViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientImageGallery; +} +interface ASPxClientImageSliderStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientImageSlider; +} +interface ASPxClientImageZoomNavigatorStatic extends ASPxClientImageSliderStatic { +} +interface ASPxClientImageZoomStatic extends ASPxClientControlStatic { +} +interface ASPxClientLoadingPanelStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientLoadingPanel; +} +interface ASPxClientMediaFileSelectorStatic extends ASPxClientControlStatic { +} +interface ASPxClientMenuBaseStatic extends ASPxClientControlStatic { + /** + * Returns a collection of client menu objects. + */ + GetMenuCollection(): ASPxClientMenuCollection; +} +interface ASPxClientMenuStatic extends ASPxClientMenuBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientMenu; +} +interface ASPxClientTouchUIStatic { + /** + * Extends the specified element's functionality with scrolling via touch behavior (one finger) and the ability to display vertical and horizontal scroll bars. + * @param id A string value specifying the element's ID. + */ + MakeScrollable(id: string): ScrollExtender; + /** + * Extends the specified element's functionality with scrolling via touch behavior (one finger) and the ability to display vertical and horizontal scroll bars. + * @param element An object that specifies the required DOM element. + */ + MakeScrollable(element: Object): ScrollExtender; + /** + * Extends the specified element's functionality with scrolling via touch behavior (one finger) and customized scrollbar-related options. + * @param id A string value specifying the name of a DOM element that should be extended with the touch scrolling functionality. + * @param options An ASPxClientTouchUIOptions object that provides options affecting the touch scrolling functionality. + */ + MakeScrollable(id: string, options: ASPxClientTouchUIOptions): ScrollExtender; + /** + * Extends the specified element's functionality with scrolling via touch behavior (one finger) and customized scrollbar-related options. + * @param element An object specifying the DOM element to extend with the touch scrolling functionality. + * @param options An ASPxClientTouchUIOptions object that provides options affecting the touch scrolling functionality. + */ + MakeScrollable(element: Object, options: ASPxClientTouchUIOptions): ScrollExtender; +} +interface ASPxClientNavBarStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientNavBar; +} +interface ASPxClientNewsControlStatic extends ASPxClientDataViewStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientNewsControl; +} +interface ASPxClientObjectContainerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientObjectContainer; +} +interface ASPxClientPagerStatic extends ASPxClientControlStatic { +} +interface ASPxClientPopupControlStatic extends ASPxClientPopupControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPopupControl; + /** + * Returns a collection of client popup control objects. + */ + GetPopupControlCollection(): ASPxClientPopupControlCollection; +} +interface ASPxClientPopupControlResizeStateStatic { + /** + * A window has been resized. Returns 0. + */ + Resized: number; + /** + * A window has been collapsed. Returns 1. + */ + Collapsed: number; + /** + * A window has been expanded. Returns 2. + */ + Expanded: number; + /** + * A window has been maximized. Returns 3. + */ + Maximized: number; + /** + * A window has been restored after maximizing. Returns 4. + */ + RestoredAfterMaximized: number; +} +interface ASPxClientPopupControlCloseReasonStatic { + /** + * The window has been closed by an API. + */ + API: string; + /** + * An end-user clicks the close header button. + */ + CloseButton: string; + /** + * An end-user clicks outside the window's region + */ + OuterMouseClick: string; + /** + * An end-user moves the mouse pointer out of the window region. + */ + MouseOut: string; + /** + * An end-user presses the ESC key. + */ + Escape: string; +} +interface ASPxClientPopupMenuStatic extends ASPxClientMenuBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPopupMenu; +} +interface ASPxClientRatingControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRatingControl; +} +interface ASPxClientRibbonStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRibbon; +} +interface ASPxClientRibbonStateStatic { + /** + * A ribbon is in the normal state. Returns 0 + */ + Normal: number; + /** + * A ribbon is minimized. Returns 1 + */ + Minimized: number; + /** + * A ribbon is temporarily shown. Returns 2 + */ + TemporaryShown: number; +} +interface ASPxClientRoundPanelStatic extends ASPxClientPanelBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientRoundPanel; +} +interface ASPxClientSplitterStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientSplitter; +} +interface ASPxClientTabControlBaseStatic extends ASPxClientControlStatic { +} +interface ASPxClientTabControlStatic extends ASPxClientTabControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTabControl; +} +interface ASPxClientPageControlStatic extends ASPxClientTabControlBaseStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientPageControl; +} +interface ASPxClientTimerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTimer; +} +interface ASPxClientTitleIndexStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTitleIndex; +} +interface ASPxClientTreeViewStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientTreeView; +} +interface ASPxClientUploadControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientUploadControl; +} +interface ASPxClientUploadControlValidationErrorTypeConstsStatic { + /** + * The allowed maximum file size is exceeded. Return Value: 1 + */ + MaxFileSizeExceeded: number; + /** + * The file's extension is not allowed. Return Value: 2 + */ + NotAllowedFileExtension: number; + /** + * The allowed maximum count of the files is exceeded. Return Value: 3 + */ + MaxFileCountExceeded: number; + /** + * A file name contains invalid character.Return Value: 4 + */ + FileNameContainsInvalidCharacter: number; +} +interface ASPxClientUtilsStatic { + /** + * Gets the user-agent string, which identifies the client browser and provides certain system details of the client computer. + * Value: A string value representing the browser's user-agent string. + */ + agent: string; + /** + * Gets a value that specifies whether the client browser is Opera. + * Value: true if the client browser is Opera; otherwise, false. + */ + opera: boolean; + /** + * Gets a value that specifies whether the client browser is Opera version 9. + * Value: true if the client browser is Opera version 9; otherwise, false. + */ + opera9: boolean; + /** + * Gets a value that specifies whether the client browser is Safari. + * Value: true if the client browser is Safari; otherwise, false. + */ + safari: boolean; + /** + * Gets a value that specifies whether the client browser is Safari version 3. + * Value: true if the client browser is Safari version 3; otherwise, false. + */ + safari3: boolean; + /** + * Gets a value that specifies whether the client browser is Safari, running under a MacOS operating system. + * Value: true if the client browser is Safari, running under a MacOS operating system; otherwise, false. + */ + safariMacOS: boolean; + /** + * Gets a value that specifies whether the client browser is Google Chrome. + * Value: true if the client browser is Google Chrome; otherwise, false. + */ + chrome: boolean; + /** + * Gets a value that specifies whether the client browser is Internet Explorer. + * Value: true if the client browser is Intenet Explorer; otherwise, false. + */ + ie: boolean; + /** + * Gets a value that specifies whether the client browser is Internet Explorer version 7. + * Value: true if the client browser is Intenet Explorer version 7; otherwise, false. + */ + ie7: boolean; + /** + * Gets a value that specifies whether the client browser is Firefox. + * Value: true if the client browser is Firefox; otherwise, false. + */ + firefox: boolean; + /** + * Gets a value that specifies whether the client browser is Firefox version 3. + * Value: true if the client browser is Firefox version 3; otherwise, false. + */ + firefox3: boolean; + /** + * Gets a value that specifies whether the client browser is Mozilla. + * Value: true if the client browser is Mozilla; otherwise, false. + */ + mozilla: boolean; + /** + * Gets a value that specifies whether the client browser is Netscape. + * Value: true if the client browser is Netscape; otherwise, false. + */ + netscape: boolean; + /** + * Gets a value that specifies a client browser's full version. + * Value: A double precision floating-point value that specifies a client browser's version. + */ + browserVersion: number; + /** + * Gets a value that specifies a client browser's major version. + * Value: An integer value that specifies a client browser's major version. + */ + browserMajorVersion: number; + /** + * Gets a value that specifies whether the application is run under a MacOS platform. + * Value: true if the application is run under the MacOS platform; otherwise, false. + */ + macOSPlatform: boolean; + /** + * Gets a value that specifies whether the application is run under the Windows platform. + * Value: true if the application is run under the Windows platform; otherwise, false. + */ + windowsPlatform: boolean; + /** + * Gets a value that specifies whether a client browser is based on WebKit. + * Value: true if the client browser is based on WebKit; otherwise, false. + */ + webKitFamily: boolean; + /** + * Gets a value that specifies whether a client browser is based on Netscape. + * Value: true if client browser is based on Netscape; otherwise, false. + */ + netscapeFamily: boolean; + /** + * Gets a value that specifies whether the client browser supports touch. + * Value: true if the client browser supports touch; otherwise, false. + */ + touchUI: boolean; + /** + * Gets a value that specifies whether the client browser supports the WebKit touch user interface. + * Value: true if the client browser supports the WebKit touch user interface; otherwise, false. + */ + webKitTouchUI: boolean; + /** + * Gets a value that specifies whether the client browser supports the Microsoft touch user interface. + * Value: true if the client browser supports the Microsoft touch user interface; otherwise, false. + */ + msTouchUI: boolean; + /** + * Gets a value that specifies whether the application is run under an iOS platform. + * Value: true if the application is run under the iOS platform; otherwise, false. + */ + iOSPlatform: boolean; + /** + * Gets a value that specifies whether the application is run under the Android platform. + * Value: true if the application is run under the Android platform; otherwise, false. + */ + androidPlatform: boolean; + /** + * Inserts the specified item into the specified array object. + * @param array An object that specifies the array to manipulate. + * @param element An object that specifies the array item to insert. + */ + ArrayInsert(array: Object[], element: Object): void; + /** + * Removes the specified item from the specified array object. + * @param array An object that specifies the array to manipulate. + * @param element An object that specifies the array item to remove. + */ + ArrayRemove(array: Object[], element: Object): void; + /** + * Removes an item at the specified index location from the specified array object. + * @param array An object that specifies the array to manipulate. + * @param index The zero-based index location of the array item to remove. + */ + ArrayRemoveAt(array: Object[], index: number): void; + /** + * Removes all items from the specified array object. + * @param array An object that specifies the array to manipulate. + */ + ArrayClear(array: Object[]): void; + /** + * Searches for the specified array item and returns the zero-based index of its first occurrence within the specified array object. + * @param array An object that specifies the array to manipulate. + * @param element An object that specifies the array item to locate. + */ + ArrayIndexOf(array: Object[], element: Object): number; + /** + * Binds the specified function to a specific element's event, so that the function gets called whenever the event fires on the element. + * @param element An object specifying the required element. + * @param eventName A string value that specifies the required event name without the "on" prefix. + * @param method An object that specifies the event's handling function. + */ + AttachEventToElement(element: Object, eventName: string, method: Object): void; + /** + * Unbinds the specified function from a specific element's event, so that the function stops receiving notifications when the event fires. + * @param element An object specifying the required element. + * @param eventName A string value that specifies the required event name. + * @param method An object that specifies the event's handling function. + */ + DetachEventFromElement(element: Object, eventName: string, method: Object): void; + /** + * Returns the object that fired the event. + * @param htmlEvent An object that represents the current event. + */ + GetEventSource(htmlEvent: Object): Object; + /** + * Gets the x-coordinate of the event-related mouse pointer position relative to an end-user's screen. + * @param htmlEvent An object specifying the required HTML event. + */ + GetEventX(htmlEvent: Object): number; + /** + * Gets the y-coordinate of the event-related mouse pointer position relative to an end-user's screen. + * @param htmlEvent An object specifying the required HTML event. + */ + GetEventY(htmlEvent: Object): number; + /** + * Gets the keyboard code for the specified event. + * @param htmlEvent An object specifying the required HTML event. + */ + GetKeyCode(htmlEvent: Object): number; + /** + * Cancels the default action of the specified event. + * @param htmlEvent An object that specifies the required HTML event. + */ + PreventEvent(htmlEvent: Object): boolean; + /** + * Cancels both the specified event's default action and the event's bubbling upon the hierarchy of event handlers. + * @param htmlEvent An object that specifies the required HTML event. + */ + PreventEventAndBubble(htmlEvent: Object): boolean; + /** + * Removes mouse capture from the specified event's source object. + * @param htmlEvent An object that specifies the required HTML event. + */ + PreventDragStart(htmlEvent: Object): boolean; + /** + * Clears any text selection made within the window's client region. + */ + ClearSelection(): void; + /** + * Gets a value that indicates whether the specified object exists on the client side. + * @param obj The object to test. + */ + IsExists(obj: Object): boolean; + /** + * Gets a value that indicates whether the specified object is a function. + * @param obj The object to test. + */ + IsFunction(obj: Object): boolean; + /** + * Gets the x-coordinate of the specified element's top left corner relative to the client area of the window, excluding scroll bars. + * @param element An object identifying the HTML element whose position should be obtained. + */ + GetAbsoluteX(element: Object): number; + /** + * Gets the y-coordinate of the specified element's top left corner relative to the client area of the window, excluding scroll bars. + * @param element An object identifying the HTML element whose position should be obtained. + */ + GetAbsoluteY(element: Object): number; + /** + * Sets the x-coordinate of the specified element's top left corner relative to the client area of the window, excluding scroll bars. + * @param element An object identifying the HTML element whose position should be defined. + * @param x An integer value specifying the required element's x-coordinate, in pixels. + */ + SetAbsoluteX(element: Object, x: number): void; + /** + * Sets the y-coordinate of the specified element's top left corner relative to the client area of the window, excluding scroll bars. + * @param element An object identifying the HTML element whose position should be defined. + * @param y An integer value specifying the required element's y-coordinate, in pixels. + */ + SetAbsoluteY(element: Object, y: number): void; + /** + * Returns the distance between the top edge of the document and the topmost portion of the content currently visible in the window. + */ + GetDocumentScrollTop(): number; + /** + * Returns the distance between the left edge of the document and the leftmost portion of the content currently visible in the window. + */ + GetDocumentScrollLeft(): number; + /** + * Gets the width of the window's client region. + */ + GetDocumentClientWidth(): number; + /** + * Gets the height of the window's client region. + */ + GetDocumentClientHeight(): number; + /** + * Gets a value indicating whether the object passed via the parentElement parameter is a parent of the object passed via the element parameter. + * @param parentElement An object specifying the parent HTML element. + * @param element An object specifying the child HTML element. + */ + GetIsParent(parentElement: Object, element: Object): boolean; + /** + * Returns a reference to the specified HTML element's first parent object which has an ID that matches the specified value. + * @param element An object specifying the child HTML element whose parent elements are searched. + * @param id A string specifying the required parent's ID. + */ + GetParentById(element: Object, id: string): Object; + /** + * Returns a reference to the specified HTML element's first parent object whose element name matches the specified value. + * @param element An object specifying the child HTML element whose parent elements are searched. + * @param tagName A string value specifying the element name (tag name) of the desired HTML element. + */ + GetParentByTagName(element: Object, tagName: string): Object; + /** + * Returns a reference to the specified HTML element's first parent object whose class name matches the specified value. + * @param element An object specifying the child HTML element whose parent elements are searched. + * @param className A string value specifying the class name of the desired HTML element. + */ + GetParentByClassName(element: Object, className: string): Object; + /** + * Returns a reference to the first element that has the specified ID in the parent HTML element specified. + * @param element An object identifying the parent HTML element to search. + * @param id A string specifying the ID attribute value of the desired child element. + */ + GetChildById(element: Object, id: string): Object; + /** + * Returns a reference to the particular element that has the specified element name and is contained within the specified parent HTML element. + * @param element An object specifying the parent HTML element to search. + * @param tagName A string value specifying the element name (tag name) of the desired HTML element. + * @param index An integer value specifying the zero-based index of the desired element amongst all the matching elements found. + */ + GetChildByTagName(element: Object, tagName: string, index: number): Object; + /** + * Creates or updates the HTTP cookie for the response. + * @param name A string value that represents the name of a cookie. + * @param value A string representing the cookie value. + */ + SetCookie(name: string, value: string): void; + /** + * Creates or updates the HTTP cookie for the response. + * @param name A string value that represents the name of a cookie. + * @param value A string representing the cookie value. + * @param expirationDate A date-time object that represents the expiration date and time for the cookie. + */ + SetCookie(name: string, value: string, expirationDate: Date): void; + /** + * Retrieves a cookie with the specified name. + * @param name A string value that represents the name of a cookie. + */ + GetCookie(name: string): string; + /** + * Deletes a cookie with the specified name. + * @param name A string value that represents the name of a cookie. + */ + DeleteCookie(name: string): void; + /** + * Returns a specifically generated code that uniquely identifies the combination of keys specified via the parameters. + * @param keyCode An integer value that specifies the code of the key. + * @param isCtrlKey true if the CTRL key should be included into the key combination; otherwise, false. + * @param isShiftKey true if the SHIFT key should be included into the key combination; otherwise, false. + * @param isAltKey true if the ALT key should be included into the key combination; otherwise, false. + */ + GetShortcutCode(keyCode: number, isCtrlKey: boolean, isShiftKey: boolean, isAltKey: boolean): number; + /** + * Returns a specifically generated code that uniquely identifies the pressed key combination, which is specified by the related HTML event. + * @param htmlEvent A DHTML event object that relates to a key combination being pressed. + */ + GetShortcutCodeByEvent(htmlEvent: Object): number; + /** + * Returns a specifically generated code that uniquely identifies the combination of keys specified via the parameter. + * @param shortcutString A string value that specifies the key combination. + */ + StringToShortcutCode(shortcutString: string): number; + /** + * Trims all leading and trailing whitespaces from the string. + * @param str A string value representing the string for trimming. + */ + Trim(str: string): string; + /** + * Trims all leading whitespaces from the string. + * @param str A string value representing the string for trimming. + */ + TrimStart(str: string): string; + /** + * Trims all trailing whitespaces from the string. + * @param str A string value representing the string for trimming. + */ + TrimEnd(str: string): string; + /** + * Specifies the text that Assistive Technologies (screen readers or braille display, for example) will provide to a user. + * @param message A String value that specifies a text. + */ + SendMessageToAssistiveTechnology(message: string): void; +} +interface ASPxClientChartDesignerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientChartDesigner; +} +interface ASPxClientWebChartControlStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientWebChartControl; +} +interface ASPxClientDocumentViewerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientDocumentViewer; +} +interface ASPxClientQueryBuilderStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientQueryBuilder; +} +interface ASPxClientReportDesignerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientReportDesigner; +} +interface ASPxClientReportDocumentMapStatic extends ASPxClientControlStatic { +} +interface ASPxClientReportParametersPanelStatic extends ASPxClientControlStatic { +} +interface ASPxClientReportToolbarStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientReportToolbar; +} +interface ASPxClientReportViewerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientReportViewer; +} +interface ASPxClientWebDocumentViewerStatic extends ASPxClientControlStatic { + /** + * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. + * @param obj The client object to be type cast. Represents an instance of a DevExpress web control's client object. + */ + Cast(obj: Object): ASPxClientWebDocumentViewer; +} + +declare var MVCxClientDashboardViewer: MVCxClientDashboardViewerStatic; +declare var DashboardDataAxisNames: DashboardDataAxisNamesStatic; +declare var DashboardSpecialValues: DashboardSpecialValuesStatic; +declare var DashboardExportPageLayout: DashboardExportPageLayoutStatic; +declare var DashboardExportPaperKind: DashboardExportPaperKindStatic; +declare var DashboardExportScaleMode: DashboardExportScaleModeStatic; +declare var DashboardExportFilterState: DashboardExportFilterStateStatic; +declare var DashboardStateExportPosition: DashboardStateExportPositionStatic; +declare var DashboardStateExcelExportPosition: DashboardStateExcelExportPositionStatic; +declare var DashboardExportImageFormat: DashboardExportImageFormatStatic; +declare var ExcelExportFilterState: ExcelExportFilterStateStatic; +declare var DashboardExportExcelFormat: DashboardExportExcelFormatStatic; +declare var ChartExportSizeMode: ChartExportSizeModeStatic; +declare var MapExportSizeMode: MapExportSizeModeStatic; +declare var TreemapExportSizeMode: TreemapExportSizeModeStatic; +declare var RangeFilterExportSizeMode: RangeFilterExportSizeModeStatic; +declare var DashboardSelectionMode: DashboardSelectionModeStatic; +declare var ASPxClientDashboard: ASPxClientDashboardStatic; +declare var ASPxClientDashboardViewer: ASPxClientDashboardViewerStatic; +declare var ASPxClientEditBase: ASPxClientEditBaseStatic; +declare var ASPxClientEdit: ASPxClientEditStatic; +declare var ASPxClientBinaryImage: ASPxClientBinaryImageStatic; +declare var ASPxClientButton: ASPxClientButtonStatic; +declare var ASPxClientCalendar: ASPxClientCalendarStatic; +declare var ASPxClientCaptcha: ASPxClientCaptchaStatic; +declare var ASPxClientCheckBox: ASPxClientCheckBoxStatic; +declare var ASPxClientRadioButton: ASPxClientRadioButtonStatic; +declare var ASPxClientTextEdit: ASPxClientTextEditStatic; +declare var ASPxClientTextBoxBase: ASPxClientTextBoxBaseStatic; +declare var ASPxClientButtonEditBase: ASPxClientButtonEditBaseStatic; +declare var ASPxClientDropDownEditBase: ASPxClientDropDownEditBaseStatic; +declare var ASPxClientColorEdit: ASPxClientColorEditStatic; +declare var ASPxClientComboBox: ASPxClientComboBoxStatic; +declare var ASPxClientDateEdit: ASPxClientDateEditStatic; +declare var ASPxClientDropDownEdit: ASPxClientDropDownEditStatic; +declare var ASPxClientFilterControl: ASPxClientFilterControlStatic; +declare var ASPxClientListEdit: ASPxClientListEditStatic; +declare var ASPxClientListBox: ASPxClientListBoxStatic; +declare var ASPxClientCheckListBase: ASPxClientCheckListBaseStatic; +declare var ASPxClientRadioButtonList: ASPxClientRadioButtonListStatic; +declare var ASPxClientCheckBoxList: ASPxClientCheckBoxListStatic; +declare var ASPxClientProgressBar: ASPxClientProgressBarStatic; +declare var ASPxClientSpinEditBase: ASPxClientSpinEditBaseStatic; +declare var ASPxClientSpinEdit: ASPxClientSpinEditStatic; +declare var ASPxClientTimeEdit: ASPxClientTimeEditStatic; +declare var ASPxClientStaticEdit: ASPxClientStaticEditStatic; +declare var ASPxClientHyperLink: ASPxClientHyperLinkStatic; +declare var ASPxClientImageBase: ASPxClientImageBaseStatic; +declare var ASPxClientImage: ASPxClientImageStatic; +declare var ASPxClientLabel: ASPxClientLabelStatic; +declare var ASPxClientTextBox: ASPxClientTextBoxStatic; +declare var ASPxClientMemo: ASPxClientMemoStatic; +declare var ASPxClientButtonEdit: ASPxClientButtonEditStatic; +declare var ASPxClientTokenBox: ASPxClientTokenBoxStatic; +declare var ASPxClientTrackBar: ASPxClientTrackBarStatic; +declare var ASPxClientValidationSummary: ASPxClientValidationSummaryStatic; +declare var ASPxClientGaugeControl: ASPxClientGaugeControlStatic; +declare var ASPxClientGridBase: ASPxClientGridBaseStatic; +declare var ASPxClientGridViewCallbackCommand: ASPxClientGridViewCallbackCommandStatic; +declare var ASPxClientGridLookup: ASPxClientGridLookupStatic; +declare var ASPxClientCardView: ASPxClientCardViewStatic; +declare var ASPxClientGridView: ASPxClientGridViewStatic; +declare var ASPxClientVerticalGrid: ASPxClientVerticalGridStatic; +declare var ASPxClientVerticalGridCallbackCommand: ASPxClientVerticalGridCallbackCommandStatic; +declare var ASPxClientCommandConsts: ASPxClientCommandConstsStatic; +declare var ASPxClientHtmlEditor: ASPxClientHtmlEditorStatic; +declare var ASPxClientHtmlEditorMediaPreloadMode: ASPxClientHtmlEditorMediaPreloadModeStatic; +declare var ASPxClientPivotGrid: ASPxClientPivotGridStatic; +declare var ASPxClientPivotCustomization: ASPxClientPivotCustomizationStatic; +declare var ASPxClientRichEdit: ASPxClientRichEditStatic; +declare var ASPxSchedulerDateTimeHelper: ASPxSchedulerDateTimeHelperStatic; +declare var ASPxClientWeekDaysCheckEdit: ASPxClientWeekDaysCheckEditStatic; +declare var ASPxClientRecurrenceRangeControl: ASPxClientRecurrenceRangeControlStatic; +declare var ASPxClientRecurrenceControlBase: ASPxClientRecurrenceControlBaseStatic; +declare var ASPxClientDailyRecurrenceControl: ASPxClientDailyRecurrenceControlStatic; +declare var ASPxClientWeeklyRecurrenceControl: ASPxClientWeeklyRecurrenceControlStatic; +declare var ASPxClientMonthlyRecurrenceControl: ASPxClientMonthlyRecurrenceControlStatic; +declare var ASPxClientYearlyRecurrenceControl: ASPxClientYearlyRecurrenceControlStatic; +declare var ASPxClientRecurrenceTypeEdit: ASPxClientRecurrenceTypeEditStatic; +declare var ASPxClientTimeInterval: ASPxClientTimeIntervalStatic; +declare var ASPxClientScheduler: ASPxClientSchedulerStatic; +declare var ASPxClientSpellChecker: ASPxClientSpellCheckerStatic; +declare var ASPxClientSpellCheckerStopCheckingReason: ASPxClientSpellCheckerStopCheckingReasonStatic; +declare var ASPxClientSpreadsheet: ASPxClientSpreadsheetStatic; +declare var ASPxClientTreeList: ASPxClientTreeListStatic; +declare var BootstrapClientAccordion: BootstrapClientAccordionStatic; +declare var BootstrapClientBinaryImage: BootstrapClientBinaryImageStatic; +declare var BootstrapClientButton: BootstrapClientButtonStatic; +declare var BootstrapClientCalendar: BootstrapClientCalendarStatic; +declare var BootstrapClientCallbackPanel: BootstrapClientCallbackPanelStatic; +declare var BootstrapClientChartBase: BootstrapClientChartBaseStatic; +declare var BootstrapClientChart: BootstrapClientChartStatic; +declare var BootstrapClientPolarChart: BootstrapClientPolarChartStatic; +declare var BootstrapClientPieChart: BootstrapClientPieChartStatic; +declare var BootstrapClientCheckBox: BootstrapClientCheckBoxStatic; +declare var BootstrapClientRadioButton: BootstrapClientRadioButtonStatic; +declare var BootstrapClientComboBox: BootstrapClientComboBoxStatic; +declare var BootstrapClientDateEdit: BootstrapClientDateEditStatic; +declare var BootstrapClientDropDownEdit: BootstrapClientDropDownEditStatic; +declare var BootstrapClientFormLayout: BootstrapClientFormLayoutStatic; +declare var BootstrapClientHyperLink: BootstrapClientHyperLinkStatic; +declare var BootstrapClientImage: BootstrapClientImageStatic; +declare var BootstrapClientListBox: BootstrapClientListBoxStatic; +declare var BootstrapClientCheckBoxList: BootstrapClientCheckBoxListStatic; +declare var BootstrapClientRadioButtonList: BootstrapClientRadioButtonListStatic; +declare var BootstrapClientMenu: BootstrapClientMenuStatic; +declare var BootstrapClientPager: BootstrapClientPagerStatic; +declare var BootstrapClientPopupControl: BootstrapClientPopupControlStatic; +declare var BootstrapClientPopupMenu: BootstrapClientPopupMenuStatic; +declare var BootstrapClientProgressBar: BootstrapClientProgressBarStatic; +declare var BootstrapClientSpinEdit: BootstrapClientSpinEditStatic; +declare var BootstrapClientTabControl: BootstrapClientTabControlStatic; +declare var BootstrapClientPageControl: BootstrapClientPageControlStatic; +declare var BootstrapClientTextBox: BootstrapClientTextBoxStatic; +declare var BootstrapClientMemo: BootstrapClientMemoStatic; +declare var BootstrapClientButtonEdit: BootstrapClientButtonEditStatic; +declare var BootstrapClientTreeView: BootstrapClientTreeViewStatic; +declare var BootstrapUIWidgetBase: BootstrapUIWidgetBaseStatic; +declare var BootstrapClientUploadControl: BootstrapClientUploadControlStatic; +declare var BootstrapClientGridView: BootstrapClientGridViewStatic; +declare var MVCxClientCalendar: MVCxClientCalendarStatic; +declare var MVCxClientCallbackPanel: MVCxClientCallbackPanelStatic; +declare var MVCxClientCardView: MVCxClientCardViewStatic; +declare var MVCxClientChart: MVCxClientChartStatic; +declare var MVCxClientComboBox: MVCxClientComboBoxStatic; +declare var MVCxClientDataView: MVCxClientDataViewStatic; +declare var MVCxClientDateEdit: MVCxClientDateEditStatic; +declare var MVCxClientDockManager: MVCxClientDockManagerStatic; +declare var MVCxClientDockPanel: MVCxClientDockPanelStatic; +declare var MVCxClientFileManager: MVCxClientFileManagerStatic; +declare var MVCxClientGridView: MVCxClientGridViewStatic; +declare var MVCxClientHtmlEditor: MVCxClientHtmlEditorStatic; +declare var MVCxClientImageGallery: MVCxClientImageGalleryStatic; +declare var MVCxClientListBox: MVCxClientListBoxStatic; +declare var MVCxClientNavBar: MVCxClientNavBarStatic; +declare var MVCxClientPivotGrid: MVCxClientPivotGridStatic; +declare var MVCxClientPopupControl: MVCxClientPopupControlStatic; +declare var MVCxClientDocumentViewer: MVCxClientDocumentViewerStatic; +declare var MVCxClientReportViewer: MVCxClientReportViewerStatic; +declare var MVCxClientReportDesigner: MVCxClientReportDesignerStatic; +declare var MVCxClientRichEdit: MVCxClientRichEditStatic; +declare var MVCxClientRoundPanel: MVCxClientRoundPanelStatic; +declare var MVCxClientScheduler: MVCxClientSchedulerStatic; +declare var MVCxSchedulerToolTipType: MVCxSchedulerToolTipTypeStatic; +declare var MVCxClientSpreadsheet: MVCxClientSpreadsheetStatic; +declare var MVCxClientPageControl: MVCxClientPageControlStatic; +declare var MVCxClientTokenBox: MVCxClientTokenBoxStatic; +declare var MVCxClientTreeList: MVCxClientTreeListStatic; +declare var MVCxClientTreeView: MVCxClientTreeViewStatic; +declare var MVCxClientUploadControl: MVCxClientUploadControlStatic; +declare var MVCxClientUtils: MVCxClientUtilsStatic; +declare var MVCxClientGlobalEvents: MVCxClientGlobalEventsStatic; +declare var MVCxClientVerticalGrid: MVCxClientVerticalGridStatic; +declare var MVCxClientWebDocumentViewer: MVCxClientWebDocumentViewerStatic; +declare var ASPxClientControlBase: ASPxClientControlBaseStatic; +declare var ASPxClientControl: ASPxClientControlStatic; +declare var ASPxClientCallback: ASPxClientCallbackStatic; +declare var ASPxClientPanelBase: ASPxClientPanelBaseStatic; +declare var ASPxClientPanel: ASPxClientPanelStatic; +declare var ASPxClientCallbackPanel: ASPxClientCallbackPanelStatic; +declare var ASPxClientCloudControl: ASPxClientCloudControlStatic; +declare var ASPxClientDataView: ASPxClientDataViewStatic; +declare var ASPxClientDockManager: ASPxClientDockManagerStatic; +declare var ASPxClientPopupControlBase: ASPxClientPopupControlBaseStatic; +declare var ASPxClientDockPanel: ASPxClientDockPanelStatic; +declare var ASPxClientDockZone: ASPxClientDockZoneStatic; +declare var ASPxClientFileManager: ASPxClientFileManagerStatic; +declare var ASPxClientFileManagerCommandConsts: ASPxClientFileManagerCommandConstsStatic; +declare var ASPxClientFileManagerErrorConsts: ASPxClientFileManagerErrorConstsStatic; +declare var ASPxClientFormLayout: ASPxClientFormLayoutStatic; +declare var ASPxClientHiddenField: ASPxClientHiddenFieldStatic; +declare var ASPxClientHint: ASPxClientHintStatic; +declare var ASPxClientImageGallery: ASPxClientImageGalleryStatic; +declare var ASPxClientImageSlider: ASPxClientImageSliderStatic; +declare var ASPxClientImageZoomNavigator: ASPxClientImageZoomNavigatorStatic; +declare var ASPxClientImageZoom: ASPxClientImageZoomStatic; +declare var ASPxClientLoadingPanel: ASPxClientLoadingPanelStatic; +declare var ASPxClientMediaFileSelector: ASPxClientMediaFileSelectorStatic; +declare var ASPxClientMenuBase: ASPxClientMenuBaseStatic; +declare var ASPxClientMenu: ASPxClientMenuStatic; +declare var ASPxClientTouchUI: ASPxClientTouchUIStatic; +declare var ASPxClientNavBar: ASPxClientNavBarStatic; +declare var ASPxClientNewsControl: ASPxClientNewsControlStatic; +declare var ASPxClientObjectContainer: ASPxClientObjectContainerStatic; +declare var ASPxClientPager: ASPxClientPagerStatic; +declare var ASPxClientPopupControl: ASPxClientPopupControlStatic; +declare var ASPxClientPopupControlResizeState: ASPxClientPopupControlResizeStateStatic; +declare var ASPxClientPopupControlCloseReason: ASPxClientPopupControlCloseReasonStatic; +declare var ASPxClientPopupMenu: ASPxClientPopupMenuStatic; +declare var ASPxClientRatingControl: ASPxClientRatingControlStatic; +declare var ASPxClientRibbon: ASPxClientRibbonStatic; +declare var ASPxClientRibbonState: ASPxClientRibbonStateStatic; +declare var ASPxClientRoundPanel: ASPxClientRoundPanelStatic; +declare var ASPxClientSplitter: ASPxClientSplitterStatic; +declare var ASPxClientTabControlBase: ASPxClientTabControlBaseStatic; +declare var ASPxClientTabControl: ASPxClientTabControlStatic; +declare var ASPxClientPageControl: ASPxClientPageControlStatic; +declare var ASPxClientTimer: ASPxClientTimerStatic; +declare var ASPxClientTitleIndex: ASPxClientTitleIndexStatic; +declare var ASPxClientTreeView: ASPxClientTreeViewStatic; +declare var ASPxClientUploadControl: ASPxClientUploadControlStatic; +declare var ASPxClientUploadControlValidationErrorTypeConsts: ASPxClientUploadControlValidationErrorTypeConstsStatic; +declare var ASPxClientUtils: ASPxClientUtilsStatic; +declare var ASPxClientChartDesigner: ASPxClientChartDesignerStatic; +declare var ASPxClientWebChartControl: ASPxClientWebChartControlStatic; +declare var ASPxClientDocumentViewer: ASPxClientDocumentViewerStatic; +declare var ASPxClientQueryBuilder: ASPxClientQueryBuilderStatic; +declare var ASPxClientReportDesigner: ASPxClientReportDesignerStatic; +declare var ASPxClientReportDocumentMap: ASPxClientReportDocumentMapStatic; +declare var ASPxClientReportParametersPanel: ASPxClientReportParametersPanelStatic; +declare var ASPxClientReportToolbar: ASPxClientReportToolbarStatic; +declare var ASPxClientReportViewer: ASPxClientReportViewerStatic; +declare var ASPxClientWebDocumentViewer: ASPxClientWebDocumentViewerStatic; + diff --git a/types/devexpress-web/v171/tsconfig.json b/types/devexpress-web/v171/tsconfig.json new file mode 100644 index 0000000000..af3cbffe0a --- /dev/null +++ b/types/devexpress-web/v171/tsconfig.json @@ -0,0 +1,32 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "strictFunctionTypes": true, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "types": [], + "paths": { + "devexpress-web": [ + "devexpress-web/v171" + ], + "devexpress-web/*": [ + "devexpress-web/v171/*" + ] + }, + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "devexpress-web-tests.ts" + ] +} \ No newline at end of file diff --git a/types/ids/tslint.json b/types/devexpress-web/v171/tslint.json similarity index 100% rename from types/ids/tslint.json rename to types/devexpress-web/v171/tslint.json diff --git a/types/diff/diff-tests.ts b/types/diff/diff-tests.ts index e787c44f48..0dea2a305e 100644 --- a/types/diff/diff-tests.ts +++ b/types/diff/diff-tests.ts @@ -3,11 +3,17 @@ const one = 'beep boop'; const other = 'beep boob blah'; let diff = jsdiff.diffChars(one, other); +printDiff(diff); -diff.forEach(part => { - const mark = part.added ? '+' : - part.removed ? '-' : ' '; - console.log(`${mark} ${part.value}`); +const diffArraysResult = jsdiff.diffArrays(['a', 'b', 'c'], ['a', 'c', 'd']); +diffArraysResult.forEach(result => { + if (result.added) { + console.log(`added ${result.value.length} line(s):`, ...result.value); + } else if (result.removed) { + console.log(`removed ${result.value.length} line(s):`, ...result.value); + } else { + console.log(`no changes`); + } }); // -------------------------- @@ -22,13 +28,13 @@ class LineDiffWithoutWhitespace extends jsdiff.Diff { } } -const obj = new LineDiffWithoutWhitespace(true); +const obj = new LineDiffWithoutWhitespace(); diff = obj.diff(one, other); printDiff(diff); function printDiff(diff: jsdiff.IDiffResult[]) { - function addLineHeader(decorator: string, str: string) { - return str.split("\n").map((line, index, array) => { + function addLineHeader(decorator: string, str: string | string[]) { + return (typeof str === 'string' ? str.split("\n") : str).map((line, index, array) => { if (index === array.length - 1 && line === "") { return line; } else { @@ -52,7 +58,8 @@ function verifyPatchMethods(oldStr: string, newStr: string, uniDiff: jsdiff.IUni const verifyPatch = jsdiff.parsePatch( jsdiff.createTwoFilesPatch("oldFile.ts", "newFile.ts", oldStr, newStr, "old", "new", { context: 1 })); - if (JSON.stringify(verifyPatch) !== JSON.stringify(uniDiff)) { + + if (JSON.stringify(verifyPatch[0], Object.keys(verifyPatch[0]).sort()) !== JSON.stringify(uniDiff, Object.keys(uniDiff).sort())) { console.error("Patch did not match uniDiff"); } } @@ -82,7 +89,11 @@ function verifyApplyMethods(oldStr: string, newStr: string, uniDiff: jsdiff.IUni }); } -const uniDiff = jsdiff.structuredPatch("oldFile.ts", "newFile.ts", one, other, +const uniDiffPatch = jsdiff.structuredPatch("oldFile.ts", "newFile.ts", one, other, "old", "new", { context: 1 }); -verifyPatchMethods(one, other, uniDiff); -verifyApplyMethods(one, other, uniDiff); +verifyPatchMethods(one, other, uniDiffPatch); + +const uniDiffStr = jsdiff.createPatch("file.ts", one, other, "old", "new", + { context: 1 }); +const uniDiffApply = jsdiff.parsePatch(uniDiffStr)[0]; +verifyApplyMethods(one, other, uniDiffApply); diff --git a/types/diff/index.d.ts b/types/diff/index.d.ts index 720a8d3270..33d337d1b7 100644 --- a/types/diff/index.d.ts +++ b/types/diff/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for diff 3.2 +// Type definitions for diff 3.5 // Project: https://github.com/kpdecker/jsdiff // Definitions by: vvakame +// szdc // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -8,15 +9,19 @@ export = JsDiff; export as namespace JsDiff; declare namespace JsDiff { - interface ICaseOptions { + interface IOptions { ignoreCase: boolean; } - interface ILinesOptions { + interface ILinesOptions extends IOptions { ignoreWhitespace?: boolean; newlineIsToken?: boolean; } + interface IArrayOptions extends IOptions { + comparator?: (left: any, right: any) => number; + } + interface IDiffResult { value: string; count?: number; @@ -24,6 +29,13 @@ declare namespace JsDiff { removed?: boolean; } + interface IDiffArraysResult { + value: T[]; + count?: number; + added?: boolean; + removed?: boolean; + } + interface IBestPath { newPos: number; componenets: IDiffResult[]; @@ -42,38 +54,45 @@ declare namespace JsDiff { newFileName: string; oldHeader: string; newHeader: string; + index: string; hunks: IHunk[]; } class Diff { - ignoreWhitespace: boolean; + diff(oldString: string, newString: string, options?: IOptions): IDiffResult[]; - constructor(ignoreWhitespace?: boolean); - - diff(oldString: string, newString: string): IDiffResult[]; - - pushComponent(components: IDiffResult[], value: string, added: boolean, removed: boolean): void; + pushComponent(components: IDiffResult[], added: boolean, removed: boolean): void; extractCommon(basePath: IBestPath, newString: string, oldString: string, diagonalPath: number): number; equals(left: string, right: string): boolean; - join(left: string, right: string): string; + removeEmpty(array: any[]): any[]; + + castInput(value: any): any; + + join(chars: string[]): string; tokenize(value: string): any; // return types are string or string[] } - function diffChars(oldStr: string, newStr: string, options?: ICaseOptions): IDiffResult[]; + function diffChars(oldStr: string, newStr: string, options?: IOptions): IDiffResult[]; - function diffWords(oldStr: string, newStr: string, options?: ICaseOptions): IDiffResult[]; + function diffWords(oldStr: string, newStr: string, options?: IOptions): IDiffResult[]; - function diffWordsWithSpace(oldStr: string, newStr: string): IDiffResult[]; + function diffWordsWithSpace(oldStr: string, newStr: string, options?: IOptions): IDiffResult[]; - function diffJson(oldObj: object, newObj: object): IDiffResult[]; + function diffJson(oldObj: object, newObj: object, options?: IOptions): IDiffResult[]; function diffLines(oldStr: string, newStr: string, options?: ILinesOptions): IDiffResult[]; - function diffCss(oldStr: string, newStr: string): IDiffResult[]; + function diffCss(oldStr: string, newStr: string, options?: IOptions): IDiffResult[]; + + function diffTrimmedLines(oldStr: string, newStr: string, options?: ILinesOptions): IDiffResult[]; + + function diffSentences(oldStr: string, newStr: string, options?: IOptions): IDiffResult[]; + + function diffArrays(oldArr: T[], newArr: T[], options?: IArrayOptions): Array>; function createPatch(fileName: string, oldStr: string, newStr: string, oldHeader: string, newHeader: string, options?: {context: number}): string; @@ -94,4 +113,8 @@ declare namespace JsDiff { function convertChangesToXML(changes: IDiffResult[]): string; function convertChangesToDMP(changes: IDiffResult[]): Array<{0: number; 1: string; }>; + + function merge(mine: string, theirs: string, base: string): IUniDiff; + + function canonicalize(obj: any, stack: any[], replacementStack: any[]): any; } diff --git a/types/dispatchr/addons/createStore.d.ts b/types/dispatchr/addons/createStore.d.ts index 86a1f24fbb..bf576156fc 100644 --- a/types/dispatchr/addons/createStore.d.ts +++ b/types/dispatchr/addons/createStore.d.ts @@ -1,7 +1,6 @@ import { StoreClass, Store } from '../index'; -type Diff = ({ [P in T]: P } & { [P in U]: never } & { [x: string]: never })[T]; -type Omit = Pick>; +type Omit = Pick; interface StoreOptions { storeName: string; diff --git a/types/dnssd/dnssd-tests.ts b/types/dnssd/dnssd-tests.ts new file mode 100644 index 0000000000..14b637d384 --- /dev/null +++ b/types/dnssd/dnssd-tests.ts @@ -0,0 +1,6 @@ +import * as dnssd from 'dnssd'; + +const serviceType = new dnssd.ServiceType(dnssd.tcp('_mqtt'), dnssd.udp('_mqtt')); + +const advertisement = new dnssd.Advertisement(serviceType, 1883, { name: 'broker' }); +const browser: dnssd.Browser = new dnssd.Browser(serviceType); diff --git a/types/dnssd/index.d.ts b/types/dnssd/index.d.ts new file mode 100644 index 0000000000..9c66a6d6a4 --- /dev/null +++ b/types/dnssd/index.d.ts @@ -0,0 +1,79 @@ +// Type definitions for dnssd 0.3 +// Project: https://github.com/DeMille/dnssd.js#readme +// Definitions by: Angel Merino +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// +import { EventEmitter } from 'events'; + +/** Declaration file generated by dts-gen */ + +export class Advertisement { + constructor(type: any, port: any, ...args: any[]); + + start(): any; + + stop(forceImmediate: any, callback: any): void; + + updateTXT(txtObj: any): void; +} + +/** + * A service entry as returned by serviceUp + */ +export class Service { + fullname: string; // 'InstanceName._googlecast._tcp.local.' + name: string; // 'InstanceName' + type: SType; // { name: 'googlecast'; protocol: 'tcp' } + domain: string; // 'local' + host: string; // 'Hostname.local.' + port: number; // 8009 + addresses: string[]; // ['192.168.1.15'] + txt: any; // { id: 'strings' } + txtRaw: any; +} + +export class SType { + name: string; + protocol: string; +} + +export class Browser extends EventEmitter { + constructor(type: any, ...args: any[]); + + list(): any; + + start(): any; + + stop(): any; +} + +export class ServiceType { + constructor(...args: any[]); + + toString(): any; + + static all(): any; + + static tcp(...args: any[]): any; + + static udp(...args: any[]): any; +} + +export const resolveA: any; + +export const resolveAAAA: any; + +export function all(): any; + +export function resolve(name: any, type: any, ...args: any[]): any; + +export function resolveSRV(name: any, opts: any): any; + +export function resolveService(name: any, ...args: any[]): any; + +export function resolveTXT(name: any, opts: any): any; + +export function tcp(...args: any[]): any; + +export function udp(...args: any[]): any; diff --git a/types/dnssd/tsconfig.json b/types/dnssd/tsconfig.json new file mode 100644 index 0000000000..88346a63fd --- /dev/null +++ b/types/dnssd/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "dnssd-tests.ts" + ] +} diff --git a/types/dnssd/tslint.json b/types/dnssd/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/dnssd/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/document-promises/document-promises-tests.ts b/types/document-promises/document-promises-tests.ts new file mode 100644 index 0000000000..5e45dffd5f --- /dev/null +++ b/types/document-promises/document-promises-tests.ts @@ -0,0 +1,16 @@ +import { parsed, contentLoaded, loaded } from 'document-promises'; + +let promise: Promise; +promise = parsed; +promise = contentLoaded; +promise = loaded; + +parsed.then(() => { + // Document parsed +}); +contentLoaded.then(() => { + // Document is ready +}); +loaded.then(() => { + // Document loaded +}); diff --git a/types/document-promises/index.d.ts b/types/document-promises/index.d.ts new file mode 100644 index 0000000000..2202c0d7ab --- /dev/null +++ b/types/document-promises/index.d.ts @@ -0,0 +1,23 @@ +// Type definitions for document-promises 3.1 +// Project: https://github.com/jonathantneal/document-promises#readme +// Definitions by: Tiger Oakes +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * document.parsed is a promise that fulfills when the document is parsed + * and `readyState` is `interactive`, before deferred and async scripts have run. + */ +export const parsed: Promise; + +/** + * document.contentLoaded is a promise that fulfills when the document is + * parsed, blocking scripts have completed, and `DOMContentLoaded` fires. + */ +export const contentLoaded: Promise; + +/** + * document.loaded is a promise that fulfills when the document is parsed, + * blocking scripts have completed, images, scripts, links and sub-frames + * have finished loading, and `readyState` is `complete`. + */ +export const loaded: Promise; diff --git a/types/document-promises/tsconfig.json b/types/document-promises/tsconfig.json new file mode 100644 index 0000000000..6b1ddaaa6b --- /dev/null +++ b/types/document-promises/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "document-promises-tests.ts" + ] +} diff --git a/types/document-promises/tslint.json b/types/document-promises/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/document-promises/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/dom-to-image/index.d.ts b/types/dom-to-image/index.d.ts new file mode 100644 index 0000000000..b6e186f53b --- /dev/null +++ b/types/dom-to-image/index.d.ts @@ -0,0 +1,42 @@ +// Type definitions for dom-to-image 2.6 +// Project: https://github.com/tsayen/dom-to-image +// Definitions by: Jip Sterk +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/// + +export interface DomToImage { + toSvg(node: Node, options?: Options): Promise; + toPng(node: Node, options?: Options): Promise; + toJpeg(node: Node, options?: Options): Promise; + toBlob(node: Node, options?: Options): Promise; + toPixelData(node: Node, options?: Options): Promise; +} + +export interface Options { + filter?: (node: Node) => boolean; + bgcolor?: string; + width?: number; + height?: number; + style?: {}; + quality?: number; + imagePlaceholder?: string; + cachebust?: boolean; +} + +export const DomToImage: DomToImage; + +type DomToImage_ = DomToImage; +type Options_ = Options; + +export default DomToImage; + +declare global { + namespace DomToImage { + type Options = Options_; + type DomToImage = DomToImage_; + } + + const DomToImage: DomToImage.DomToImage; +} diff --git a/types/dom-to-image/test/dom-to-image-global-tests.ts b/types/dom-to-image/test/dom-to-image-global-tests.ts new file mode 100644 index 0000000000..a21be8bd01 --- /dev/null +++ b/types/dom-to-image/test/dom-to-image-global-tests.ts @@ -0,0 +1,38 @@ +const node = new Node(); + +const options: DomToImage.Options = { + filter, + bgcolor: '#24292e', + style: { + width: '100px' + }, + width: 100, + height: 100, + quality: 0.1, + imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', + cachebust: true +}; + +function filter(node: Node): boolean { + return true; +} + +async function testToSvg() { + const svg = await DomToImage.toSvg(node, { filter }); +} + +async function testToPng() { + const png = await DomToImage.toPng(node, { bgcolor: '#24292e', style: { width: '100px' } }); +} + +async function testToJpeg() { + const jpeg = await DomToImage.toJpeg(node, { width: 100, height: 100 }); +} + +async function testToBlob() { + const blob = await DomToImage.toBlob(node, { quality: 0.1, }); +} + +async function testToPixelData() { + const pixelData = await DomToImage.toPixelData(node, { imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', cachebust: true }); +} diff --git a/types/dom-to-image/test/dom-to-image-import-default-tests.ts b/types/dom-to-image/test/dom-to-image-import-default-tests.ts new file mode 100644 index 0000000000..0f300ffa38 --- /dev/null +++ b/types/dom-to-image/test/dom-to-image-import-default-tests.ts @@ -0,0 +1,40 @@ +import domToImage, { Options } from 'dom-to-image'; + +const node = new Node(); + +const options: Options = { + filter, + bgcolor: '#24292e', + style: { + width: '100px' + }, + width: 100, + height: 100, + quality: 0.1, + imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', + cachebust: true +}; + +function filter(node: Node): boolean { + return true; +} + +async function testToSvg() { + const svg = await domToImage.toSvg(node, { filter }); +} + +async function testToPng() { + const png = await domToImage.toPng(node, { bgcolor: '#24292e', style: { width: '100px' } }); +} + +async function testToJpeg() { + const jpeg = await domToImage.toJpeg(node, { width: 100, height: 100 }); +} + +async function testToBlob() { + const blob = await domToImage.toBlob(node, { quality: 0.1, }); +} + +async function testToPixelData() { + const pixelData = await domToImage.toPixelData(node, { imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', cachebust: true }); +} diff --git a/types/dom-to-image/test/dom-to-image-module-tests.ts b/types/dom-to-image/test/dom-to-image-module-tests.ts new file mode 100644 index 0000000000..571a28f5b6 --- /dev/null +++ b/types/dom-to-image/test/dom-to-image-module-tests.ts @@ -0,0 +1,40 @@ +import { Options, DomToImage } from 'dom-to-image'; + +const node = new Node(); + +const options: Options = { + filter, + bgcolor: '#24292e', + style: { + width: '100px' + }, + width: 100, + height: 100, + quality: 0.1, + imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', + cachebust: true +}; + +function filter(node: Node): boolean { + return true; +} + +async function testToSvg() { + const svg = await DomToImage.toSvg(node, { filter }); +} + +async function testToPng() { + const png = await DomToImage.toPng(node, { bgcolor: '#24292e', style: { width: '100px' } }); +} + +async function testToJpeg() { + const jpeg = await DomToImage.toJpeg(node, { width: 100, height: 100 }); +} + +async function testToBlob() { + const blob = await DomToImage.toBlob(node, { quality: 0.1, }); +} + +async function testToPixelData() { + const pixelData = await DomToImage.toPixelData(node, { imagePlaceholder: 'data:image/gif;base64,R0lGODlhAQABAIAAAP', cachebust: true }); +} diff --git a/types/dom-to-image/tsconfig.json b/types/dom-to-image/tsconfig.json new file mode 100644 index 0000000000..10fc769913 --- /dev/null +++ b/types/dom-to-image/tsconfig.json @@ -0,0 +1,27 @@ + +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "test/dom-to-image-module-tests.ts", + "test/dom-to-image-global-tests.ts", + "test/dom-to-image-import-default-tests.ts" + ] +} \ No newline at end of file diff --git a/types/dom-to-image/tslint.json b/types/dom-to-image/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/dom-to-image/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/dotenv-safe/dotenv-safe-tests.ts b/types/dotenv-safe/dotenv-safe-tests.ts index eca6c0937a..a204a4fc6c 100644 --- a/types/dotenv-safe/dotenv-safe-tests.ts +++ b/types/dotenv-safe/dotenv-safe-tests.ts @@ -5,3 +5,9 @@ env.load({ path: "/foo/bar/baz.env", sample: "/foo/bar/qux.env" }) + +env.config({ + allowEmptyValues: true, + path: "/foo/bar/baz.env", + sample: "/foo/bar/qux.env" +}) diff --git a/types/dotenv-safe/index.d.ts b/types/dotenv-safe/index.d.ts index 2c696ae1b5..114edce926 100644 --- a/types/dotenv-safe/index.d.ts +++ b/types/dotenv-safe/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for dotenv-safe 4.0 +// Type definitions for dotenv-safe 5.0 // Project: https://github.com/rolodato/dotenv-safe // Definitions by: Stan Goldmann // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -18,12 +18,11 @@ export interface MissingEnvVarsError extends Error { missing: string[] } -/** - * Loads environment variables file into 'process.env'. - * - * @throws MissingEnvVarsError - */ -export function load(options?: { +export interface DotenvSafeOptions { + /** + * You can specify a custom path if your file containing environment variables is named or located differently. + * @default '.env' + */ path?: string, /** * Path to example environment file. @@ -45,4 +44,18 @@ export function load(options?: { * @default false */ allowEmptyValues?: boolean, -}): env.DotenvResult +} + +/** + * Loads environment variables file into 'process.env'. + * + * @throws MissingEnvVarsError + */ +export function load(options?: DotenvSafeOptions): env.DotenvResult + +/** + * Loads environment variables file into 'process.env'. + * + * @throws MissingEnvVarsError + */ +export function config(options?: DotenvSafeOptions): env.DotenvResult diff --git a/types/dotenv-webpack/dotenv-webpack-tests.ts b/types/dotenv-webpack/dotenv-webpack-tests.ts new file mode 100644 index 0000000000..6605550529 --- /dev/null +++ b/types/dotenv-webpack/dotenv-webpack-tests.ts @@ -0,0 +1,21 @@ +import * as webpack from 'webpack'; +import DotenvWebpackPlugin = require('dotenv-webpack'); + +new DotenvWebpackPlugin(); // $ExpectType DotenvWebpackPlugin + +const options: DotenvWebpackPlugin.Options = { + path: './some.other.env', + safe: true, + systemvars: true, + silent: true +}; + +const config: webpack.Configuration = { + plugins: [ + new DotenvWebpackPlugin(), + new DotenvWebpackPlugin({ + path: './some.other.env', + }), + new DotenvWebpackPlugin(options), + ] +}; diff --git a/types/dotenv-webpack/index.d.ts b/types/dotenv-webpack/index.d.ts new file mode 100644 index 0000000000..2d330ace45 --- /dev/null +++ b/types/dotenv-webpack/index.d.ts @@ -0,0 +1,37 @@ +// Type definitions for dotenv-webpack 1.5 +// Project: https://github.com/mrsteele/dotenv-webpack +// Definitions by: Karol Majewski +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.7 + +import * as webpack from 'webpack'; + +declare class DotenvWebpackPlugin extends webpack.Plugin { + constructor(options?: DotenvWebpackPlugin.Options); +} + +declare namespace DotenvWebpackPlugin { + interface Options { + /** + * The path to your environment variables. Default: `'./.env'`. + */ + path?: string; + + /** + * If `false` ignore safe-mode, if `true` load `'./.env.example'`, if a `string` load that file as the sample. Default: `false`. + */ + safe?: boolean; + + /** + * Set to `true` if you would rather load all system variables as well (useful for CI purposes). Default: `false`. + */ + systemvars?: boolean; + + /** + * If `true`, all warnings will be surpressed. Default: `false`. + */ + silent?: boolean; + } +} + +export = DotenvWebpackPlugin; diff --git a/types/dotenv-webpack/tsconfig.json b/types/dotenv-webpack/tsconfig.json new file mode 100644 index 0000000000..f87dcd737b --- /dev/null +++ b/types/dotenv-webpack/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "dotenv-webpack-tests.ts" + ] +} diff --git a/types/dotenv-webpack/tslint.json b/types/dotenv-webpack/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/dotenv-webpack/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/dotenv/dotenv-tests.ts b/types/dotenv/dotenv-tests.ts index df05475c17..613da3b056 100644 --- a/types/dotenv/dotenv-tests.ts +++ b/types/dotenv/dotenv-tests.ts @@ -11,6 +11,8 @@ dotenv.config({ encoding: 'utf8' }); +dotenv.load(); + const parsed = dotenv.parse("ENVIRONMENT=production\nDEBUG=no\n"); const debug: string = parsed['DEBUG']; diff --git a/types/dotenv/index.d.ts b/types/dotenv/index.d.ts index 831790138c..4dd67b15c0 100644 --- a/types/dotenv/index.d.ts +++ b/types/dotenv/index.d.ts @@ -20,6 +20,7 @@ export function parse(src: string | Buffer): {[name: string]: string}; * Example: 'KEY=value' becomes { parsed: { KEY: 'value' } } */ export function config(options?: DotenvOptions): DotenvResult; +export const load: typeof config; export interface DotenvOptions { /** diff --git a/types/draft-js/index.d.ts b/types/draft-js/index.d.ts index e83de2b303..4064c9b8a0 100644 --- a/types/draft-js/index.d.ts +++ b/types/draft-js/index.d.ts @@ -610,6 +610,7 @@ declare namespace Draft { import DraftBlockType = Draft.Model.Constants.DraftBlockType; import DraftEntityMutability = Draft.Model.Constants.DraftEntityMutability; import DraftEntityType = Draft.Model.Constants.DraftEntityType; + import DraftEntityInstance = Draft.Model.Entity.DraftEntityInstance; import DraftDecoratorType = Draft.Model.Decorators.DraftDecoratorType; @@ -754,6 +755,8 @@ declare namespace Draft { getEntity(key: string): EntityInstance; getLastCreatedEntityKey(): string; mergeEntityData(key: string, toMerge: { [key: string]: any }): ContentState; + replaceEntityData(key: string, toMerge: { [key: string]: any }): ContentState; + addEntity(instance: DraftEntityInstance): ContentState; getBlockMap(): BlockMap; diff --git a/types/dwt/addon.pdf.d.ts b/types/dwt/addon.pdf.d.ts index 87097471b0..2e7b1d5a84 100644 --- a/types/dwt/addon.pdf.d.ts +++ b/types/dwt/addon.pdf.d.ts @@ -14,6 +14,11 @@ declare enum EnumDWT_ConvertMode { CM_RENDERALL = 1 } +declare enum EnumDWT_ConverMode { + CM_DEFAULT = 0, + CM_RENDERALL = 1 +} + /** * @class */ @@ -43,10 +48,10 @@ interface PDF { /** * Set the image convert mode for PDF Rasterizer in Dynamic Web TWAIN. * @method Dynamsoft.WebTwain#SetConvertMode - * @param {EnumDWT_ConvertMode} convertMode Specifies the image convert mode. + * @param {EnumDWT_ConvertMode | EnumDWT_ConverMode} convertMode Specifies the image convert mode. * @return {boolean} */ - SetConvertMode(convertMode: EnumDWT_ConvertMode): boolean; + SetConvertMode(convertMode: EnumDWT_ConvertMode | EnumDWT_ConverMode): boolean; /** * Set the output resolution for the PDF Rasterizer in Dynamic Web TWAIN. diff --git a/types/dwt/index.d.ts b/types/dwt/index.d.ts index be362e680b..0656236f08 100644 --- a/types/dwt/index.d.ts +++ b/types/dwt/index.d.ts @@ -48,7 +48,7 @@ declare namespace Dynamsoft { bChrome: boolean, bEdge: boolean, bFileSystem: boolean, bFirefox: boolean, bIE: boolean, bLinux: boolean, bMac: boolean, bSafari: boolean, bWin: boolean, bWin64: boolean, basePath: string, iPluginLength: number, isX64: boolean, pathType: number, - strChromeVersion: number, strFirefoxVersion: string, strIEVersion: string + strChromeVersion: string, strFirefoxVersion: string, strIEVersion: string }; /*ignored @@ -103,8 +103,8 @@ declare namespace Dynamsoft { function ShowDialog(_dialogWidth: number, _dialogHeight: number, _strDialogMessageWithHtmlFormat: string, _bChangeImage: boolean, bHideCloseButton: boolean): void; let Trial: boolean; function Unload(): void; - let UseDefaultInstallUI: string; - let initQueue: number[]; + let UseDefaultInstallUI: boolean; + let initQueue: any[]; let inited: boolean; } } @@ -1372,13 +1372,48 @@ declare enum EnumDWT_UploadDataFormat { Base64 = 1 } -/** interface for a DWT container which basically defines a DIV on the page */ +/** + * interface for a DWT container which basically defines a DIV on the page + */ interface Container { ContainerId: string; Width: string | number; Height: string | number; } +/** + * interface for a base64 result + */ +interface Base64Result { + getLength(): number; + getData(offset: number, length: number): string; + getMD5(): string; +} + +/** + * Copied from lib.d.ts (Typescript) + */ +interface Blob { + readonly size: number; + readonly type: string; + msClose(): void; + msDetachStream(): any; + slice(start?: number, end?: number, contentType?: string): Blob; +} + +/** + * Details for each license + */ +interface LicenseDetailItem { + readonly Browser: string; + readonly EnumLicenseType: string; + readonly ExpireDate: string; + readonly LicenseType: string; + readonly OS: string; + readonly Trial: string; + readonly Version: string; +} + /** * @class */ @@ -1453,7 +1488,7 @@ interface WebTwain { * Returns the current deviation of the pixels in the image. * @type {number} */ - BlankImageCurrentStdDev: number; + readonly BlankImageCurrentStdDev: number; /** * Returns or sets the standard deviation of the pixels in the image. @@ -1507,7 +1542,7 @@ interface WebTwain { * Returns the index (0-based) of a list to indicate the Default Value when the value of the CapType property is TWON_ENUMERATION. If the data type of the capability is String, the list is in CapItemsString property. For other data types, the list is in CapItems property. This is a runtime, read-only property. * @type {number} */ - CapDefaultIndex: number; + readonly CapDefaultIndex: number; /** * Returns the default value in a range when the value of the CapType property is TWON_RANGE. This is a runtime, read-only property. @@ -1591,25 +1626,25 @@ interface WebTwain { * Returns the device name of current source. This is a runtime, read-only property. * @type {string} */ - CurrentSourceName: string; + readonly CurrentSourceName: string; /** * Returns the value indicating the data source status. This is a runtime, read-only property. * @type {number} */ - DataSourceStatus: number; + readonly DataSourceStatus: number; /** * Returns the device name of default source. This is a runtime, read-only property. * @type {string} */ - DefaultSourceName: string; + readonly DefaultSourceName: string; /** * Returns whether the source supports duplex. If so, it further returns the level of duplex the Source supports (one pass or two pass duplex). This is a runtime, read-only property. - * @type {number} + * @type {EnumDWT_DUPLEX} */ - Duplex: number; + readonly Duplex: EnumDWT_DUPLEX; /** * [Deprecated.] Returns or sets whether the user can zoom image using hot key. @@ -1621,13 +1656,13 @@ interface WebTwain { * Returns the error code. This is a runtime, read-only property. * @type {number} */ - ErrorCode: number; + readonly ErrorCode: number; /** * Returns the error string. This is a runtime, read-only property. * @type {string} */ - ErrorString: string; + readonly ErrorString: string; /** * Returns or sets the password used to log into the FTP server. @@ -1657,7 +1692,7 @@ interface WebTwain { * Returns the response string from the HTTP server if an error occurs for HTTPUploadThroughPost() method. This is a runtime, read-only property. * @type {string} */ - HTTPPostResponseString: string; + readonly HTTPPostResponseString: string; /** * Returns whether a HTTP request has credentials @@ -1675,7 +1710,7 @@ interface WebTwain { * Returns how many images are in buffer. This is a runtime, read-only property. * @type {number} */ - HowManyImagesInBuffer: number; + readonly HowManyImagesInBuffer: number; /** * Specifies the content type of a http upload. @@ -1783,7 +1818,7 @@ interface WebTwain { * Returns whether or not there are documents loaded in the Source's feeder when IfFeederEnabled and IfPaperDetectable are TRUE. This is a runtime, read-only property. * @type {boolean} */ - IfFeederLoaded: boolean; + readonly IfFeederLoaded: boolean; /** * Returns or sets whether to resize the image to fit the size of window when the view mode is set to -1 by -1. You can use SetViewMode method to set the view mode. @@ -1813,7 +1848,7 @@ interface WebTwain { * Returns the value whether the Source has a paper sensor that can detect documents on the ADF or Flatbed. This is a runtime, read-only property. * @type {boolean} */ - IfPaperDetectable: boolean; + readonly IfPaperDetectable: boolean; /** * Returns or sets whether SSL is used when uploading or downloading images. @@ -1879,7 +1914,7 @@ interface WebTwain { * Returns whether the Source supports acquisition with the UI (User Interface) disabled. If FALSE, indicates that this Source can only support acquisition with the UI enabled. This is a runtime, read-only property. * @type {boolean} */ - IfUIControllable: boolean; + readonly IfUIControllable: boolean; /** * Sets or returns whether Dynamic Web TWAIN uses the new TWAIN Data Source Manager (TWAINDSM.dll) when acquiring images from TWAIN devices. @@ -1927,43 +1962,43 @@ interface WebTwain { * Returns the document number of the current image. This is a runtime, read-only property. * @type {number} */ - ImageLayoutDocumentNumber: number; + readonly ImageLayoutDocumentNumber: number; /** * Returns the value of the bottom-most edge of the current image frame (in Unit). This is a read-only runtime property. * @type {number} */ - ImageLayoutFrameBottom: number; + readonly ImageLayoutFrameBottom: number; /** * Returns the value of the left-most edge of the current image frame (in Unit). This is a runtime, read-only property. * @type {number} */ - ImageLayoutFrameLeft: number; + readonly ImageLayoutFrameLeft: number; /** * Returns the frame number of the current image. This is a runtime, read-only property. * @type {number} */ - ImageLayoutFrameNumber: number; + readonly ImageLayoutFrameNumber: number; /** * Returns the value of the right-most edge of the current image frame (in Unit). This is a runtime, read-only property. * @type {number} */ - ImageLayoutFrameRight: number; + readonly ImageLayoutFrameRight: number; /** * Returns the value of the top-most edge of the current image frame (in Unit). This is a runtime, read-only property. * @type {number} */ - ImageLayoutFrameTop: number; + readonly ImageLayoutFrameTop: number; /** * Returns the page number of the current image. This is a runtime, read-only property. * @type {Long} */ - ImageLayoutPageNumber: number; + readonly ImageLayoutPageNumber: number; /** * [Deprecated.] Returns how tall/long, in pixels, the image is. This is a runtime, read-only property. @@ -1981,7 +2016,7 @@ interface WebTwain { * Returns the pixel type of the current image. This is a runtime, read-only property. Please note the property is only valid in OnPreTransfer and OnPostTransfer event. * @type {EnumDWT_PixelType} */ - ImagePixelType: EnumDWT_PixelType; + readonly ImagePixelType: EnumDWT_PixelType; /** * [Deprecated.] Returns how width, in pixels, the image is. This is a runtime, read-only property. @@ -2017,13 +2052,13 @@ interface WebTwain { * Return the magnetic data if the scanner support magnetic data recognition. * @type {string} */ - MagData: string; + readonly MagData: string; /** * Return the magnetic type if the scanner support magnetic data recognition. * @type {number} */ - MagType: number; + readonly MagType: number; /** * Sets or returns the manufacture string for the application identity. @@ -2059,13 +2094,13 @@ interface WebTwain { * Returns the X co-ordinate of the mouse. This is a runtime property. * @type {number} */ - MouseX: number; + readonly MouseX: number; /** * Returns the Y co-ordinate of the mouse. This is a runtime property. * @type {number} */ - MouseY: number; + readonly MouseY: number; /** * Returns or sets the name of the person who creates the PDF document. @@ -2129,15 +2164,15 @@ interface WebTwain { /** * Returns or sets the page size(s) the Source can/should use to acquire image data. This is a runtime property. - * @type {number} + * @type {EnumDWT_CapSupportedSizes} */ - PageSize: number; + PageSize: EnumDWT_CapSupportedSizes; /** * Returns the number of transfers the Source is ready to supply, upon demand. This is a runtime, read-only property. * @type {number} */ - PendingXfers: number; + readonly PendingXfers: number; /** * Returns or sets the pixel flavor for acquired images. This is a runtime property. @@ -2209,7 +2244,7 @@ interface WebTwain { * Returns how many sources are installed in the system. This is a runtime, read-only property. * @type {number} */ - SourceCount: number; + readonly SourceCount: number; /** * Returns or sets the compression type of TIFF files. This is a runtime property. @@ -2225,9 +2260,9 @@ interface WebTwain { /** * Returns or sets the unit of measure. This is a runtime property. - * @type {number} + * @type {EnumDWT_UnitType} */ - Unit: number; + Unit: EnumDWT_UnitType; /** * Specifies whether to show the vertical scroll bar @@ -2239,7 +2274,7 @@ interface WebTwain { * Sets or returns the version info string for the application identity. * @type {string} */ - VersionInfo: string; + readonly VersionInfo: string; /** * Returns or sets the width of the dwt object viewer @@ -2450,18 +2485,17 @@ interface WebTwain { CloseWorkingProcess(): boolean; /** - * Converts the images specified by the indices to base64. + * Converts the images specified by the indices to base64 synchronously. * @method WebTwain#ConvertToBase64 * @param {Array} indices indices specifies which images are to be converted to base64. * @param {EnumDWT_ImageType} enumImageType the image format in which the images are to be converted to base64. - * @param {function} asyncSuccessFunc the function to call when the upload succeeds. Please refer to the function prototype OnSuccess. - * @param {function} asyncFailureFunc the function to call when the upload fails. Please refer to the function prototype OnFailure. - * @return {boolean} - */ - ConvertToBase64(indices: number[], enumImageType: EnumDWT_ImageType, optionalAsyncSuccessFunc?: (result: any) => void, optionalAsyncFailureFunc?: (errorCode: number, errorString: string) => void): boolean; + * @return {Base64Result} + + ConvertToBase64(indices: number[], enumImageType: EnumDWT_ImageType): Base64Result; + */ /** - * Converts the images specified by the indices to base64. + * Converts the images specified by the indices to base64 asynchronously. * @method WebTwain#ConvertToBase64 * @param {Array} indices indices specifies which images are to be converted to base64. * @param {EnumDWT_ImageType} enumImageType the image format in which the images are to be converted to base64. @@ -2469,7 +2503,27 @@ interface WebTwain { * @param {function} asyncFailureFunc the function to call when the upload fails. Please refer to the function prototype OnFailure. * @return {boolean} */ - ConvertToBlob(indices: number[], enumImageType: EnumDWT_ImageType, optionalAsyncSuccessFunc?: (result: any) => void, optionalAsyncFailureFunc?: (errorCode: number, errorString: string) => void): boolean; + ConvertToBase64(indices: number[], enumImageType: EnumDWT_ImageType, asyncSuccessFunc: (result: Base64Result) => void, asyncFailureFunc: (errorCode: number, errorString: string) => void): boolean; + + /** + * Converts the images specified by the indices to blob synchronously. + * @method WebTwain#ConvertToBlob + * @param {Array} indices indices specifies which images are to be converted to base64. + * @param {EnumDWT_ImageType} enumImageType the image format in which the images are to be converted to base64. + * @return {Blob} + */ + ConvertToBlob(indices: number[], enumImageType: EnumDWT_ImageType): Blob; + + /** + * Converts the images specified by the indices to blob asynchronously. + * @method WebTwain#ConvertToBlob + * @param {Array} indices indices specifies which images are to be converted to base64. + * @param {EnumDWT_ImageType} enumImageType the image format in which the images are to be converted to base64. + * @param {function} asyncSuccessFunc the function to call when the upload succeeds. Please refer to the function prototype OnSuccess. + * @param {function} asyncFailureFunc the function to call when the upload fails. Please refer to the function prototype OnFailure. + * @return {boolean} + */ + ConvertToBlob(indices: number[], enumImageType: EnumDWT_ImageType, asyncSuccessFunc: (result: any) => void, asyncFailureFunc: (errorCode: number, errorString: string) => void): boolean; /** * Changes a specified image to gray scale. @@ -2737,9 +2791,9 @@ interface WebTwain { /** * Gets custom DS data, the returned string is base64 encoded. * @method WebTwain#GetCustomDSDataEx - * @return {string} + * @return {string | boolean} */ - GetCustomDSDataEx(): string; + GetCustomDSDataEx(): string | boolean; // Get custom DS data, and save the data to the specified file /** @@ -2753,9 +2807,9 @@ interface WebTwain { /** * Retrieve the device type of the currently selected data source, it might be a scanner, a web camera, etc. * @method WebTwain#GetDeviceType - * @return {number} + * @return {number | boolean} */ - GetDeviceType(): number; + GetDeviceType(): number | boolean; /** * Returns the pixel bit depth of the selected image. @@ -2773,9 +2827,15 @@ interface WebTwain { */ GetImageHeight(sImageIndex: number): number; - /*work on - GetImagePartURL - */ + /** + * Returns the direct URL of an image specified by index, if iWidth and iHeight are not specified, you get the original image, otherwise you get the image with specified iWidth or iHeight while keeping the same aspect ratio. The returned string is like this 'dwt://dwt_trial_13000404/img?id=306159652&index=0&t=1502184632022' + * @method WebTwain#GetImagePartURL + * @param {number} index the index of the image. + * @param {number} iWidth the width of the image, it must be 150 or bigger + * @param {number} iHeight the height of the image, it must be 150 or bigger + * @return {string} + */ + GetImagePartURL(index: number, iWidth?: number, iHeight?: number): string; /** * Returns the file size of the new image resized from the image of a specified index in buffer. @@ -2791,10 +2851,10 @@ interface WebTwain { * Pre-calculate the file size of the local image file that is saved from an image of a specified index in buffer. * @method WebTwain#GetImageSizeWithSpecifiedType * @param {number} sImageIndex specifies the index of image in buffer. The index is 0-based. - * @param {number} sImageType specifies the type of an image file.. + * @param {EnumDWT_ImageType} sImageType specifies the type of an image file.. * @return {number} */ - GetImageSizeWithSpecifiedType(sImageIndex: number, sImageType: number): number; + GetImageSizeWithSpecifiedType(sImageIndex: number, sImageType: EnumDWT_ImageType): number; /** * Returns the direct URL of an image specified by index, if iWidth or iHeight is set to -1, you get the original image, otherwise you get the image with specified iWidth or iHeight while keeping the same aspect ratio. @@ -2834,7 +2894,7 @@ interface WebTwain { * Return the runtime license info. * @method WebTwain#GetLicenseInfo */ - GetLicenseInfo(): { Domain: string, Detail: any[] }; + GetLicenseInfo(): { Domain: string, Detail: LicenseDetailItem[] }; /** * Returns the index of the selected image. @@ -2847,10 +2907,10 @@ interface WebTwain { /** * Pre-calculate the file size of the local image file that is saved from the selected images in buffer. * @method WebTwain#GetSelectedImagesSize - * @param {number} iImageType specifies the type of an image file. + * @param {EnumDWT_ImageType} iImageType specifies the type of an image file. * @return {number} */ - GetSelectedImagesSize(iImageType: number): number; + GetSelectedImagesSize(iImageType: EnumDWT_ImageType): number; /** * Check the skew angle of an image by its index in buffer. @@ -2938,6 +2998,16 @@ interface WebTwain { */ HTTPDownloadThroughPost(HTTPServer: string, HTTPRemoteFile: string, lImageType: EnumDWT_ImageType, optionalAsyncSuccessFunc?: () => void, optionalAsyncFailureFunc?: (errorCode: number, errorString: string, httppostresponsestring: string) => void): boolean; + /** + * Uploads just a form created by SetHTTPFormField and SetHTTPHeader + * @method WebTwain#HTTPUpload + * @param {string} url the url where the images are sent in a POST request. + * @param {function} asyncSuccessFunc the function to call when the upload succeeds. Please refer to the function prototype OnSuccess. + * @param {function} asyncFailureFunc the function to call when the upload fails. Please refer to the function prototype OnFailure. + * @return {boolean} + */ + HTTPUpload(url: string, asyncSuccessFunc: (httppostresponsestring: string) => void, asyncFailureFunc: (errorCode: number, errorString: string, httppostresponsestring: string) => void): boolean; + /** * Uploads the images specified by the indices to the HTTP server. * @method WebTwain#HTTPUpload @@ -2949,7 +3019,7 @@ interface WebTwain { * @param {function} asyncFailureFunc the function to call when the upload fails. Please refer to the function prototype OnFailure. * @return {boolean} */ - HTTPUpload(url: string, indices: number[], enumImageType: EnumDWT_ImageType, dataFormat: EnumDWT_UploadDataFormat, optionalAsyncSuccessFunc?: () => void, optionalAsyncFailureFunc?: (errorCode: number, errorString: string, httppostresponsestring: string) => void): boolean; + HTTPUpload(url: string, indices: number[], enumImageType: EnumDWT_ImageType, dataFormat: EnumDWT_UploadDataFormat, asyncSuccessFunc: (httppostresponsestring: string) => void, asyncFailureFunc: (errorCode: number, errorString: string, httppostresponsestring: string) => void): boolean; /** * Uploads all images in the buffer to the HTTP server through the HTTP Post method as a Multi-Page TIFF. @@ -3256,9 +3326,10 @@ interface WebTwain { /** * Shows the GUI of Image Printer. * @method WebTwain#Print + * @param {boolean} bUseSystemDefaultPrintUI specifies whether to use the system Print UI or not. * @return {boolean} */ - Print(): boolean; + Print(bUseSystemDefaultPrintUI: boolean): boolean; /** * Binds a specified function to an event, so that the function gets called whenever the event fires. @@ -3272,9 +3343,9 @@ interface WebTwain { /** * Removes all images in buffer. * @method WebTwain#RemoveAllImages - * @return {void} + * @return {boolean} */ - RemoveAllImages(): void; + RemoveAllImages(): boolean; /** * Removes selected images in buffer. @@ -3542,6 +3613,16 @@ interface WebTwain { */ SetHTTPFormField(FieldName: string, FieldValue: string): boolean; + /** + * Sets a text parameter as a filed in a web form. This form is maintained by the component itself (meaning it's not on the page). All fields in this form will be passed to the server when uploading images. + * @method WebTwain#SetHTTPFormField + * @param {string} FieldName specifies the name of the field which could later be used to retrieve the blob + * @param {Blob} blobValue specifies the blob to be put in the form. + * @param {string} optionalFileName specifies the file name for the blob + * @return {boolean} + */ + SetHTTPFormField(FieldName: string, blobValue: Blob, optionalFileName?: string): boolean; + /** * Sets a header for the current HTTP Post request. * @method WebTwain#SetHTTPHeader @@ -3604,9 +3685,9 @@ interface WebTwain { * @method WebTwain#SetSelectedImageIndex * @param {number} sSelectedIndex this is the index of an array that holds the indices of selected images. * @param {number} newVal specifies the index of an image that you want to select. - * @return {void} + * @return {boolean} */ - SetSelectedImageIndex(selectedIndex: number, newVal: number): void; + SetSelectedImageIndex(selectedIndex: number, newVal: number): boolean; /** * Sets a custom tiff tag. Currently you can set up to 32 tags. The string to be set in a tag can be encoded with base64. diff --git a/types/ej.web.all/index.d.ts b/types/ej.web.all/index.d.ts index 03f6b12c24..77332f6a6d 100644 --- a/types/ej.web.all/index.d.ts +++ b/types/ej.web.all/index.d.ts @@ -8,7 +8,7 @@ /*! * filename: ej.web.all.d.ts -* version : 16.1.0.24 +* version : 16.1.0.37 * Copyright Syncfusion Inc. 2001 - 2018. All rights reserved. * Use of this code is subject to the terms of our license. * A copy of the current license can be obtained at any time by e-mailing @@ -378,7 +378,7 @@ declare namespace ej { update(dm: ej.DataManager, keyField: string, value: any, tableName: string): any; } class ForeignKeyAdaptor extends ej.JsonAdaptor { - constructor(); + constructor(data: any, type: string); processQuery(ds: any, query: ej.Query): any; insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; data: any }; @@ -7995,9 +7995,9 @@ declare namespace ej { */ footerTemplateId?: string; - /** This event is triggered before the dialog widgets gets open. + /** Triggered when the custom action button clicked. */ - beforeOpen?(e: BeforeOpenEventArgs): void; + actionButtonClick?(e: ActionButtonClickEventArgs): void; /** This event is triggered whenever the AJAX request fails to retrieve the dialog content. */ @@ -8007,6 +8007,10 @@ declare namespace ej { */ ajaxSuccess?(e: AjaxSuccessEventArgs): void; + /** This event is triggered before the dialog widgets gets open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + /** This event is triggered before the dialog widgets get closed. */ beforeClose?(e: BeforeCloseEventArgs): void; @@ -8015,6 +8019,10 @@ declare namespace ej { */ close?(e: CloseEventArgs): void; + /** Triggered when the dialog content is collapsed. + */ + collapse?(e: CollapseEventArgs): void; + /** Triggered after the dialog content is loaded in DOM. */ contentLoad?(e: ContentLoadEventArgs): void; @@ -8039,6 +8047,10 @@ declare namespace ej { */ dragStop?(e: DragStopEventArgs): void; + /** Triggered when the dialog content is expanded. + */ + expand?(e: ExpandEventArgs): void; + /** Triggered after the dialog is opened. */ open?(e: OpenEventArgs): void; @@ -8054,33 +8066,33 @@ declare namespace ej { /** Triggered when the user stops resizing the dialog. */ resizeStop?(e: ResizeStopEventArgs): void; - - /** Triggered when the dialog content is expanded. - */ - expand?(e: ExpandEventArgs): void; - - /** Triggered when the dialog content is collapsed. - */ - collapse?(e: CollapseEventArgs): void; - - /** Triggered when the custom action button clicked. - */ - actionButtonClick?(e: ActionButtonClickEventArgs): void; } - export interface BeforeOpenEventArgs { + export interface ActionButtonClickEventArgs { /** Set this option to true to cancel the event. */ cancel?: boolean; + /** Name of the event target attribute. + */ + buttonID?: string; + + /** Name of the event. + */ + type?: string; + /** Instance of the dialog model object. */ model?: ej.Dialog.Model; - /** Name of the event + /** Name of the event current target title. */ - type?: string; + currentTarget?: string; + + /** Name of the event. + */ + event?: string; } export interface AjaxErrorEventArgs { @@ -8137,6 +8149,21 @@ declare namespace ej { data?: string; } + export interface BeforeOpenEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event + */ + type?: string; + } + export interface BeforeCloseEventArgs { /** Current event object. @@ -8154,6 +8181,10 @@ declare namespace ej { /** Name of the event. */ type?: string; + + /** returns true when the dialog activated by user interaction otherwise returns false + */ + isInteraction?: boolean; } export interface CloseEventArgs { @@ -8173,6 +8204,29 @@ declare namespace ej { /** Name of the event */ type?: string; + + /** returns true when the Dialog activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } + + export interface CollapseEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event. + */ + type?: string; + + /** returns true when the Dialog activated by user interaction otherwise returns false + */ + isInteraction?: boolean; } export interface ContentLoadEventArgs { @@ -8285,6 +8339,25 @@ declare namespace ej { event?: any; } + export interface ExpandEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event. + */ + type?: string; + + /** returns true when the Dialog activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } + export interface OpenEventArgs { /** Set this option to true to cancel the event. @@ -8357,59 +8430,6 @@ declare namespace ej { event?: any; } - export interface ExpandEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface CollapseEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface ActionButtonClickEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Name of the event target attribute. - */ - buttonID?: string; - - /** Name of the event. - */ - type?: string; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event current target title. - */ - currentTarget?: string; - } - export interface AjaxSettings { /** It specifies, whether to enable or disable asynchronous request. @@ -9567,8 +9587,8 @@ declare namespace ej { */ cssClass?: string; - /** Sets the separator when the multiSelectMode with delimiter option or checkbox is enabled.When you enter the delimiter value, the text after the delimiter is considered as a - * separateword or query. The delimiter string is a single character and must be a symbol. Mostly,the delimiter symbol is used as comma (,), semi-colon (;), or any other special + /** Sets the separator when the multiSelectMode with delimiter option or checkbox is enabled. When you enter the delimiter value, the text after the delimiter is considered as a + * separate word or query. The delimiter string is a single character and must be a symbol. Mostly, the delimiter symbol is used as comma (,), semi-colon (;), or any other special * character. * @Default {,} */ @@ -9628,12 +9648,12 @@ declare namespace ej { */ readOnly?: boolean; - /** The DropDownTree’s textbox is displayed with rounded corner style. + /** The DropDownTree's textbox is displayed with rounded corner style. * @Default {false} */ showRoundedCorner?: boolean; - /** Specifies the targetID for the DropDownTree’s items. + /** Specifies the targetID for the DropDownTree's items. * @Default {null} */ targetID?: string; @@ -9653,8 +9673,8 @@ declare namespace ej { */ validationRules?: any; - /** Specifies the value (text content) for the DropDownTree control. For the single selection mode, the selected item’s value will be returned in its data type, and for - * MultiSelectMode, returns the selected items’ values separated by delimiter in string type. + /** Specifies the value (text content) for the DropDownTree control. For the single selection mode, the selected item's value will be returned in its data type, and for + * MultiSelectMode, returns the selected items values separated by delimiter in string type. * @Default {null} */ value?: string; @@ -9678,7 +9698,7 @@ declare namespace ej { */ blur?(e: BlurEventArgs): void; - /** Fires the action when the DropDownTree control’s value is changed. + /** Fires the action when the DropDownTree control's value is changed. */ change?(e: ChangeEventArgs): void; @@ -9744,15 +9764,15 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ selectedText?: string; - /** Selected item’s text. + /** Selected item's text. */ text?: string; - /** Selected item’s value. + /** Selected item's value. */ value?: string; @@ -9779,11 +9799,11 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ text?: string; - /** Selected item’s value. + /** Selected item's value. */ value?: string; @@ -9810,11 +9830,11 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ text?: string; - /** Selected item’s value. + /** Selected item's value. */ value?: string; } @@ -9863,7 +9883,7 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ selectedText?: string; @@ -9905,11 +9925,11 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ text?: string; - /** Selected item’s value. + /** Selected item's value. */ value?: string; } @@ -9928,11 +9948,11 @@ declare namespace ej { */ model?: any; - /** Selected item’s text. + /** Selected item's text. */ text?: string; - /** Selected item’s value. + /** Selected item's value. */ value?: string; @@ -9961,7 +9981,7 @@ declare namespace ej { } } enum Textmode { - //When TextMode property is set to none, only selected/checked node’s text is presented. + //When TextMode property is set to none, only selected/checked node's text is presented. None, //When FullPath option is selected, the full path of the selected node is shown in the control. FullPath, @@ -19622,6 +19642,11 @@ declare namespace ej { */ value?: string|Date; + /** Specifies the water mark text to be displayed in input text. + * @Default {select a time} + */ + watermarkText?: string; + /** Defines the width of the TimePicker textbox. */ width?: string|number; @@ -23201,9 +23226,10 @@ declare namespace ej { getCurrentViewData(): any[]; /** Get the data of given row index in grid. + * @param {number} Pass the index of the row to get the corresponding data * @returns {any} */ - getDataByIndex(): any; + getDataByIndex(rowIndex: number): any; /** Get the column field name from the given header text in grid. * @param {string} Pass header text of the column to get its corresponding field name @@ -30758,6 +30784,11 @@ declare namespace ej { */ operationalMode?: ej.Pivot.OperationalMode|string; + /** To override x axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. + * @Default {[]} + */ + axes?: any[]; + /** This is a horizontal axis that contains options to configure the axis and it is the primary x-axis for all series in the series array. To override x-axis for particular series, * create an axis object by providing a unique name by using the name property and add it to the axes array. Then, assign the name to the series’s xAxisName property to link both * the axis and the series. @@ -30818,10 +30849,6 @@ declare namespace ej { */ beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; - /** Triggers before the pivot engine starts to populate. - */ - beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; - /** Triggers when performing drill up/down operation in the pivot chart control. */ drillSuccess?(e: DrillSuccessEventArgs): void; @@ -30888,13 +30915,6 @@ declare namespace ej { element?: any; } - export interface BeforePivotEnginePopulateEventArgs { - - /** returns the current instance of PivotChart. - */ - chartObj?: any; - } - export interface DrillSuccessEventArgs { /** returns the current instance of PivotChart. @@ -33505,6 +33525,11 @@ declare namespace ej { */ allowInline?: boolean; + /** When set to false, disables the appointment delete option on the Scheduler. + * @Default {true} + */ + allowDelete?: boolean; + /** When set to true, Scheduler allows interaction through keyboard shortcut keys. * @Default {true} */ @@ -35418,6 +35443,13 @@ declare namespace ej { */ filterColumn(fieldName: string, filterOperator: string, filterValue: string, predicate?: string, matchCase?: boolean): void; + /** To filter multiple columns with multiple conditions dynamically in Gantt. + * @param {Gantt.EjPredicate} Pass the filtering column details and conditions as ejPredicate instance. The ejPredicate object is defined as fieldName,filterOperator, filterValue and + * ignoreCase properties. + * @returns {void} + */ + filterContent(ejPredicate: Gantt.EjPredicate): void; + /** To hide the column by using header text * @param {string} you can pass a header text of a column to hide * @returns {void} @@ -35530,6 +35562,25 @@ declare namespace ej { } export namespace Gantt { + export interface EjPredicate { + + /** Pass the field name of the column. + */ + fieldName?: string; + + /** string/integer/date operator. + */ + filterOperator?: string; + + /** Pass the value to be filtered in a column. + */ + filterValue?: string; + + /** Optional - pass the ignore case value as true/false. + */ + ignoreCase?: boolean; + } + export interface Model { /** Specifies the fields to be included in the add dialog in Gantt @@ -37077,6 +37128,11 @@ declare namespace ej { * @Default {0} */ weekStartDay?: number; + + /** Enable or disable the automatic timescale update on cell editing, dialog editing and taskbar editing. + * @Default {true} + */ + updateTimescaleView?: boolean; } export interface SelectedCellIndex { @@ -38114,6 +38170,14 @@ declare namespace ej { */ sortColumn(fieldName: string, columnSortDirection: string): void; + /** To move the TreeGrid rows programmatically with from index ,to index and position. + * @param {number} you can pass drag Index of the row + * @param {number} you can pass target Index of the row. + * @param {string} you can pass the drop position as above,below,child + * @returns {void} + */ + moveRow(fromIndex: number, toIndex: number, position: string): void; + /** To reorder the column with field name and target index values * @param {string} you can pass a name of column to reorder. * @param {string} you can pass a target column index to be inserted. @@ -38215,6 +38279,13 @@ declare namespace ej { */ filterColumn(fieldName: string, filterOperator: string, filterValue: string, predicate: string, matchcase: boolean, actualFilterValue: any): void; + /** To filter multiple columns with multiple conditions dynamically in TreeGrid. + * @param {TreeGrid.EjPredicate} Pass the filtering column details and conditions as ejPredicate instance. ejPredicate object is defined as fieldName,filterOperator, filterValue and + * ignoreCase properties + * @returns {void} + */ + filterContent(ejPredicate: TreeGrid.EjPredicate): void; + /** To change the index of the tree column in TreeGrid. * @param {number} Pass the column index to make the column as treeColumnIndex. * @returns {void} @@ -38258,6 +38329,25 @@ declare namespace ej { } export namespace TreeGrid { + export interface EjPredicate { + + /** Pass the field name of the column. + */ + fieldName?: string; + + /** string/integer/date operator. + */ + filterOperator?: string; + + /** Pass the value to be filtered in a column. + */ + filterValue?: string; + + /** Optional - pass the ignore case value as true/false. + */ + ignoreCase?: boolean; + } + export interface Model { /** Enables or disables the ability to resize the column width interactively. @@ -38651,6 +38741,10 @@ declare namespace ej { */ rowDragStop?(e: RowDragStopEventArgs): void; + /** Triggered before row drop action begins. + */ + rowDropActionBegin?(e: RowDropActionBeginEventArgs): void; + /** Triggered before selecting a cell */ cellSelecting?(e: CellSelectingEventArgs): void; @@ -39378,6 +39472,45 @@ declare namespace ej { type?: string; } + export interface RowDropActionBeginEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the row which we start to drag. + */ + draggedRow?: any; + + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: number; + + /** Returns the multiple dragged row collection for multiple reorder + */ + draggedRecords?: any[]; + + /** Returns the drop position. + */ + dropPosition?: string; + + /** Returns the row which we are dropped to row. + */ + targetRow?: any; + + /** Returns the row index which we are dropped to row. + */ + targetRowIndex?: number; + + /** Returns the TreeGrid model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + export interface CellSelectingEventArgs { /** Returns the cancel option value. @@ -42693,6 +42826,8 @@ declare namespace ej { XLSort: Spreadsheet.XLSort; + XLSparkline: Spreadsheet.XLSparkline; + XLValidate: Spreadsheet.XLValidate; } export namespace Spreadsheet { @@ -43067,6 +43202,14 @@ declare namespace ej { export interface XLFormat { + /** This method is used to add the custom Date & Time format and recognize it as a preferred pattern in spreadsheet. + * @param {string} Pass the name for custom format. + * @param {string} Pass the custom format string. + * @param {string} Pass the type for custom format. + * @returns {void} + */ + addCustomFormatSpecifier(name: string, formatSpecifier: string, type: string): void; + /** This method is used to add the font to the Ribbon font family dropdown. * @param {string} Font name which needs to add into the font family option. * @returns {void} @@ -43547,6 +43690,35 @@ declare namespace ej { sortByRange(range: any[]|string, columnName: string, direction: any): boolean; } + export interface XLSparkline { + + /** This method used for creating the sparkline chart for specified range in spreadsheet. + * @param {string} Pass the data range + * @param {string} Pass the location range + * @param {string} Pass the sparkline chart type + * @param {any} Pass the sparkline chart options + * @param {number} Pass the sheetIndex + * @returns {void} + */ + createSparkline(dataRange: string, locationRange: string, type: string, options: any, sheetIndex: number): void; + + /** This method used to change the sparkline color and marker point color in the spreadsheet. + * @param {string} Pass the sparkline ID + * @param {any} Pass the sparkline options + * @param {number} Optional. Pass the sheet index + * @returns {void} + */ + changePointColor(sparklineId: string, option: any, sheetIdx: number): void; + + /** This method used to change the sparkline type in the spreadsheet. + * @param {string} Pass the sparkline ID + * @param {string} Pass the sparkline type + * @param {number} Optional. Pass the sheet index + * @returns {void} + */ + changeType(sparklineId: string, type: string, sheetIdx: number): void; + } + export interface XLValidate { /** This method is used to apply data validation rules in a selected range of cells based on the defined condition in the Spreadsheet. @@ -43737,6 +43909,11 @@ declare namespace ej { */ allowSorting?: boolean; + /** Gets or sets a value that indicates whether to enable the sparkline feature in the Spreadsheet. + * @Default {false} + */ + allowSparkline?: boolean; + /** Gets or sets a value that indicates whether to enable or disable undo and redo feature in the Spreadsheet. * @Default {true} */ diff --git a/types/ejs/index.d.ts b/types/ejs/index.d.ts index e785f2c6ae..e56ad1a8ec 100644 --- a/types/ejs/index.d.ts +++ b/types/ejs/index.d.ts @@ -108,7 +108,7 @@ export function escapeRegexChars(s: string): string; export function escapeXML(markup: string): string; export interface Cache { set(key: string, val: TemplateFunction): void; - get(key: string): TemplateFunction; + get(key: string): TemplateFunction | undefined; } export let delimiter: string; diff --git a/types/elasticsearch/elasticsearch-tests.ts b/types/elasticsearch/elasticsearch-tests.ts index e21f84dc48..3236a181a1 100644 --- a/types/elasticsearch/elasticsearch-tests.ts +++ b/types/elasticsearch/elasticsearch-tests.ts @@ -1,10 +1,22 @@ import * as elasticsearch from "elasticsearch"; +import HttpConnector = require("elasticsearch/src/lib/connectors/http"); + +class MyHttpConnector extends HttpConnector { + constructor(host: any, config: any) { + super(host, config); + } +} let client = new elasticsearch.Client({ host: 'localhost:9200', log: 'trace' }); +client = new elasticsearch.Client({ + host: 'localhost:9200', + connectionClass: MyHttpConnector +}); + client = new elasticsearch.Client({ hosts: [ 'box1.server.org', diff --git a/types/elasticsearch/index.d.ts b/types/elasticsearch/index.d.ts index e60e8d86c3..7973b598ab 100644 --- a/types/elasticsearch/index.d.ts +++ b/types/elasticsearch/index.d.ts @@ -12,6 +12,8 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 +import HttpConnector = require("./src/lib/connectors/http"); + export class Client { constructor(params: ConfigOptions); cat: Cat; @@ -111,7 +113,7 @@ export interface ConfigOptions { keepAlive?: boolean; maxSockets?: number; suggestCompression?: boolean; - connectionClass?: string; + connectionClass?: string | typeof HttpConnector; sniffedNodesProtocol?: string; ssl?: object; selector?: any; diff --git a/types/elasticsearch/src/lib/connectors/http.d.ts b/types/elasticsearch/src/lib/connectors/http.d.ts new file mode 100644 index 0000000000..94d1e4e58c --- /dev/null +++ b/types/elasticsearch/src/lib/connectors/http.d.ts @@ -0,0 +1,13 @@ +// HttpConnector for elasticsearch + +export = HttpConnector; + +declare class HttpConnector { + constructor(host: any, config: any); + + // onStatusSet(handler: (status: any) => void): void; + createAgent(config: any): any; + makeAgentConfig(config: any): any; + makeReqParams(params: any): any; + request(params: any, callback: (error: any, response: any, status: any, headers: any) => void): void; +} diff --git a/types/electron-devtools-installer/electron-devtools-installer-tests.ts b/types/electron-devtools-installer/electron-devtools-installer-tests.ts index a453221698..798e6ad223 100644 --- a/types/electron-devtools-installer/electron-devtools-installer-tests.ts +++ b/types/electron-devtools-installer/electron-devtools-installer-tests.ts @@ -3,6 +3,8 @@ import installExtension, { BACKBONE_DEBUGGER, JQUERY_DEBUGGER, ANGULARJS_BATARANG, VUEJS_DEVTOOLS, REDUX_DEVTOOLS, REACT_PERF, + CYCLEJS_DEVTOOL, APOLLO_DEVELOPER_TOOLS, + MOBX_DEVTOOLS } from 'electron-devtools-installer'; @@ -14,4 +16,7 @@ installExtension(ANGULARJS_BATARANG); installExtension(VUEJS_DEVTOOLS); installExtension(REDUX_DEVTOOLS); installExtension(REACT_PERF); +installExtension(CYCLEJS_DEVTOOL); +installExtension(APOLLO_DEVELOPER_TOOLS); +installExtension(MOBX_DEVTOOLS); installExtension('abcdefghijkl'); \ No newline at end of file diff --git a/types/electron-devtools-installer/index.d.ts b/types/electron-devtools-installer/index.d.ts index 8a108c1d2f..88649cd0a8 100644 --- a/types/electron-devtools-installer/index.d.ts +++ b/types/electron-devtools-installer/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for electron-devtools-installer v2.0.1 // Project: https://github.com/MarshallOfSound/electron-devtools-installer // Definitions by: Robin Van den Broeck +// M. Fatih Mar // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare module "electron-devtools-installer" { @@ -21,4 +22,7 @@ declare module "electron-devtools-installer" { export const VUEJS_DEVTOOLS: ExtensionReference; export const REDUX_DEVTOOLS: ExtensionReference; export const REACT_PERF: ExtensionReference; + export const CYCLEJS_DEVTOOL: ExtensionReference; + export const APOLLO_DEVELOPER_TOOLS: ExtensionReference; + export const MOBX_DEVTOOLS: ExtensionReference; } \ No newline at end of file diff --git a/types/email-templates/email-templates-tests.ts b/types/email-templates/email-templates-tests.ts index a3311d6e81..3d828281af 100644 --- a/types/email-templates/email-templates-tests.ts +++ b/types/email-templates/email-templates-tests.ts @@ -2,13 +2,20 @@ import EmailTemplates = require('email-templates'); const email = new EmailTemplates({ message: { - from: 'Test@tesitng.com' + from: 'Test@testing.com' }, transport: { jsonTransport: true - }} -); + } +}); + +const emailNoTransporter = new EmailTemplates({ + message: { + from: 'test@testing.com' + }, +}); email.juiceResources('

bob

'); email.render('mars/html.pug', {name: 'elon'}); email.send({template: 'mars', message: {to: 'elon@spacex.com'}, locals: {name: 'Elon'}}); +emailNoTransporter.render('mars/html.pug', {name: 'elon'}); diff --git a/types/email-templates/index.d.ts b/types/email-templates/index.d.ts index 12dceb181d..1cdd43c36e 100644 --- a/types/email-templates/index.d.ts +++ b/types/email-templates/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for node-email-templates 3.1 +// Type definitions for node-email-templates 3.5 // Project: https://github.com/niftylettuce/node-email-templates // Definitions by: Cyril Schumacher // Matus Gura @@ -13,7 +13,7 @@ interface EmailConfig { /** * The nodemailer Transport created via nodemailer.createTransport */ - transport: any; + transport?: any; /** * The email template directory and engine information */ @@ -34,10 +34,19 @@ interface EmailConfig { * Pass a custom render function if necessary */ render?: { view: string, locals: any }; + /** + * force text-only rendering of template (disregards template folder) + */ + textOnly?: boolean; /** * */ htmlToText?: any; + /** + * You can pass an option to prefix subject lines with a string + * env === 'production' ? false : `[${env.toUpperCase()}] `; // <--- HERE + */ + subjectPrefix?: any; /** * */ diff --git a/types/ember-data/index.d.ts b/types/ember-data/index.d.ts index ea3de94436..b891bbe1d1 100644 --- a/types/ember-data/index.d.ts +++ b/types/ember-data/index.d.ts @@ -43,7 +43,7 @@ declare module 'ember-data' { isRelationship: true; } - namespace DS { + export namespace DS { /** * Convert an hash of errors into an array with errors in JSON-API format. */ @@ -52,25 +52,27 @@ declare module 'ember-data' { * Convert an array of errors in JSON-API format into an object. */ function errorsArrayToHash(errors: any[]): {}; + + interface RelationshipOptions { + async?: boolean; + inverse?: RelationshipsFor | null; + polymorphic?: boolean; + } + + interface Sync { async: false; } + interface Async { async?: true; } + /** * `DS.belongsTo` is used to define One-To-One and One-To-Many * relationships on a [DS.Model](/api/data/classes/DS.Model.html). */ function belongsTo( modelName: K, - options: { - async: false; - inverse?: string | null; - polymorphic?: boolean; - } + options: RelationshipOptions & Sync ): Ember.ComputedProperty; function belongsTo( modelName: K, - options?: { - async?: true; - inverse?: string | null; - polymorphic?: boolean; - } + options?: RelationshipOptions & Async ): Ember.ComputedProperty, ModelRegistry[K]>; /** * `DS.hasMany` is used to define One-To-Many and Many-To-Many @@ -78,19 +80,11 @@ declare module 'ember-data' { */ function hasMany( type: K, - options: { - async: false; - inverse?: string | null; - polymorphic?: boolean; - } + options: RelationshipOptions & Sync ): Ember.ComputedProperty>; function hasMany( type: K, - options?: { - async?: true; - inverse?: string | null; - polymorphic?: boolean; - } + options?: RelationshipOptions & Async ): Ember.ComputedProperty, Ember.Array>; /** * This method normalizes a modelName into the format Ember Data uses @@ -101,6 +95,7 @@ declare module 'ember-data' { interface AttrOptions { defaultValue?: T | (() => T); + allowNull?: boolean; // TODO: restrict to boolean transform (TS 2.8) } /** @@ -521,11 +516,11 @@ declare module 'ember-data' { /** * Get the reference for the specified belongsTo relationship. */ - belongsTo(name: keyof ModelRegistry): BelongsToReference; + belongsTo(name: RelationshipsFor): BelongsToReference; /** * Get the reference for the specified hasMany relationship. */ - hasMany(name: keyof ModelRegistry): HasManyReference; + hasMany(name: RelationshipsFor): HasManyReference; /** * Given a callback, iterates over each of the relationships in the model, * invoking the callback with the name of each relationship and its relationship diff --git a/types/ember-data/test/model.ts b/types/ember-data/test/model.ts index 63bda2588e..2085daf90a 100644 --- a/types/ember-data/test/model.ts +++ b/types/ember-data/test/model.ts @@ -17,6 +17,7 @@ const User = DS.Model.extend({ username: DS.attr('string'), email: DS.attr('string'), verified: DS.attr('boolean', { defaultValue: false }), + canBeNull: DS.attr('boolean', { allowNull: true }), createdAt: DS.attr('date', { defaultValue() { return new Date(); } }) diff --git a/types/ember-data/test/relationships.ts b/types/ember-data/test/relationships.ts index fb89d4410c..df43387bb4 100644 --- a/types/ember-data/test/relationships.ts +++ b/types/ember-data/test/relationships.ts @@ -16,17 +16,23 @@ class Comment extends DS.Model { author = DS.attr('string'); } +class Series extends DS.Model { + title = DS.attr('string'); +} + class RelationalPost extends DS.Model { title = DS.attr('string'); tag = DS.attr('string'); comments = DS.hasMany('comment', { async: true }); relatedPosts = DS.hasMany('post'); + series = DS.belongsTo('series'); } declare module 'ember-data' { interface ModelRegistry { 'relational-post': RelationalPost; comment: Comment; + series: Series; } } @@ -35,3 +41,6 @@ blogPost!.get('comments').then((comments) => { // now we can work with the comments let author: string = comments.get('firstObject')!.get('author'); }); + +blogPost!.hasMany('relatedPosts'); +blogPost!.belongsTo('series'); diff --git a/types/ember/index.d.ts b/types/ember/index.d.ts index 6d8adebae2..a35ed40dec 100755 --- a/types/ember/index.d.ts +++ b/types/ember/index.d.ts @@ -6,6 +6,7 @@ // Chris Krycho // Theron Cross // Martin Feckie +// Alex LaFroscia // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 @@ -70,13 +71,13 @@ declare module 'ember' { * * Generally you would use `EmberClass.create()` instead of `new EmberClass()`. * - * The no-arg constructor is required by the typescript compiler. + * The single-arg constructor is required by the typescript compiler. * The multi-arg constructor is included for better ergonomics. * * Implementation is carefully chosen for the reasons described in * https://github.com/typed-ember/ember-typings/pull/29 */ - type EmberClassConstructor = (new () => T) & (new (...args: any[]) => T); + type EmberClassConstructor = (new (properties?: object) => T) & (new (...args: any[]) => T); type ComputedPropertyGetterFunction = (this: any, key: string) => T; @@ -324,7 +325,7 @@ declare module 'ember' { * `inject`) or for service lookup. Each factory is registered with * a full name including two parts: `type:name`. */ - register(fullName: string, factory: Function, options: {}): any; + register(fullName: string, factory: Function, options?: { singleton?: boolean, instantiate?: boolean }): any; /** * Unregister a factory. */ @@ -760,6 +761,12 @@ declare module 'ember' { } const Copyable: Ember.Mixin; class CoreObject { + /** + * As of Ember 3.1, CoreObject constructor takes initial object properties as an argument. + * See: https://github.com/emberjs/ember.js/commit/4709935854d4c29b0d2c054614d53fa2c55309b1 + **/ + constructor(properties?: object); + _super(...args: any[]): any; /** @@ -1236,7 +1243,7 @@ declare module 'ember' { * Returns a new enumerable that contains only items containing a unique property value. * The default implementation returns an array regardless of the receiver type. */ - uniqBy(): NativeArray; + uniqBy(property: string): NativeArray; /** * Returns `true` if the passed object can be found in the enumerable. */ @@ -3408,6 +3415,7 @@ declare module '@ember/application/resolver' { declare module '@ember/array' { import Ember from 'ember'; + type EmberArray = Ember.Array; const EmberArray: typeof Ember.Array; export default EmberArray; export const A: typeof Ember.A; @@ -3417,6 +3425,7 @@ declare module '@ember/array' { declare module '@ember/array/mutable' { import Ember from 'ember'; + type MutableArray = Ember.MutableArray; const MutableArray: typeof Ember.MutableArray; export default MutableArray; } @@ -3439,7 +3448,20 @@ declare module '@ember/component/checkbox' { declare module '@ember/component/helper' { import Ember from 'ember'; export default class Helper extends Ember.Helper { } - export const helper: typeof Ember.Helper.helper; + /** + * In many cases, the ceremony of a full `Helper` class is not required. + * The `helper` method create pure-function helpers without instances. For + * example: + * ```app/helpers/format-currency.js + * import { helper } from '@ember/component/helper'; + * export default helper(function(params, hash) { + * let cents = params[0]; + * let currency = hash.currency; + * return `${currency}${cents * 0.01}`; + * }); + * ``` + */ + export function helper(helperFn: (params: any[], hash?: any) => any): any; } declare module '@ember/component/text-area' { @@ -3496,6 +3518,7 @@ declare module '@ember/engine/instance' { declare module '@ember/enumerable' { import Ember from 'ember'; + type Enumerable = Ember.Enumerable; const Enumerable: typeof Ember.Enumerable; export default Enumerable; } @@ -3584,6 +3607,7 @@ declare module '@ember/object/core' { declare module '@ember/object/evented' { import Ember from 'ember'; + type Evented = Ember.Evented; const Evented: typeof Ember.Evented; export default Evented; export const on: typeof Ember.on; @@ -3610,6 +3634,7 @@ declare module '@ember/object/mixin' { declare module '@ember/object/observable' { import Ember from 'ember'; + type Observable = Ember.Observable; const Observable: typeof Ember.Observable; export default Observable; } @@ -3622,6 +3647,7 @@ declare module '@ember/object/observers' { declare module '@ember/object/promise-proxy-mixin' { import Ember from 'ember'; + type PromiseProxyMixin = Ember.PromiseProxyMixin; const PromiseProxyMixin: typeof Ember.PromiseProxyMixin; export default PromiseProxyMixin; } diff --git a/types/ember/test/application-instance.ts b/types/ember/test/application-instance.ts new file mode 100644 index 0000000000..dfda446463 --- /dev/null +++ b/types/ember/test/application-instance.ts @@ -0,0 +1,17 @@ +import ApplicationInstance from '@ember/application/instance'; + +const appInstance = ApplicationInstance.create(); +appInstance.register('some:injection', class Foo {}); + +appInstance.register('some:injection', class Foo {}, { + singleton: true, +}); + +appInstance.register('some:injection', class Foo {}, { + instantiate: false, +}); + +appInstance.register('some:injection', class Foo {}, { + singleton: false, + instantiate: true, +}); diff --git a/types/ember/test/array-ext.ts b/types/ember/test/array-ext.ts index 86e84fd7c5..059d60c00c 100755 --- a/types/ember/test/array-ext.ts +++ b/types/ember/test/array-ext.ts @@ -16,3 +16,6 @@ assertType(array.get('length')); assertType(array.get('firstObject')); assertType(array.mapBy('name')); assertType(array.map(p => p.get('name'))); +assertType(array.sortBy('name')); +assertType(array.uniq()); +assertType(array.uniqBy('name')); diff --git a/types/ember/test/helper.ts b/types/ember/test/helper.ts index efe3ce33d7..2aa79a5ba1 100755 --- a/types/ember/test/helper.ts +++ b/types/ember/test/helper.ts @@ -25,3 +25,17 @@ const CurrentUserEmailHelper = Ember.Helper.extend({ .get('email'); }, }); + +import { helper } from '@ember/component/helper'; + +function typedHelp(/*params, hash*/) { + return 'my type of help'; +} + +export default helper(typedHelp); + +function arrayNumHelp(/*params, hash*/) { + return [1, 2, 3]; +} + +helper(arrayNumHelp); diff --git a/types/ember/test/object.ts b/types/ember/test/object.ts index cfe2c9380f..e1eefb75e9 100755 --- a/types/ember/test/object.ts +++ b/types/ember/test/object.ts @@ -13,3 +13,15 @@ const LifetimeHooks = Ember.Object.extend({ this._super(); } }); + +class MyObject30 extends Ember.Object { + constructor() { + super(); + } +} + +class MyObject31 extends Ember.Object { + constructor(properties: object) { + super(properties); + } +} diff --git a/types/ember/tsconfig.json b/types/ember/tsconfig.json index cbdb6b6afc..b4bc966044 100755 --- a/types/ember/tsconfig.json +++ b/types/ember/tsconfig.json @@ -22,6 +22,7 @@ "index.d.ts", "test/lib/assert.ts", "test/application.ts", + "test/application-instance.ts", "test/ember-tests.ts", "test/error.ts", "test/event.ts", diff --git a/types/enzyme-redux/enzyme-redux-tests.tsx b/types/enzyme-redux/enzyme-redux-tests.tsx new file mode 100644 index 0000000000..ecd196dfd8 --- /dev/null +++ b/types/enzyme-redux/enzyme-redux-tests.tsx @@ -0,0 +1,9 @@ +import { mountWithState, mountWithStore, shallowWithState, shallowWithStore } from 'enzyme-redux'; +import * as React from 'react'; + +const Component = () =>
component
; +const shallowWithStateWrapper = shallowWithState(, {}); +const shallowWithStoreWrapper = shallowWithStore(, {}); + +const mountWithStateWrapper = mountWithState(, {}); +const mountWithStoreWrapper = mountWithStore(, {}); diff --git a/types/enzyme-redux/index.d.ts b/types/enzyme-redux/index.d.ts new file mode 100644 index 0000000000..ad312d6d1f --- /dev/null +++ b/types/enzyme-redux/index.d.ts @@ -0,0 +1,25 @@ +// Type definitions for enzyme-redux 0.2 +// Project: https://github.com/Knegusen/enzyme-redux#readme +// Definitions by: Dennis Axelsson +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { ReactWrapper, ShallowWrapper } from 'enzyme'; +import { ReactElement } from 'react'; + +export function shallowWithStore

( + Component: ReactElement

, + store: any +): ShallowWrapper

; +export function mountWithStore

( + Component: ReactElement

, + store: any +): ReactWrapper

; +export function shallowWithState

( + Component: ReactElement

, + state: any +): ShallowWrapper

; +export function mountWithState

( + Component: ReactElement

, + state: any +): ReactWrapper

; diff --git a/types/enzyme-redux/tsconfig.json b/types/enzyme-redux/tsconfig.json new file mode 100644 index 0000000000..7cc21814b3 --- /dev/null +++ b/types/enzyme-redux/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "jsx": "react", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "enzyme-redux-tests.tsx" + ] +} diff --git a/types/enzyme-redux/tslint.json b/types/enzyme-redux/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/enzyme-redux/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/enzyme/enzyme-tests.tsx b/types/enzyme/enzyme-tests.tsx index 50f9bf3f38..bbdd8f404f 100644 --- a/types/enzyme/enzyme-tests.tsx +++ b/types/enzyme/enzyme-tests.tsx @@ -8,13 +8,14 @@ import { configure, EnzymeAdapter, ShallowRendererProps, + ComponentClass as EnzymeComponentClass } from "enzyme"; import { Component, ReactElement, HTMLAttributes, ComponentClass, StatelessComponent } from "react"; // Help classes/interfaces interface MyComponentProps { - stringProp?: string; - numberProp?: number; + stringProp: string; + numberProp: number; } interface AnotherComponentProps { @@ -65,27 +66,27 @@ function configureTest() { // ShallowWrapper function ShallowWrapperTest() { let shallowWrapper: ShallowWrapper = - shallow(); + shallow(); let reactElement: ReactElement; let reactElements: Array>; let domElement: Element; let boolVal: boolean; let stringVal: string; - let numOrStringVal: number | string; + let numOrStringVal: number | string | undefined; let elementWrapper: ShallowWrapper>; let anotherStatelessWrapper: ShallowWrapper; let anotherComponentWrapper: ShallowWrapper; function test_props_state_inferring() { let wrapper: ShallowWrapper; - wrapper = shallow(); + wrapper = shallow(); wrapper.state().stateProperty; wrapper.props().stringProp.toUpperCase(); } function test_shallow_options() { - shallow(, { + shallow(, { context: { test: "a", }, @@ -99,6 +100,9 @@ function ShallowWrapperTest() { anotherStatelessWrapper = shallowWrapper.find(AnotherStatelessComponent); shallowWrapper = shallowWrapper.find({ prop: 'value' }); elementWrapper = shallowWrapper.find('.selector'); + // Since AnotherComponent does not have a constructor, it cannot match the + // previous selector overload of ComponentClass { new(props?, contenxt? ) } + const s1: EnzymeComponentClass = AnotherComponent; } function test_findWhere() { @@ -155,7 +159,7 @@ function ShallowWrapperTest() { } function test_hostNodes() { - shallowWrapper.hostNodes(); + shallowWrapper.hostNodes(); } function test_equals() { @@ -411,20 +415,19 @@ function ShallowWrapperTest() { function test_constructor() { let anyWrapper: ShallowWrapper; - anyWrapper = new ShallowWrapper(); - anyWrapper = new ShallowWrapper(); - shallowWrapper = new ShallowWrapper(); - shallowWrapper = new ShallowWrapper([, ]); - shallowWrapper = new ShallowWrapper(, shallowWrapper); - shallowWrapper = new ShallowWrapper(, null, { lifecycleExperimental: true }); - shallowWrapper = new ShallowWrapper(, shallowWrapper, { lifecycleExperimental: true }); + anyWrapper = new ShallowWrapper(); + shallowWrapper = new ShallowWrapper(); + shallowWrapper = new ShallowWrapper([, ]); + shallowWrapper = new ShallowWrapper(, shallowWrapper); + shallowWrapper = new ShallowWrapper(, undefined, { lifecycleExperimental: true }); + shallowWrapper = new ShallowWrapper(, shallowWrapper, { lifecycleExperimental: true }); } } // ReactWrapper function ReactWrapperTest() { let reactWrapper: ReactWrapper = - mount(); + mount(); let reactElement: ReactElement; let reactElements: Array>; @@ -437,7 +440,7 @@ function ReactWrapperTest() { function test_prop_state_inferring() { let wrapper: ReactWrapper; - wrapper = mount(); + wrapper = mount(); wrapper.state().stateProperty; wrapper.props().stringProp.toUpperCase(); } @@ -449,7 +452,7 @@ function ReactWrapperTest() { function test_mount() { reactWrapper = reactWrapper.mount(); - mount(, { + mount(, { attachTo: document.getElementById('test'), context: { a: "b" @@ -685,7 +688,7 @@ function ReactWrapperTest() { } function test_setProps() { - reactWrapper = reactWrapper.setProps({ stringProp: 'foo' }, () => {}); + reactWrapper = reactWrapper.setProps({ stringProp: 'foo' }, () => { }); } function test_setContext() { @@ -764,13 +767,12 @@ function ReactWrapperTest() { function test_constructor() { let anyWrapper: ReactWrapper; - anyWrapper = new ReactWrapper(); - anyWrapper = new ReactWrapper(); - reactWrapper = new ReactWrapper(); - reactWrapper = new ReactWrapper([, ]); - reactWrapper = new ReactWrapper(, reactWrapper); - reactWrapper = new ReactWrapper(, null, { attachTo: document.createElement('div') }); - reactWrapper = new ReactWrapper(, reactWrapper, { attachTo: document.createElement('div') }); + anyWrapper = new ReactWrapper(); + reactWrapper = new ReactWrapper(); + reactWrapper = new ReactWrapper([, ]); + reactWrapper = new ReactWrapper(, reactWrapper); + reactWrapper = new ReactWrapper(, undefined, { attachTo: document.createElement('div') }); + reactWrapper = new ReactWrapper(, reactWrapper, { attachTo: document.createElement('div') }); } } diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index fbb953e167..0a741460f6 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -23,7 +23,7 @@ export class ElementClass extends Component { * all specified in the implementation. TS chooses the EnzymePropSelector overload and loses the generics */ export interface ComponentClass { - new(props?: Props, context?: any): Component; + new(props: Props, context?: any): Component; } export type StatelessComponent = (props: Props, context?: any) => JSX.Element; @@ -354,7 +354,7 @@ export interface CommonWrapper

{ } // tslint:disable-next-line no-empty-interface -export interface ShallowWrapper

extends CommonWrapper {} +export interface ShallowWrapper

extends CommonWrapper { } export class ShallowWrapper

{ constructor(nodes: JSX.Element[] | JSX.Element, root?: ShallowWrapper, options?: ShallowRendererProps); shallow(options?: ShallowRendererProps): ShallowWrapper; @@ -440,7 +440,7 @@ export class ShallowWrapper

{ } // tslint:disable-next-line no-empty-interface -export interface ReactWrapper

extends CommonWrapper {} +export interface ReactWrapper

extends CommonWrapper { } export class ReactWrapper

{ constructor(nodes: JSX.Element | JSX.Element[], root?: ReactWrapper, options?: MountRendererProps); @@ -577,7 +577,7 @@ export interface MountRendererProps { /** * DOM Element to attach the component to */ - attachTo?: HTMLElement; + attachTo?: HTMLElement | null; /** * Merged contextTypes for all children of the wrapper */ diff --git a/types/enzyme/tsconfig.json b/types/enzyme/tsconfig.json index 096b64a111..c04256e39a 100644 --- a/types/enzyme/tsconfig.json +++ b/types/enzyme/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "jsx": "react", diff --git a/types/es6-shim/es6-shim-tests.ts b/types/es6-shim/es6-shim-tests.ts index 87f6fba0e5..7d7fdc6db2 100644 --- a/types/es6-shim/es6-shim-tests.ts +++ b/types/es6-shim/es6-shim-tests.ts @@ -17,7 +17,7 @@ let r: RegExp = /a/; let sym: symbol = {} as symbol; let e: Error = new Error(); let date: Date; -let key: PropertyKey; +let key: KeyOfProperty; let point: Point = { x: 1, y: 2 }; let point3d: Point3D = { x: 1, y: 2, z: 3 }; let point3dOrUndef: Point3D | undefined; @@ -25,7 +25,7 @@ let pointOrUndef: Point | undefined; let arrayOfPoint: Point[] = []; let arrayOfPoint3D: Point3D[]; let arrayOfSymbol: symbol[]; -let arrayOfPropertyKey: PropertyKey[]; +let arrayOfPropertyKey: KeyOfProperty[]; let arrayOfAny: any[]; let arrayOfStringAny: [string, any][]; let arrayLikeOfAny: ArrayLike = []; @@ -40,8 +40,8 @@ let iterableIteratorOfPointPoint: IterableIteratorShim<[Point, Point]>; let iterableIteratorOfNode: IterableIteratorShim; let iterableIteratorOfStringPoint: IterableIteratorShim<[string, Point]>; let iterableIteratorOfAny: IterableIteratorShim; -let iterableIteratorOfPropertyKey: IterableIteratorShim; -let iterableIteratorOfPropertyKeyPoint: IterableIteratorShim<[PropertyKey, Point]>; +let iterableIteratorOfPropertyKey: IterableIteratorShim; +let iterableIteratorOfPropertyKeyPoint: IterableIteratorShim<[KeyOfProperty, Point]>; let nodeList: NodeList; let pd: PropertyDescriptor = {}; let pdm: PropertyDescriptorMap = {}; diff --git a/types/es6-shim/index.d.ts b/types/es6-shim/index.d.ts index 2cf61a9362..e2c1a01f3d 100644 --- a/types/es6-shim/index.d.ts +++ b/types/es6-shim/index.d.ts @@ -4,7 +4,8 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 -declare type PropertyKey = string | number | symbol; +// TODO: As of TypeScript@2.9 there is a global type PropertyKey that should be used instead of this. +declare type KeyOfProperty = string | number | symbol; interface IteratorResult { done: boolean; @@ -625,17 +626,17 @@ declare var WeakSet: WeakSetConstructor; declare namespace Reflect { function apply(target: Function, thisArgument: any, argumentsList: ArrayLike): any; function construct(target: Function, argumentsList: ArrayLike): any; - function defineProperty(target: any, propertyKey: PropertyKey, attributes: PropertyDescriptor): boolean; - function deleteProperty(target: any, propertyKey: PropertyKey): boolean; + function defineProperty(target: any, propertyKey: KeyOfProperty, attributes: PropertyDescriptor): boolean; + function deleteProperty(target: any, propertyKey: KeyOfProperty): boolean; function enumerate(target: any): IterableIteratorShim; - function get(target: any, propertyKey: PropertyKey, receiver?: any): any; - function getOwnPropertyDescriptor(target: any, propertyKey: PropertyKey): PropertyDescriptor; + function get(target: any, propertyKey: KeyOfProperty, receiver?: any): any; + function getOwnPropertyDescriptor(target: any, propertyKey: KeyOfProperty): PropertyDescriptor; function getPrototypeOf(target: any): any; - function has(target: any, propertyKey: PropertyKey): boolean; + function has(target: any, propertyKey: KeyOfProperty): boolean; function isExtensible(target: any): boolean; - function ownKeys(target: any): Array; + function ownKeys(target: any): Array; function preventExtensions(target: any): boolean; - function set(target: any, propertyKey: PropertyKey, value: any, receiver?: any): boolean; + function set(target: any, propertyKey: KeyOfProperty, value: any, receiver?: any): boolean; function setPrototypeOf(target: any, proto: any): boolean; } @@ -653,17 +654,17 @@ declare module "es6-shim" { namespace Reflect { function apply(target: Function, thisArgument: any, argumentsList: ArrayLike): any; function construct(target: Function, argumentsList: ArrayLike): any; - function defineProperty(target: any, propertyKey: PropertyKey, attributes: PropertyDescriptor): boolean; - function deleteProperty(target: any, propertyKey: PropertyKey): boolean; + function defineProperty(target: any, propertyKey: KeyOfProperty, attributes: PropertyDescriptor): boolean; + function deleteProperty(target: any, propertyKey: KeyOfProperty): boolean; function enumerate(target: any): Iterator; - function get(target: any, propertyKey: PropertyKey, receiver?: any): any; - function getOwnPropertyDescriptor(target: any, propertyKey: PropertyKey): PropertyDescriptor; + function get(target: any, propertyKey: KeyOfProperty, receiver?: any): any; + function getOwnPropertyDescriptor(target: any, propertyKey: KeyOfProperty): PropertyDescriptor; function getPrototypeOf(target: any): any; - function has(target: any, propertyKey: PropertyKey): boolean; + function has(target: any, propertyKey: KeyOfProperty): boolean; function isExtensible(target: any): boolean; - function ownKeys(target: any): Array; + function ownKeys(target: any): Array; function preventExtensions(target: any): boolean; - function set(target: any, propertyKey: PropertyKey, value: any, receiver?: any): boolean; + function set(target: any, propertyKey: KeyOfProperty, value: any, receiver?: any): boolean; function setPrototypeOf(target: any, proto: any): boolean; } } diff --git a/types/escape-regexp/escape-regexp-tests.ts b/types/escape-regexp/escape-regexp-tests.ts new file mode 100644 index 0000000000..086ff36348 --- /dev/null +++ b/types/escape-regexp/escape-regexp-tests.ts @@ -0,0 +1,22 @@ +import escapeRegExp = require('escape-regexp'); + +// $ExpectType string +escapeRegExp('aaa'); + +// $ExpectError +escapeRegExp(); + +// $ExpectError +escapeRegExp({}); + +// $ExpectError +escapeRegExp(1); + +// $ExpectError +escapeRegExp([]); + +// $ExpectError +escapeRegExp(null); + +// $ExpectError +escapeRegExp(undefined); diff --git a/types/escape-regexp/index.d.ts b/types/escape-regexp/index.d.ts new file mode 100644 index 0000000000..b1a0ff1edf --- /dev/null +++ b/types/escape-regexp/index.d.ts @@ -0,0 +1,9 @@ +// Type definitions for escape-regexp 0.0 +// Project: https://www.npmjs.com/package/escape-regexp +// Definitions by: Vilim StubiÄan +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +declare function escapeRegExp(str: string): string; + +export = escapeRegExp; diff --git a/types/escape-regexp/tsconfig.json b/types/escape-regexp/tsconfig.json new file mode 100644 index 0000000000..1037db1961 --- /dev/null +++ b/types/escape-regexp/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "escape-regexp-tests.ts" + ] +} diff --git a/types/escape-regexp/tslint.json b/types/escape-regexp/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/escape-regexp/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/eslint/eslint-tests.ts b/types/eslint/eslint-tests.ts index 376cdf0a92..6a81d69c8a 100644 --- a/types/eslint/eslint-tests.ts +++ b/types/eslint/eslint-tests.ts @@ -336,6 +336,7 @@ rule = { onCodePathSegmentStart(segment, node) {}, onCodePathSegmentEnd(segment, node) {}, onCodePathSegmentLoop(fromSegment, toSegment, node) {}, + IfStatement(node) {}, 'Program:exit'() {}, }; }, @@ -456,6 +457,7 @@ cli = new CLIEngine({ globals: ['foo'] }); cli = new CLIEngine({ ignore: true }); cli = new CLIEngine({ ignorePath: 'foo' }); cli = new CLIEngine({ ignorePattern: 'foo' }); +cli = new CLIEngine({ ignorePattern: ['foo', 'bar'] }); cli = new CLIEngine({ useEslintrc: false }); cli = new CLIEngine({ parserOptions: {} }); cli = new CLIEngine({ plugins: ['foo'] }); diff --git a/types/eslint/index.d.ts b/types/eslint/index.d.ts index 9e0e68af0b..89067f97c8 100644 --- a/types/eslint/index.d.ts +++ b/types/eslint/index.d.ts @@ -2,6 +2,7 @@ // Project: https://eslint.org // Definitions by: Pierre-Marie Dartus // Jed Fox +// Saad Quadri // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -240,7 +241,10 @@ export namespace Rule { meta?: RuleMetaData; } - interface RuleListener { + type NodeTypes = ESTree.Node['type']; + type NodeListener = { [T in NodeTypes]?: (node: ESTree.Node) => void }; + + interface RuleListener extends NodeListener { onCodePathStart?(codePath: CodePath, node: ESTree.Node): void; onCodePathEnd?(codePath: CodePath, node: ESTree.Node): void; @@ -491,7 +495,7 @@ export namespace CLIEngine { globals?: string[]; ignore?: boolean; ignorePath?: string; - ignorePattern?: string; + ignorePattern?: string | string[]; useEslintrc?: boolean; parser?: string; parserOptions?: Linter.ParserOptions; diff --git a/types/esprima/esprima-tests.ts b/types/esprima/esprima-tests.ts index 2032702979..08a3214a95 100644 --- a/types/esprima/esprima-tests.ts +++ b/types/esprima/esprima-tests.ts @@ -29,6 +29,7 @@ program = esprima.parseScript('answer = 42 // TODO: why', { comment: true, range // Tokenizing token = esprima.tokenize('code')[0]; token = esprima.tokenize('code', {range: true})[0]; +token = esprima.tokenize('/E\/\w*/.exec("e")', { tolerant: true })[0]; // Syntax Delegate esprima.parseScript('answer = 42', {}, (node) => { diff --git a/types/esprima/index.d.ts b/types/esprima/index.d.ts index 7817465742..cc612b12d1 100644 --- a/types/esprima/index.d.ts +++ b/types/esprima/index.d.ts @@ -30,6 +30,7 @@ export interface ParseOptions { } export interface TokenizeOptions { + tolerant?: boolean; range?: boolean; loc?: boolean; comment?: boolean; diff --git a/types/estree/estree-tests.ts b/types/estree/estree-tests.ts index 5cd065d03f..24e92ddc38 100644 --- a/types/estree/estree-tests.ts +++ b/types/estree/estree-tests.ts @@ -223,7 +223,8 @@ boolean = memberExpression.computed; // Declarations var functionDeclaration: ESTree.FunctionDeclaration; -identifier = functionDeclaration.id; +var identifierOrNull: ESTree.Identifier | null = functionDeclaration.id; +functionDeclaration.id = null; var params: Array = functionDeclaration.params; blockStatement = functionDeclaration.body; booleanMaybe = functionDeclaration.generator; @@ -237,6 +238,10 @@ var variableDeclarator: ESTree.VariableDeclarator; pattern = variableDeclarator.id; // Pattern expressionMaybe = variableDeclarator.init; +var classDeclaration: ESTree.ClassDeclaration; +identifierOrNull = classDeclaration.id; +classDeclaration.id = null; + // Clauses // SwitchCase string = switchCase.type; diff --git a/types/estree/index.d.ts b/types/estree/index.d.ts index 068cbfd8ce..0133991c9f 100644 --- a/types/estree/index.d.ts +++ b/types/estree/index.d.ts @@ -196,7 +196,8 @@ interface BaseDeclaration extends BaseStatement { } export interface FunctionDeclaration extends BaseFunction, BaseDeclaration { type: "FunctionDeclaration"; - id: Identifier; + /** It is null when a function declaration is a part of the `export default function` statement */ + id: Identifier | null; body: BlockStatement; } @@ -473,7 +474,8 @@ export interface MethodDefinition extends BaseNode { export interface ClassDeclaration extends BaseClass, BaseDeclaration { type: "ClassDeclaration"; - id: Identifier; + /** It is null when a class declaration is a part of the `export default class` statement */ + id: Identifier | null; } export interface ClassExpression extends BaseClass, BaseExpression { diff --git a/types/evaporate/evaporate-tests.ts b/types/evaporate/evaporate-tests.ts index ea4a4ac9bf..3140cd9ea9 100644 --- a/types/evaporate/evaporate-tests.ts +++ b/types/evaporate/evaporate-tests.ts @@ -1,7 +1,27 @@ -import Evaporate = require("evaporate"); +import Evaporate = require('evaporate'); -function test_upload() { - var evaporate = new Evaporate({}); - var uploadId = evaporate.add({}); - evaporate.cancel(uploadId); -} +const newEvaporate = new Evaporate({ + bucket: 'abc', +}); + +Evaporate.create({ + bucket: 'abc', +}) + .then((evaporate) => { + evaporate.add({ + name: 'gwejlf', + file: new File(['abcd'], 'efg'), + started: (file_key) => { + evaporate.pause(file_key); + }, + paused: (file_key) => { + evaporate.resume(file_key); + }, + resumed: (file_key) => { + evaporate.cancel(file_key); + } + }) + .then((awsS3ObjectKey) => { + console.log(awsS3ObjectKey + '!!!'); + }); + }); diff --git a/types/evaporate/index.d.ts b/types/evaporate/index.d.ts index bf4b52aae3..1c415769b8 100644 --- a/types/evaporate/index.d.ts +++ b/types/evaporate/index.d.ts @@ -1,12 +1,112 @@ -// Type definitions for EvaporateJS +// Type definitions for EvaporateJS 2.1 // Project: https://github.com/TTLabs/EvaporateJS -// Definitions by: Andrew Kuklewicz , Chris Rhoden +// Definitions by: Andrew Kuklewicz +// Chris Rhoden +// Junyoung Clare Jang // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 export = Evaporate; declare class Evaporate { - cancel(id:string): boolean; - constructor(config:any); - add(config:any): string; + constructor(config: Evaporate.CreateConfig); + supported: boolean; + add(config: Evaporate.AddConfig, options?: Evaporate.AddOverrideOptions): Promise; + pause(file_key?: string, options?: object): Promise; + resume(file_key?: string): Promise; + cancel(file_key?: string): Promise; +} + +declare namespace Evaporate { + function create(config: CreateConfig): Promise; + + interface CreateConfig { + readableStreams?: boolean; + readableStreamPartMethod?: null | ((file: File, start: number, end: number) => ReadableStream); + bucket: string; + logging?: boolean; + maxConcurrentParts?: number; + partSize?: number; + retryBackoffPower?: number; + maxRetryBackoffSecs?: number; + progressIntervalMS?: number; + cloudfront?: boolean; + s3Acceleration?: boolean; + mockLocalStorage?: boolean; + encodeFilename?: boolean; + computeContentMd5?: false; + allowS3ExistenceOptimization?: boolean; + onlyRetryForSameFileName?: boolean; + timeUrl?: string; + cryptoMd5Method?: null | ((data: ArrayBuffer) => string); + cryptoHexEncodedHash256?: null | ((data: ArrayBuffer) => string); + aws_url?: string; + aws_key?: string; + awsRegion?: string; + awsSignatureVersion?: '2' | '4'; + signerUrl?: string; + sendCanonicalRequestToSignerUrl?: boolean; + s3FileCacheHoursAgo?: null | number; + signParams?: object; + signHeaders?: object; + customAuthMethod?: null | (( + signParams: string, + signHeaders: string, + stringToSign: () => string | undefined, + signatureDateTime: string, + canonicalRequest: string + ) => Promise); + maxFileSize?: number; + signResponseHandler?: null | ((response: any, stringToSign: string, signatureDateTime: string) => Promise); + xhrWithCredentials?: boolean; + localTimeOffset?: number; + evaporateChanged?: (evaporate: Evaporate, evaporatingCount: number) => void; + abortCompletionThrottlingMs?: number; + } + + interface TransferStats { + speed: number; + readableSpeed: string; + loaded: number; + totalUploaded: number; + remainingSize: number; + secondsLeft: number; + fileSize: number; + } + + interface AddConfig { + name: string; + file: File; + xAmzHeadersAtInitiate?: { [key: string]: string }; + notSignedHeadersAtInitiate?: { [key: string]: string }; + xAmzHeadersAtUpload?: { [key: string]: string }; + xAmzHeadersAtComplete?: { [key: string]: string }; + xAmzHeadersCommon?: { [key: string]: string }; + started?: (file_key: string) => void; + uploadInitiated?: (s3UploadId?: string) => void; + paused?: (file_key: string) => void; + resumed?: (file_key: string) => void; + pausing?: (file_key: string) => void; + cancelled?: () => void; + complete?: (xhr: XMLHttpRequest, awsObjectKey: string, stats: TransferStats) => void; + nameChanged?: (awsObjectKey: string) => void; + info?: (msg: string) => void; + warn?: (msg: string) => void; + error?: (msg: string) => void; + progress?: (p: number, stats: TransferStats) => void; + contentType?: string; + beforeSigner?: (xhr: XMLHttpRequest, url: string) => void; + } + + type ImmutableOptionKeys = + | 'maxConcurrentParts' | 'logging' | 'cloudfront' | 'encodeFilename' + | 'computeContentMd5' | 'allowS3ExistenceOptimization' | 'onlyRetryForSameFileName' + | 'timeUrl' | 'cryptoMd5Method' | 'cryptoHexEncodedHash256' | 'awsRegion' | 'awsSignatureVersion' + | 'evaporateChanged'; + type AddOverrideOptionKeys = Exclude; + interface AddOverrideOptions extends Pick {} + + interface PauseConfig { + force?: boolean; + } } diff --git a/types/evaporate/tsconfig.json b/types/evaporate/tsconfig.json index 9164730455..c932b3ca2f 100644 --- a/types/evaporate/tsconfig.json +++ b/types/evaporate/tsconfig.json @@ -1,23 +1,24 @@ { "compilerOptions": { - "module": "commonjs", + "baseUrl": "../", + "forceConsistentCasingInFileNames": true, "lib": [ - "es6" + "es6", + "dom" ], + "module": "commonjs", + "noEmit": true, "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, - "baseUrl": "../", "typeRoots": [ "../" ], - "types": [], - "noEmit": true, - "forceConsistentCasingInFileNames": true + "types": [] }, "files": [ "index.d.ts", "evaporate-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/evaporate/tslint.json b/types/evaporate/tslint.json index a41bf5d19a..f93cf8562a 100644 --- a/types/evaporate/tslint.json +++ b/types/evaporate/tslint.json @@ -1,79 +1,3 @@ { - "extends": "dtslint/dt.json", - "rules": { - "adjacent-overload-signatures": false, - "array-type": false, - "arrow-return-shorthand": false, - "ban-types": false, - "callable-types": false, - "comment-format": false, - "dt-header": false, - "eofline": false, - "export-just-namespace": false, - "import-spacing": false, - "interface-name": false, - "interface-over-type-literal": false, - "jsdoc-format": false, - "max-line-length": false, - "member-access": false, - "new-parens": false, - "no-any-union": false, - "no-boolean-literal-compare": false, - "no-conditional-assignment": false, - "no-consecutive-blank-lines": false, - "no-construct": false, - "no-declare-current-package": false, - "no-duplicate-imports": false, - "no-duplicate-variable": false, - "no-empty-interface": false, - "no-for-in-array": false, - "no-inferrable-types": false, - "no-internal-module": false, - "no-irregular-whitespace": false, - "no-mergeable-namespace": false, - "no-misused-new": false, - "no-namespace": false, - "no-object-literal-type-assertion": false, - "no-padding": false, - "no-redundant-jsdoc": false, - "no-redundant-jsdoc-2": false, - "no-redundant-undefined": false, - "no-reference-import": false, - "no-relative-import-in-test": false, - "no-self-import": false, - "no-single-declare-module": false, - "no-string-throw": false, - "no-unnecessary-callback-wrapper": false, - "no-unnecessary-class": false, - "no-unnecessary-generics": false, - "no-unnecessary-qualifier": false, - "no-unnecessary-type-assertion": false, - "no-useless-files": false, - "no-var-keyword": false, - "no-var-requires": false, - "no-void-expression": false, - "no-trailing-whitespace": false, - "object-literal-key-quotes": false, - "object-literal-shorthand": false, - "one-line": false, - "one-variable-per-declaration": false, - "only-arrow-functions": false, - "prefer-conditional-expression": false, - "prefer-const": false, - "prefer-declare-function": false, - "prefer-for-of": false, - "prefer-method-signature": false, - "prefer-template": false, - "radix": false, - "semicolon": false, - "space-before-function-paren": false, - "space-within-parens": false, - "strict-export-declare-modifiers": false, - "trim-file": false, - "triple-equals": false, - "typedef-whitespace": false, - "unified-signatures": false, - "void-return": false, - "whitespace": false - } + "extends": "dtslint/dt.json" } diff --git a/types/event-hooks-webpack-plugin/event-hooks-webpack-plugin-tests.ts b/types/event-hooks-webpack-plugin/event-hooks-webpack-plugin-tests.ts new file mode 100644 index 0000000000..b55f55d85f --- /dev/null +++ b/types/event-hooks-webpack-plugin/event-hooks-webpack-plugin-tests.ts @@ -0,0 +1,32 @@ +import EventHooksPlugin = require('event-hooks-webpack-plugin'); + +new EventHooksPlugin({}); +new EventHooksPlugin({ + done: () => {}, +}); +new EventHooksPlugin({ + shouldEmit: () => {}, + done: () => {}, + additionalPass: () => {}, + beforeRun: () => {}, + run: () => {}, + emit: () => {}, + afterEmit: () => {}, + thisCompilation: () => {}, + compilation: () => {}, + normalModuleFactory: () => {}, + contextModuleFactory: () => {}, + beforeCompile: () => {}, + compile: () => {}, + make: () => {}, + afterCompile: () => {}, + watchRun: () => {}, + failed: () => {}, + invalid: () => {}, + watchClose: () => {}, + environment: () => {}, + afterEnvironment: () => {}, + afterPlugins: () => {}, + afterResolvers: () => {}, + entryOption: () => {}, +}); diff --git a/types/event-hooks-webpack-plugin/index.d.ts b/types/event-hooks-webpack-plugin/index.d.ts new file mode 100644 index 0000000000..ceb78cd3e6 --- /dev/null +++ b/types/event-hooks-webpack-plugin/index.d.ts @@ -0,0 +1,42 @@ +// Type definitions for event-hooks-webpack-plugin 2.0 +// Project: https://github.com/cascornelissen/event-hooks-webpack-plugin +// Definitions by: Pine Mizune +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import { Plugin } from 'webpack'; + +export = EventHooksPlugin; + +declare namespace EventHooksPlugin { + interface Options { + shouldEmit?: () => void; + done?: () => void; + additionalPass?: () => void; + beforeRun?: () => void; + run?: () => void; + emit?: () => void; + afterEmit?: () => void; + thisCompilation?: () => void; + compilation?: () => void; + normalModuleFactory?: () => void; + contextModuleFactory?: () => void; + beforeCompile?: () => void; + compile?: () => void; + make?: () => void; + afterCompile?: () => void; + watchRun?: () => void; + failed?: () => void; + invalid?: () => void; + watchClose?: () => void; + environment?: () => void; + afterEnvironment?: () => void; + afterPlugins?: () => void; + afterResolvers?: () => void; + entryOption?: () => void; + } +} + +declare class EventHooksPlugin extends Plugin { + constructor(options?: EventHooksPlugin.Options); +} diff --git a/types/event-hooks-webpack-plugin/tsconfig.json b/types/event-hooks-webpack-plugin/tsconfig.json new file mode 100644 index 0000000000..51562ab223 --- /dev/null +++ b/types/event-hooks-webpack-plugin/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "event-hooks-webpack-plugin-tests.ts" + ] +} diff --git a/types/event-hooks-webpack-plugin/tslint.json b/types/event-hooks-webpack-plugin/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/event-hooks-webpack-plugin/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/event-stream/index.d.ts b/types/event-stream/index.d.ts index f7b10b34a2..35fb2c8b4c 100644 --- a/types/event-stream/index.d.ts +++ b/types/event-stream/index.d.ts @@ -36,7 +36,7 @@ export declare function mapSync(syncFunction: Function): MapStream; * * @param matcher */ -export declare function split(matcher: string | RegExp): MapStream; +export declare function split(matcher?: string | RegExp): MapStream; /** * Create a through stream that emits separator between each chunk, just like Array#join diff --git a/types/eventsource/eventsource-tests.ts b/types/eventsource/eventsource-tests.ts index d081e87e42..62f867926f 100644 --- a/types/eventsource/eventsource-tests.ts +++ b/types/eventsource/eventsource-tests.ts @@ -4,6 +4,7 @@ const eventSource = new EventSource("http://foobar"); eventSource.onmessage = (x: any) => {}; eventSource.onerror = (x: any) => {}; eventSource.onopen = (x: any) => {}; +eventSource.addEventListener = (type: string, x: any) => {}; eventSource.close(); import EventSourcePolyfill = require("eventsource/lib/eventsource-polyfill"); @@ -12,4 +13,5 @@ const eventSourcePolyfill = new EventSourcePolyfill("http://foobar"); eventSourcePolyfill.onmessage = (x: any) => {}; eventSourcePolyfill.onerror = (x: any) => {}; eventSourcePolyfill.onopen = (x: any) => {}; +eventSourcePolyfill.addEventListener = (type: string, x: any) => {}; eventSourcePolyfill.close(); diff --git a/types/eventsource/index.d.ts b/types/eventsource/index.d.ts index 3620b6116f..62859d037b 100644 --- a/types/eventsource/index.d.ts +++ b/types/eventsource/index.d.ts @@ -16,6 +16,7 @@ declare class EventSource { onopen: EventListener; onmessage: EventListener; onerror: EventListener; + addEventListener(type: string, listener: EventListener): void; close(): void; } diff --git a/types/eventsource/lib/eventsource-polyfill/index.d.ts b/types/eventsource/lib/eventsource-polyfill/index.d.ts index 6246355dfe..3e4ad378e4 100644 --- a/types/eventsource/lib/eventsource-polyfill/index.d.ts +++ b/types/eventsource/lib/eventsource-polyfill/index.d.ts @@ -10,6 +10,7 @@ declare class EventSource { onopen: EventListener; onmessage: EventListener; onerror: EventListener; + addEventListener(type: string, listener: EventListener): void; close(): void; } diff --git a/types/expect-puppeteer/expect-puppeteer-tests.ts b/types/expect-puppeteer/expect-puppeteer-tests.ts new file mode 100644 index 0000000000..84a7e65486 --- /dev/null +++ b/types/expect-puppeteer/expect-puppeteer-tests.ts @@ -0,0 +1,32 @@ +import { ElementHandle, Page } from "puppeteer"; + +const testGlobal = async (instance: ElementHandle | Page) => { + await expect(instance).toClick("selector"); + await expect(instance).toClick("selector", { polling: "mutation", text: "text" }); + await expect(instance).toClick("selector", { polling: "raf", timeout: 777 }); + + await expect(instance).toDisplayDialog(async () => {}); + + await expect(instance).toFill("selector", "value"); + await expect(instance).toFill("selector", "value", { polling: 777 }); + + await expect(instance).toMatch("selector"); + await expect(instance).toMatch("selector", { timeout: 777 }); + + await expect(instance).toMatchElement("selector", "value"); + await expect(instance).toMatchElement("selector", "value", { polling: "mutation" }); + + await expect(instance).toSelect("selector", "valueOrText"); + await expect(instance).toSelect("selector", "valueOrText", { polling: "raf" }); + + await expect(instance).toUploadFile("selector", "filePath"); + await expect(instance).toUploadFile("selector", "filePath", { timeout: 777 }); +}; + +const testImported = async (instance: ElementHandle | Page) => { + const expectPuppeteer = await import("expect-puppeteer"); + + await expectPuppeteer(instance).toClick("selector"); + await expect(instance).toClick("selector", { polling: "mutation", text: "text" }); + await expect(instance).toClick("selector", { polling: "raf", timeout: 777 }); +}; diff --git a/types/expect-puppeteer/index.d.ts b/types/expect-puppeteer/index.d.ts new file mode 100644 index 0000000000..ce20675d37 --- /dev/null +++ b/types/expect-puppeteer/index.d.ts @@ -0,0 +1,68 @@ +// Type definitions for expect-puppeteer 2.2 +// Project: https://github.com/smooth-code/jest-puppeteer/tree/master/packages/expect-puppeteer +// Definitions by: Josh Goldberg +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import { ElementHandle, Page } from "puppeteer"; + +/** + * Interval at which pageFunctions may be executed. + */ +type ExpectPolling = number | "mutation" | "raf"; + +/** + * Configures how to poll for an element. + */ +interface ExpectTimingActions { + /** + * An interval at which the pageFunction is executed. Defaults to "raf". + */ + polling?: ExpectPolling; + + /** + * Maximum time to wait for in milliseconds. Defaults to 500. + */ + timeout?: number; +} + +interface ExpectToClickOptions extends ExpectTimingActions { + /** + * A text or a RegExp to match in element textContent. + */ + text?: string | RegExp; +} + +interface ExpectPuppeteer { + // These must all match the ExpectPuppeteer interface above. + // We can't extend from it directly because some method names conflict in type-incompatible ways. + toClick(selector: string, options?: ExpectToClickOptions): Promise; + toDisplayDialog(block: () => Promise): Promise; + toFill(selector: string, value: string, options?: ExpectTimingActions): Promise; + toMatch(selector: string, options?: ExpectTimingActions): Promise; + toMatchElement(selector: string, value: string, options?: ExpectTimingActions): Promise; + toSelect(selector: string, valueOrText: string, options?: ExpectTimingActions): Promise; + toUploadFile(selector: string, filePath: string, options?: ExpectTimingActions): Promise; +} + +declare global { + namespace jest { + // tslint:disable-next-line no-empty-interface + interface Matchers { + // These must all match the ExpectPuppeteer interface above. + // We can't extend from it directly because some method names conflict in type-incompatible ways. + toClick(selector: string, options?: ExpectToClickOptions): Promise; + toDisplayDialog(block: () => Promise): Promise; + toFill(selector: string, value: string, options?: ExpectTimingActions): Promise; + toMatch(selector: string, options?: ExpectTimingActions): Promise; + toMatchElement(selector: string, value: string, options?: ExpectTimingActions): Promise; + toSelect(selector: string, valueOrText: string, options?: ExpectTimingActions): Promise; + toUploadFile(selector: string, filePath: string, options?: ExpectTimingActions): Promise; + } + } +} + +declare function expectPuppeteer(instance: ElementHandle | Page): ExpectPuppeteer; +export = expectPuppeteer; diff --git a/types/expect-puppeteer/tsconfig.json b/types/expect-puppeteer/tsconfig.json new file mode 100644 index 0000000000..7ca516e3c2 --- /dev/null +++ b/types/expect-puppeteer/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "expect-puppeteer-tests.ts" + ] +} diff --git a/types/expect-puppeteer/tslint.json b/types/expect-puppeteer/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/expect-puppeteer/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/expo/expo-tests.tsx b/types/expo/expo-tests.tsx index d1b543c591..fd0d7ad973 100644 --- a/types/expo/expo-tests.tsx +++ b/types/expo/expo-tests.tsx @@ -3,6 +3,10 @@ import { Text } from 'react-native'; import { Accelerometer, + AdMobAppEvent, + AdMobBanner, + AdMobInterstitial, + AdMobRewarded, Amplitude, Asset, AuthSession, @@ -26,13 +30,21 @@ import { KeepAwake, LinearGradient, Permissions, + PublisherBanner, registerRootComponent, ScreenOrientation, SQLite, Calendar, - MailComposer + MailComposer, + Location, + Updates } from 'expo'; +const reverseGeocode: Promise = Location.reverseGeocodeAsync({ + latitude: 0, + longitude: 0 +}); + Accelerometer.addListener((obj) => { obj.x; obj.y; @@ -41,6 +53,41 @@ Accelerometer.addListener((obj) => { Accelerometer.removeAllListeners(); Accelerometer.setUpdateInterval(1000); +() => ( + console.log(error)} + style={{ flex: 1 }} + /> +); + +() => ( + console.log(error)} + onAdMobDispatchAppEvent={(event: AdMobAppEvent) => console.log(event)} + style={{ flex: 1 }} + /> +); + +AdMobInterstitial.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobInterstitial.setTestDeviceID('EMULATOR'); +async () => { + await AdMobInterstitial.requestAdAsync(); + await AdMobInterstitial.showAdAsync(); +}; + +AdMobRewarded.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobRewarded.setTestDeviceID('EMULATOR'); +async () => { + await AdMobRewarded.requestAdAsync(); + await AdMobRewarded.showAdAsync(); +}; + Amplitude.initialize('key'); Amplitude.setUserId('userId'); Amplitude.setUserProperties({key: 1}); @@ -554,6 +601,8 @@ Permissions.CONTACTS === 'contacts'; Permissions.NOTIFICATIONS === 'remoteNotifications'; Permissions.REMOTE_NOTIFICATIONS === 'remoteNotifications'; Permissions.SYSTEM_BRIGHTNESS === 'systemBrightness'; +Permissions.USER_FACING_NOTIFICATIONS === 'userFacingNotifications'; +Permissions.REMINDERS === 'reminders'; async () => { const result = await Permissions.askAsync(Permissions.CAMERA); @@ -696,3 +745,36 @@ async () => { result.status === 'saved'; }; + +async () => { + const updateEventListener: Updates.UpdateEventListener = ({ type, manifest, message }) => { + switch (type) { + case Updates.EventType.DOWNLOAD_STARTED: + case Updates.EventType.DOWNLOAD_PROGRESS: + case Updates.EventType.DOWNLOAD_FINISHED: + case Updates.EventType.NO_UPDATE_AVAILABLE: + case Updates.EventType.ERROR: + return true; + } + }; + + Updates.reload(); + + Updates.reloadFromCache(); + + Updates.addListener(updateEventListener); + + const updateCheckResult = await Updates.checkForUpdateAsync(); + + if (updateCheckResult.isAvailable) { + console.log(updateCheckResult.manifest); + } + + Updates.fetchUpdateAsync(updateEventListener); + + const bundleFetchResult = await Updates.fetchUpdateAsync(); + + if (bundleFetchResult.isNew) { + console.log(bundleFetchResult.manifest); + } +}; diff --git a/types/expo/index.d.ts b/types/expo/index.d.ts index 2cde351dbe..f51d2d13b6 100644 --- a/types/expo/index.d.ts +++ b/types/expo/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for expo 25.0 +// Type definitions for expo 26.0 // Project: https://github.com/expo/expo-sdk // Definitions by: Konstantin Kai // Martynas KadiÅ¡a @@ -16,9 +16,10 @@ import { ImageRequireSource, ImageURISource, NativeEventEmitter, - ViewProperties, + ViewProps, ViewStyle, - Permission + Permission, + StyleProp } from 'react-native'; export type Axis = number; @@ -59,6 +60,82 @@ export namespace Accelerometer { function setUpdateInterval(intervalMs: number): void; } +/** + * Admob + */ +export type AdMobBannerSize = + | 'banner' + | 'largeBanner' + | 'mediumRectangle' + | 'fullBanner' + | 'leaderboard' + | 'smartBannerPortrait' + | 'smartBannerLandscape'; +export interface AdMobBannerProperties extends ViewProps { + bannerSize?: AdMobBannerSize; + adUnitID?: string; + testDeviceID?: string; + didFailToReceiveAdWithError?(errorDescription: string): void; + adViewDidReceiveAd?(): void; + adViewWillPresentScreen?(): void; + adViewWillDismissScreen?(): void; + adViewDidDismissScreen?(): void; + adViewWillLeaveApplication?(): void; +} + +export class AdMobBanner extends Component { } +export interface AdMobAppEvent { + name: string; + info: string; +} +export interface PublisherBannerProperties extends AdMobBannerProperties { + onAdMobDispatchAppEvent?(event: AdMobAppEvent): void; +} +export class PublisherBanner extends Component { } + +export type AdMobInterstitialEmptyEvent = + | 'interstitialDidLoad' + | 'interstitialDidOpen' + | 'interstitialDidClose' + | 'interstitialWillLeaveApplication'; +export type AdMobInterstitialEvent = AdMobInterstitialEmptyEvent | 'interstitialDidFailToLoad'; +export namespace AdMobInterstitial { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAdAsync(): Promise; + function showAdAsync(): Promise; + function dismissAdAsync(): Promise; + function getIsReadyAsync(): Promise; + function addEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + +export type AdMobRewardedEmptyEvent = + | 'rewardedVideoDidLoad' + | 'rewardedVideoDidOpen' + | 'rewardedVideoDidStart' + | 'rewardedVideoDidClose' + | 'rewardedVideoWillLeaveApplication'; +export type AdMobRewardedEvent = AdMobRewardedEmptyEvent | 'rewardedVideoDidRewardUser' | 'rewardedVideoDidFailToLoad'; +export namespace AdMobRewarded { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAdAsync(): Promise; + function showAdAsync(): Promise; + function dismissAdAsync(): Promise; + function getIsReadyAsync(): Promise; + function addEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function addEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function removeEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + /** * Provides access to Amplitude mobile analytics which basically lets you log various events to the Cloud. This module wraps Amplitude’s iOS and Android SDKs. * @@ -623,7 +700,7 @@ export class PlaybackObject { /** * BarCodeScanner */ -export interface BarCodeScannerProps extends ViewProperties { +export interface BarCodeScannerProps extends ViewProps { type?: 'front' | 'back'; torchMode?: 'on' | 'off'; barCodeTypes?: string[]; @@ -644,7 +721,7 @@ export class BarCodeScanner extends Component { /** * BlurView */ -export interface BlurViewProps extends ViewProperties { +export interface BlurViewProps extends ViewProps { tint: 'light' | 'default' | 'dark'; intensity: number; } @@ -690,7 +767,7 @@ export class CameraObject { getSupportedRatiosAsync(): Promise; // Android only } -export interface CameraProps extends ViewProperties { +export interface CameraProps extends ViewProps { zoom?: FloatFromZeroToOne; ratio?: string; focusDepth?: FloatFromZeroToOne; @@ -1315,7 +1392,7 @@ export namespace Font { /** * GLView */ -export interface GLViewProps extends ViewProperties { +export interface GLViewProps extends ViewProps { onContextCreate(): void; msaaSamples: number; } @@ -1554,11 +1631,12 @@ export class KeepAwake extends Component { /** * LinearGradient */ -export interface LinearGradientProps extends ViewProperties { +export interface LinearGradientProps { colors: string[]; start?: [number, number]; end?: [number, number]; locations?: number[]; + style?: StyleProp; } export class LinearGradient extends Component { } @@ -1622,7 +1700,7 @@ export namespace Location { function getHeadingAsync(): Promise; function watchHeadingAsync(callback: (status: HeadingStatus) => void): EventSubscription; function geocodeAsync(address: string): Promise; - function reverseGeocodeAsync(location: LocationProps): Promise; + function reverseGeocodeAsync(location: LocationProps): Promise; function setApiKey(key: string): void; } @@ -1700,8 +1778,9 @@ export namespace Pedometer { * Permissions */ export namespace Permissions { - type PermissionType = 'remoteNotifications' | 'location' | - 'camera' | 'contacts' | 'audioRecording' | 'calendar'; + type PermissionType = 'audioRecording' | 'calendar' | + 'cameraRoll' | 'camera' | 'contacts' | 'location' | 'reminders' | + 'remoteNotifications' | 'systemBrightness' | 'userFacingNotifications'; type PermissionStatus = 'undetermined' | 'granted' | 'denied'; type PermissionExpires = 'never'; @@ -1725,15 +1804,17 @@ export namespace Permissions { type RemoteNotificationPermission = 'remoteNotifications'; - const CAMERA: 'camera'; - const CAMERA_ROLL: 'cameraRoll'; const AUDIO_RECORDING: 'audioRecording'; - const LOCATION: 'location'; - const REMOTE_NOTIFICATIONS: RemoteNotificationPermission; - const NOTIFICATIONS: RemoteNotificationPermission; - const CONTACTS: 'contacts'; - const SYSTEM_BRIGHTNESS: 'systemBrightness'; const CALENDAR: 'calendar'; + const CAMERA_ROLL: 'cameraRoll'; + const CAMERA: 'camera'; + const CONTACTS: 'contacts'; + const LOCATION: 'location'; + const NOTIFICATIONS: RemoteNotificationPermission; + const REMINDERS = 'reminders'; + const REMOTE_NOTIFICATIONS: RemoteNotificationPermission; + const SYSTEM_BRIGHTNESS: 'systemBrightness'; + const USER_FACING_NOTIFICATIONS = 'userFacingNotifications'; } /** @@ -1873,6 +1954,8 @@ export namespace SQLite { export interface SvgCommonProps { fill?: string; fillOpacity?: number | string; + fillRule?: 'nonzero' | 'evenodd'; + opacity?: number | string; stroke?: string; strokeWidth?: number | string; strokeOpacity?: number | string; @@ -1883,6 +1966,7 @@ export interface SvgCommonProps { x?: number | string; y?: number | string; rotate?: number | string; + rotation?: number | string; scale?: number | string; origin?: number | string; originX?: number | string; @@ -1982,7 +2066,7 @@ export interface SvgStopProps extends SvgCommonProps { stopOpacity?: string; } -export class Svg extends Component<{ width: number, height: number }> { +export class Svg extends Component<{ width: number, height: number, viewBox?: string }> { static Circle: ComponentClass; static ClipPath: ComponentClass; static Defs: ComponentClass; @@ -2680,3 +2764,91 @@ export namespace MailComposer { ): Promise<{ status: 'sent' | 'saved' | 'cancelled' }>; } // #endregion + +export namespace Updates { + namespace EventType { + /** A new update is available and has started downloading. */ + type DownloadStart = 'downloadStart'; + /** A new update is currently being downloaded and will be stored in the device's cache. */ + type DownloadProgress = 'downloadProgress'; + /** A new update has finished downloading and is now stored in the device's cache. */ + type DownloadFinished = 'downloadFinished'; + /** No updates are available, and the most up-to-date bundle of this experience is already running. */ + type NoUpdateAvailable = 'noUpdateAvailable'; + /** An error occurred trying to fetch the latest update. */ + type Error = 'error'; + + /** A new update is available and has started downloading. */ + const DOWNLOAD_STARTED: DownloadStart; + /** A new update is currently being downloaded and will be stored in the device's cache. */ + const DOWNLOAD_PROGRESS: DownloadProgress; + /** A new update has finished downloading and is now stored in the device's cache. */ + const DOWNLOAD_FINISHED: DownloadFinished; + /** No updates are available, and the most up-to-date bundle of this experience is already running. */ + const NO_UPDATE_AVAILABLE: NoUpdateAvailable; + /** An error occurred trying to fetch the latest update. */ + const ERROR: Error; + } + + interface UpdateCheck { + /** True if an update is available, false if you're already running the most up-to-date JS bundle. */ + isAvailable: boolean; + /** If `isAvailable` is true, the manifest of the available update. Undefined otherwise. */ + manifest?: Constants.Manifest; + } + + interface UpdateBundle { + /** True if the fetched bundle is new (i.e. a different version that the what's currently running). */ + isNew: boolean; + /** Manifest of the fetched update. */ + manifest: Constants.Manifest; + } + + /** An object that is passed into each event listener when a new version is available. */ + interface UpdateEvent { + /** Type of the event */ + type: EventType.DownloadStart + | EventType.DownloadProgress + | EventType.DownloadFinished + | EventType.NoUpdateAvailable + | EventType.Error; + /** If `type === Expo.Updates.EventType.DOWNLOAD_FINISHED`, the manifest of the newly downloaded update. Undefined otherwise. */ + manifest?: Constants.Manifest; + /** If `type === Expo.Updates.EventType.ERROR`, the error message. Undefined otherwise. */ + message?: string; + } + + type UpdateEventListener = (event: UpdateEvent) => any; + + /** + * Invokes a callback when updates-related events occur, + * either on the initial app load or as a result of a call to `Expo.Updates.fetchUpdateAsync`. + */ + function addListener(listener: UpdateEventListener): EventSubscription; + + /** + * Check if a new published version of your project is available. + * Does not actually download the update. + * Rejects if `updates.enabled` is `false` in app.json. + */ + function checkForUpdateAsync(): Promise; + + /** + * Downloads the most recent published version of your experience to the device's local cache. + * Rejects if `updates.enabled` is `false` in app.json. + */ + function fetchUpdateAsync(listener?: UpdateEventListener): Promise; + + /** + * Immediately reloads the current experience. + * This will use your app.json updates configuration to fetch and load the newest available JS supported by the device's Expo environment. + * This is useful for triggering an update of your experience if you have published a new version. + */ + function reload(): void; + + /** + * Immediately reloads the current experience using the most recent cached version. + * This is useful for triggering an update of your experience if you have published and already downloaded a new version. + */ + function reloadFromCache(): void; +} diff --git a/types/expo/v23/expo-tests.tsx b/types/expo/v23/expo-tests.tsx index 51b3f30d39..c076bbbce1 100644 --- a/types/expo/v23/expo-tests.tsx +++ b/types/expo/v23/expo-tests.tsx @@ -2,6 +2,10 @@ import * as React from 'react'; import { Accelerometer, + AdMobAppEvent, + AdMobBanner, + AdMobInterstitial, + AdMobRewarded, Amplitude, Asset, AuthSession, @@ -16,7 +20,8 @@ import { Facebook, FacebookAds, FileSystem, - ImagePicker + ImagePicker, + PublisherBanner } from 'expo'; Accelerometer.addListener((obj) => { @@ -27,6 +32,35 @@ Accelerometer.addListener((obj) => { Accelerometer.removeAllListeners(); Accelerometer.setUpdateInterval(1000); +() => ( + console.log(error)} + style={{ flex: 1 }} + /> +); + +() => ( + console.log(error)} + admobDispatchAppEvent={(event: AdMobAppEvent) => console.log(event)} + style={{ flex: 1 }} + /> +); + +AdMobInterstitial.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobInterstitial.setTestDeviceID('EMULATOR'); +AdMobInterstitial.requestAd(() => AdMobInterstitial.showAd()); + +AdMobRewarded.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobRewarded.setTestDeviceID('EMULATOR'); +AdMobRewarded.requestAd(() => AdMobRewarded.showAd()); + Amplitude.initialize('key'); Amplitude.setUserId('userId'); Amplitude.setUserProperties({key: 1}); diff --git a/types/expo/v23/index.d.ts b/types/expo/v23/index.d.ts index 78de7bf415..4c33d8b13f 100644 --- a/types/expo/v23/index.d.ts +++ b/types/expo/v23/index.d.ts @@ -8,7 +8,7 @@ import { EventSubscription } from 'fbemitter'; import { Component, Ref } from 'react'; import { ViewStyle, - ViewProperties, + ViewProps, ColorPropType, ImageURISource, NativeEventEmitter, @@ -42,6 +42,79 @@ export namespace Accelerometer { function setUpdateInterval(intervalMs: number): void; } +/** + * Admob + */ +export type AdMobBannerSize = + | 'banner' + | 'largeBanner' + | 'mediumRectangle' + | 'fullBanner' + | 'leaderboard' + | 'smartBannerPortrait' + | 'smartBannerLandscape'; +export interface AdMobBannerProperties extends ViewProps { + bannerSize?: AdMobBannerSize; + adUnitID?: string; + testDeviceID?: string; + didFailToReceiveAdWithError?(errorDescription: string): void; + adViewDidReceiveAd?(): void; + adViewWillPresentScreen?(): void; + adViewWillDismissScreen?(): void; + adViewDidDismissScreen?(): void; + adViewWillLeaveApplication?(): void; +} + +export class AdMobBanner extends Component { } + +export interface AdMobAppEvent { + name: string; + info: string; +} +export interface PublisherBannerProperties extends AdMobBannerProperties { + admobDispatchAppEvent?(event: AdMobAppEvent): void; +} +export class PublisherBanner extends Component { } + +export type AdMobInterstitialEmptyEvent = + | 'interstitialDidLoad' + | 'interstitialDidOpen' + | 'interstitialDidClose' + | 'interstitialWillLeaveApplication'; +export type AdMobInterstitialEvent = AdMobInterstitialEmptyEvent | 'interstitialVideoDidFailToLoad'; +export namespace AdMobInterstitial { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function isReady(callback: (isReady: boolean) => void): void; + function addEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + +export type AdMobRewardedEmptyEvent = + | 'rewardedVideoDidLoad' + | 'rewardedVideoDidOpen' + | 'rewardedVideoDidClose' + | 'rewardedVideoWillLeaveApplication'; +export type AdMobRewardedEvent = AdMobRewardedEmptyEvent | 'rewardedVideoDidRewardUser' | 'rewardedVideoDidFailToLoad'; +export namespace AdMobRewarded { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function addEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function addEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function removeEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + /** * Amplitude */ @@ -341,7 +414,7 @@ export class AppLoading extends Component { } /** * BarCodeScanner */ -export interface BarCodeScannerProps extends ViewProperties { +export interface BarCodeScannerProps extends ViewProps { type?: 'front' | 'back'; torchMode?: 'on' | 'off'; barCodeTypes?: string[]; @@ -353,7 +426,7 @@ export class BarCodeScanner extends Component { } /** * BlurView */ -export interface BlurViewProps extends ViewProperties { +export interface BlurViewProps extends ViewProps { tint: 'light' | 'default' | 'dark'; intensity: number; } @@ -396,7 +469,7 @@ export class CameraObject { stopRecording(): void; getSupportedRatiosAsync(): Promise; // Android only } -export interface CameraProperties extends ViewProperties { +export interface CameraProperties extends ViewProps { flashMode?: string | number; type?: string | number; ratio?: string; @@ -896,7 +969,7 @@ export namespace Font { /** * GLView */ -export interface GLViewProps extends ViewProperties { +export interface GLViewProps extends ViewProps { onContextCreate(): void; msaaSamples: number; } diff --git a/types/expo/v24/expo-tests.tsx b/types/expo/v24/expo-tests.tsx index 8749a5993c..308e2de089 100644 --- a/types/expo/v24/expo-tests.tsx +++ b/types/expo/v24/expo-tests.tsx @@ -3,6 +3,10 @@ import { Text } from 'react-native'; import { Accelerometer, + AdMobAppEvent, + AdMobBanner, + AdMobInterstitial, + AdMobRewarded, Amplitude, Asset, AuthSession, @@ -26,6 +30,7 @@ import { KeepAwake, LinearGradient, Permissions, + PublisherBanner, registerRootComponent, ScreenOrientation } from 'expo'; @@ -38,6 +43,35 @@ Accelerometer.addListener((obj) => { Accelerometer.removeAllListeners(); Accelerometer.setUpdateInterval(1000); +() => ( + console.log(error)} + style={{ flex: 1 }} + /> +); + +() => ( + console.log(error)} + admobDispatchAppEvent={(event: AdMobAppEvent) => console.log(event)} + style={{ flex: 1 }} + /> +); + +AdMobInterstitial.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobInterstitial.setTestDeviceID('EMULATOR'); +AdMobInterstitial.requestAd(() => AdMobInterstitial.showAd()); + +AdMobRewarded.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobRewarded.setTestDeviceID('EMULATOR'); +AdMobRewarded.requestAd(() => AdMobRewarded.showAd()); + Amplitude.initialize('key'); Amplitude.setUserId('userId'); Amplitude.setUserProperties({key: 1}); diff --git a/types/expo/v24/index.d.ts b/types/expo/v24/index.d.ts index 829e9730a7..803ecccf32 100644 --- a/types/expo/v24/index.d.ts +++ b/types/expo/v24/index.d.ts @@ -15,9 +15,10 @@ import { ImageRequireSource, ImageURISource, NativeEventEmitter, - ViewProperties, + ViewProps, ViewStyle, - Permission + Permission, + StyleProp } from 'react-native'; export type Axis = number; @@ -58,6 +59,79 @@ export namespace Accelerometer { function setUpdateInterval(intervalMs: number): void; } +/** + * Admob + */ +export type AdMobBannerSize = + | 'banner' + | 'largeBanner' + | 'mediumRectangle' + | 'fullBanner' + | 'leaderboard' + | 'smartBannerPortrait' + | 'smartBannerLandscape'; +export interface AdMobBannerProperties extends ViewProps { + bannerSize?: AdMobBannerSize; + adUnitID?: string; + testDeviceID?: string; + didFailToReceiveAdWithError?(errorDescription: string): void; + adViewDidReceiveAd?(): void; + adViewWillPresentScreen?(): void; + adViewWillDismissScreen?(): void; + adViewDidDismissScreen?(): void; + adViewWillLeaveApplication?(): void; +} + +export class AdMobBanner extends Component { } + +export interface AdMobAppEvent { + name: string; + info: string; +} +export interface PublisherBannerProperties extends AdMobBannerProperties { + admobDispatchAppEvent?(event: AdMobAppEvent): void; +} +export class PublisherBanner extends Component { } + +export type AdMobInterstitialEmptyEvent = + | 'interstitialDidLoad' + | 'interstitialDidOpen' + | 'interstitialDidClose' + | 'interstitialWillLeaveApplication'; +export type AdMobInterstitialEvent = AdMobInterstitialEmptyEvent | 'interstitialVideoDidFailToLoad'; +export namespace AdMobInterstitial { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function isReady(callback: (isReady: boolean) => void): void; + function addEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + +export type AdMobRewardedEmptyEvent = + | 'rewardedVideoDidLoad' + | 'rewardedVideoDidOpen' + | 'rewardedVideoDidClose' + | 'rewardedVideoWillLeaveApplication'; +export type AdMobRewardedEvent = AdMobRewardedEmptyEvent | 'rewardedVideoDidRewardUser' | 'rewardedVideoDidFailToLoad'; +export namespace AdMobRewarded { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function addEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function addEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function removeEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + /** * Provides access to Amplitude mobile analytics which basically lets you log various events to the Cloud. This module wraps Amplitude’s iOS and Android SDKs. * @@ -622,7 +696,7 @@ export class PlaybackObject { /** * BarCodeScanner */ -export interface BarCodeScannerProps extends ViewProperties { +export interface BarCodeScannerProps extends ViewProps { type?: 'front' | 'back'; torchMode?: 'on' | 'off'; barCodeTypes?: string[]; @@ -643,7 +717,7 @@ export class BarCodeScanner extends Component { /** * BlurView */ -export interface BlurViewProps extends ViewProperties { +export interface BlurViewProps extends ViewProps { tint: 'light' | 'default' | 'dark'; intensity: number; } @@ -689,7 +763,7 @@ export class CameraObject { getSupportedRatiosAsync(): Promise; // Android only } -export interface CameraProps extends ViewProperties { +export interface CameraProps extends ViewProps { flashMode?: string | number; type?: string | number; ratio?: string; @@ -1301,7 +1375,7 @@ export namespace Font { /** * GLView */ -export interface GLViewProps extends ViewProperties { +export interface GLViewProps extends ViewProps { onContextCreate(): void; msaaSamples: number; } @@ -1534,11 +1608,12 @@ export class KeepAwake extends Component { /** * LinearGradient */ -export interface LinearGradientProps extends ViewProperties { +export interface LinearGradientProps { colors: string[]; start?: [number, number]; end?: [number, number]; locations?: number[]; + style?: StyleProp; } export class LinearGradient extends Component { } diff --git a/types/expo/v25/expo-tests.tsx b/types/expo/v25/expo-tests.tsx new file mode 100644 index 0000000000..afcb006949 --- /dev/null +++ b/types/expo/v25/expo-tests.tsx @@ -0,0 +1,732 @@ +import * as React from 'react'; +import { Text } from 'react-native'; + +import { + Accelerometer, + AdMobAppEvent, + AdMobBanner, + AdMobInterstitial, + AdMobRewarded, + Amplitude, + Asset, + AuthSession, + Audio, + AppLoading, + BarCodeScanner, + BlurViewProps, + BlurView, + Brightness, + Camera, + CameraObject, + DocumentPicker, + Facebook, + FacebookAds, + FileSystem, + ImagePicker, + ImageManipulator, + FaceDetector, + Svg, + IntentLauncherAndroid, + KeepAwake, + LinearGradient, + Permissions, + PublisherBanner, + registerRootComponent, + ScreenOrientation, + SQLite, + Calendar, + MailComposer +} from 'expo'; + +Accelerometer.addListener((obj) => { + obj.x; + obj.y; + obj.z; +}); +Accelerometer.removeAllListeners(); +Accelerometer.setUpdateInterval(1000); + +() => ( + console.log(error)} + style={{ flex: 1 }} + /> +); + +() => ( + console.log(error)} + admobDispatchAppEvent={(event: AdMobAppEvent) => console.log(event)} + style={{ flex: 1 }} + /> +); + +AdMobInterstitial.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobInterstitial.setTestDeviceID('EMULATOR'); +AdMobInterstitial.requestAd(() => AdMobInterstitial.showAd()); + +AdMobRewarded.setAdUnitID('ca-app-pub-3940256099942544/1033173712'); // Test ID, Replace with your-admob-unit-id +AdMobRewarded.setTestDeviceID('EMULATOR'); +AdMobRewarded.requestAd(() => AdMobRewarded.showAd()); + +Amplitude.initialize('key'); +Amplitude.setUserId('userId'); +Amplitude.setUserProperties({key: 1}); +Amplitude.clearUserProperties(); +Amplitude.logEvent('name'); +Amplitude.logEventWithProperties('event', {key: 'value'}); +Amplitude.setGroup('type', ['value']); + +const asset = Asset.fromModule(1); +asset.downloadAsync(); +Asset.loadAsync(1); +Asset.loadAsync([1, 2, 3]); +const asset1 = new Asset({ + uri: 'uri', + type: 'type', + name: 'name', + hash: 'hash', + width: 122, + height: 122 +}); + +const url = AuthSession.getRedirectUrl(); +AuthSession.dismiss(); +AuthSession.startAsync({ + authUrl: 'url1', + returnUrl: 'url2' +}).then(result => { + switch (result.type) { + case 'success': + result.event; + result.params; + break; + case 'error': + result.errorCode; + result.params; + result.event; + break; + case 'dismissed': + case 'cancel': + result.type; + break; + } +}); +AuthSession.startAsync({ + authUrl: 'url1', + returnUrl: undefined +}); + +Audio.setAudioModeAsync({ + shouldDuckAndroid: false, + playsInSilentModeIOS: true, + interruptionModeIOS: 2, + interruptionModeAndroid: 1, + allowsRecordingIOS: true +}); +Audio.setIsEnabledAsync(true); + +Audio.INTERRUPTION_MODE_IOS_MIX_WITH_OTHERS === 0; +Audio.INTERRUPTION_MODE_IOS_DO_NOT_MIX === 1; +Audio.INTERRUPTION_MODE_IOS_DUCK_OTHERS === 2; + +Audio.INTERRUPTION_MODE_ANDROID_DO_NOT_MIX === 1; +Audio.INTERRUPTION_MODE_ANDROID_DUCK_OTHERS === 2; + +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_DEFAULT === 0; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_THREE_GPP === 1; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_MPEG_4 === 2; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AMR_NB === 3; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AMR_WB === 4; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AAC_ADIF === 5; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AAC_ADTS === 6; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_RTP_AVP === 7; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_MPEG2TS === 8; +Audio.RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_WEBM === 9; + +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_DEFAULT === 0; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AMR_NB === 1; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AMR_WB === 2; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AAC === 3; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_HE_AAC === 4; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AAC_ELD === 5; +Audio.RECORDING_OPTION_ANDROID_AUDIO_ENCODER_VORBIS === 6; + +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_LINEARPCM === 'lpcm'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_AC3 === 'ac-3'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_60958AC3 === 'cac3'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_APPLEIMA4 === 'ima4'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC === 'aac '; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4CELP === 'celp'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4HVXC === 'hvxc'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4TWINVQ === 'twvq'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MACE3 === 'MAC3'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MACE6 === 'MAC6'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_ULAW === 'ulaw'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_ALAW === 'alaw'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_QDESIGN === 'QDMC'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_QDESIGN2 === 'QDM2'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_QUALCOMM === 'Qclp'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER1 === '.mp1'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER2 === '.mp2'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER3 === '.mp3'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_APPLELOSSLESS === 'alac'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_HE === 'aach'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_LD === 'aacl'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD === 'aace'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD_SBR === 'aacf'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD_V2 === 'aacg'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_HE_V2 === 'aacp'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_SPATIAL === 'aacs'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_AMR === 'samr'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_AMR_WB === 'sawb'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_AUDIBLE === 'AUDB'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_ILBC === 'ilbc'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_DVIINTELIMA === 0x6d730011; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_MICROSOFTGSM === 0x6d730031; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_AES3 === 'aes3'; +Audio.RECORDING_OPTION_IOS_OUTPUT_FORMAT_ENHANCEDAC3 === 'ec-3'; + +Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_MIN === 0; +Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_LOW === 0x20; +Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_MEDIUM === 0x40; +Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_HIGH === 0x60; +Audio.RECORDING_OPTION_IOS_AUDIO_QUALITY_MAX === 0x7f; + +Audio.RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_CONSTANT === 0; +Audio.RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_LONG_TERM_AVERAGE === 1; +Audio.RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_VARIABLE_CONSTRAINED === 2; +Audio.RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_VARIABLE === 3; + +Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY; +Audio.RECORDING_OPTIONS_PRESET_LOW_QUALITY; +async () => { + const result = await Audio.Sound.create({uri: 'uri'}, { + volume: 0.5, + rate: 0.6 + }, null, true); + + const sound = result.sound; + const status = result.status; + + if (!status.isLoaded) { + status.error; + } else { + status.didJustFinish; + // etc. + } + + const _status = await sound.getStatusAsync(); + await sound.loadAsync({uri: 'uri'}); +}; + +() => ( + Promise.resolve()} + onFinish={() => {}} + onError={(error) => console.log(error)} /> +); +() => ( + +); + +const barcodeReadCallback = () => {}; +() => ( + +); + +() => ( + +); + +async () => { + await Brightness.setBrightnessAsync(.6); + await Brightness.setSystemBrightnessAsync(.7); + const br1 = await Brightness.getBrightnessAsync(); + const br2 = await Brightness.getSystemBrightnessAsync(); +}; + +Camera.Constants.AutoFocus; +Camera.Constants.Type; +Camera.Constants.FlashMode; +Camera.Constants.WhiteBalance; +Camera.Constants.VideoQuality; +Camera.Constants.BarCodeType; +() => { + return( { + if (component) { + component.recordAsync(); + } + }} />); +}; + +async () => { + const result = await DocumentPicker.getDocumentAsync(); + + if (result.type === 'success') { + result.name; + result.uri; + result.size; + } +}; + +async () => { + const { type, expires, token } = await Facebook.logInWithReadPermissionsAsync("appId"); +}; + +() => ( + {}} + onError={() => {}} /> +); + +async () => { + const info = await FileSystem.getInfoAsync('file'); + + info.exists; + info.isDirectory; + + if (info.exists) { + info.md5; + info.uri; + info.size; + info.modificationTime; + } + + const string: string = await FileSystem.readAsStringAsync('file'); + await FileSystem.writeAsStringAsync('file', 'content'); + await FileSystem.deleteAsync('file'); + await FileSystem.moveAsync({ from: 'from', to: 'to'}); + await FileSystem.copyAsync({ from: 'from', to: 'to' }); + await FileSystem.makeDirectoryAsync('dir'); + const dirs: string[] = await FileSystem.readDirectoryAsync('dir'); + const result = await FileSystem.downloadAsync('from', 'to'); + + result.headers; + result.status; + result.uri; + result.md5; +}; + +async () => { + // Video test + const result = await ImagePicker.launchImageLibraryAsync({ + mediaTypes: ImagePicker.MediaTypeOptions.Videos, + }); + + if (!result.cancelled) { + result.uri; + result.width; + result.height; + result.duration; + result.type; + } +}; + +async () => { + // Image test + const result = await ImagePicker.launchImageLibraryAsync({ + mediaTypes: ImagePicker.MediaTypeOptions.Images, + base64: true, + aspect: [4, 3], + quality: 1, + exif: true, + }); + + if (!result.cancelled) { + result.uri; + result.width; + result.height; + result.exif; + result.base64; + result.type; + } +}; + +async () => { + const result = await ImageManipulator.manipulate('url', { + rotate: 90 + }, { + compress: 0.5 + }); + + result.height; + result.uri; + result.width; +}; + +FaceDetector.Constants.Mode.fast; +FaceDetector.Constants.Mode.accurate; +FaceDetector.Constants.Landmarks.all; +FaceDetector.Constants.Landmarks.none; +FaceDetector.Constants.Classifications.all; +FaceDetector.Constants.Classifications.none; +async () => { + const result = await FaceDetector.detectFaces('url', { + mode: FaceDetector.Constants.Mode.fast, + detectLandmarks: FaceDetector.Constants.Landmarks.all, + runClassifications: FaceDetector.Constants.Classifications.none + }); + + result.faces[0]; +}; + +() => ( + + + + + + + + + STROKED TEXT + + + + + + + + We go up and down, + then up again + + + + + + + + + + + + + + + + + + + + + +); + +IntentLauncherAndroid.ACTION_ACCESSIBILITY_SETTINGS === 'android.settings.ACCESSIBILITY_SETTINGS'; +IntentLauncherAndroid.ACTION_APP_NOTIFICATION_REDACTION === 'android.settings.ACTION_APP_NOTIFICATION_REDACTION'; +IntentLauncherAndroid.ACTION_CONDITION_PROVIDER_SETTINGS === 'android.settings.ACTION_CONDITION_PROVIDER_SETTINGS'; +IntentLauncherAndroid.ACTION_NOTIFICATION_LISTENER_SETTINGS === 'android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS'; +IntentLauncherAndroid.ACTION_PRINT_SETTINGS === 'android.settings.ACTION_PRINT_SETTINGS'; +IntentLauncherAndroid.ACTION_ADD_ACCOUNT_SETTINGS === 'android.settings.ADD_ACCOUNT_SETTINGS'; +IntentLauncherAndroid.ACTION_AIRPLANE_MODE_SETTINGS === 'android.settings.AIRPLANE_MODE_SETTINGS'; +IntentLauncherAndroid.ACTION_APN_SETTINGS === 'android.settings.APN_SETTINGS'; +IntentLauncherAndroid.ACTION_APPLICATION_DETAILS_SETTINGS === 'android.settings.APPLICATION_DETAILS_SETTINGS'; +IntentLauncherAndroid.ACTION_APPLICATION_DEVELOPMENT_SETTINGS === 'android.settings.APPLICATION_DEVELOPMENT_SETTINGS'; +IntentLauncherAndroid.ACTION_APPLICATION_SETTINGS === 'android.settings.APPLICATION_SETTINGS'; +IntentLauncherAndroid.ACTION_APP_NOTIFICATION_SETTINGS === 'android.settings.APP_NOTIFICATION_SETTINGS'; +IntentLauncherAndroid.ACTION_APP_OPS_SETTINGS === 'android.settings.APP_OPS_SETTINGS'; +IntentLauncherAndroid.ACTION_BATTERY_SAVER_SETTINGS === 'android.settings.BATTERY_SAVER_SETTINGS'; +IntentLauncherAndroid.ACTION_BLUETOOTH_SETTINGS === 'android.settings.BLUETOOTH_SETTINGS'; +IntentLauncherAndroid.ACTION_CAPTIONING_SETTINGS === 'android.settings.CAPTIONING_SETTINGS'; +IntentLauncherAndroid.ACTION_CAST_SETTINGS === 'android.settings.CAST_SETTINGS'; +IntentLauncherAndroid.ACTION_DATA_ROAMING_SETTINGS === 'android.settings.DATA_ROAMING_SETTINGS'; +IntentLauncherAndroid.ACTION_DATE_SETTINGS === 'android.settings.DATE_SETTINGS'; +IntentLauncherAndroid.ACTION_DEVICE_INFO_SETTINGS === 'android.settings.DEVICE_INFO_SETTINGS'; +IntentLauncherAndroid.ACTION_DEVICE_NAME === 'android.settings.DEVICE_NAME'; +IntentLauncherAndroid.ACTION_DISPLAY_SETTINGS === 'android.settings.DISPLAY_SETTINGS'; +IntentLauncherAndroid.ACTION_DREAM_SETTINGS === 'android.settings.DREAM_SETTINGS'; +IntentLauncherAndroid.ACTION_HARD_KEYBOARD_SETTINGS === 'android.settings.HARD_KEYBOARD_SETTINGS'; +IntentLauncherAndroid.ACTION_HOME_SETTINGS === 'android.settings.HOME_SETTINGS'; +IntentLauncherAndroid.ACTION_IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS === 'android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS'; +IntentLauncherAndroid.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS === 'android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS'; +IntentLauncherAndroid.ACTION_INPUT_METHOD_SETTINGS === 'android.settings.INPUT_METHOD_SETTINGS'; +IntentLauncherAndroid.ACTION_INPUT_METHOD_SUBTYPE_SETTINGS === 'android.settings.INPUT_METHOD_SUBTYPE_SETTINGS'; +IntentLauncherAndroid.ACTION_INTERNAL_STORAGE_SETTINGS === 'android.settings.INTERNAL_STORAGE_SETTINGS'; +IntentLauncherAndroid.ACTION_LOCALE_SETTINGS === 'android.settings.LOCALE_SETTINGS'; +IntentLauncherAndroid.ACTION_LOCATION_SOURCE_SETTINGS === 'android.settings.LOCATION_SOURCE_SETTINGS'; +IntentLauncherAndroid.ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS === 'android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS'; +IntentLauncherAndroid.ACTION_MANAGE_APPLICATIONS_SETTINGS === 'android.settings.MANAGE_APPLICATIONS_SETTINGS'; +IntentLauncherAndroid.ACTION_MANAGE_DEFAULT_APPS_SETTINGS === 'android.settings.MANAGE_DEFAULT_APPS_SETTINGS'; +IntentLauncherAndroid.ACTION_MEMORY_CARD_SETTINGS === 'android.settings.MEMORY_CARD_SETTINGS'; +IntentLauncherAndroid.ACTION_MONITORING_CERT_INFO === 'android.settings.MONITORING_CERT_INFO'; +IntentLauncherAndroid.ACTION_NETWORK_OPERATOR_SETTINGS === 'android.settings.NETWORK_OPERATOR_SETTINGS'; +IntentLauncherAndroid.ACTION_NFCSHARING_SETTINGS === 'android.settings.NFCSHARING_SETTINGS'; +IntentLauncherAndroid.ACTION_NFC_PAYMENT_SETTINGS === 'android.settings.NFC_PAYMENT_SETTINGS'; +IntentLauncherAndroid.ACTION_NFC_SETTINGS === 'android.settings.NFC_SETTINGS'; +IntentLauncherAndroid.ACTION_NIGHT_DISPLAY_SETTINGS === 'android.settings.NIGHT_DISPLAY_SETTINGS'; +IntentLauncherAndroid.ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS === 'android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS'; +IntentLauncherAndroid.ACTION_NOTIFICATION_SETTINGS === 'android.settings.NOTIFICATION_SETTINGS'; +IntentLauncherAndroid.ACTION_PAIRING_SETTINGS === 'android.settings.PAIRING_SETTINGS'; +IntentLauncherAndroid.ACTION_PRIVACY_SETTINGS === 'android.settings.PRIVACY_SETTINGS'; +IntentLauncherAndroid.ACTION_QUICK_LAUNCH_SETTINGS === 'android.settings.QUICK_LAUNCH_SETTINGS'; +IntentLauncherAndroid.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS === 'android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS'; +IntentLauncherAndroid.ACTION_SECURITY_SETTINGS === 'android.settings.SECURITY_SETTINGS'; +IntentLauncherAndroid.ACTION_SETTINGS === 'android.settings.SETTINGS'; +IntentLauncherAndroid.ACTION_SHOW_ADMIN_SUPPORT_DETAILS === 'android.settings.SHOW_ADMIN_SUPPORT_DETAILS'; +IntentLauncherAndroid.ACTION_SHOW_INPUT_METHOD_PICKER === 'android.settings.SHOW_INPUT_METHOD_PICKER'; +IntentLauncherAndroid.ACTION_SHOW_REGULATORY_INFO === 'android.settings.SHOW_REGULATORY_INFO'; +IntentLauncherAndroid.ACTION_SHOW_REMOTE_BUGREPORT_DIALOG === 'android.settings.SHOW_REMOTE_BUGREPORT_DIALOG'; +IntentLauncherAndroid.ACTION_SOUND_SETTINGS === 'android.settings.SOUND_SETTINGS'; +IntentLauncherAndroid.ACTION_STORAGE_MANAGER_SETTINGS === 'android.settings.STORAGE_MANAGER_SETTINGS'; +IntentLauncherAndroid.ACTION_SYNC_SETTINGS === 'android.settings.SYNC_SETTINGS'; +IntentLauncherAndroid.ACTION_SYSTEM_UPDATE_SETTINGS === 'android.settings.SYSTEM_UPDATE_SETTINGS'; +IntentLauncherAndroid.ACTION_TETHER_PROVISIONING_UI === 'android.settings.TETHER_PROVISIONING_UI'; +IntentLauncherAndroid.ACTION_TRUSTED_CREDENTIALS_USER === 'android.settings.TRUSTED_CREDENTIALS_USER'; +IntentLauncherAndroid.ACTION_USAGE_ACCESS_SETTINGS === 'android.settings.USAGE_ACCESS_SETTINGS'; +IntentLauncherAndroid.ACTION_USER_DICTIONARY_INSERT === 'android.settings.USER_DICTIONARY_INSERT'; +IntentLauncherAndroid.ACTION_USER_DICTIONARY_SETTINGS === 'android.settings.USER_DICTIONARY_SETTINGS'; +IntentLauncherAndroid.ACTION_USER_SETTINGS === 'android.settings.USER_SETTINGS'; +IntentLauncherAndroid.ACTION_VOICE_CONTROL_AIRPLANE_MODE === 'android.settings.VOICE_CONTROL_AIRPLANE_MODE'; +IntentLauncherAndroid.ACTION_VOICE_CONTROL_BATTERY_SAVER_MODE === 'android.settings.VOICE_CONTROL_BATTERY_SAVER_MODE'; +IntentLauncherAndroid.ACTION_VOICE_CONTROL_DO_NOT_DISTURB_MODE === 'android.settings.VOICE_CONTROL_DO_NOT_DISTURB_MODE'; +IntentLauncherAndroid.ACTION_VOICE_INPUT_SETTINGS === 'android.settings.VOICE_INPUT_SETTINGS'; +IntentLauncherAndroid.ACTION_VPN_SETTINGS === 'android.settings.VPN_SETTINGS'; +IntentLauncherAndroid.ACTION_VR_LISTENER_SETTINGS === 'android.settings.VR_LISTENER_SETTINGS'; +IntentLauncherAndroid.ACTION_WEBVIEW_SETTINGS === 'android.settings.WEBVIEW_SETTINGS'; +IntentLauncherAndroid.ACTION_WIFI_IP_SETTINGS === 'android.settings.WIFI_IP_SETTINGS'; +IntentLauncherAndroid.ACTION_WIFI_SETTINGS === 'android.settings.WIFI_SETTINGS'; +IntentLauncherAndroid.ACTION_WIRELESS_SETTINGS === 'android.settings.WIRELESS_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_AUTOMATION_SETTINGS === 'android.settings.ZEN_MODE_AUTOMATION_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_EVENT_RULE_SETTINGS === 'android.settings.ZEN_MODE_EVENT_RULE_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_EXTERNAL_RULE_SETTINGS === 'android.settings.ZEN_MODE_EXTERNAL_RULE_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_PRIORITY_SETTINGS === 'android.settings.ZEN_MODE_PRIORITY_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_SCHEDULE_RULE_SETTINGS === 'android.settings.ZEN_MODE_SCHEDULE_RULE_SETTINGS'; +IntentLauncherAndroid.ACTION_ZEN_MODE_SETTINGS === 'android.settings.ZEN_MODE_SETTINGS'; + +KeepAwake.activate(); +KeepAwake.deactivate(); + +() => ( + +); + +() => ( + +); + +Permissions.CAMERA === 'camera'; +Permissions.CAMERA_ROLL === 'cameraRoll'; +Permissions.AUDIO_RECORDING === 'audioRecording'; +Permissions.CONTACTS === 'contacts'; +Permissions.NOTIFICATIONS === 'remoteNotifications'; +Permissions.REMOTE_NOTIFICATIONS === 'remoteNotifications'; +Permissions.SYSTEM_BRIGHTNESS === 'systemBrightness'; +async () => { + const result = await Permissions.askAsync(Permissions.CAMERA); + + result.status === 'granted'; + result.status === 'denied'; + result.status === 'undetermined'; + + result.expires === 'never'; +}; + +ScreenOrientation.Orientation.ALL; +ScreenOrientation.allow(ScreenOrientation.Orientation.ALL); + +class __TestEntry__ extends React.Component { + render() { + return( + test + ); + } +} +registerRootComponent(__TestEntry__); + +Calendar.EntityTypes.EVENT === 'event'; +Calendar.EntityTypes.REMINDER === 'reminder'; + +Calendar.CalendarType.LOCAL === 'local'; +Calendar.CalendarType.CALDAV === 'caldav'; +Calendar.CalendarType.EXCHANGE === 'exchange'; +Calendar.CalendarType.SUBSCRIBED === 'subscribed'; +Calendar.CalendarType.BIRTHDAYS === 'birthdays'; + +async () => { + const result = await Calendar.getCalendarsAsync(Calendar.EntityTypes.EVENT); + result.length; + + const calendar = result[0]; + calendar.id === ''; + calendar.title === ''; + calendar.sourceId === ''; + calendar.type === Calendar.CalendarType.BIRTHDAYS; + calendar.color === ''; + calendar.entityType === Calendar.EntityTypes.EVENT; + calendar.allowsModifications === true; + calendar.allowedAvailabilities === ['']; + calendar.isPrimary === true; + calendar.name === ''; + calendar.ownerAccount === ''; + calendar.timeZone === ''; + calendar.allowedReminders === ['']; + calendar.allowedAttendeeTypes === ['']; + calendar.isVisible === false; + calendar.isSynced === false; + calendar.accessLevel === Calendar.CalendarAccessLevel.CONTRIBUTOR; + + if (calendar.source) { + calendar.source.id === ''; + calendar.source.type === ''; + calendar.source.name === ''; + calendar.source.isLocalAccount === false; + } + + const id1 = await Calendar.createCalendarAsync({ + accessLevel: Calendar.CalendarAccessLevel.EDITOR + }); + + id1 === ''; + + const id2 = await Calendar.updateCalendarAsync('1234', { + isVisible: false + }); + + id2 === ''; + + const id3 = await Calendar.updateCalendarAsync('1234', null); + + await Calendar.deleteCalendarAsync('1234'); + + const events = await Calendar.getEventsAsync( + ['123', '124'], + new Date(), + new Date() + ); + + const event1 = events[0]; + + event1.accessLevel === Calendar.EventAccessLevel.CONFIDENTIAL; + event1.alarms === []; + event1.allDay === true; + event1.availability === Calendar.Availability.FREE; + event1.calendarId === ''; + event1.creationDate === ''; + event1.endDate === ''; + event1.endTimeZone === ''; + event1.guestsCanInviteOthers === true; + event1.guestsCanModify === true; + event1.guestsCanSeeGuests === false; + event1.id === ''; + event1.instanceId === ''; + event1.isDetached === false; + + const event2 = await Calendar.getEventAsync('123', { + futureEvents: true + }); + + const eventId1 = await Calendar.createEventAsync('123'); + + const eventId2 = await Calendar.updateEventAsync('1234'); + + await Calendar.deleteEventAsync('1234'); + + const attendees = await Calendar.getAttendeesForEventAsync('123'); + + const aId1 = await Calendar.createAttendeeAsync('123'); + + const aId2 = await Calendar.updateAttendeeAsync('123'); + + await Calendar.deleteAttendeeAsync('123'); + + const reminders = await Calendar.getRemindersAsync(['123']); + + const reminder = await Calendar.getReminderAsync('123'); + + const remId1 = await Calendar.createReminderAsync('123'); + + const remId2 = await Calendar.updateReminderAsync('123'); + + await Calendar.deleteReminderAsync('123'); + + const sources = await Calendar.getSourcesAsync(); + + const source = await Calendar.getSourceAsync('123'); + + Calendar.openEventInCalendar('123'); +}; + +async () => { + const result = await MailComposer.composeAsync({ + subject: 'sss' + }); + + result.status === 'saved'; +}; diff --git a/types/expo/v25/index.d.ts b/types/expo/v25/index.d.ts new file mode 100644 index 0000000000..0a7093e2b7 --- /dev/null +++ b/types/expo/v25/index.d.ts @@ -0,0 +1,2759 @@ +// Type definitions for expo 25.0 +// Project: https://github.com/expo/expo-sdk +// Definitions by: Konstantin Kai +// Martynas KadiÅ¡a +// Jan Aagaard +// Sergio Sánchez +// Fernando Helwanger +// Umidbek Karimov +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +import { EventSubscription } from 'fbemitter'; +import { Component, ComponentClass, Ref, ComponentType } from 'react'; +import { + ColorPropType, + ImageRequireSource, + ImageURISource, + NativeEventEmitter, + ViewProps, + ViewStyle, + Permission, + StyleProp +} from 'react-native'; + +export type Axis = number; +export type BarCodeReadCallback = (params: { type: string; data: string; }) => void; +export type FloatFromZeroToOne = 0 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 1; +export type Md5 = string; +export type Orientation = 'portrait' | 'landscape'; +export type RequireSource = ImageRequireSource; +export type ResizeModeContain = 'contain'; +export type ResizeModeCover = 'cover'; +export type ResizeModeStretch = 'stretch'; +export type URISource = ImageURISource; + +export interface HashMap { [key: string]: any; } + +/** Access the device accelerometer sensor(s) to respond to changes in acceleration in 3d space. */ +export namespace Accelerometer { + interface AccelerometerObject { + x: Axis; + y: Axis; + z: Axis; + } + + /** + * Subscribe for updates to the accelerometer. + * @param listener A callback that is invoked when an accelerometer update is available. When invoked, the listener is provided a single argumument that is an object containing keys x, y, z. + * @returns An EventSubscription object that you can call remove() on when you would like to unsubscribe the listener. + */ + function addListener(listener: (obj: AccelerometerObject) => any): EventSubscription; + + /** Remove all listeners. */ + function removeAllListeners(): void; + + /** + * Subscribe for updates to the accelerometer. + * @param intervalMs Desired interval in milliseconds between accelerometer updates. + */ + function setUpdateInterval(intervalMs: number): void; +} + +/** + * Admob + */ +export type AdMobBannerSize = + | 'banner' + | 'largeBanner' + | 'mediumRectangle' + | 'fullBanner' + | 'leaderboard' + | 'smartBannerPortrait' + | 'smartBannerLandscape'; +export interface AdMobBannerProperties extends ViewProps { + bannerSize?: AdMobBannerSize; + adUnitID?: string; + testDeviceID?: string; + didFailToReceiveAdWithError?(errorDescription: string): void; + adViewDidReceiveAd?(): void; + adViewWillPresentScreen?(): void; + adViewWillDismissScreen?(): void; + adViewDidDismissScreen?(): void; + adViewWillLeaveApplication?(): void; +} + +export class AdMobBanner extends Component { } + +export interface AdMobAppEvent { + name: string; + info: string; +} +export interface PublisherBannerProperties extends AdMobBannerProperties { + admobDispatchAppEvent?(event: AdMobAppEvent): void; +} +export class PublisherBanner extends Component { } + +export type AdMobInterstitialEmptyEvent = + | 'interstitialDidLoad' + | 'interstitialDidOpen' + | 'interstitialDidClose' + | 'interstitialWillLeaveApplication'; +export type AdMobInterstitialEvent = AdMobInterstitialEmptyEvent | 'interstitialVideoDidFailToLoad'; +export namespace AdMobInterstitial { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function isReady(callback: (isReady: boolean) => void): void; + function addEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'interstitialDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobInterstitialEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + +export type AdMobRewardedEmptyEvent = + | 'rewardedVideoDidLoad' + | 'rewardedVideoDidOpen' + | 'rewardedVideoDidClose' + | 'rewardedVideoWillLeaveApplication'; +export type AdMobRewardedEvent = AdMobRewardedEmptyEvent | 'rewardedVideoDidRewardUser' | 'rewardedVideoDidFailToLoad'; +export namespace AdMobRewarded { + function setAdUnitID(id: string): void; + function setTestDeviceID(id: string): void; + function requestAd(callback?: () => void): void; + function showAd(callback?: (error: string) => void): void; + function addEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function addEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function addEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeEventListener(event: 'rewardedVideoDidRewardUser', handler: (type: string, amount: number) => void): void; + function removeEventListener(event: 'rewardedVideoDidFailToLoad', handler: (error: string) => void): void; + function removeEventListener(event: AdMobRewardedEmptyEvent, handler: () => void): void; + function removeAllListeners(): void; +} + +/** + * Provides access to Amplitude mobile analytics which basically lets you log various events to the Cloud. This module wraps Amplitude’s iOS and Android SDKs. + * + * Note: Session tracking may not work correctly when running Experiences in the main Expo app. It will work correctly if you create a standalone app. + */ +export namespace Amplitude { + /** Initializes Amplitude with your Amplitude API key. */ + function initialize(apiKey: string): void; + + /** Assign a user ID to the current user. If you don’t have a system for user IDs you don’t need to call this. */ + function setUserId(userId: string): void; + + /** Set properties for the current user. */ + function setUserProperties(userProperties: HashMap): void; + + /** Clear properties set by `setUserProperties()`. */ + function clearUserProperties(): void; + + /** Log an event to Amplitude. */ + function logEvent(eventName: string): void; + + /** Log an event to Amplitude with custom properties. */ + function logEventWithProperties( + eventName: string, + + /** A map of custom properties. */ + properties: HashMap + ): void; + + /** Add the current user to a group. */ + function setGroup( + /** The group name, e.g. `'sports'`. */ + groupType: string, + + /** An array of group names, e.g. `['tennis', 'soccer']`. */ + groupNames: string[] + ): void; +} + +// #region AppLoading +/** The following props are recommended, but optional for the sake of backwards compatibility (they were introduced in SDK21). If you do not provide any props, you are responsible for coordinating loading assets, handling errors, and updating state to unmount the `AppLoading` component. */ +export interface AppLoadingProps { + /** A `function` that returns a `Promise`. The `Promise` should resolve when the app is done loading data and assets. */ + startAsync?: () => Promise; + + /** Required if you provide `startAsync`. Called when `startAsync` resolves or rejects. This should be used to set state and unmount the `AppLoading` component. */ + onFinish?: () => void; + + /** If `startAsync` throws an error, it is caught and passed into the function provided to `onError`. */ + onError?: (error: Error) => void; +} + +/** + * A React component that tells Expo to keep the app loading screen open if it is the first and only component rendered in your app. When it is removed, the loading screen will disappear and your app will be visible. + * + * This is incredibly useful to let you download and cache fonts, logo and icon images and other assets that you want to be sure the user has on their device for an optimal experience before rendering they start using the app. + */ +export class AppLoading extends Component { } +// #endregion AppLoading + +/** This module provides an interface to Expo’s asset system. An asset is any file that lives alongside the source code of your app that the app needs at runtime. Examples include images, fonts and sounds. Expo’s asset system integrates with React Native’s, so that you can refer to files with require('path/to/file'). This is how you refer to static image files in React Native for use in an Image component, for example. */ +export class Asset { + constructor({ name, type, hash, uri, width, height }: { + name: string; + type: string; + hash: string; + uri: string; + width?: number; + height?: number; + }); + + /** The MD5 hash of the asset’s data. */ + hash: Md5; + + /** The name of the asset file without the extension. Also without the part from @ onward in the filename (used to specify scale factor for images). */ + name: string; + + /** The extension of the asset filename. */ + type: string; + + /** A URI that points to the asset’s data on the remote server. When running the published version of your app, this refers to the the location on Expo’s asset server where Expo has stored your asset. When running the app from XDE during development, this URI points to XDE’s server running on your computer and the asset is served directly from your computer. */ + uri: string; + + /** If the asset has been downloaded (by calling `downloadAsync()`), the `file://` URI pointing to the local file on the device that contains the asset data. */ + localUri: string; + + /** If the asset is an image, the width of the image data divided by the scale factor. The scale factor is the number after `@` in the filename, or `1` if not present. */ + width?: number; + + /** If the asset is an image, the height of the image data divided by the scale factor. The scale factor is the number after `@` in the filename, or `1` if not present. */ + height?: number; + + downloading: boolean; + downloaded: boolean; + downloadCallbacks: Array<{ resolve: () => any, reject: (e?: any) => any }>; + + /** Downloads the asset data to a local file in the device’s cache directory. Once the returned promise is fulfilled without error, the localUri field of this asset points to a local file containing the asset data. The asset is only downloaded if an up-to-date local file for the asset isn’t already present due to an earlier download. */ + downloadAsync(): Promise; + + /** Returns the `Expo.Asset` instance representing an asset given its module. */ + static fromModule(module: RequireSource): Asset; + + /** + * A helper that wraps `Expo.Asset.fromModule(module).downloadAsync` for convenience. + * @param moduleIds An array of `require('path/to/file')`. Can also be just one module without an Array. + */ + static loadAsync(module: RequireSource[] | RequireSource): Promise; +} + +/** + * Provides basic sample playback and recording. + * + * Note that Expo does not yet support backgrounding, so audio is not available to play in the background of your experience. Audio also automatically stops if headphones / bluetooth audio devices are disconnected. + */ +export namespace Audio { + enum InterruptionModeIos { + /** This is the default option. If this option is set, your experience’s audio is mixed with audio playing in background apps. */ + INTERRUPTION_MODE_IOS_MIX_WITH_OTHERS = 0, + + /** If this option is set, your experience’s audio interrupts audio from other apps. */ + INTERRUPTION_MODE_IOS_DO_NOT_MIX = 1, + + /** If this option is set, your experience’s audio lowers the volume ("ducks") of audio from other apps while your audio plays. */ + INTERRUPTION_MODE_IOS_DUCK_OTHERS = 2 + } + + const INTERRUPTION_MODE_IOS_MIX_WITH_OTHERS: 0; + const INTERRUPTION_MODE_IOS_DO_NOT_MIX: 1; + const INTERRUPTION_MODE_IOS_DUCK_OTHERS: 2; + + enum InterruptionModeAndroid { + /** If this option is set, your experience’s audio interrupts audio from other apps. */ + INTERRUPTION_MODE_ANDROID_DO_NOT_MIX = 1, + + /** This is the default option. If this option is set, your experience’s audio lowers the volume ("ducks") of audio from other apps while your audio plays. */ + INTERRUPTION_MODE_ANDROID_DUCK_OTHERS = 2 + } + + const INTERRUPTION_MODE_ANDROID_DO_NOT_MIX: 1; + const INTERRUPTION_MODE_ANDROID_DUCK_OTHERS: 2; + + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_DEFAULT: 0; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_THREE_GPP: 1; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_MPEG_4: 2; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AMR_NB: 3; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AMR_WB: 4; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AAC_ADIF: 5; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_AAC_ADTS: 6; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_RTP_AVP: 7; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_MPEG2TS: 8; + const RECORDING_OPTION_ANDROID_OUTPUT_FORMAT_WEBM: 9; + + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_DEFAULT: 0; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AMR_NB: 1; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AMR_WB: 2; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AAC: 3; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_HE_AAC: 4; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_AAC_ELD: 5; + const RECORDING_OPTION_ANDROID_AUDIO_ENCODER_VORBIS: 6; + + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_LINEARPCM: 'lpcm'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_AC3: 'ac-3'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_60958AC3: 'cac3'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_APPLEIMA4: 'ima4'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC: 'aac '; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4CELP: 'celp'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4HVXC: 'hvxc'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4TWINVQ: 'twvq'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MACE3: 'MAC3'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MACE6: 'MAC6'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_ULAW: 'ulaw'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_ALAW: 'alaw'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_QDESIGN: 'QDMC'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_QDESIGN2: 'QDM2'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_QUALCOMM: 'Qclp'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER1: '.mp1'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER2: '.mp2'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEGLAYER3: '.mp3'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_APPLELOSSLESS: 'alac'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_HE: 'aach'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_LD: 'aacl'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD: 'aace'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD_SBR: 'aacf'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_ELD_V2: 'aacg'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_HE_V2: 'aacp'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MPEG4AAC_SPATIAL: 'aacs'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_AMR: 'samr'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_AMR_WB: 'sawb'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_AUDIBLE: 'AUDB'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_ILBC: 'ilbc'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_DVIINTELIMA: 0x6d730011; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_MICROSOFTGSM: 0x6d730031; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_AES3: 'aes3'; + const RECORDING_OPTION_IOS_OUTPUT_FORMAT_ENHANCEDAC3: 'ec-3'; + + const RECORDING_OPTION_IOS_AUDIO_QUALITY_MIN: 0; + const RECORDING_OPTION_IOS_AUDIO_QUALITY_LOW: 0x20; + const RECORDING_OPTION_IOS_AUDIO_QUALITY_MEDIUM: 0x40; + const RECORDING_OPTION_IOS_AUDIO_QUALITY_HIGH: 0x60; + const RECORDING_OPTION_IOS_AUDIO_QUALITY_MAX: 0x7f; + + const RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_CONSTANT: 0; + const RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_LONG_TERM_AVERAGE: 1; + const RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_VARIABLE_CONSTRAINED: 2; + const RECORDING_OPTION_IOS_BIT_RATE_STRATEGY_VARIABLE: 3; + + type RecordingStatus = { + canRecord: false, + isDoneRecording: false + } | { + canRecord: true, + isRecording: boolean, + durationMillis: number + } | { + canRecord: false, + isDoneRecording: true, + durationMillis: number + }; + + const RECORDING_OPTIONS_PRESET_HIGH_QUALITY: RecordingOptions; + const RECORDING_OPTIONS_PRESET_LOW_QUALITY: RecordingOptions; + + interface RecordingOptions { + android: { + extension: string; + outputFormat: number; + audioEncoder: number; + sampleRate?: number; + numberOfChannels?: number; + bitRate?: number; + maxFileSize?: number; + }; + ios: { + extension: string; + outputFormat?: string | number; + audioQuality: number; + sampleRate: number; + numberOfChannels: number; + bitRate: number; + bitRateStrategy?: number; + bitDepthHint?: number; + linearPCMBitDepth?: number; + linearPCMIsBigEndian?: boolean; + linearPCMIsFloat?: boolean; + }; + } + + interface AudioMode { + /** Boolean selecting if your experience’s audio should play in silent mode on iOS. This value defaults to `false`. */ + playsInSilentModeIOS: boolean; + + /** Boolean selecting if recording is enabled on iOS. This value defaults to `false`. NOTE: when this flag is set to true, playback may be routed to the phone receiver instead of to the speaker. */ + allowsRecordingIOS: boolean; + + /** Enum selecting how your experience’s audio should interact with the audio from other apps on iOS. */ + interruptionModeIOS: InterruptionModeIos; + + /** Boolean selecting if your experience’s audio should automatically be lowered in volume ("duck") if audio from another app interrupts your experience. This value defaults to true. If false, audio from other apps will pause your audio. */ + shouldDuckAndroid: boolean; + + /** an enum selecting how your experience’s audio should interact with the audio from other apps on Android: */ + interruptionModeAndroid: InterruptionModeAndroid; + } + + function setIsEnabledAsync(value: boolean): Promise; + function setAudioModeAsync(mode: AudioMode): Promise; + + /** This class represents a sound corresponding to an Asset or URL. */ + class Sound extends PlaybackObject { + constructor(); + + /** + * Creates and loads a sound from source, with optional `initialStatus`, `onPlaybackStatusUpdate`, and `downloadFirst`. + * + * @returns A `Promise` that is rejected if creation failed, or fulfilled with the following dictionary if creation succeeded: + * - `sound`: The newly created and loaded Sound object. + * - `status`: The PlaybackStatus of the Sound object. See the AV documentation for further information. + */ + static create( + /** + * The source of the sound. The following forms are supported: + * + * - A dictionary of the form `{ uri: 'http://path/to/file' }` with a network URL pointing to an audio file on the web. + * - `require('path/to/file')` for an audio file asset in the source code directory. + * - An `Expo.Asset` object for an audio file asset. + */ + source: PlaybackSource, + + /** The initial intended PlaybackStatusToSet of the sound, whose values will override the default initial playback status. This value defaults to `{}` if no parameter is passed. */ + initialStatus?: PlaybackStatusToSet, + + /** A function taking a single parameter PlaybackStatus. This value defaults to `null` if no parameter is passed. */ + onPlaybackStatusUpdate?: ((status: PlaybackStatus) => void) | null, + + /** If set to true, the system will attempt to download the resource to the device before loading. This value defaults to `true`. Note that at the moment, this will only work for `source`s of the form `require('path/to/file')` or `Asset` objects. */ + downloadFirst?: boolean + ): Promise<{ sound: Sound, status: PlaybackStatus }>; + } + + class Recording { + constructor(); + + /** Gets the `status` of the `Recording`. */ + getStatusAsync(): Promise; + + /** Sets a function to be called regularly with the `status` of the `Recording`. */ + setOnRecordingStatusUpdate(onRecordingStatusUpdate?: (status: RecordingStatus) => void): void; + + /** Sets the interval with which onRecordingStatusUpdate is called while the recording can record. This value defaults to 500 milliseconds. */ + setProgressUpdateInterval(progressUpdateIntervalMillis: number): void; + + /** Loads the recorder into memory and prepares it for recording. This must be called before calling `startAsync()`. This method can only be called if the `Recording` instance has never yet been prepared. */ + prepareToRecordAsync( + /** Options for the recording, including sample rate, bitrate, channels, format, encoder, and extension. If no options are passed to `prepareToRecordAsync()`, the recorder will be created with options `Expo.Audio.RECORDING_OPTIONS_PRESET_LOW_QUALITY`. */ + options?: RecordingOptions + ): Promise; + + /** Begins recording. This method can only be called if the `Recording` has been prepared. */ + startAsync(): Promise; + + /** + * Pauses recording. This method can only be called if the Recording has been prepared. + * + * NOTE: This is only available on Android API version 24 and later. + */ + pauseAsync(): Promise; + + /** Stops the recording and deallocates the recorder from memory. This reverts the Recording instance to an unprepared state, and another Recording instance must be created in order to record again. This method can only be called if the `Recording` has been prepared. */ + stopAndUnloadAsync(): Promise; + + /** + * Gets the local URI of the Recording. Note that this will only succeed once the Recording is prepared to record. + * + * @returns A string with the local URI of the `Recording`, or `null` if the `Recording` is not prepared to record. + */ + getURI(): string | null | undefined; + + /** + * Creates and loads a new `Sound` object to play back the `Recording`. Note that this will only succeed once the `Recording` is done recording (once `stopAndUnloadAsync()` has been called). + * + * @returns A Promise that is rejected if creation failed, or fulfilled with the following dictionary if creation succeeded: + * - `sound`: the newly created and loaded Sound object. + * - `status`: the PlaybackStatus of the Sound object. + */ + createNewLoadedSound( + /** The initial intended `PlaybackStatusToSet` of the sound, whose values will override the default initial playback status. This value defaults to `{}` if no parameter is passed. */ + initialStatus?: PlaybackStatusToSet, + + /** A function taking a single parameter `PlaybackStatus`. This value defaults to `null` if no parameter is passed. */ + onPlaybackStatusUpdate?: ((status: PlaybackStatus) => void) | null + ): Promise<{ sound: Sound, status: PlaybackStatus }>; + } +} + +/** + * AuthSession + */ +export namespace AuthSession { + type StartAsyncResponse = { + type: 'cancel'; + } | { + type: 'dismissed'; + } | { + type: 'success'; + params: HashMap; + event: HashMap; + } | { + type: 'error'; + params: HashMap; + errorCode: string; + event: HashMap; + }; + + function startAsync(options: { authUrl: string; returnUrl?: string; }): Promise; + function dismiss(): void; + function getRedirectUrl(): string; +} + +// #region AV +/** + * AV + */ +export type PlaybackStatus = { + isLoaded: false; + androidImplementation?: string; + + /** Populated exactly once when an error forces the object to unload. */ + error?: string; +} | { + isLoaded: true; + androidImplementation?: string; + uri: string; + progressUpdateIntervalMillis: number; + durationMillis?: number; + positionMillis: number; + playableDurationMillis?: number; + shouldPlay: boolean; + isPlaying: boolean; + isBuffering: boolean; + rate: number; + shouldCorrectPitch: boolean; + volume: number; + isMuted: boolean; + isLooping: boolean; + + /** True exactly once when the track plays to finish. */ + didJustFinish: boolean; +}; + +export interface PlaybackStatusToSet { + androidImplementation?: string; + progressUpdateIntervalMillis?: number; + positionMillis?: number; + shouldPlay?: boolean; + rate?: FloatFromZeroToOne; + shouldCorrectPitch?: boolean; + volume?: FloatFromZeroToOne; + isMuted?: boolean; + isLooping?: boolean; +} + +export type PlaybackSource = RequireSource | { uri: string } | Asset; + +export class PlaybackObject { + /** + * Gets the `PlaybackStatus` of the `playbackObject`. + * + * Returns a `Promise` that is fulfilled with the `PlaybackStatus` of the `playbackObject`. + */ + getStatusAsync(): Promise; + + /** + * Loads the media from source into memory and prepares it for playing. This must be called before calling setStatusAsync() or any of the convenience set status methods. This method can only be called if the playbackObject is in an unloaded state. + * + * Returns a `Promise` that is fulfilled with the `PlaybackStatus` of the `playbackObject` once it is loaded, or rejects if loading failed. The `Promise` will also reject if the `playbackObject` was already loaded. See below for details on `PlaybackStatus`. + */ + loadAsync( + /** + * The source of the media. The following forms are supported: + * - A dictionary of the form `{ uri: 'http://path/to/file' }` with a network URL pointing to a media file on the web. + * - `require('path/to/file')` for a media file asset in the source code directory. + * - An `Expo.Asset object` for a media file asset. + */ + source: PlaybackSource, + + /** The initial intended `PlaybackStatusToSet` of the `playbackObject`, whose values will override the default initial playback status. This value defaults to `{}` if no parameter is passed. See below for details on `PlaybackStatusToSet` and the default initial playback status. */ + initialStatus?: PlaybackStatusToSet, + + /** If set to `true`, the system will attempt to download the resource to the device before loading. This value defaults to true. Note that at the moment, this will only work for sources of the form `require('path/to/file')` or `Expo.Asset` objects. */ + downloadFirst?: boolean + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ shouldPlay: false })`. */ + pauseAsync(): Promise; + + /** + * This is equivalent to `playbackObject.setStatusAsync({ shouldPlay: true })`. + * + * Playback may not start immediately after calling this function for reasons such as buffering. Make sure to update your UI based on the `isPlaying` and `isBuffering` properties of the `PlaybackStatus`. + */ + playAsync(): Promise; + + /** + * This is equivalent to `playbackObject.setStatusAsync({ shouldPlay: true, positionMillis: millis })`. + * + * Playback may not start immediately after calling this function for reasons such as buffering. Make sure to update your UI based on the isPlaying and `isBuffering` properties of the `PlaybackStatus`. + */ + playFromPositionAsync( + /** The desired position of playback in milliseconds. */ + positionMillis: number, + + /** This is equivalent to `playbackObject.setStatusAsync({ positionMillis: millis, seekMillisToleranceBefore: toleranceMillisBefore, seekMillisToleranceAfter: toleranceMillisAfter })`. The tolerances are used only on iOS. */ + tolerances?: { + toleranceMillisBefore: number, + toleranceMillisAfter: number + } + ): Promise; + + /** + * Replays the item. When using `playFromPositionAsync(0)` the item is seeked to the position at `0` ms. On iOS this method uses internal implementation of the player and is able to play the item from the beginning immediately. + * + * Returns a `Promise` that is fulfilled with the `PlaybackStatus` of the `playbackObject` once the new status has been set successfully, or rejects if setting the new status failed. + */ + replayAsync( + /** The new `PlaybackStatusToSet` of the `playbackObject`, whose values will override the current playback status. */ + status: PlaybackStatusToSet + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ isLooping: value })`. */ + setIsLoopingAsync( + /** A boolean describing if the media should play once (`false`) or loop indefinitely (`true`). */ + isLooping: boolean + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ isMuted: value })`. */ + setIsMutedAsync( + /** A boolean describing if the audio of this media should be muted. */ + isMuted: boolean + ): Promise; + + /** + * Sets a function to be called regularly with the `PlaybackStatus` of the `playbackObject`. See below for details on `PlaybackStatus` and an example use case of this function. + * + * `onPlaybackStatusUpdate` will be called whenever a call to the API for this `playbackObject` completes (such as `setStatusAsync()`, `getStatusAsync()`, or `unloadAsync()`), and will also be called at regular intervals while the media is in the loaded state. Set `progressUpdateIntervalMillis` via `setStatusAsync()` or `setProgressUpdateIntervalAsync()` to modify the interval with which `onPlaybackStatusUpdate` is called while loaded. + */ + setOnPlaybackStatusUpdate( + /** A function taking a single parameter `PlaybackStatus`. */ + onPlaybackStatusUpdate?: (status: PlaybackStatus) => void + ): void; + + /** This is equivalent to `playbackObject.setStatusAsync({ positionMillis: millis })`. */ + setPositionAsync( + positionMillis: number, + + /** This is equivalent to `playbackObject.setStatusAsync({ positionMillis: millis, seekMillisToleranceBefore: toleranceMillisBefore, seekMillisToleranceAfter: toleranceMillisAfter })`. The tolerances are used only on iOS. */ + tolerances?: { + toleranceMillisBefore: number, + toleranceMillisAfter: number + } + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ progressUpdateIntervalMillis: millis })`. */ + setProgressUpdateIntervalAsync( + /** The new minimum interval in milliseconds between calls of `onPlaybackStatusUpdate`. */ + progressUpdateIntervalMillis: number + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ rate: value, shouldCorrectPitch: shouldCorrectPitch })`. */ + setRateAsync( + /** The desired playback rate of the media. This value must be between `0.0` and `32.0`. Only available on Android API version 23 and later and iOS. */ + rate: number, + + /** A boolean describing if we should correct the pitch for a changed rate. If set to `true`, the pitch of the audio will be corrected (so a rate different than `1.0` will timestretch the audio). */ + shouldCorrectPitch: boolean + ): Promise; + + /** Sets a new `PlaybackStatusToSet` on the `playbackObject`. This method can only be called if the media has been loaded. Return a `Promise` that is fulfilled with the `PlaybackStatus` of the `playbackObject` once the new status has been set successfully, or rejects if setting the new status failed. */ + setStatusAsync( + /** The new `PlaybackStatusToSet` of the `playbackObject`, whose values will override the current playback status. */ + status: PlaybackStatusToSet + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ volume: value })`. */ + setVolumeAsync( + /** A number between `0.0` (silence) and `1.0` (maximum volume). */ + volume: number + ): Promise; + + /** This is equivalent to `playbackObject.setStatusAsync({ shouldPlay: false, positionMillis: 0 })`. */ + stopAsync(): Promise; + + /** + * Unloads the media from memory. `loadAsync()` must be called again in order to be able to play the media. + * + * Returns a `Promise` that is fulfilled with the `PlaybackStatus` of the `playbackObject` once it is unloaded, or rejects if unloading failed. See below for details on `PlaybackStatus`. + */ + unloadAsync(): Promise; +} +// #endregion + +// #region BarCodeScanner +/** + * BarCodeScanner + */ +export interface BarCodeScannerProps extends ViewProps { + type?: 'front' | 'back'; + torchMode?: 'on' | 'off'; + barCodeTypes?: string[]; + onBarCodeRead?: BarCodeReadCallback; +} + +export class BarCodeScanner extends Component { + static Constants: { + TorchMode: { + on: string; + off: string + } + } & CameraConstants; +} +// #endregion + +// #region BlurView +/** + * BlurView + */ +export interface BlurViewProps extends ViewProps { + tint: 'light' | 'default' | 'dark'; + intensity: number; +} +export class BlurView extends Component { } +// #endregion + +/** + * Brightness + */ +export namespace Brightness { + function setBrightnessAsync(brightnessValue: FloatFromZeroToOne): Promise; + function getBrightnessAsync(): Promise; + function getSystemBrightnessAsync(): Promise; + function setSystemBrightnessAsync(brightnessValue: FloatFromZeroToOne): Promise; +} + +// #region Camera +/** + * Camera + */ +export interface PictureOptions { + quality?: number; +} + +export interface PictureResponse { + uri: string; + width: number; + height: number; + exif: string; + base64: string; +} + +export interface RecordingOptions { + quality?: string | number; + maxDuration?: number; + maxFileSize?: number; +} + +export class CameraObject { + takePictureAsync(options: PictureOptions): Promise; + recordAsync(options: RecordingOptions): Promise<{ uri: string; }>; + stopRecording(): void; + getSupportedRatiosAsync(): Promise; // Android only +} + +export interface CameraProps extends ViewProps { + zoom?: FloatFromZeroToOne; + ratio?: string; + focusDepth?: FloatFromZeroToOne; + type?: string | number; + onCameraReady?: () => void; + onBarCodeRead?: BarCodeReadCallback; + faceDetectionMode?: number; + flashMode?: string | number; + barCodeTypes?: Array; + whiteBalance?: string | number; + faceDetectionLandmarks?: number; + autoFocus?: string | number | boolean; + faceDetectionClassifications?: number; + onMountError?: () => void; + onFacesDetected?: (options: { faces: TrackedFaceFeature[] }) => void; + ref?: Ref; +} + +export interface CameraConstants { + readonly Type: string; + readonly FlashMode: string; + readonly AutoFocus: string; + readonly WhiteBalance: string; + readonly VideoQuality: string; + readonly BarCodeType: { + aztec: string; + codabar: string; + code39: string; + code93: string; + code128: string; + code138: string; + code39mod43: string; + datamatrix: string; + ean13: string; + ean8: string; + interleaved2of5: string; + itf14: string; + maxicode: string; + pdf417: string; + rss14: string; + rssexpanded: string; + upc_a: string; + upc_e: string; + upc_ean: string; + qr: string; + }; +} + +export class Camera extends Component { + static readonly Constants: CameraConstants; +} +// #endregion + +/** + * Constants + */ +export namespace Constants { + const appOwnership: 'expo' | 'standalone' | 'guest'; + const expoVersion: string; + const deviceId: string; + const deviceName: string; + const deviceYearClass: number; + const isDevice: boolean; + + interface Platform { + ios?: { + platform: string; + model: string; + userInterfaceIdiom: string; + buildNumber: string; + }; + android?: { + versionCode: string; + }; + } + const platform: Platform; + const sessionId: string; + const statusBarHeight: number; + const systemFonts: string[]; + + interface Manifest { + name: string; + description?: string; + slug?: string; + sdkVersion?: string; + version?: string; + orientation?: Orientation; + primaryColor?: string; + privacy?: 'public' | 'unlisted'; + scheme?: string; + icon?: string; + platforms?: string[]; + githubUrl?: string; + notification?: { + icon?: string, + color?: string, + androidMode?: 'default' | 'collapse', + androidCollapsedTitle?: string + }; + loading?: { + icon?: string, + exponentIconColor?: 'white' | 'blue', + exponentIconGrayscale?: 1 | 0, + backgroundImage?: string, + backgroundColor?: string, + hideExponentText?: boolean + }; + appKey?: string; + androidStatusBar?: { + barStyle?: 'lignt-content' | 'dark-content', + backgroundColor?: string + }; + androidShowExponentNotificationInShellApp?: boolean; + extra?: { + [propName: string]: any + }; + rnCliPath?: any; + entryPoint?: string; + packagerOpts?: { + hostType?: string, + dev?: boolean, + strict?: boolean, + minify?: boolean, + urlType?: string, + urlRandomness?: string, + lanType?: string, + [propName: string]: any + }; + ignoreNodeModulesValidation?: any; + nodeModulesPath?: string; + ios?: { + bundleIdentifier?: string, + buildNumber?: string, + config?: { + usesNonExemptEncryption?: boolean, + googleSignIn?: { + reservedClientId: string + } + }, + supportsTablet?: boolean, + infoPlist?: any + }; + android?: { + package?: string, + versionCode?: string, + config?: { + fabric?: { + apiKey: string, + buildSecret: string + }, + googleMaps?: { + apiKey: string + }, + googleSignIn?: { + apiKey: string, + certificateHash: string + } + } + }; + facebookScheme?: any; + facebookAppId?: string; + facebookDisplayName?: string; + splash?: { + backgroundColor?: string; + resizeMode?: ResizeModeContain | ResizeModeCover; + image?: string; + }; + assetBundlePatterns?: string[]; + releaseChannel: string; + [propName: string]: any; + } + const manifest: Manifest; + const linkingUri: string; +} + +/** + * Contacts + */ +export namespace Contacts { + type PhoneNumbers = 'phoneNumbers'; + type Emails = 'emails'; + type Addresses = 'addresses'; + type Image = 'image'; + type Thumbnail = 'thumbnail'; + type Note = 'note'; + type Birthday = 'birthday'; + type NonGregorianBirthday = 'nonGregorianBirthday'; + type NamePrefix = 'namePrefix'; + type NameSuffix = 'nameSuffix'; + type PhoneticFirstName = 'phoneticFirstName'; + type PhoneticMiddleName = 'phoneticMiddleName'; + type PhoneticLastName = 'phoneticLastName'; + type SocialProfiles = 'socialProfiles'; + type InstantMessageAddresses = 'instantMessageAddresses'; + type UrlAddresses = 'urlAddresses'; + type Dates = 'dates'; + type Relationships = 'relationships'; + + const PHONE_NUMBERS: PhoneNumbers; + const EMAILS: Emails; + const ADDRESSES: Addresses; + const IMAGE: Image; + const THUMBNAIL: Thumbnail; + const NOTE: Note; + const BIRTHDAY: Birthday; + const NON_GREGORIAN_BIRTHDAY: NonGregorianBirthday; + const NAME_PREFIX: NamePrefix; + const NAME_SUFFIX: NameSuffix; + const PHONETIC_FIRST_NAME: PhoneticFirstName; + const PHONETIC_MIDDLE_NAME: PhoneticMiddleName; + const PHONETIC_LAST_NAME: PhoneticLastName; + const SOCIAL_PROFILES: SocialProfiles; + const IM_ADDRESSES: InstantMessageAddresses; + const URLS: UrlAddresses; + const DATES: Dates; + const RELATIONSHIPS: Relationships; + + type FieldType = PhoneNumbers | Emails | Addresses | Image | Thumbnail | + Note | Birthday | NonGregorianBirthday | NamePrefix | NameSuffix | + PhoneticFirstName | PhoneticMiddleName | PhoneticLastName | SocialProfiles | + InstantMessageAddresses | UrlAddresses | Dates | Relationships; + + interface Options { + pageSize?: number; + pageOffset?: number; + fields?: FieldType[]; + } + + interface Contact { + id: string; + contactType: string; + name: string; + firstName?: string; + middleName?: string; + lastName?: string; + previousLastName?: string; + namePrefix?: string; + nameSuffix?: string; + nickname?: string; + phoneticFirstName?: string; + phoneticMiddleName?: string; + phoneticLastName?: string; + emails?: Array<{ + email?: string; + primary?: boolean; + label: string; + id: string; + }>; + phoneNumbers?: Array<{ + number?: string; + primary?: boolean; + digits?: string; + countryCode?: string; + label: string; + id: string; + }>; + addresses?: Array<{ + street?: string; + city?: string; + country?: string; + region?: string; + neighborhood?: string; + postalCode?: string; + poBox?: string; + isoCountryCode?: string; + label: string; + id: string; + }>; + socialProfiles?: Array<{ + service?: string; + localizedProfile?: string; + url?: string; + username?: string; + userId?: string; + label: string; + id: string; + }>; + instantMessageAddresses?: Array<{ + service?: string; + username?: string; + localizedService?: string; + label: string; + id: string; + }>; + urls?: { + label: string; + url?: string; + id: string; + }; + company?: string; + jobTitle?: string; + department?: string; + imageAvailable?: boolean; + image?: { + uri?: string; + }; + thumbnail?: { + uri?: string; + }; + note?: string; + dates?: Array<{ + day?: number; + month?: number; + year?: number; + id: string; + label: string; + }>; + relationships?: Array<{ + label: string; + name?: string; + id: string; + }>; + } + + interface Response { + data: Contact[]; + total: number; + hasNextPage: boolean; + hasPreviousPage: boolean; + } + + function getContactsAsync(options: Options): Promise; + function getContactByIdAsync(options: { id?: string; fields?: FieldType[] }): Promise; +} + +/** + * DocumentPicker + */ +export namespace DocumentPicker { + interface Options { + type?: string; + } + + type Response = { + type: 'success'; + uri: string; + name: string; + size: number; + } | { + type: 'cancel'; + }; + + function getDocumentAsync(options?: Options): Promise; +} + +/** + * ErrorRecovery + */ +export namespace ErrorRecovery { + function setRecoveryProps(props: HashMap): void; +} + +/** + * Facebook + */ +export namespace Facebook { + interface Options { + permissions?: string[]; + behavior?: 'web' | 'native' | 'browser' | 'system'; + } + interface Response { + type: 'cancel' | 'success'; + token?: string; + expires?: number; + } + function logInWithReadPermissionsAsync(appId: string, options?: Options): Promise; +} + +/** + * Facebook Ads + */ +export namespace FacebookAds { + /** + * Interstitial Ads + */ + namespace InterstitialAdManager { + function showAd(placementId: string): Promise; + } + + /** + * Native Ads + */ + type MediaCachePolicy = 'none' | 'icon' | 'image' | 'all'; + class NativeAdsManager { + constructor(placementId: string, numberOfAdsToRequest?: number); + disableAutoRefresh(): void; + setMediaCachePolicy(cachePolicy: MediaCachePolicy): void; + } + + function withNativeAd(component: Component<{ + icon?: string; + coverImage?: string; + title?: string; + subtitle?: string; + description?: string; + callToActionText?: string; + socialContext?: string; + }>): Component<{ adsManager: NativeAdsManager }, { ad: any, canRequestAds: boolean }>; + + /** + * Banner View + */ + type AdType = 'large' | 'rectangle' | 'standard'; + + interface BannerViewProps { + type: AdType; + placementId: string; + onPress: () => void; + onError: () => void; + } + + class BannerView extends Component { } + + /** + * Ad Settings + */ + namespace AdSettings { + const currentDeviceHash: string; + function addTestDevice(device: string): void; + function clearTestDevices(): void; + type SDKLogLevel = 'none' | 'debug' | 'verbose' | 'warning' | 'error' | 'notification'; + function setLogLevel(logLevel: SDKLogLevel): void; + function setIsChildDirected(isDirected: boolean): void; + function setMediationService(mediationService: string): void; + function setUrlPrefix(urlPrefix: string): void; + } +} + +/** + * FaceDetector + */ +export interface Point { + x: Axis; + y: Axis; +} + +export interface FaceFeature { + bounds: { + size: { + width: number; + height: number; + }, + origin: Point; + }; + smilingProbability?: number; + leftEarPosition?: Point; + rightEarPosition?: Point; + leftEyePosition?: Point; + leftEyeOpenProbability?: number; + rightEyePosition?: Point; + rightEyeOpenProbability?: number; + leftCheekPosition?: Point; + rightCheekPosition?: Point; + leftMouthPosition?: Point; + mouthPosition?: Point; + rightMouthPosition?: Point; + bottomMouthPosition?: Point; + noseBasePosition?: Point; + yawAngle?: number; + rollAngle?: number; +} + +export interface TrackedFaceFeature extends FaceFeature { + faceID?: number; +} + +export namespace FaceDetector { + interface DetectFaceResult { + faces: FaceFeature[]; + image: { + uri: string; + width: number; + height: number; + orientation: number; + }; + } + interface Mode { + fast: 'fast'; + accurate: 'accurate'; + } + interface _Shared { + all: 'all'; + none: 'none'; + } + type Landmarks = _Shared; + type Classifications = _Shared; + interface _Constants { + Mode: Mode; + Landmarks: Landmarks; + Classifications: Classifications; + } + + const Constants: _Constants; + + interface DetectionOptions { + mode?: keyof Mode; + detectLandmarks?: keyof Landmarks; + runClassifications?: keyof Classifications; + } + + function detectFaces(uri: string, options?: DetectionOptions): Promise; +} +/** + * FileSystem + */ +export namespace FileSystem { + type FileInfo = { + exists: true; + isDirectory: boolean; + uri: string; + size: number; + modificationTime: number; + md5?: Md5; + } | { + exists: false; + isDirectory: false; + }; + + interface DownloadResult { + uri: string; + status: number; + headers: { [name: string]: string }; + md5?: Md5; + } + + const documentDirectory: string; + const cacheDirectory: string; + + function getInfoAsync(fileUri: string, options?: { md5?: string, size?: boolean; }): Promise; + function readAsStringAsync(fileUri: string): Promise; + function writeAsStringAsync(fileUri: string, contents: string): Promise; + function deleteAsync(fileUri: string, options?: { idempotent: boolean; }): Promise; + function moveAsync(options: { from: string, to: string; }): Promise; + function copyAsync(options: { from: string, to: string; }): Promise; + function makeDirectoryAsync(dirUri: string, options?: { intermediates: boolean }): Promise; + function readDirectoryAsync(dirUri: string): Promise; + function downloadAsync(uri: string, fileUri: string, options?: { md5?: boolean; }): Promise; + function createDownloadResumable( + uri: string, + fileUri: string, + options?: DownloadOptions, + callback?: (totalBytesWritten: number, totalBytesExpectedToWrite: number) => void, + resumeData?: string | null + ): DownloadResumable; + + interface PauseResult { + url: string; + fileUri: string; + options: { md5: boolean; }; + resumeData: string; + } + + interface DownloadOptions { + md5?: boolean; + headers?: { [name: string]: string }; + } + + interface DownloadProgressData { + totalBytesWritten: number; + totalBytesExpectedToWrite: number; + } + + type DownloadProgressCallback = (data: DownloadProgressData) => void; + + class DownloadResumable { + constructor( + url: string, + fileUri: string, + options: DownloadOptions, + callback?: DownloadProgressCallback, + resumeData?: string + ); + + downloadAsync(): Promise; + pauseAsync(): Promise; + resumeAsync(): Promise; + savable(): PauseResult; + } +} + +/** Use TouchID/FaceID (iOS) or the Fingerprint API (Android) to authenticate the user with a fingerprint scan. */ +export namespace Fingerprint { + type FingerprintAuthenticationResult = { + success: true + } | { + success: false, + + /** Error code in the case where authentication fails. */ + error: string + }; + + /** Determine whether the Fingerprint scanner is available on the device. */ + function hasHardwareAsync(): Promise; + + /** Determine whether the device has saved fingerprints to use for authentication. */ + function isEnrolledAsync(): Promise; + + /** + * Attempts to authenticate via Fingerprint. Android: When using the fingerprint module on Android, you need to provide a UI component to prompt the user to scan their fingerprint, as the OS has no default alert for it. + * + * @param promptMessage A message that is shown alongside the TouchID/FaceID prompt. (iOS only) + */ + function authenticateAsync(promptMessageIOS?: string): Promise; + + /** Cancels the fingerprint authentication flow. (Android only) */ + function cancelAuthenticate(): void; +} + +/** + * Font + */ +export namespace Font { + interface FontMap { + [name: string]: RequireSource; + } + + function loadAsync(name: string, url: string): Promise; + function loadAsync(map: FontMap): Promise; +} + +// #region GLView +/** + * GLView + */ +export interface GLViewProps extends ViewProps { + onContextCreate(): void; + msaaSamples: number; +} + +export class GLView extends Component { } +// #endregion + +/** + * Google + */ +export namespace Google { + interface LogInConfig { + androidClientId?: string; + androidStandaloneAppClientId?: string; + iosClientId?: string; + iosStandaloneAppClientId?: string; + webClientId?: string; + behavior?: 'system' | 'web'; + scopes?: string[]; + } + + type LogInResult = { + type: 'cancel'; + } | { + type: 'success'; + accessToken: string; + idToken?: string; + refreshToken?: string; + serverAuthCode?: string; + user: { + id: string; + name: string; + givenName: string; + familyName: string; + photoUrl?: string; + email?: string; + } + }; + + function logInAsync(config: LogInConfig): Promise; +} + +/** Access the device gyroscope sensor to respond to changes in rotation in 3d space. */ +export namespace Gyroscope { + interface GyroscopeObject { + x: Axis; + y: Axis; + z: Axis; + } + + /** A callback that is invoked when an gyroscope update is available. */ + function addListener(listener: (obj: GyroscopeObject) => any): EventSubscription; + + /** Remove all listeners. */ + function removeAllListeners(): void; + + /** Subscribe for updates to the gyroscope. */ + function setUpdateInterval(intervalMs: number): void; +} + +/** + * ImageManipulator + */ +export namespace ImageManipulator { + interface ImageResult { + uri: string; + width: number; + height: number; + base64?: string; + } + + interface SaveOptions { + base64?: boolean; + compress?: FloatFromZeroToOne; + format?: 'jpeg' | 'png'; + } + + interface CropParameters { + originX: number; + originY: number; + width: number; + height: number; + } + + interface ImageManipulationOptions { + resize?: { width?: number; height?: number }; + rotate?: number; + flip?: { vertical?: boolean; horizontal?: boolean }; + crop?: CropParameters; + } + + function manipulate(uri: string, actions: ImageManipulationOptions, saveOptions?: SaveOptions): Promise; +} + +/** + * Image Picker + */ +export namespace ImagePicker { + interface ImageInfo { + uri: string; + width: number; + height: number; + type: 'video' | 'image'; + base64?: string; + exif?: object; + duration?: number; + } + + type ImageResult = { cancelled: true } | ({ cancelled: false } & ImageInfo); + + interface _MediaTypeOptions { + All: 'All'; + Videos: 'Videos'; + Images: 'Images'; + } + + const MediaTypeOptions: _MediaTypeOptions; + + interface ImageLibraryOptions { + allowsEditing?: boolean; + aspect?: [number, number]; + quality?: number; + base64?: boolean; + exif?: boolean; + mediaTypes?: keyof _MediaTypeOptions; + } + + function launchImageLibraryAsync(options?: ImageLibraryOptions): Promise; + + interface CameraOptions { + allowsEditing?: boolean; + aspect?: [number, number]; + quality?: number; + } + + function launchCameraAsync(options?: CameraOptions): Promise; +} + +/** + * IntentLauncherAndroid + */ +export namespace IntentLauncherAndroid { + const ACTION_ACCESSIBILITY_SETTINGS: 'android.settings.ACCESSIBILITY_SETTINGS'; + const ACTION_APP_NOTIFICATION_REDACTION: 'android.settings.ACTION_APP_NOTIFICATION_REDACTION'; + const ACTION_CONDITION_PROVIDER_SETTINGS: 'android.settings.ACTION_CONDITION_PROVIDER_SETTINGS'; + const ACTION_NOTIFICATION_LISTENER_SETTINGS: 'android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS'; + const ACTION_PRINT_SETTINGS: 'android.settings.ACTION_PRINT_SETTINGS'; + const ACTION_ADD_ACCOUNT_SETTINGS: 'android.settings.ADD_ACCOUNT_SETTINGS'; + const ACTION_AIRPLANE_MODE_SETTINGS: 'android.settings.AIRPLANE_MODE_SETTINGS'; + const ACTION_APN_SETTINGS: 'android.settings.APN_SETTINGS'; + const ACTION_APPLICATION_DETAILS_SETTINGS: 'android.settings.APPLICATION_DETAILS_SETTINGS'; + const ACTION_APPLICATION_DEVELOPMENT_SETTINGS: 'android.settings.APPLICATION_DEVELOPMENT_SETTINGS'; + const ACTION_APPLICATION_SETTINGS: 'android.settings.APPLICATION_SETTINGS'; + const ACTION_APP_NOTIFICATION_SETTINGS: 'android.settings.APP_NOTIFICATION_SETTINGS'; + const ACTION_APP_OPS_SETTINGS: 'android.settings.APP_OPS_SETTINGS'; + const ACTION_BATTERY_SAVER_SETTINGS: 'android.settings.BATTERY_SAVER_SETTINGS'; + const ACTION_BLUETOOTH_SETTINGS: 'android.settings.BLUETOOTH_SETTINGS'; + const ACTION_CAPTIONING_SETTINGS: 'android.settings.CAPTIONING_SETTINGS'; + const ACTION_CAST_SETTINGS: 'android.settings.CAST_SETTINGS'; + const ACTION_DATA_ROAMING_SETTINGS: 'android.settings.DATA_ROAMING_SETTINGS'; + const ACTION_DATE_SETTINGS: 'android.settings.DATE_SETTINGS'; + const ACTION_DEVICE_INFO_SETTINGS: 'android.settings.DEVICE_INFO_SETTINGS'; + const ACTION_DEVICE_NAME: 'android.settings.DEVICE_NAME'; + const ACTION_DISPLAY_SETTINGS: 'android.settings.DISPLAY_SETTINGS'; + const ACTION_DREAM_SETTINGS: 'android.settings.DREAM_SETTINGS'; + const ACTION_HARD_KEYBOARD_SETTINGS: 'android.settings.HARD_KEYBOARD_SETTINGS'; + const ACTION_HOME_SETTINGS: 'android.settings.HOME_SETTINGS'; + const ACTION_IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS: 'android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS'; + const ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS: 'android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS'; + const ACTION_INPUT_METHOD_SETTINGS: 'android.settings.INPUT_METHOD_SETTINGS'; + const ACTION_INPUT_METHOD_SUBTYPE_SETTINGS: 'android.settings.INPUT_METHOD_SUBTYPE_SETTINGS'; + const ACTION_INTERNAL_STORAGE_SETTINGS: 'android.settings.INTERNAL_STORAGE_SETTINGS'; + const ACTION_LOCALE_SETTINGS: 'android.settings.LOCALE_SETTINGS'; + const ACTION_LOCATION_SOURCE_SETTINGS: 'android.settings.LOCATION_SOURCE_SETTINGS'; + const ACTION_MANAGE_ALL_APPLICATIONS_SETTINGS: 'android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS'; + const ACTION_MANAGE_APPLICATIONS_SETTINGS: 'android.settings.MANAGE_APPLICATIONS_SETTINGS'; + const ACTION_MANAGE_DEFAULT_APPS_SETTINGS: 'android.settings.MANAGE_DEFAULT_APPS_SETTINGS'; + const ACTION_MEMORY_CARD_SETTINGS: 'android.settings.MEMORY_CARD_SETTINGS'; + const ACTION_MONITORING_CERT_INFO: 'android.settings.MONITORING_CERT_INFO'; + const ACTION_NETWORK_OPERATOR_SETTINGS: 'android.settings.NETWORK_OPERATOR_SETTINGS'; + const ACTION_NFCSHARING_SETTINGS: 'android.settings.NFCSHARING_SETTINGS'; + const ACTION_NFC_PAYMENT_SETTINGS: 'android.settings.NFC_PAYMENT_SETTINGS'; + const ACTION_NFC_SETTINGS: 'android.settings.NFC_SETTINGS'; + const ACTION_NIGHT_DISPLAY_SETTINGS: 'android.settings.NIGHT_DISPLAY_SETTINGS'; + const ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS: 'android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS'; + const ACTION_NOTIFICATION_SETTINGS: 'android.settings.NOTIFICATION_SETTINGS'; + const ACTION_PAIRING_SETTINGS: 'android.settings.PAIRING_SETTINGS'; + const ACTION_PRIVACY_SETTINGS: 'android.settings.PRIVACY_SETTINGS'; + const ACTION_QUICK_LAUNCH_SETTINGS: 'android.settings.QUICK_LAUNCH_SETTINGS'; + const ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS: 'android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS'; + const ACTION_SECURITY_SETTINGS: 'android.settings.SECURITY_SETTINGS'; + const ACTION_SETTINGS: 'android.settings.SETTINGS'; + const ACTION_SHOW_ADMIN_SUPPORT_DETAILS: 'android.settings.SHOW_ADMIN_SUPPORT_DETAILS'; + const ACTION_SHOW_INPUT_METHOD_PICKER: 'android.settings.SHOW_INPUT_METHOD_PICKER'; + const ACTION_SHOW_REGULATORY_INFO: 'android.settings.SHOW_REGULATORY_INFO'; + const ACTION_SHOW_REMOTE_BUGREPORT_DIALOG: 'android.settings.SHOW_REMOTE_BUGREPORT_DIALOG'; + const ACTION_SOUND_SETTINGS: 'android.settings.SOUND_SETTINGS'; + const ACTION_STORAGE_MANAGER_SETTINGS: 'android.settings.STORAGE_MANAGER_SETTINGS'; + const ACTION_SYNC_SETTINGS: 'android.settings.SYNC_SETTINGS'; + const ACTION_SYSTEM_UPDATE_SETTINGS: 'android.settings.SYSTEM_UPDATE_SETTINGS'; + const ACTION_TETHER_PROVISIONING_UI: 'android.settings.TETHER_PROVISIONING_UI'; + const ACTION_TRUSTED_CREDENTIALS_USER: 'android.settings.TRUSTED_CREDENTIALS_USER'; + const ACTION_USAGE_ACCESS_SETTINGS: 'android.settings.USAGE_ACCESS_SETTINGS'; + const ACTION_USER_DICTIONARY_INSERT: 'android.settings.USER_DICTIONARY_INSERT'; + const ACTION_USER_DICTIONARY_SETTINGS: 'android.settings.USER_DICTIONARY_SETTINGS'; + const ACTION_USER_SETTINGS: 'android.settings.USER_SETTINGS'; + const ACTION_VOICE_CONTROL_AIRPLANE_MODE: 'android.settings.VOICE_CONTROL_AIRPLANE_MODE'; + const ACTION_VOICE_CONTROL_BATTERY_SAVER_MODE: 'android.settings.VOICE_CONTROL_BATTERY_SAVER_MODE'; + const ACTION_VOICE_CONTROL_DO_NOT_DISTURB_MODE: 'android.settings.VOICE_CONTROL_DO_NOT_DISTURB_MODE'; + const ACTION_VOICE_INPUT_SETTINGS: 'android.settings.VOICE_INPUT_SETTINGS'; + const ACTION_VPN_SETTINGS: 'android.settings.VPN_SETTINGS'; + const ACTION_VR_LISTENER_SETTINGS: 'android.settings.VR_LISTENER_SETTINGS'; + const ACTION_WEBVIEW_SETTINGS: 'android.settings.WEBVIEW_SETTINGS'; + const ACTION_WIFI_IP_SETTINGS: 'android.settings.WIFI_IP_SETTINGS'; + const ACTION_WIFI_SETTINGS: 'android.settings.WIFI_SETTINGS'; + const ACTION_WIRELESS_SETTINGS: 'android.settings.WIRELESS_SETTINGS'; + const ACTION_ZEN_MODE_AUTOMATION_SETTINGS: 'android.settings.ZEN_MODE_AUTOMATION_SETTINGS'; + const ACTION_ZEN_MODE_EVENT_RULE_SETTINGS: 'android.settings.ZEN_MODE_EVENT_RULE_SETTINGS'; + const ACTION_ZEN_MODE_EXTERNAL_RULE_SETTINGS: 'android.settings.ZEN_MODE_EXTERNAL_RULE_SETTINGS'; + const ACTION_ZEN_MODE_PRIORITY_SETTINGS: 'android.settings.ZEN_MODE_PRIORITY_SETTINGS'; + const ACTION_ZEN_MODE_SCHEDULE_RULE_SETTINGS: 'android.settings.ZEN_MODE_SCHEDULE_RULE_SETTINGS'; + const ACTION_ZEN_MODE_SETTINGS: 'android.settings.ZEN_MODE_SETTINGS'; + + function startActivityAsync(activity: string, data?: HashMap): Promise; +} + +/** + * KeepAwake + */ +export class KeepAwake extends Component { + static activate(): void; + static deactivate(): void; +} + +// #region LinearGradient +/** + * LinearGradient + */ +export interface LinearGradientProps { + colors: string[]; + start?: [number, number]; + end?: [number, number]; + locations?: number[]; + style?: StyleProp; +} + +export class LinearGradient extends Component { } +// #endregion + +/** + * Location + */ +export namespace Location { + interface LocationOptions { + enableHighAccuracy?: boolean; + timeInterval?: number; + distanceInterval?: number; + } + + interface LocationProps { + latitude: number; + longitude: number; + } + + interface Coords extends LocationProps { + altitude: number; + accuracy: number; + } + + interface LocationData { + coords: { + heading: number; + speed: number + } & Coords; + timestamp: number; + } + + interface ProviderStatus { + locationServicesEnabled: boolean; + gpsAvailable?: boolean; + networkAvailable?: boolean; + passiveAvailable?: boolean; + } + + interface HeadingStatus { + magHeading: number; + trueHeading: number; + accuracy: number; + } + + interface GeocodeData { + city: string; + street: string; + region: string; + postalCode: string; + country: string; + name: string; + } + + type LocationCallback = (data: LocationData) => void; + + function getCurrentPositionAsync(options: LocationOptions): Promise; + function watchPositionAsync(options: LocationOptions, callback: LocationCallback): EventSubscription; + function getProviderStatusAsync(): Promise; + function getHeadingAsync(): Promise; + function watchHeadingAsync(callback: (status: HeadingStatus) => void): EventSubscription; + function geocodeAsync(address: string): Promise; + function reverseGeocodeAsync(location: LocationProps): Promise; + function setApiKey(key: string): void; +} + +/** + * Magnetometer + */ +export namespace Magnetometer { + interface MagnetometerObject { + x: Axis; + y: Axis; + z: Axis; + } + + function addListener(listener: (obj: MagnetometerObject) => any): EventSubscription; + function removeAllListeners(): void; + function setUpdateInterval(intervalMs: number): void; +} + +/** + * Notifications + */ +export namespace Notifications { + interface Notification { + origin: 'selected' | 'received'; + data: any; + remote: boolean; + isMultiple: boolean; + } + + interface LocalNotification { + title: string; + body?: string; + data?: any; + ios?: { + sound?: boolean + }; + android?: { + sound?: boolean; + icon?: string; + color?: string; + priority?: 'min' | 'low' | 'high' | 'max'; + sticky?: boolean; + vibrate?: boolean | number[]; + link?: string; + }; + } + + type LocalNotificationId = string | number; + + function addListener(listener: (notification: Notification) => any): EventSubscription; + function getExpoPushTokenAsync(): Promise; + function presentLocalNotificationAsync(localNotification: LocalNotification): Promise; + function scheduleLocalNotificationAsync( + localNotification: LocalNotification, + schedulingOptions: { time: Date | number, repeat?: 'minute' | 'hour' | 'day' | 'week' | 'month' | 'year' } + ): Promise; + function dismissNotificationAsync(localNotificationId: LocalNotificationId): Promise; + function dismissAllNotificationsAsync(): Promise; + function cancelScheduledNotificationAsync(localNotificationId: LocalNotificationId): Promise; + function cancelAllScheduledNotificationsAsync(): Promise; + function getBadgeNumberAsync(): Promise; + function setBadgeNumberAsync(number: number): Promise; +} + +/** + * Pedometer + */ +export namespace Pedometer { + function isAvailableAsync(): Promise; + function getStepCountAsync(start: Date, end: Date): Promise<{ steps: number; }>; + function watchStepCount(callback: (params: { steps: number; }) => void): EventSubscription; +} + +/** + * Permissions + */ +export namespace Permissions { + type PermissionType = 'remoteNotifications' | 'location' | + 'camera' | 'contacts' | 'audioRecording' | 'calendar'; + type PermissionStatus = 'undetermined' | 'granted' | 'denied'; + type PermissionExpires = 'never'; + + interface PermissionDetailsLocationIOS { + scope: 'whenInUse' | 'always'; + } + + interface PermissionDetailsLocationAndroid { + scope: 'fine' | 'coarse' | 'none'; + } + + interface PermissionResponse { + status: PermissionStatus; + expires: PermissionExpires; + ios?: PermissionDetailsLocationIOS; + android?: PermissionDetailsLocationAndroid; + } + + function getAsync(type: PermissionType): Promise; + function askAsync(type: PermissionType): Promise; + + type RemoteNotificationPermission = 'remoteNotifications'; + + const CAMERA: 'camera'; + const CAMERA_ROLL: 'cameraRoll'; + const AUDIO_RECORDING: 'audioRecording'; + const LOCATION: 'location'; + const REMOTE_NOTIFICATIONS: RemoteNotificationPermission; + const NOTIFICATIONS: RemoteNotificationPermission; + const CONTACTS: 'contacts'; + const SYSTEM_BRIGHTNESS: 'systemBrightness'; + const CALENDAR: 'calendar'; +} + +/** + * Register Root Component + */ +export function registerRootComponent(component: ComponentType): void; + +/** + * ScreenOrientation + */ +export namespace ScreenOrientation { + interface Orientations { + ALL: 'ALL'; + ALL_BUT_UPSIDE_DOWN: 'ALL_BUT_UPSIDE_DOWN'; + PORTRAIT: 'PORTRAIT'; + PORTRAIT_UP: 'PORTRAIT_UP'; + PORTRAIT_DOWN: 'PORTRAIT_DOWN'; + LANDSCAPE: 'LANDSCAPE'; + LANDSCAPE_LEFT: 'LANDSCAPE_LEFT'; + LANDSCAPE_RIGHT: 'LANDSCAPE_RIGHT'; + } + + const Orientation: Orientations; + + function allow(orientation: keyof Orientations): void; +} + +/** + * SecureStore + */ +export namespace SecureStore { + interface SecureStoreOptions { + keychainService?: string; + keychainAccessible?: number; + } + + function setItemAsync(key: string, value: string, options?: SecureStoreOptions): Promise; + function getItemAsync(key: string, options?: SecureStoreOptions): Promise; + function deleteItemAsync(key: string, options?: SecureStoreOptions): Promise; +} + +/** + * Segment + */ +export namespace Segment { + function initialize(keys: { + androidWriteKey: string; + iosWriteKey: string; + }): void; + function identify(userId: string): void; + function identifyWithTraits(userId: string, traits: object): void; + function track(event: string): void; + function reset(): void; + function trackWithProperties(event: string, properties: object): void; + function screen(screenName: string): void; + function screenWithProperties(screenName: string, properties: object): void; + function flush(): void; +} + +/** + * Speech + */ +export namespace Speech { + interface SpeechOptions { + language?: string; + pitch?: number; + rate?: number; + onStart?: () => void; + onStopped?: () => void; + onDone?: () => void; + onError?: (error: string) => void; + } + + function speak(text: string, options?: SpeechOptions): void; + function stop(): void; + function isSpeakingAsync(): Promise; + + /** Available on iOS only */ + function pause(): void; + + /** Available on iOS only */ + function resume(): void; +} + +/** + * SQLite + */ +export namespace SQLite { + type Error = any; + + interface Database { + transaction( + callback: (transaction: Transaction) => any, + error?: (error: Error) => any, // TODO def of error + success?: () => any + ): void; + } + + interface Transaction { + executeSql( + sqlStatement: string, + arguments?: string[] | number[], + success?: (transaction: Transaction, resultSet: ResultSet) => any, + error?: (transaction: Transaction, error: Error) => any + ): void; + } + + interface ResultSet { + insertId: number; + rowAffected: number; + rows: { + length: number; + item: (index: number) => any; + _array: HashMap[]; + }; + } + + function openDatabase( + name: string | { + name: string, + version?: string, + description?: string, + size?: number, + callback?: () => any + }, + version?: string, + description?: string, + size?: number, + callback?: () => any + ): any; +} + +// #region Svg +/** + * Svg + */ +export interface SvgCommonProps { + fill?: string; + fillOpacity?: number | string; + fillRule?: 'nonzero' | 'evenodd'; + stroke?: string; + strokeWidth?: number | string; + strokeOpacity?: number | string; + strokeLinecap?: string; + strokeLineJoin?: string; + strokeDasharray?: any[]; + strokeDashoffset?: any; + x?: number | string; + y?: number | string; + rotate?: number | string; + rotation?: number | string; + scale?: number | string; + origin?: number | string; + originX?: number | string; + originY?: number | string; + id?: string; + disabled?: boolean; + onPress?: () => any; + onPressIn?: () => any; + onPressOut?: () => any; + onLongPress?: () => any; + delayPressIn?: number; + delayPressOut?: number; + delayLongPress?: number; +} + +export interface SvgRectProps extends SvgCommonProps { + width: number | string; + height: number | string; +} + +export interface SvgCircleProps extends SvgCommonProps { + cx: number | string; + cy: number | string; + r: number | string; +} + +export interface SvgEllipseProps extends SvgCommonProps { + cx: number | string; + cy: number | string; + rx: number | string; + ry: number | string; +} + +export interface SvgLineProps extends SvgCommonProps { + x1: number | string; + y1: number | string; + x2: number | string; + y2: number | string; +} + +export interface SvgPolyProps extends SvgCommonProps { + points: string; +} + +export interface SvgPathProps extends SvgCommonProps { + d: string; +} + +export interface SvgTextProps extends SvgCommonProps { + textAnchor?: string; + fontSize?: number | string; + fontWeight?: string; +} + +export interface SvgTSpanProps extends SvgTextProps { + dx?: string; + dy?: string; +} + +export interface SvgTextPathProps extends SvgCommonProps { + href?: string; + startOffset?: string; +} + +export interface SvgUseProps extends SvgCommonProps { + href: string; + x: number | string; + y: number | string; +} + +export interface SvgSymbolProps extends SvgCommonProps { + viewBox: string; + width: number | string; + height: number | string; +} + +export interface SvgLinearGradientProps extends SvgCommonProps { + x1: number | string; + x2: number | string; + y1: number | string; + y2: number | string; +} + +export interface SvgRadialGradientProps extends SvgCommonProps { + cx: number | string; + cy: number | string; + rx: number | string; + ry: number | string; + fx: number | string; + fy: number | string; + gradientUnits?: string; +} + +export interface SvgStopProps extends SvgCommonProps { + offset?: string; + stopColor?: string; + stopOpacity?: string; +} + +export class Svg extends Component<{ width: number, height: number }> { + static Circle: ComponentClass; + static ClipPath: ComponentClass; + static Defs: ComponentClass; + static Ellipse: ComponentClass; + static G: ComponentClass; + static Line: ComponentClass; + static LinearGradient: ComponentClass; + static Path: ComponentClass; + static Polygon: ComponentClass; + static Polyline: ComponentClass; + static RadialGradient: ComponentClass; + static Rect: ComponentClass; + static Stop: ComponentClass; + static Symbol: ComponentClass; + static Text: ComponentClass; + static TextPath: ComponentClass; + static TSpan: ComponentClass; + static Use: ComponentClass; +} +// #endregion + +/** + * Take Snapshot + */ +export function takeSnapshotAsync( + view?: (number | React.ReactElement), + options?: { + width?: number, + height?: number, + format?: 'png' | 'jpg' | 'jpeg' | 'webm', + quality?: number, + result?: 'file' | 'base64' | 'data-uri', + } +): Promise; + +/** Helpful utility functions that don’t fit anywhere else, including some localization and internationalization methods. */ +export namespace Util { + /** Returns the current device country code. */ + function getCurrentDeviceCountryAsync(): Promise; + + /** Returns the current device locale as a string. */ + function getCurrentLocaleAsync(): Promise; + + /** Returns the current device time zone name. */ + function getCurrentTimeZoneAsync(): Promise; + + /** Reloads the current experience. This will fetch and load the newest available JavaScript supported by the device’s Expo environment. This is useful for triggering an update of your experience if you have published a new version. */ + function reload(): void; + + /** _Android only_. Invokes a callback when a new version of your app is successfully downloaded in the background. */ + function addNewVersionListenerExperimental(listener: (event: { + manifest: object; + }) => void): { remove(): void; }; +} + +// #region Video +/** + * Expo Video + */ +export interface NaturalSize { + width: number; + height: number; + orientation: Orientation; +} + +export interface ReadyForDisplayEvent { + naturalSize: NaturalSize; + status: PlaybackStatus; +} + +export enum FullscreenUpdateVariants { + IOS_FULLSCREEN_UPDATE_PLAYER_WILL_PRESENT = 0, + IOS_FULLSCREEN_UPDATE_PLAYER_DID_PRESENT = 1, + IOS_FULLSCREEN_UPDATE_PLAYER_WILL_DISMISS = 2, + IOS_FULLSCREEN_UPDATE_PLAYER_DID_DISMISS = 3 +} + +export interface FullscreenUpdateEvent { + fullscreenUpdate: FullscreenUpdateVariants; + status: PlaybackStatus; +} + +export interface VideoProps { + source?: PlaybackSource | null; + posterSource?: URISource | RequireSource; + + resizeMode?: ResizeModeContain | ResizeModeCover | ResizeModeStretch; + useNativeControls?: boolean; + usePoster?: boolean; + + onPlaybackStatusUpdate?: (status: PlaybackStatus) => void; + onReadyForDisplay?: (event: ReadyForDisplayEvent) => void; + onIOSFullscreenUpdate?: (event: FullscreenUpdateEvent) => void; + + onLoadStart?: () => void; + onLoad?: (status: PlaybackStatus) => void; + onError?: (error: string) => void; + + status?: PlaybackStatusToSet; + progressUpdateIntervalMillis?: number; + positionMillis?: number; + shouldPlay?: boolean; + rate?: number; + shouldCorrectPitch?: boolean; + volume?: number; + isMuted?: boolean; + isLooping?: boolean; + + scaleX?: number; + scaleY?: number; + translateX?: number; + translateY?: number; + rotation?: number; + ref?: Ref; +} + +export interface VideoState { + showPoster: boolean; +} + +export class Video extends Component { + static RESIZE_MODE_CONTAIN: ResizeModeContain; + static RESIZE_MODE_COVER: ResizeModeCover; + static RESIZE_MODE_STRETCH: ResizeModeStretch; + static IOS_FULLSCREEN_UPDATE_PLAYER_WILL_PRESENT: FullscreenUpdateVariants.IOS_FULLSCREEN_UPDATE_PLAYER_WILL_PRESENT; + static IOS_FULLSCREEN_UPDATE_PLAYER_DID_PRESENT: FullscreenUpdateVariants.IOS_FULLSCREEN_UPDATE_PLAYER_DID_PRESENT; + static IOS_FULLSCREEN_UPDATE_PLAYER_WILL_DISMISS: FullscreenUpdateVariants.IOS_FULLSCREEN_UPDATE_PLAYER_WILL_DISMISS; + static IOS_FULLSCREEN_UPDATE_PLAYER_DID_DISMISS: FullscreenUpdateVariants.IOS_FULLSCREEN_UPDATE_PLAYER_DID_DISMISS; +} +// #endregion + +/** + * Web Browser + */ +export namespace WebBrowser { + function openBrowserAsync(url: string): Promise<{ type: 'cancelled' | 'dismissed' }>; + function openAuthSessionAsync(url: string, redirectUrl?: string): Promise<{ type: 'cancelled' | 'dismissed' }>; + function dismissBrowser(): Promise<{ type: 'dismissed' }>; +} + +// #region Calendar +/** + * Calendar + * + * Provides an API for interacting with the device’s system calendars, events, reminders, and associated records. + */ +export namespace Calendar { + interface Calendar { + /** Internal ID that represents this calendar on the device */ + id?: string; + + /** Visible name of the calendar */ + title?: string; + + sourceId?: string; // iOS + + /** Object representing the source to be used for the calendar */ + source?: Source; + + /** Type of calendar this object represents */ + type?: CalendarType; // iOS + + /** Color used to display this calendar’s events */ + color?: string; + + /** Whether the calendar is used in the Calendar or Reminders OS app */ + entityType?: EntityTypes; // iOS + + /** Boolean value that determines whether this calendar can be modified */ + allowsModifications?: boolean; + + /** Availability types that this calendar supports */ + allowedAvailabilities?: Availability[]; + + /** Boolean value indicating whether this is the device’s primary calendar */ + isPrimary?: boolean; // Android + + /** Internal system name of the calendar */ + name?: string; // Android + + /** Name for the account that owns this calendar */ + ownerAccount?: string; // Android + + /** Time zone for the calendar */ + timeZone?: string; // Android + + /** Alarm methods that this calendar supports */ + allowedReminders?: AlarmMethod[]; // Android + + /** Attendee types that this calendar supports */ + allowedAttendeeTypes?: AttendeeType[]; // Android + + /** Indicates whether the OS displays events on this calendar */ + isVisible?: boolean; // Android + + /** Indicates whether this calendar is synced and its events stored on the device */ + isSynced?: boolean; // Android + + /** Level of access that the user has for the calendar */ + accessLevel?: CalendarAccessLevel; // Android + } + + interface Source { + /** Internal ID that represents this source on the device */ + id?: string; // iOS only ?? + + /** Type of account that owns this calendar */ + type?: string; + + /** Name for the account that owns this calendar */ + name?: string; + + /** Whether this source is the local phone account */ + isLocalAccount?: boolean; // Android + } + + interface Event { + /** Internal ID that represents this event on the device */ + id?: string; + + /** ID of the calendar that contains this event */ + calendarId?: string; + + /** Visible name of the event */ + title?: string; + + /** Location field of the event */ + location?: string; + + /** Date when the event record was created */ + creationDate?: string; // iOS + + /** Date when the event record was last modified */ + lastModifiedDate?: string; // iOS + + /** Time zone the event is scheduled in */ + timeZone?: string; + + /** Time zone for the event end time */ + endTimeZone?: string; // Android + + /** URL for the event */ + url?: string; // iOS + + /** Description or notes saved with the event */ + notes?: string; + + /** Array of Alarm objects which control automated reminders to the user */ + alarms?: Alarm[]; + + /** Object representing rules for recurring or repeating events. Null for one-time events. */ + recurrenceRule?: RecurrenceRule; + + /** Date object or string representing the time when the event starts */ + startDate?: string; + + /** Date object or string representing the time when the event ends */ + endDate?: string; + + /** For recurring events, the start date for the first (original) instance of the event */ + originalStartDate?: string; // iOS + + /** Boolean value indicating whether or not the event is a detached (modified) instance of a recurring event */ + isDetached?: boolean; // iOS + + /** Whether the event is displayed as an all-day event on the calendar */ + allDay?: boolean; + + /** The availability setting for the event */ + availability?: Availability; // Availability + + /** Status of the event */ + status?: EventStatus; // Status + + /** Organizer of the event, as an Attendee object */ + organizer?: string; // Organizer - iOS + + /** Email address of the organizer of the event */ + organizerEmail?: string; // Android + + /** User’s access level for the event */ + accessLevel?: EventAccessLevel; // Android, + + /** Whether invited guests can modify the details of the event */ + guestsCanModify?: boolean; // Android, + + /** Whether invited guests can invite other guests */ + guestsCanInviteOthers?: boolean; // Android + + /** Whether invited guests can see other guests */ + guestsCanSeeGuests?: boolean; // Android + + /** For detached (modified) instances of recurring events, the ID of the original recurring event */ + originalId?: string; // Android + + /** For instances of recurring events, volatile ID representing this instance; not guaranteed to always refer to the same instance */ + instanceId?: string; // Android + } + + interface Attendee { + /** Internal ID that represents this attendee on the device */ + id?: string; // Android + + /** Indicates whether or not this attendee is the current OS user */ + isCurrentUser?: boolean; // iOS + + /** Displayed name of the attendee */ + name?: string; + + /** Role of the attendee at the event */ + role?: AttendeeRole; + + /** Status of the attendee in relation to the event */ + status?: AttendeeStatus; + + /** Type of the attendee */ + type?: AttendeeType; + + /** URL for the attendee */ + url?: string; // iOS + + /** Email address of the attendee */ + email?: string; // Android + } + + interface Reminder { + /** Internal ID that represents this reminder on the device */ + id?: string; + + /** ID of the calendar that contains this reminder */ + calendarId?: string; + + /** Visible name of the reminder */ + title?: string; + + /** Location field of the reminder */ + location?: string; + + /** Date when the reminder record was created */ + creationDate?: string; + + /** Date when the reminder record was last modified */ + lastModifiedDate?: string; + + /** Time zone the reminder is scheduled in */ + timeZone?: string; + + /** URL for the reminder */ + url?: string; + + /** Description or notes saved with the reminder */ + notes?: string; + + /** Array of Alarm objects which control automated alarms to the user about the task */ + alarms?: Alarm[]; + + /** Object representing rules for recurring or repeated reminders. Null for one-time tasks. */ + recurrenceRule?: RecurrenceRule; + + /** Date object or string representing the start date of the reminder task */ + startDate?: string; + + /** Date object or string representing the time when the reminder task is due */ + dueDate?: string; + + /** Indicates whether or not the task has been completed */ + completed?: boolean; + + /** Date object or string representing the date of completion, if completed is true */ + completionDate?: string; + } + + interface Alarm { + /** Date object or string representing an absolute time the alarm should occur; overrides relativeOffset and structuredLocation if specified alongside either */ + absoluteDate?: string; // iOS + + /** Number of minutes from the startDate of the calendar item that the alarm should occur; use negative values to have the alarm occur before the startDate */ + relativeOffset?: string; + structuredLocation?: { + // iOS + title?: string; + proximity?: string; // Proximity + radius?: number; + coords?: { + latitude?: number; + longitude?: number; + }; + }; + + /** Method of alerting the user that this alarm should use; on iOS this is always a notification */ + method?: AlarmMethod; // Method, Android + } + + interface RecurrenceRule { + /** How often the calendar item should recur */ + frequency: Frequency; // Frequency + + /** Interval at which the calendar item should recur. For example, an interval: 2 with frequency: DAILY would yield an event that recurs every other day. Defaults to 1 . */ + interval?: number; + + /** Date on which the calendar item should stop recurring; overrides occurrence if both are specified */ + endDate?: string; + + /** Number of times the calendar item should recur before stopping */ + occurrence?: number; + } + + enum EntityTypes { + EVENT = 'event', + REMINDER = 'reminder', + } + + enum CalendarType { + LOCAL = 'local', + CALDAV = 'caldav', + EXCHANGE = 'exchange', + SUBSCRIBED = 'subscribed', + BIRTHDAYS = 'birthdays' + } + + enum Availability { + NOT_SUPPORTED = 'notSupported', // iOS + BUSY = 'busy', + FREE = 'free', + TENTATIVE = 'tentative', + UNAVAILABLE = 'unavailable' // iOS + } + + enum AlarmMethod { + ALARM = 'alarm', + ALERT = 'alert', + EMAIL = 'email', + SMS = 'sms', + DEFAULT = 'default', + } + + enum AttendeeType { + UNKNOWN = 'unknown', // iOS + PERSON = 'person', // iOS + ROOM = 'room', // iOS + GROUP = 'group', // iOS + RESOURCE = 'resource', + OPTIONAL = 'optional', // Android + REQUIRED = 'required', // Android + NONE = 'none' // Android + } + + enum CalendarAccessLevel { + CONTRIBUTOR = 'contributor', + EDITOR = 'editor', + FREEBUSY = 'freebusy', + OVERRIDE = 'override', + OWNER = 'owner', + READ = 'read', + RESPOND = 'respond', + ROOT = 'root', + NONE = 'none' + } + + enum EventAccessLevel { + CONFIDENTIAL = 'confidential', + PRIVATE = 'private', + PUBLIC = 'public', + DEFAULT = 'default' + } + + enum EventStatus { + NONE = 'none', + CONFIRMED = 'confirmed', + TENTATIVE = 'tentative', + CANCELED = 'canceled' + } + + enum AttendeeRole { + UNKNOWN = 'unknown', // iOS + REQUIRED = 'required', // iOS + OPTIONAL = 'optional', // iOS + CHAIR = 'chair', // iOS + NON_PARTICIPANT = 'nonParticipant', // iOS + ATTENDEE = 'attendee', // Android + ORGANIZER = 'organizer', // Android + PERFORMER = 'performer', // Android + SPEAKER = 'speaker', // Android + NONE = 'none' // Android + } + + enum AttendeeStatus { + UNKNOWN = 'unknown', // iOS + PENDING = 'pending', // iOS + ACCEPTED = 'accepted', + DECLINED = 'declined', + TENTATIVE = 'tentative', + DELEGATED = 'delegated', // iOS + COMPLETED = 'completed', // iOS + IN_PROCESS = 'inProcess', // iOS + INVITED = 'invited', // Android + NONE = 'none' // Android + } + + enum Frequency { + DAILY = 'daily', + WEEKLY = 'weekly', + MONTHLY = 'monthly', + YEARLY = 'yearly' + } + + enum ReminderStatus { + COMPLETED = 'completed', + INCOMPLETE = 'incomplete' + } + + interface RecurringEventOptions { + futureEvents?: boolean; + instanceStartDate?: string; + } + + /** Gets an array of calendar objects with details about the different calendars stored on the device. */ + function getCalendarsAsync( + /** (iOS only) Not required, but if defined, filters the returned calendars to a specific entity type. */ + entityType?: EntityTypes + ): Promise; + + /** Creates a new calendar on the device, allowing events to be added later and displayed. */ + function createCalendarAsync(details: Calendar): Promise; + + /** Updates the provided details of an existing calendar stored on the device. To remove a property, explicitly set it to null in details */ + function updateCalendarAsync(id: string, details?: Calendar | null): Promise; + + /** Deletes an existing calendar and all associated events/reminders/attendees from the device. Use with caution. */ + function deleteCalendarAsync(id: string): Promise; + + /** Returns all events in a given set of calendars over a specified time period. */ + function getEventsAsync( + /** Array of IDs of calendars to search for events in. Required. */ + calendarIds: string[], + + /** Beginning of time period to search for events in. Required. */ + startDate: Date, + + /** End of time period to search for events in. Required. */ + endDate: Date + ): Promise; + + /** Returns a specific event selected by ID. If a specific instance of a recurring event is desired, the start date of this instance must also be provided, as instances of recurring events do not have their own unique and stable IDs on either iOS or Android. */ + function getEventAsync( + /** ID of the event to return. Required. */ + id: string, + + /** A map of options for recurring events */ + recurringEventOptions?: RecurringEventOptions + ): Promise; + + /** Creates a new event on the specified calendar. */ + function createEventAsync( + /** ID of the calendar to create this event in. Required. */ + calendarId: string, + details?: Event + ): Promise; + + /** Updates the provided details of an existing calendar stored on the device. To remove a property, explicitly set it to null in details */ + function updateEventAsync( + /** ID of the event to be updated. Required. */ + id: string, + + /** A map of properties to be updated */ + details?: Event | null, + + /** A map of options for recurring events */ + recurrentEventOptions?: RecurringEventOptions + ): Promise; + + /** Deletes an existing event from the device. Use with caution. */ + function deleteEventAsync( + /** ID of the event to be deleted. Required. */ + id: string, + + /** A map of options for recurring events */ + recurringEventOptions?: RecurringEventOptions + ): Promise; + + /** Gets all attendees for a given event (or instance of a recurring event). */ + function getAttendeesForEventAsync( + /** ID of the event to return attendees for. Required. */ + eventId: string, + + /** A map of options for recurring events */ + recurrentEventOptions?: RecurringEventOptions + ): Promise; + + /** Available on Android only. Creates a new attendee record and adds it to the specified event. Note that if eventId specifies a recurring event, this will add the attendee to every instance of the event. */ + function createAttendeeAsync( + /** ID of the event to add this attendee to. Required. */ + eventId: string, + + /** A map of details for the attendee to be created */ + details?: Attendee + ): Promise; + + /** Available on Android only. Updates an existing attendee record. To remove a property, explicitly set it to null in details. */ + function updateAttendeeAsync( + /** ID of the attendee record to be updated. Required. */ + id: string, + + /** A map of properties to be updated */ + details?: Attendee | null + ): Promise; + + /** Available on Android only. Deletes an existing attendee record from the device. Use with caution. */ + function deleteAttendeeAsync(id: string): Promise; + + /** Available on iOS only. Returns a list of reminders matching the provided criteria. */ + function getRemindersAsync( + /** Array of IDs of calendars to search for reminders in. Required. */ + calendarIds: string[], + + status?: ReminderStatus, + + /** Beginning of time period to search for reminders in. Required if status is defined. */ + startDate?: Date, + + /** End of time period to search for reminders in. Required if status is defined. */ + endDate?: Date + ): Promise; + + /** Available on iOS only. Returns a specific reminder selected by ID. */ + function getReminderAsync(id: string): Promise; + + /** Available on iOS only. Creates a new reminder on the specified calendar. */ + function createReminderAsync( + /** ID of the calendar to create this reminder in. Required. */ + calendarId: string, + + /** A map of details for the reminder to be created */ + details?: Reminder + ): Promise; + + /** Available on iOS only. Updates the provided details of an existing reminder stored on the device. To remove a property, explicitly set it to null in details. */ + function updateReminderAsync( + /** ID of the reminder to be updated. Required. */ + id: string, + + /** A map of properties to be updated */ + details?: Reminder | null + ): Promise; + + /** Available on iOS only. Deletes an existing reminder from the device. Use with caution. */ + function deleteReminderAsync(id: string): Promise; + + /** Available on iOS only. */ + function getSourcesAsync(): Promise; + + /** Available on iOS only. Returns a specific source selected by ID. */ + function getSourceAsync(id: string): Promise; + + /** Available on Android only. Sends an intent to open the specified event in the OS Calendar app. */ + function openEventInCalendar( + /** ID of the event to open. Required. */ + id: string + ): void; +} +// #endregion + +// #region Calendar +/** + * An API to compose mails using OS specific UI. + */ +export namespace MailComposer { + interface ComposeOptions { + /** An array of e-mail addressess of the recipients. */ + recipients?: string[]; + + /** An array of e-mail addressess of the CC recipients. */ + ccRecipients?: string[]; + + /** An array of e-mail addressess of the BCC recipients. */ + bccRecipients?: string[]; + + /** Subject of the mail. */ + subject?: string; + + /** Body of the mail. */ + body?: string; + + /** Whether the body contains HTML tags so it could be formatted properly. Not working perfectly on Android. */ + isHtml?: boolean; + + /** An array of app’s internal file uris to attach. */ + attachments?: string[]; + } + + /** Resolves to a promise with object containing status field that could be either sent, saved or cancelled. Android does not provide such info so it always resolves to sent. */ + function composeAsync( + /** A map defining the data to fill the mail */ + options: ComposeOptions + ): Promise<{ status: 'sent' | 'saved' | 'cancelled' }>; +} +// #endregion diff --git a/types/expo/v25/tsconfig.json b/types/expo/v25/tsconfig.json new file mode 100644 index 0000000000..db8203e995 --- /dev/null +++ b/types/expo/v25/tsconfig.json @@ -0,0 +1,33 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "dom", + "es6" + ], + "jsx": "react", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "paths": { + "expo": [ + "expo/v25" + ], + "expo/*": [ + "expo/v25/*" + ] + }, + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "expo-tests.tsx" + ] +} \ No newline at end of file diff --git a/types/expo/v25/tslint.json b/types/expo/v25/tslint.json new file mode 100644 index 0000000000..8270136207 --- /dev/null +++ b/types/expo/v25/tslint.json @@ -0,0 +1,7 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "void-return": false, + "max-line-length": false + } +} diff --git a/types/expo__vector-icons/index.d.ts b/types/expo__vector-icons/index.d.ts index 864ae1d0cc..19aadf2a33 100644 --- a/types/expo__vector-icons/index.d.ts +++ b/types/expo__vector-icons/index.d.ts @@ -5,7 +5,7 @@ // TypeScript Version: 2.6 import * as React from 'react'; -import { TextProperties } from 'react-native'; +import { TextProps } from 'react-native'; export { createIconSet, createIconSetFromFontello, createIconSetFromIcoMoon } from 'react-native-vector-icons'; export { default as Entypo } from 'react-native-vector-icons/Entypo'; diff --git a/types/express-flash/express-flash-tests.ts b/types/express-flash/express-flash-tests.ts new file mode 100644 index 0000000000..c6212c6906 --- /dev/null +++ b/types/express-flash/express-flash-tests.ts @@ -0,0 +1,12 @@ +import express = require('express'); +import flash = require('express-flash'); + +const app = express(); + +app.use(flash()); + +app.use((req) => { + req.flash(); + req.flash('message'); + req.flash('event', 'message'); +}); diff --git a/types/express-flash/index.d.ts b/types/express-flash/index.d.ts new file mode 100644 index 0000000000..e0b00b8d80 --- /dev/null +++ b/types/express-flash/index.d.ts @@ -0,0 +1,11 @@ +// Type definitions for express-flash 0.0 +// Project: https://github.com/RGBboy/express-flash +// Definitions by: Ian Mobley +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +/// + +import express = require('express'); +declare function flash(): express.RequestHandler; +export = flash; diff --git a/types/express-flash/tsconfig.json b/types/express-flash/tsconfig.json new file mode 100644 index 0000000000..5fbfc5aefd --- /dev/null +++ b/types/express-flash/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "express-flash-tests.ts" + ] +} diff --git a/types/express-flash/tslint.json b/types/express-flash/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/express-flash/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/express-formidable/index.d.ts b/types/express-formidable/index.d.ts index 75a34d0350..ee38be639e 100644 --- a/types/express-formidable/index.d.ts +++ b/types/express-formidable/index.d.ts @@ -22,6 +22,7 @@ interface ExpressFormidableOptions { uploadDir?: string; keepExtensions?: boolean; type?: "multipart" | "urlencoded"; + maxFileSize?: number; maxFieldsSize?: number; maxFields?: number; hash?: boolean | "sha1" | "md5"; diff --git a/types/express-jsonschema/express-jsonschema-tests.ts b/types/express-jsonschema/express-jsonschema-tests.ts new file mode 100644 index 0000000000..85a3852d75 --- /dev/null +++ b/types/express-jsonschema/express-jsonschema-tests.ts @@ -0,0 +1,71 @@ +import { + JsonSchemaCustomPropertyError, + JsonSchemaValidation, + addSchemaProperties, + validate, +} from "express-jsonschema"; + +import { Request, Response, NextFunction } from "express"; +import { JSONSchema4 } from "json-schema"; + +let jsonSchema: JSONSchema4; +let expressMiddleware: (req: Request, res: Response, next: NextFunction) => void; + +jsonSchema = { + id: 'foo', + $ref: 'foo/bar', + $schema: 'http://json-schema.org/schema#', + title: 'foo', + description: 'bar', + default: 42, + multipleOf: 3, + maximum: 4, + exclusiveMaximum: true, + minimum: 5, + exclusiveMinimum: false, + maxLength: 6, + minLength: 7, + pattern: 'baz', + additionalItems: true, + items: [ + { items: [{ minLength: 4 }] } + ], + maxItems: 4, + minItems: 5, + uniqueItems: true, + maxProperties: 10, + minProperties: 11, + required: ['foo', 'bar'], + additionalProperties: false, + definitions: { + foo: { type: 'string' } + }, + properties: { + bar: { type: 'boolean' } + }, + patternProperties: { + foo: { type: 'integer' } + }, + dependencies: { + baz: { type: 'integer' } + }, + enum: ['foo', 42], + type: 'string', + allOf: [{}], + anyOf: [{}], + oneOf: [{}], + not: {}, + extends: 'foo', + bar: 4, + format: 'date-time', +}; + +expressMiddleware = validate({ test: jsonSchema }, [ jsonSchema ]); +addSchemaProperties({ + test: () => "This is an error with message...", + conditional: (instance: any, schema: JSONSchema4) => { + if (!instance) { + return "An instance should be present"; + } + } +}); diff --git a/types/express-jsonschema/index.d.ts b/types/express-jsonschema/index.d.ts new file mode 100644 index 0000000000..f089e1033e --- /dev/null +++ b/types/express-jsonschema/index.d.ts @@ -0,0 +1,54 @@ +// Type definitions for express-jsonschema 1.1 +// Project: https://github.com/trainiac/express-jsonschema#readme +// Definitions by: Arne Schubert +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +import { Request, Response, NextFunction } from "express"; +import { JSONSchema4 } from "json-schema"; + +export class JsonSchemaCustomPropertyError { + name: string; + message: string; + constructor(propertyName: string); +} + +export class JsonSchemaValidation { + name: string; + message: string; + validations: {[requestProperty: string]: Array<{ value: any, property: string, messages: string[]}> }; + constructor(validations: { [requestProperty: string]: { instance: any, property: string, message: string }}); +} + +/** + * Updates customProperties with the newProperties param. Provides a way for client to extend JSON Schema validations. + * + * @param newProperties - An object where the keys are the + * names of the new schema properties and the values are the respective + * functions that implement the validation. + * @throws Client tries to override an existing JSON Schema property. + */ +export function addSchemaProperties(newProperties: { [attribute: string]: (instance: any, schema: JSONSchema4, options: any, ctx: any) => void | string }): void; + +/** + * Accepts an object where the keys are request properties and the + * values are their respective schemas. Optionally, you may provide + * dependency schemas that are referenced by your schemas using `$ref` + * (see https://www.npmjs.com/package/jsonschema#complex-example-with-split-schemas-and-references + * for more details). + * Returns a middleware function that validates the given + * request properties when a request is made. If there is any invalid + * data a JsonSchemaValidation instance is passed to the next middleware. + * If the data is valid the next middleware is called with no params. + * + * @param schemas - An object where the keys are request properties + * and the values are their respective schemas. + * @param schemaDependencies - A list of schemas on which + * schemas in `schemas` parameter are dependent. These will be added + * to the `jsonschema` validator. + * @returns A middleware function. + */ +export function validate( + schemas: { [requestProperty: string]: JSONSchema4 }, + schemaDependencies?: JSONSchema4[], +): (req: Request, res: Response, next: NextFunction) => void; diff --git a/types/express-jsonschema/tsconfig.json b/types/express-jsonschema/tsconfig.json new file mode 100644 index 0000000000..964ad62e02 --- /dev/null +++ b/types/express-jsonschema/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "express-jsonschema-tests.ts" + ] +} diff --git a/types/express-jsonschema/tslint.json b/types/express-jsonschema/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/express-jsonschema/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/express-jwt/express-jwt-tests.ts b/types/express-jwt/express-jwt-tests.ts index 9de759adb2..a4d4d11845 100644 --- a/types/express-jwt/express-jwt-tests.ts +++ b/types/express-jwt/express-jwt-tests.ts @@ -45,6 +45,6 @@ app.use(function (err: any, req: express.Request, res: express.Response, next: e res.end(); } } else { - next(err); + next(new jwt.UnauthorizedError('invalid_token', new Error('error-message'))); } }); diff --git a/types/express-jwt/index.d.ts b/types/express-jwt/index.d.ts index 33c1206254..1187f4fbca 100644 --- a/types/express-jwt/index.d.ts +++ b/types/express-jwt/index.d.ts @@ -1,6 +1,9 @@ // Type definitions for express-jwt // Project: https://www.npmjs.org/package/express-jwt -// Definitions by: Wonshik Kim , Kacper Polak , Sl1MBoy +// Definitions by: Wonshik Kim +// Kacper Polak +// Sl1MBoy +// Milan Mimra // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -12,17 +15,22 @@ export = jwt; declare function jwt(options: jwt.Options): jwt.RequestHandler; declare namespace jwt { export type secretType = string | Buffer + export type ErrorCode = + "revoked_token" | + "invalid_token" | + "credentials_bad_scheme" | + "credentials_bad_format" | + "credentials_required" + export interface SecretCallbackLong { (req: express.Request, header: any, payload: any, done: (err: any, secret?: secretType) => void): void; } export interface SecretCallback { (req: express.Request, payload: any, done: (err: any, secret?: secretType) => void): void; } - export interface IsRevokedCallback { (req: express.Request, payload: any, done: (err: any, revoked?: boolean) => void): void; } - export interface GetTokenCallback { (req: express.Request): any; } @@ -41,11 +49,13 @@ declare namespace jwt { } export class UnauthorizedError extends Error { - name: string; - message: string; - code: string; status: number; - inner: Error + message: string; + name: 'UnauthorizedError'; + code: ErrorCode; + inner: { message: string }; + + constructor(code: ErrorCode, error: { message: string }); } } declare global { diff --git a/types/express-routemap/express-routemap-tests.ts b/types/express-routemap/express-routemap-tests.ts new file mode 100644 index 0000000000..e169a614b9 --- /dev/null +++ b/types/express-routemap/express-routemap-tests.ts @@ -0,0 +1,7 @@ +import express = require('express'); +import displayRoutes = require('express-routemap'); + +const server = express(); +server.listen(3000, () => { + displayRoutes(server); // $ExpectType void +}); diff --git a/types/express-routemap/index.d.ts b/types/express-routemap/index.d.ts new file mode 100644 index 0000000000..a2e80499b0 --- /dev/null +++ b/types/express-routemap/index.d.ts @@ -0,0 +1,10 @@ +// Type definitions for express-routemap 1.1 +// Project: https://github.com/izelnakri/express-routemap#readme +// Definitions by: icopp +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +import { Application } from 'express'; + +declare function displayRoutes(app: Application, filename?: string): void; +export = displayRoutes; diff --git a/types/express-routemap/tsconfig.json b/types/express-routemap/tsconfig.json new file mode 100644 index 0000000000..44638d2eb4 --- /dev/null +++ b/types/express-routemap/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "express-routemap-tests.ts" + ] +} diff --git a/types/express-routemap/tslint.json b/types/express-routemap/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/express-routemap/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/express-winston/express-winston-tests.ts b/types/express-winston/express-winston-tests.ts index 297b7afc49..5671160de0 100644 --- a/types/express-winston/express-winston-tests.ts +++ b/types/express-winston/express-winston-tests.ts @@ -6,19 +6,20 @@ const app = express(); // Logger with all options app.use(expressWinston.logger({ - baseMeta: { foo: 'foo' }, - bodyBlacklist: [ 'foo' ], - bodyWhitelist: [ 'bar' ], + baseMeta: { foo: 'foo', nested: { bar: 'baz' } }, + bodyBlacklist: ['foo'], + bodyWhitelist: ['bar'], colorize: true, dynamicMeta: (req, res, err) => ({ foo: 'bar' }), expressFormat: true, ignoreRoute: (req, res) => true, - ignoredRoutes: [ 'foo' ], - level: 'level', + ignoredRoutes: ['foo'], + level: (req, res) => 'level', + meta: true, metaField: 'metaField', msg: 'msg', requestFilter: (req, prop) => true, - requestWhitelist: [ 'foo', 'bar' ], + requestWhitelist: ['foo', 'bar'], skip: (req, res) => false, statusLevels: ({ error: 'error', success: 'success', warn: 'warn' }), transports: [ @@ -46,13 +47,13 @@ app.use(expressWinston.logger({ // Error Logger with all options app.use(expressWinston.errorLogger({ - baseMeta: { foo: 'foo' }, + baseMeta: { foo: 'foo', nested: { bar: 'baz' } }, dynamicMeta: (req, res, err) => ({ foo: 'bar' }), - level: 'level', + level: (req, res) => 'level', metaField: 'metaField', msg: 'msg', requestFilter: (req, prop) => true, - requestWhitelist: [ 'foo', 'bar' ], + requestWhitelist: ['foo', 'bar'], transports: [ new winston.transports.Console({ json: true, @@ -87,8 +88,8 @@ expressWinston.responseWhitelist.push('body'); const router = express.Router(); router.post('/user/register', (req, res, next) => { - const expressWinstonReq = req as expressWinston.ExpressWinstonRequest; - expressWinstonReq._routeWhitelists.body = [ 'username', 'email', 'age' ]; - expressWinstonReq._routeWhitelists.req = [ 'userId' ]; - expressWinstonReq._routeWhitelists.res = [ '_headers' ]; + const expressWinstonReq = req as expressWinston.ExpressWinstonRequest; + expressWinstonReq._routeWhitelists.body = ['username', 'email', 'age']; + expressWinstonReq._routeWhitelists.req = ['userId']; + expressWinstonReq._routeWhitelists.res = ['_headers']; }); diff --git a/types/express-winston/index.d.ts b/types/express-winston/index.d.ts index 21e7ead653..e6184f64b9 100644 --- a/types/express-winston/index.d.ts +++ b/types/express-winston/index.d.ts @@ -7,17 +7,14 @@ import { ErrorRequestHandler, Handler, Request, Response } from 'express'; import { TransportInstance, Winston } from 'winston'; -export interface MetaObject { - [field: string]: string; -} - -export type DynamicMetaFunction = (req: Request, res: Response, err: Error) => MetaObject | undefined; +export type DynamicMetaFunction = (req: Request, res: Response, err: Error) => object; +export type DynamicLevelFunction = (req: Request, res: Response, err: Error) => string; export type RequestFilter = (req: Request, propName: string) => boolean; export type ResponseFilter = (res: Response, propName: string) => boolean; export type RouteFilter = (req: Request, res: Response) => boolean; export interface BaseLoggerOptions { - baseMeta?: MetaObject; + baseMeta?: object; bodyBlacklist?: string[]; bodyWhitelist?: string[]; colorize?: boolean; @@ -25,7 +22,8 @@ export interface BaseLoggerOptions { expressFormat?: boolean; ignoreRoute?: RouteFilter; ignoredRoutes?: string[]; - level?: string; + level?: string | DynamicLevelFunction; + meta?: boolean; metaField?: string; msg?: string; requestFilter?: RequestFilter; @@ -53,9 +51,9 @@ export type LoggerOptions = LoggerOptionsWithTransports | LoggerOptionsWithWinst export function logger(options: LoggerOptions): Handler; export interface BaseErrorLoggerOptions { - baseMeta?: MetaObject; + baseMeta?: object; dynamicMeta?: DynamicMetaFunction; - level?: string; + level?: string | DynamicLevelFunction; metaField?: string; msg?: string; requestFilter?: RequestFilter; @@ -91,9 +89,9 @@ export let defaultResponseFilter: ResponseFilter; export function defaultSkip(): boolean; export interface ExpressWinstonRequest extends Request { - _routeWhitelists: { - body: string[]; - req: string[]; - res: string[]; - }; + _routeWhitelists: { + body: string[]; + req: string[]; + res: string[]; + }; } diff --git a/types/express-ws/express-ws-tests.ts b/types/express-ws/express-ws-tests.ts new file mode 100644 index 0000000000..a37f315dfb --- /dev/null +++ b/types/express-ws/express-ws-tests.ts @@ -0,0 +1,72 @@ +import http = require('http'); +import https = require('https'); +import express = require('express'); +import expressWs = require('express-ws'); + +const dummyApp = express(); +const httpServer = http.createServer(dummyApp); +const httpsServer = https.createServer({}, dummyApp); + +expressWs(dummyApp); // optional server argument +expressWs(dummyApp, httpsServer); // https server allowed +expressWs(dummyApp, httpServer, { + leaveRouterUntouched: false, + // ws server options + wsOptions: { + clientTracking: true + } +}); + +const { app, getWss, applyTo } = expressWs(express()); + +/** + * applyTo accepts router object + */ +applyTo(express.Router()); + +/** + * applyTo accepts router-like objects + */ +applyTo({ + get() { return this; } +}); + +/** + * getWss function returns ws server + */ +getWss().clients.forEach(ws => { + if (ws.readyState !== ws.OPEN) { + ws.terminate(); + return; + } + ws.ping(); +}); + +/** + * ws method is added to express app instance + */ +app.ws('/', (ws, req) => { + ws.on('message', msg => { + console.log(msg); + }); +}); + +/** + * ws method is added to express.Router prototype + */ +const router = express.Router(); + +router.ws( + '/:id', + (ws, req, next) => { next(); }, + (ws, req, next) => { + ws.send(req.params.id); + + ws.on('close', (code, reason) => { + console.log('code:', code); + console.log('reason:', reason); + }); + } +); + +app.use(router); diff --git a/types/express-ws/index.d.ts b/types/express-ws/index.d.ts new file mode 100644 index 0000000000..81cf85c6d3 --- /dev/null +++ b/types/express-ws/index.d.ts @@ -0,0 +1,47 @@ +// Type definitions for express-ws 3.0 +// Project: https://github.com/HenningM/express-ws +// Definitions by: AJ Livingston +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import * as core from 'express-serve-static-core'; +import * as express from 'express'; +import * as http from 'http'; +import * as https from 'https'; +import * as ws from 'ws'; + +declare module 'express' { + function Router(options?: RouterOptions): expressWs.Router; +} + +declare function expressWs(app: express.Application, server?: http.Server | https.Server, options?: expressWs.Options): expressWs.Instance; +declare namespace expressWs { + type Application = express.Application & WithWebsocketMethod; + type Router = express.Router & WithWebsocketMethod; + + interface Options { + leaveRouterUntouched?: boolean; + wsOptions?: ws.ServerOptions; + } + + interface RouterLike { + get: express.IRouterMatcher; + [key: string]: any; + [key: number]: any; + } + + interface Instance { + app: Application; + applyTo(target: RouterLike): void; + getWss(): ws.Server; + } + + type WebsocketRequestHandler = (ws: ws, req: express.Request, next: express.NextFunction) => void; + type WebsocketMethod = (route: core.PathParams, ...middlewares: WebsocketRequestHandler[]) => T; + + interface WithWebsocketMethod { + ws: WebsocketMethod; + } +} + +export = expressWs; diff --git a/types/express-ws/tsconfig.json b/types/express-ws/tsconfig.json new file mode 100644 index 0000000000..e2d5677145 --- /dev/null +++ b/types/express-ws/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "express-ws-tests.ts" + ] +} diff --git a/types/express-ws/tslint.json b/types/express-ws/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/express-ws/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/express-xml-bodyparser/express-xml-bodyparser-tests.ts b/types/express-xml-bodyparser/express-xml-bodyparser-tests.ts new file mode 100644 index 0000000000..e8deca25e3 --- /dev/null +++ b/types/express-xml-bodyparser/express-xml-bodyparser-tests.ts @@ -0,0 +1,10 @@ +import express = require('express'); +import xmlparser = require('express-xml-bodyparser'); + +const app: express.Express = express(); + +app.use(xmlparser()); + +app.post("/auth", xmlparser({explicitArray: false}), (req, res, next) => { + res.send("Success!"); +}); diff --git a/types/express-xml-bodyparser/index.d.ts b/types/express-xml-bodyparser/index.d.ts new file mode 100644 index 0000000000..1c674d71fb --- /dev/null +++ b/types/express-xml-bodyparser/index.d.ts @@ -0,0 +1,23 @@ +// Type definitions for express-xml-bodyparser 0.3 +// Project: https://github.com/macedigital/express-xml-bodyparser +// Definitions by: Notice Maker +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import { Request, Response, NextFunction } from 'express'; + +declare function xmlparser(options?: xmlparser.XmlparserOptions): (req: Request, res: Response, next: NextFunction) => void; + +declare namespace xmlparser { + let regexp: RegExp; + + interface XmlparserOptions { + async?: boolean; + explicitArray?: boolean; + normalize?: boolean; + normalizeTags?: boolean; + trim?: boolean; + } +} + +export = xmlparser; diff --git a/types/activex-iwshruntimelibrary/tsconfig.json b/types/express-xml-bodyparser/tsconfig.json similarity index 83% rename from types/activex-iwshruntimelibrary/tsconfig.json rename to types/express-xml-bodyparser/tsconfig.json index 1fa5abc39b..49f0ac53bc 100644 --- a/types/activex-iwshruntimelibrary/tsconfig.json +++ b/types/express-xml-bodyparser/tsconfig.json @@ -2,8 +2,7 @@ "compilerOptions": { "module": "commonjs", "lib": [ - "es5", - "scripthost" + "es6" ], "noImplicitAny": true, "noImplicitThis": true, @@ -19,6 +18,6 @@ }, "files": [ "index.d.ts", - "activex-iwshruntimelibrary-tests.ts" + "express-xml-bodyparser-tests.ts" ] } \ No newline at end of file diff --git a/types/express-xml-bodyparser/tslint.json b/types/express-xml-bodyparser/tslint.json new file mode 100644 index 0000000000..2750cc0197 --- /dev/null +++ b/types/express-xml-bodyparser/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } \ No newline at end of file diff --git a/types/extract-text-webpack-plugin/index.d.ts b/types/extract-text-webpack-plugin/index.d.ts index 61b381d253..f0cc7bf65c 100644 --- a/types/extract-text-webpack-plugin/index.d.ts +++ b/types/extract-text-webpack-plugin/index.d.ts @@ -4,16 +4,10 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -import { Plugin, NewLoader, OldLoader } from 'webpack'; +import { Plugin, Loader } from 'webpack'; export = ExtractTextPlugin; -/** - * extract-text-webpack-plugin has no support for .options instead of .query yet. - * See https://github.com/webpack/extract-text-webpack-plugin/issues/281 - */ -type Loader = string | OldLoader | NewLoader; - /** * Use an `ExtractTextPlugin` instance and a loader returned by `extract` in concert to write files to disk instead of loading them into others. * Usage example at https://github.com/webpack/extract-text-webpack-plugin#usage-example-with-css diff --git a/types/fabric/fabric-impl.d.ts b/types/fabric/fabric-impl.d.ts index 31509435a5..e35b0ebe0d 100644 --- a/types/fabric/fabric-impl.d.ts +++ b/types/fabric/fabric-impl.d.ts @@ -283,7 +283,7 @@ interface IObservable { * Observes specified event * @param eventName Object with key/value pairs (eg. {'after:render': handler, 'selection:cleared': handler}) */ - on(events: {[eventName: string]: (e: IEvent) => void}): T; + on(events: { [eventName: string]: (e: IEvent) => void }): T; /** * Fires event with an optional options object * @param eventName Event name to fire @@ -296,7 +296,7 @@ interface IObservable { * @param eventName Event name (eg. 'after:render') or object with key/value pairs (eg. {'after:render': handler, 'selection:cleared': handler}) * @param handler Function to be deleted from EventListeners */ - off(eventName?: string|any, handler?: (e: IEvent) => void): T; + off(eventName?: string | any, handler?: (e: IEvent) => void): T; } interface Callbacks { @@ -337,7 +337,7 @@ interface IObjectAnimation { * @param value Value to animate property * @param options The animation options */ - animate(property: string, value: number|string, options?: IAnimationOptions): Object; + animate(property: string, value: number | string, options?: IAnimationOptions): Object; /** * Animates object's properties * object.animate({ left: ..., top: ... }, { duration: ... }); @@ -350,7 +350,7 @@ interface IAnimationOptions { /** * Allows to specify starting value of animatable property (if we don't want current value to be used). */ - from?: string|number; + from?: string | number; /** * Defaults to 500 (ms). Can be used to change duration of an animation. */ @@ -443,7 +443,7 @@ export class Color { /** * Overlays color with another color */ - overlayWith(otherColor: string|Color): Color; + overlayWith(otherColor: string | Color): Color; /** * Returns new color object, when given a color in RGB format @@ -551,7 +551,7 @@ interface IGradient extends IGradientOptions { toLive(ctx: CanvasRenderingContext2D, object?: PathGroup): CanvasGradient; } interface IGrandientStatic { - new (options?: IGradientOptions): IGradient; + new(options?: IGradientOptions): IGradient; /** * Returns instance from an SVG element * @param el SVG gradient element @@ -612,10 +612,10 @@ interface IPatternOptions { /** * The source for the pattern */ - source: string|HTMLImageElement; + source: string | HTMLImageElement; } -export interface Pattern extends IPatternOptions {} -export class Pattern { +export interface Pattern extends IPatternOptions { } +export class Pattern { constructor(options?: IPatternOptions); initialise(options?: IPatternOptions): Pattern; @@ -797,10 +797,10 @@ interface IShadowOptions { */ offsetY: number; } -export interface Shadow extends IShadowOptions {} +export interface Shadow extends IShadowOptions { } export class Shadow { constructor(options?: IShadowOptions); - initialize(options?: IShadowOptions|string): Shadow; + initialize(options?: IShadowOptions | string): Shadow; /** * Returns object representation of a shadow */ @@ -874,7 +874,7 @@ interface IStaticCanvasOptions { * Background color of canvas instance. * Should be set via setBackgroundColor */ - backgroundColor?: string|Pattern; + backgroundColor?: string | Pattern; /** * Background image of canvas instance. * Should be set via setBackgroundImage @@ -902,7 +902,7 @@ interface IStaticCanvasOptions { * Overlay color of canvas instance. * Should be set via setOverlayColor */ - overlayColor?: string|Pattern; + overlayColor?: string | Pattern; /** * Overlay image of canvas instance. * Should be set via setOverlayImage @@ -922,14 +922,14 @@ interface IStaticCanvasOptions { */ stateful?: boolean; } -export interface StaticCanvas extends IObservable, IStaticCanvasOptions, ICollection, ICanvasAnimation {} +export interface StaticCanvas extends IObservable, IStaticCanvasOptions, ICollection, ICanvasAnimation { } export class StaticCanvas { /** * Constructor * @param element element to initialize instance on * @param [options] Options object */ - constructor(element: HTMLCanvasElement|string, options?: ICanvasOptions); + constructor(element: HTMLCanvasElement | string, options?: ICanvasOptions); /** * Calculates canvas element offset relative to the document @@ -943,7 +943,7 @@ export class StaticCanvas { * @param callback callback to invoke when image is loaded and set as an overlay * @param [options] Optional options to set for the {@link fabric.Image|overlay image}. */ - setOverlayImage(image: Image|string, callback: (img: HTMLImageElement) => void, options?: IImageOptions): this; + setOverlayImage(image: Image | string, callback: (img: HTMLImageElement) => void, options?: IImageOptions): this; /** * Sets {@link fabric.StaticCanvas#backgroundImage|background image} for this canvas @@ -951,21 +951,21 @@ export class StaticCanvas { * @param callback Callback to invoke when image is loaded and set as background * @param [options] Optional options to set for the {@link fabric.Image|background image}. */ - setBackgroundImage(image: Image|string, callback?: (img: HTMLImageElement) => void, options?: IImageOptions): this; + setBackgroundImage(image: Image | string, callback?: (img: HTMLImageElement) => void, options?: IImageOptions): this; /** * Sets {@link fabric.StaticCanvas#overlayColor|background color} for this canvas * @param overlayColor Color or pattern to set background color to * @param callback Callback to invoke when background color is set */ - setOverlayColor(overlayColor: string|Pattern, callback: (pattern: Pattern | undefined) => void): this; + setOverlayColor(overlayColor: string | Pattern, callback: (pattern: Pattern | undefined) => void): this; /** * Sets {@link fabric.StaticCanvas#backgroundColor|background color} for this canvas * @param backgroundColor Color or pattern to set background color to * @param callback Callback to invoke when background color is set */ - setBackgroundColor(backgroundColor: string|Pattern, callback: (pattern: Pattern | undefined) => void): StaticCanvas; + setBackgroundColor(backgroundColor: string | Pattern, callback: (pattern: Pattern | undefined) => void): StaticCanvas; /** * Returns canvas width (in px) @@ -982,14 +982,14 @@ export class StaticCanvas { * @param value Value to set width to * @param [options] Options object */ - setWidth(value: number|string, options?: ICanvasDimensionsOptions): this; + setWidth(value: number | string, options?: ICanvasDimensionsOptions): this; /** * Sets height of this canvas instance * @param value Value to set height to * @param [options] Options object */ - setHeight(value: number|string, options?: ICanvasDimensionsOptions): this; + setHeight(value: number | string, options?: ICanvasDimensionsOptions): this; /** * Sets dimensions (width, height) of this canvas instance. when options.cssOnly flag active you should also supply the unit of measure (px/%/em) @@ -1213,7 +1213,7 @@ export class StaticCanvas { * are initialized * @param [reviver] Method for further parsing of JSON elements, called after each fabric object created. */ - loadFromJSON(json: string|any, callback: () => void, reviver?: Function): this; + loadFromJSON(json: string | any, callback: () => void, reviver?: Function): this; /** * Clones canvas instance * @param [callback] Receives cloned instance as a first argument @@ -1364,8 +1364,8 @@ interface ICanvasOptions extends IStaticCanvasOptions { */ isDrawingMode?: boolean; } -export interface Canvas extends StaticCanvas {} -export interface Canvas extends ICanvasOptions {} +export interface Canvas extends StaticCanvas { } +export interface Canvas extends ICanvasOptions { } export class Canvas { /** * Constructor @@ -1509,7 +1509,7 @@ interface ICircleOptions extends IObjectOptions { */ endAngle?: number; } -export interface Circle extends Object, ICircleOptions {} +export interface Circle extends Object, ICircleOptions { } export class Circle { constructor(options?: ICircleOptions); @@ -1571,7 +1571,7 @@ interface IEllipseOptions extends IObjectOptions { */ ry?: number; } -export interface Ellipse extends Object, IEllipseOptions {} +export interface Ellipse extends Object, IEllipseOptions { } export class Ellipse { constructor(options?: IEllipseOptions); @@ -1621,7 +1621,7 @@ export class Ellipse { static fromObject(object: any): Ellipse; } -export interface Group extends Object, ICollection {} +export interface Group extends Object, ICollection { } export class Group { /** * Constructor @@ -1710,6 +1710,47 @@ export class Group { static fromObject(object: any, callback: (group: Group) => any): void; } +/////////////////////////////////////////////////////////////////////////////// +// ActiveSelection +////////////////////////////////////////////////////////////////////////////// +export interface ActiveSelection extends Object, ICollection { } +export class ActiveSelection { + /** + * Constructor + * @param objects ActiveSelection objects + * @param [options] Options object + */ + constructor(items?: Object[], options?: IObjectOptions); + + /** + * Change te activeSelection to a normal group, + * High level function that automatically adds it to canvas as + * active object. no events fired. + */ + toGroup(): Group; + + /** + * Removes objects from a collection, then renders canvas (if `renderOnAddRemove` is not `false`) + * @param object Zero or more fabric instances + * @return thisArg + * @chainable + */ + remove(...object: Object[]): Group; + + /** + * Returns string represenation of a group + */ + toString(): string; + + /** + * Returns {@link fabric.ActiveSelection} instance from an object representation + * @memberOf fabric.ActiveSelection + * @param object Object to create a group from + * @param [callback] Callback to invoke when an ActiveSelection instance is created + */ + static fromObject(object: Group, callback: (activeSelection: ActiveSelection) => void): void; +} + interface IImageOptions extends IObjectOptions { /** * crossOrigin value (one of "", "anonymous", "allow-credentials") @@ -1740,7 +1781,7 @@ interface IImageOptions extends IObjectOptions { */ filters?: IBaseFilter[]; } -interface Image extends Object, IImageOptions {} +interface Image extends Object, IImageOptions { } export class Image { /** * Constructor @@ -1749,7 +1790,7 @@ export class Image { */ constructor(element: HTMLImageElement, objObjects: IObjectOptions); - initialize(element?: string|HTMLImageElement, options?: IImageOptions): void; + initialize(element?: string | HTMLImageElement, options?: IImageOptions): void; /** * Applies filters assigned to this image (from "filters" array) * @param callback Callback is invoked when all filters have been applied and new image is generated @@ -1866,7 +1907,7 @@ interface ILineOptions extends IObjectOptions { */ y2: number; } -export interface Line extends Object, ILineOptions {} +export interface Line extends Object, ILineOptions { } export class Line { /** * Constructor @@ -2090,7 +2131,7 @@ interface IObjectOptions { /** * Shadow object representing shadow of this shape */ - shadow?: Shadow|string; + shadow?: Shadow | string; /** * Opacity of object's controlling borders when object is active and moving @@ -2209,7 +2250,7 @@ interface IObjectOptions { */ data?: any; } -export interface Object extends IObservable, IObjectOptions, IObjectAnimation {} +export interface Object extends IObservable, IObjectOptions, IObjectAnimation { } export class Object { getCurrentWidth(): number; getCurrentHeight(): number; @@ -2615,7 +2656,8 @@ export class Object { mt?: boolean; tl?: boolean; tr?: boolean; - mtr?: boolean; }): this; + mtr?: boolean; + }): this; // functions from geometry mixin // ------------------------------------------------------------------------------------------------------------------------------- @@ -2690,14 +2732,14 @@ interface IPathOptions extends IObjectOptions { */ minY?: number; } -export interface Path extends Object, IPathOptions {} +export interface Path extends Object, IPathOptions { } export class Path { /** * Constructor * @param path Path data (sequence of coordinates and corresponding "command" tokens) * @param [options] Options object */ - constructor(path?: string|any[], options?: IPathOptions); + constructor(path?: string | any[], options?: IPathOptions); pathOffset: Point; @@ -2830,7 +2872,7 @@ interface IPolygonOptions extends IObjectOptions { */ minY?: number; } -export interface Polygon extends IPolygonOptions {} +export interface Polygon extends IPolygonOptions { } export class Polygon extends Object { /** * Constructor @@ -2892,7 +2934,7 @@ interface IPolylineOptions extends IObjectOptions { */ minY?: number; } -export interface Polyline extends IPolylineOptions {} +export interface Polyline extends IPolylineOptions { } export class Polyline extends Object { /** * Constructor @@ -2952,7 +2994,7 @@ interface IRectOptions extends IObjectOptions { ry?: number; } -export interface Rect extends IRectOptions {} +export interface Rect extends IRectOptions { } export class Rect extends Object { /** * Constructor @@ -3003,7 +3045,7 @@ interface ITextOptions extends IObjectOptions { /** * Font weight (e.g. bold, normal, 400, 600, 800) */ - fontWeight?: number|string; + fontWeight?: number | string; /** * Font family */ @@ -3033,7 +3075,7 @@ interface ITextOptions extends IObjectOptions { * Shadow object representing shadow of this shape. * Backwards incompatibility note?: This property was named "textShadow" (String) until v1.2.11 */ - shadow?: Shadow|string; + shadow?: Shadow | string; /** * Background color of text lines */ @@ -3043,7 +3085,7 @@ interface ITextOptions extends IObjectOptions { useNative?: boolean; text?: string; } -export interface Text extends ITextOptions {} +export interface Text extends ITextOptions { } export class Text extends Object { /** * Constructor @@ -3086,12 +3128,12 @@ export class Text extends Object { /** * Retrieves object's fontWeight */ - getFontWeight(): number|string; + getFontWeight(): number | string; /** * Sets object's fontWeight * @param fontWeight Font weight */ - setFontWeight(fontWeight: string|number): Text; + setFontWeight(fontWeight: string | number): Text; /** * Retrieves object's fontFamily */ @@ -3240,7 +3282,7 @@ interface IITextOptions extends IObjectOptions, ITextOptions { */ caching?: boolean; } -export interface IText extends Text, IITextOptions {} +export interface IText extends Text, IITextOptions { } export class IText extends Object { /** * Constructor @@ -3525,14 +3567,14 @@ interface IAllFilters { * Constructor * @param [options] Options object */ - new (options?: any): IBaseFilter; + new(options?: any): IBaseFilter; }; Blend: { /** * Constructor * @param [options] Options object */ - new (options?: { color?: string; mode?: string; alpha?: number; image?: Image }): IBlendFilter; + new(options?: { color?: string; mode?: string; alpha?: number; image?: Image }): IBlendFilter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3540,7 +3582,7 @@ interface IAllFilters { fromObject(object: any): IBlendFilter }; Brightness: { - new (options?: { + new(options?: { /** * Value to brighten the image up (0..255) * @default 0 @@ -3554,7 +3596,7 @@ interface IAllFilters { fromObject(object: any): IBrightnessFilter }; Convolute: { - new (options?: { + new(options?: { opaque?: boolean, /** Filter matrix */ matrix?: number[], @@ -3566,7 +3608,7 @@ interface IAllFilters { fromObject(object: any): IConvoluteFilter }; GradientTransparency: { - new (options?: { + new(options?: { /** @default 100 */ threshold?: number; }): IGradientTransparencyFilter; @@ -3577,7 +3619,7 @@ interface IAllFilters { fromObject(object: any): IGradientTransparencyFilter }; Grayscale: { - new (options?: any): IGrayscaleFilter; + new(options?: any): IGrayscaleFilter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3589,7 +3631,7 @@ interface IAllFilters { * Constructor * @param [options] Options object */ - new (options?: any): IInvertFilter; + new(options?: any): IInvertFilter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3597,7 +3639,7 @@ interface IAllFilters { fromObject(object: any): IInvertFilter }; Mask: { - new (options?: { + new(options?: { /** Mask image object */ mask?: Image, /** @@ -3613,7 +3655,7 @@ interface IAllFilters { fromObject(object: any): IMaskFilter }; Multiply: { - new (options?: { + new(options?: { /** * Color to multiply the image pixels with * @default #000000 @@ -3627,7 +3669,7 @@ interface IAllFilters { fromObject(object: any): IMultiplyFilter }; Noise: { - new (options?: { + new(options?: { /** @default 0 */ noise: number, }): INoiseFilter; @@ -3638,7 +3680,7 @@ interface IAllFilters { fromObject(object: any): INoiseFilter }; Pixelate: { - new (options?: { + new(options?: { /** * Blocksize for pixelate * @default 4 @@ -3652,7 +3694,7 @@ interface IAllFilters { fromObject(object: any): IPixelateFilter }; RemoveWhite: { - new (options?: { + new(options?: { /** @default 30 */ threshold?: number, /** @default 20 */ @@ -3665,7 +3707,7 @@ interface IAllFilters { fromObject(object: any): IRemoveWhiteFilter }; Resize: { - new (options?: any): IResizeFilter; + new(options?: any): IResizeFilter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3673,7 +3715,7 @@ interface IAllFilters { fromObject(object: any): IResizeFilter }; Sepia2: { - new (options?: any): ISepia2Filter; + new(options?: any): ISepia2Filter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3681,7 +3723,7 @@ interface IAllFilters { fromObject(object: any): ISepia2Filter }; Sepia: { - new (options?: any): ISepiaFilter; + new(options?: any): ISepiaFilter; /** * Returns filter instance from an object representation * @param object Object to create an instance from @@ -3689,7 +3731,7 @@ interface IAllFilters { fromObject(object: any): ISepiaFilter }; Tint: { - new (options?: { + new(options?: { /** * Color to tint the image with * @default #000000 @@ -3864,7 +3906,7 @@ export class BaseBrush { * Backwards incompatibility note: This property replaces "shadowColor" (String), "shadowOffsetX" (Number), * "shadowOffsetY" (Number) and "shadowBlur" (Number) since v1.2.12 */ - shadow: Shadow|string; + shadow: Shadow | string; /** * Line endings style of a brush (one of "butt", "round", "square") */ @@ -3884,7 +3926,7 @@ export class BaseBrush { * Sets shadow of an object * @param [options] Options object or string (e.g. "2px 2px 10px rgba(0,0,0,0.2)") */ - setShadow(options: string|any): BaseBrush; + setShadow(options: string | any): BaseBrush; } export class CircleBrush extends BaseBrush { @@ -4092,7 +4134,7 @@ interface IUtilDomMisc { /** * Takes id and returns an element with that id (if one exists in a document) */ - getById(id: string|HTMLElement): HTMLElement; + getById(id: string | HTMLElement): HTMLElement; /** * Converts an array-like object (e.g. arguments or NodeList) to an array */ @@ -4116,7 +4158,7 @@ interface IUtilDomMisc { * @param wrapper Element to wrap with * @param [attributes] Attributes to set on a wrapper */ - wrapElement(element: HTMLElement, wrapper: HTMLElement|string, attributes?: any): HTMLElement; + wrapElement(element: HTMLElement, wrapper: HTMLElement | string, attributes?: any): HTMLElement; /** * Returns element scroll offsets * @param element Element to operate on @@ -4312,7 +4354,7 @@ interface IUtilMisc { * Returns converted pixels or original value not converted. * @param value number to operate on */ - parseUnit(value: number|string, fontSize?: number): number|string; + parseUnit(value: number | string, fontSize?: number): number | string; /** * Function which always returns `false`. @@ -4439,3 +4481,58 @@ interface IUtil extends IUtilAnimation, IUtilArc, IObservable, IUtilDomEv object: IUtilObject; string: IUtilString; } + +export interface Resources { + [key: string]: HTMLCanvasElement +} +export interface FilterBackend { + resources: Resources; + + applyFilters(filters: IBaseFilter[], sourceElement: HTMLImageElement | HTMLCanvasElement, sourceWidth: number, sourceHeight: number, targetCanvas: HTMLCanvasElement,cacheKey?: string): any; + + evictCachesForKey(cacheKey: string): void; + + dispose(): void; + + clearWebGLCaches(): void; + +} +export let filterBackend: FilterBackend; +export interface Canvas2dFilterBackend extends FilterBackend { } +export class Canvas2dFilterBackend { + constructor(); +} + +export interface GPUInfo{ + renderer:string; + vendor:string; +} + +export interface WebglFilterBackendOptions { + tileSize: number; +} +export interface WebglFilterBackend extends FilterBackend, WebglFilterBackendOptions { + setupGLContext(width: number, height: number): void; + + chooseFastestCopyGLTo2DMethod(width: number, height: number): void; + + createWebGLCanvas(width: number, height: number): void; + + applyFiltersDebug(filters: IBaseFilter[], sourceElement: HTMLImageElement | HTMLCanvasElement, sourceWidth: number, sourceHeight: number, targetCanvas: HTMLCanvasElement, cacheKey?: string): any; + + glErrorToString(context: any, errorCode: any): string; + + createTexture(gl: WebGLRenderingContext, width: number, height: number, textureImageSource?: HTMLImageElement | HTMLCanvasElement): WebGLTexture; + + getCachedTexture(uniqueId: string, textureImageSource: HTMLImageElement | HTMLCanvasElement): WebGLTexture; + + copyGLTo2D(gl: WebGLRenderingContext, pipelineState: any): void; + + captureGPUInfo(): GPUInfo; + +} + +export class WebglFilterBackend { + constructor(options?: WebglFilterBackendOptions); +} + diff --git a/types/fabric/index.d.ts b/types/fabric/index.d.ts index 38277c5708..76ed1ab054 100644 --- a/types/fabric/index.d.ts +++ b/types/fabric/index.d.ts @@ -5,6 +5,7 @@ // Michael Randolph // Tiger Oakes // Brian Martinson +// Rogerio Teixeira // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.1 export import fabric = require("./fabric-impl"); diff --git a/types/fabric/test/index.ts b/types/fabric/test/index.ts index dfdaafce06..1060525a00 100644 --- a/types/fabric/test/index.ts +++ b/types/fabric/test/index.ts @@ -1061,3 +1061,9 @@ function sample10() { canvas.add(objB); const objArray = canvas.getActiveObjects(); } + +function sample11() { + const canvas2dFilterBackend = new fabric.Canvas2dFilterBackend(); + const webglFilterBackend = new fabric.WebglFilterBackend(); + fabric.filterBackend = new fabric.Canvas2dFilterBackend(); +} diff --git a/types/fb-watchman/fb-watchman-tests.ts b/types/fb-watchman/fb-watchman-tests.ts new file mode 100644 index 0000000000..9b1aeb387b --- /dev/null +++ b/types/fb-watchman/fb-watchman-tests.ts @@ -0,0 +1,14 @@ +import { Client } from "fb-watchman"; + +const client = new Client(); +const clientB = new Client({}); + +client.capabilityCheck({ optional: [], required: ['relative_root'] }, e => { + if (e) { + client.end(); + return; + } +}); +client.connect(); + +client.command(['watch-project', '/tmp'], () => {}); diff --git a/types/fb-watchman/index.d.ts b/types/fb-watchman/index.d.ts new file mode 100644 index 0000000000..a009cbe247 --- /dev/null +++ b/types/fb-watchman/index.d.ts @@ -0,0 +1,38 @@ +// Type definitions for fb-watchman 2.0 +// Project: https://facebook.github.io/watchman/ +// Definitions by: Wu Haotian +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import { EventEmitter } from 'events'; + +// Emit the responses to these when they get sent down to us +export type UnilateralTags = 'unilateralTags' | 'log'; + +export interface ClientOptions { + /** + * Absolute path to the watchman binary. + * If not provided, the Client locates the binary using the PATH specified + * by the node child_process's default env. + */ + watchmanBinaryPath?: string; +} + +export interface Capabilities { + optional: any[]; + required: any[]; +} + +export type doneCallback = (error?: Error | null, resp?: any) => any; + +export class Client extends EventEmitter { + constructor(options?: ClientOptions) + sendNextCommand(): void; + cancelCommands(why: string): void; + connect(): void; + command(args: any, done: doneCallback): void; + capabilityCheck( + caps: Capabilities, + done: doneCallback, + ): void; + end(): void; +} diff --git a/types/fb-watchman/tsconfig.json b/types/fb-watchman/tsconfig.json new file mode 100644 index 0000000000..83ad2335ea --- /dev/null +++ b/types/fb-watchman/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "fb-watchman-tests.ts" + ] +} diff --git a/types/fb-watchman/tslint.json b/types/fb-watchman/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/fb-watchman/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/feather-icons/feather-icons-tests.ts b/types/feather-icons/feather-icons-tests.ts new file mode 100644 index 0000000000..fc71f25798 --- /dev/null +++ b/types/feather-icons/feather-icons-tests.ts @@ -0,0 +1,7 @@ +import * as feather from "feather-icons"; + +feather.replace(); // $ExpectType void +feather.icons[""].toSvg(); // $ExpectType string +feather.icons[""].name; // $ExpectType string +feather.icons[""].contents; // $ExpectType string +feather.icons[""].tags; // $ExpectType string[] diff --git a/types/feather-icons/index.d.ts b/types/feather-icons/index.d.ts new file mode 100644 index 0000000000..34acfb80aa --- /dev/null +++ b/types/feather-icons/index.d.ts @@ -0,0 +1,22 @@ +// Type definitions for feather-icons 4.7 +// Project: https://github.com/feathericons/feather#readme +// Definitions by: Jinesh Shah +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export as namespace feather; + +export interface FeatherAttributes { + [key: string]: string | number; +} + +export function replace(options?: FeatherAttributes): void; + +export const icons: { + [key: string]: { + name: string; + contents: string; + tags: string[]; + attrs: FeatherAttributes; + toSvg: (options?: FeatherAttributes) => string; + }; +}; diff --git a/types/feather-icons/tsconfig.json b/types/feather-icons/tsconfig.json new file mode 100644 index 0000000000..ab8237b4de --- /dev/null +++ b/types/feather-icons/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "feather-icons-tests.ts"] +} diff --git a/types/feather-icons/tslint.json b/types/feather-icons/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/feather-icons/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/feathersjs__authentication-oauth2/feathersjs__authentication-oauth2-tests.ts b/types/feathersjs__authentication-oauth2/feathersjs__authentication-oauth2-tests.ts index f5ebaa4c1a..34dba17062 100644 --- a/types/feathersjs__authentication-oauth2/feathersjs__authentication-oauth2-tests.ts +++ b/types/feathersjs__authentication-oauth2/feathersjs__authentication-oauth2-tests.ts @@ -1,4 +1,10 @@ import feathers, { Application } from '@feathersjs/feathers'; -import feathersAuthenticationOAuth2 from '@feathersjs/authentication-oauth2'; +import feathersAuthenticationOAuth2, { Verifier } from '@feathersjs/authentication-oauth2'; const app: Application<{}> = feathers().configure(feathersAuthenticationOAuth2()); + +class CustomVerifier extends Verifier { + constructor(app: Application<{}>, options: any = {}) { + super(app, options); + } +} diff --git a/types/feathersjs__authentication-oauth2/index.d.ts b/types/feathersjs__authentication-oauth2/index.d.ts index 3037c1c47a..b2bf133c68 100644 --- a/types/feathersjs__authentication-oauth2/index.d.ts +++ b/types/feathersjs__authentication-oauth2/index.d.ts @@ -60,10 +60,10 @@ export interface FeathersAuthenticationOAuth2Options { /** * A Verifier class. Defaults to the built-in one but can be a custom one. See below for details. */ - Verifier: OAuth2Verifier; + Verifier: Verifier; } -export class OAuth2Verifier { +export class Verifier { constructor(app: Application, options: any) _updateEntity(entity: any, data: { profile: any, accessToken: string, refreshToken: string }): Promise; // updates an existing entity diff --git a/types/feathersjs__errors/index.d.ts b/types/feathersjs__errors/index.d.ts index 9eacd9ce7e..056acff676 100644 --- a/types/feathersjs__errors/index.d.ts +++ b/types/feathersjs__errors/index.d.ts @@ -9,67 +9,67 @@ export class FeathersError extends Error { } export class BadRequest extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class NotAuthenticated extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class PaymentError extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class Forbidden extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class NotFound extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class MethodNotAllowed extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class NotAcceptable extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class Timeout extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class Conflict extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class LengthRequired extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class Unprocessable extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class TooManyRequests extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class GeneralError extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class NotImplemented extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class BadGateway extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export class Unavailable extends FeathersError { - constructor(msg: string | Error, data?: any); + constructor(msg?: string | Error, data?: any); } export interface Errors { diff --git a/types/feathersjs__feathers/index.d.ts b/types/feathersjs__feathers/index.d.ts index c0fa3d9946..b3a0f60667 100644 --- a/types/feathersjs__feathers/index.d.ts +++ b/types/feathersjs__feathers/index.d.ts @@ -45,9 +45,9 @@ export interface Paginated { } // tslint:disable-next-line void-return -export type Hook = (hook: HookContext) => (Promise> | void); +export type Hook = (hook: HookContext) => (Promise | void); -export interface HookContext { +export interface HookContext { app?: Application; data?: T; error?: any; diff --git a/types/filter-invalid-dom-props/filter-invalid-dom-props-tests.ts b/types/filter-invalid-dom-props/filter-invalid-dom-props-tests.ts new file mode 100644 index 0000000000..5e55ae35a2 --- /dev/null +++ b/types/filter-invalid-dom-props/filter-invalid-dom-props-tests.ts @@ -0,0 +1,4 @@ +import filterInvalidDomProps from 'filter-invalid-dom-props'; + +// $ExpectType Partial<{ notADomProp: boolean; }> +filterInvalidDomProps({ notADomProp: true }); diff --git a/types/filter-invalid-dom-props/index.d.ts b/types/filter-invalid-dom-props/index.d.ts new file mode 100644 index 0000000000..ee74aae22e --- /dev/null +++ b/types/filter-invalid-dom-props/index.d.ts @@ -0,0 +1,11 @@ +// Type definitions for filter-invalid-dom-props 2.0 +// Project: https://www.npmjs.com/package/filter-invalid-dom-props +// Definitions by: icopp +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.1 + +// Note that the below can't actually be fully typed in the latest version of +// Typescript, because there's no way to regex-match against `data-` or `aria-` +// (which this function allows in addition to a list of static props). + +export default function filterInvalidDOMProps(props: T): Partial; diff --git a/types/filter-invalid-dom-props/tsconfig.json b/types/filter-invalid-dom-props/tsconfig.json new file mode 100644 index 0000000000..923a354c4e --- /dev/null +++ b/types/filter-invalid-dom-props/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "filter-invalid-dom-props-tests.ts" + ] +} diff --git a/types/filter-invalid-dom-props/tslint.json b/types/filter-invalid-dom-props/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/filter-invalid-dom-props/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/firefox-webext-browser/firefox-webext-browser-tests.ts b/types/firefox-webext-browser/firefox-webext-browser-tests.ts index 38169d573a..53f3b5a928 100644 --- a/types/firefox-webext-browser/firefox-webext-browser-tests.ts +++ b/types/firefox-webext-browser/firefox-webext-browser-tests.ts @@ -12,3 +12,5 @@ browser._manifest.NativeManifest; // $ExpectError // browser.runtime const port = browser.runtime.connect(); port.postMessage(); // $ExpectError + +browser.bookmarks.getTree(); diff --git a/types/firefox-webext-browser/index.d.ts b/types/firefox-webext-browser/index.d.ts old mode 100644 new mode 100755 index d04b7f6aca..1ce4024f4d --- a/types/firefox-webext-browser/index.d.ts +++ b/types/firefox-webext-browser/index.d.ts @@ -3915,10 +3915,6 @@ declare namespace browser.bookmarks { type?: BookmarkTreeNodeType; } - export {_import as import}; - - export {_export as export}; - /* bookmarks functions */ /** * Retrieves the specified BookmarkTreeNode(s). @@ -3986,18 +3982,6 @@ declare namespace browser.bookmarks { /** Recursively removes a bookmark folder. */ function removeTree(id: string): Promise; - /** - * Imports bookmarks from an html bookmark file - * @deprecated Unsupported on Firefox at this time. - */ - function _import(): Promise; - - /** - * Exports bookmarks to an html bookmark file - * @deprecated Unsupported on Firefox at this time. - */ - function _export(): Promise; - /* bookmarks events */ /** Fired when a bookmark or folder is created. */ const onCreated: WebExtEvent<(id: string, bookmark: BookmarkTreeNode) => void>; diff --git a/types/flowjs/flowjs-tests.ts b/types/flowjs/flowjs-tests.ts index efb2c30f5b..6167e7f58f 100644 --- a/types/flowjs/flowjs-tests.ts +++ b/types/flowjs/flowjs-tests.ts @@ -4,7 +4,7 @@ var flowObject: flowjs.IFlow; var bool: boolean = flowObject.support; bool = flowObject.supportDirectory; -var obj: Object = flowObject.opts; +var flowOpts: flowjs.IFlowOptions = flowObject.opts; var flowFileArray: flowjs.IFlowFile[] = flowObject.files; flowObject.assignBrowse( [], false, false, {}); diff --git a/types/flowjs/index.d.ts b/types/flowjs/index.d.ts index 7d1f922330..0a6c361c73 100644 --- a/types/flowjs/index.d.ts +++ b/types/flowjs/index.d.ts @@ -7,7 +7,7 @@ declare namespace flowjs { interface IFlow { support: boolean; supportDirectory: boolean; - opts: Object; + opts: IFlowOptions; files: IFlowFile[]; assignBrowse(domNodes: HTMLElement[], isDirectory: boolean, singleFile: boolean, attributes: Object): void; diff --git a/types/fluxible-router/index.d.ts b/types/fluxible-router/index.d.ts new file mode 100644 index 0000000000..2dea024107 --- /dev/null +++ b/types/fluxible-router/index.d.ts @@ -0,0 +1,28 @@ +// Type definitions for fluxible-router 1.5 +// Project: https://github.com/yahoo/fluxible#readme +// Definitions by: xbim +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 +/// +import * as React from 'react'; +import { FluxibleContext } from 'fluxible'; +import BaseStore = require('fluxible/addons/BaseStore'); + +export class NavLink extends React.Component { } + +export class RouteStore extends BaseStore { + static withStaticRoutes(routes: object): typeof RouteStore; +} + +export function handleHistory(Component: typeof React.Component, opts?: object): typeof React.Component; + +export function navigateAction(context: FluxibleContext, params: object): undefined; + +export class NavLinkProps { + href?: string; + routeName?: string; + activeStyle?: object; + preserveScrollPosition?: boolean; + className?: string; + type?: string; +} diff --git a/types/fluxible-router/tsconfig.json b/types/fluxible-router/tsconfig.json new file mode 100644 index 0000000000..1ce319bb08 --- /dev/null +++ b/types/fluxible-router/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "esModuleInterop": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts" + ] +} diff --git a/types/fluxible-router/tslint.json b/types/fluxible-router/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/fluxible-router/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/fluxible/addons/BaseStore.d.ts b/types/fluxible/addons/BaseStore.d.ts new file mode 100644 index 0000000000..78b51c53c5 --- /dev/null +++ b/types/fluxible/addons/BaseStore.d.ts @@ -0,0 +1,4 @@ +/// +import BaseStore = require('dispatchr/addons/BaseStore'); + +export = BaseStore; diff --git a/types/fluxible/addons/createStore.d.ts b/types/fluxible/addons/createStore.d.ts new file mode 100644 index 0000000000..319a02dc51 --- /dev/null +++ b/types/fluxible/addons/createStore.d.ts @@ -0,0 +1,3 @@ +import createStore = require('dispatchr/addons/createStore'); + +export = createStore; diff --git a/types/fluxible/fluxible-tests.ts b/types/fluxible/fluxible-tests.ts new file mode 100644 index 0000000000..27de6d1b1e --- /dev/null +++ b/types/fluxible/fluxible-tests.ts @@ -0,0 +1,36 @@ +import { createDispatcher, Store } from 'dispatchr'; +import createStore = require('fluxible/addons/createStore'); +import BaseStore = require('fluxible/addons/BaseStore'); +import { Fluxible } from 'fluxible'; + +const TestStore = createStore({ + storeName: 'TestStore', + + handlers: { + ACTION_NAME: 'actionHandler' + }, + + statics: { + staticMethod() { + } + }, + + initialize() {}, +}); + +class ExtendedStore extends BaseStore { + static handlers = { + ACTION_NAME: 'actionHandler' + }; + + actionHandler() { + this.emitChange(); + } +} + +const app = new Fluxible({ + component: {} +}); + +app.registerStore(TestStore); +app.registerStore(ExtendedStore); diff --git a/types/fluxible/index.d.ts b/types/fluxible/index.d.ts new file mode 100644 index 0000000000..d317662e1b --- /dev/null +++ b/types/fluxible/index.d.ts @@ -0,0 +1,126 @@ +// Type definitions for fluxible 1.4 +// Project: https://fluxible.io/ +// Definitions by: xbim +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.5 +/// +import { Dispatcher, DispatcherInterface, StoreClass } from 'dispatchr'; +import BaseStore = require('./addons/BaseStore'); + +export interface FluxibleConfiguration { + /** + * App level component action handler + */ + componentActionHandler?: () => void; + /** + * Stores your top level React component for access using `getComponent()` + */ + component: any; +} + +/** + * Provides a structured way of registering an application's configuration and + * resources. + */ +export class Fluxible { + /** + * @param [options] + * @example + * var app = new Fluxible({ + * component: require('./components/App.jsx') + * }); + */ + constructor(options?: FluxibleConfiguration); + + /** + * Creates an isolated context for a request/session + * @param [contextOptions] The options object. Please refer to FluxibleContext's constructor + * doc for supported subfields and detailed description. + */ + createContext(contextOptions?: any): FluxibleContext; + + /** + * Creates a new dispatcher instance using the application's dispatchr class. Used by + * FluxibleContext to create new dispatcher instance + * @param contextOptions The context options to be provided to each store instance + */ + createDispatcherInstance(contextOptions?: any): Dispatcher; + + /** + * Provides plugin mechanism for adding application level settings that are persisted + * between server/client and also modification of the FluxibleContext + * @param plugin + * @param plugin.name Name of the plugin + * @param plugin.plugContext Method called after context is created to allow + * dynamically plugging the context + * @param [plugin.dehydrate] Method called to serialize the plugin settings to be persisted + * to the client + * @param [plugin.rehydrate] Method called to rehydrate the plugin settings from the server + */ + plug(plugin: any): void; + + /** + * Provides access to a plugin instance by name + * @param pluginName The plugin name + */ + getPlugin(pluginName: string): any; + + /** + * Getter for the top level react component for the application + */ + getComponent(): any; + + /** + * Registers a store to the dispatcher so it can listen for actions + */ + registerStore(store: StoreClass| typeof BaseStore): void; + + /** + * Creates a serializable state of the application and a given context for sending to the client + * @param context + */ + dehydrate(context?: FluxibleContext): any; + + /** + * Rehydrates the application and creates a new context with the state from the server + * @param obj Raw object of dehydrated state + * @param obj.plugins Dehydrated app plugin state + * @param obj.context Dehydrated context state. See FluxibleContext's + * rehydrate() for subfields in this object. + * @param callback + * @async Rehydration may require more asset loading or async IO calls + */ + rehydrate(state: any): void; +} + +/** + * A request or browser-session context + */ +export class FluxibleContext { + /** + * @param options The options sharable by the context and context plugins + */ + + constructor(options?: FluxibleConfiguration); + + /** + * Provides plugin mechanism for adding application level settings that are persisted + * between server/client and also modification of the FluxibleContext + */ + plug(plugin: any): void; + + /** + * Returns a serializable context state + */ + dehydrate(): any; + + /** + * Rehydrates the context state + */ + rehydrate(state: any): void; + + /** + * Getter for store from dispatcher + */ + getStore(store: { new(dispatcher?: DispatcherInterface): T; }): T; +} diff --git a/types/fluxible/tsconfig.json b/types/fluxible/tsconfig.json new file mode 100644 index 0000000000..9af8323ce8 --- /dev/null +++ b/types/fluxible/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "esModuleInterop": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "addons/createStore.d.ts", + "addons/BaseStore.d.ts", + "fluxible-tests.ts" + ] +} diff --git a/types/fluxible/tslint.json b/types/fluxible/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/fluxible/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/focus-within/index.d.ts b/types/focus-within/index.d.ts new file mode 100644 index 0000000000..4a8778fe05 --- /dev/null +++ b/types/focus-within/index.d.ts @@ -0,0 +1,16 @@ +// Type definitions for focus-within 1.0 +// Project: https://github.com/jonathantneal/focus-within#readme +// Definitions by: Damien Erambert +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare namespace focusWithin { + interface FocusWithinOpts { + attr?: boolean; + className?: string; + } +} + +declare function focusWithin(document: HTMLDocument, opts?: focusWithin.FocusWithinOpts): void; + +export as namespace focusWithin; +export = focusWithin; diff --git a/types/focus-within/test/focus-within-global-tests.ts b/types/focus-within/test/focus-within-global-tests.ts new file mode 100644 index 0000000000..51ddc6aad5 --- /dev/null +++ b/types/focus-within/test/focus-within-global-tests.ts @@ -0,0 +1,10 @@ +/* + * This file tests the typings of the global export of `focus-within` + */ + +focusWithin(document); + +focusWithin(document, { + attr: false, + className: 'foo' +}); diff --git a/types/focus-within/test/focus-within-import-default-tests.ts b/types/focus-within/test/focus-within-import-default-tests.ts new file mode 100644 index 0000000000..627dce9660 --- /dev/null +++ b/types/focus-within/test/focus-within-import-default-tests.ts @@ -0,0 +1,11 @@ +/* + * This file tests the typings of the default export of `focus-within` + */ +import focusWithin = require("focus-within"); + +focusWithin(document); + +focusWithin(document, { + attr: false, + className: 'foo' +}); diff --git a/types/focus-within/tsconfig.json b/types/focus-within/tsconfig.json new file mode 100644 index 0000000000..976335025f --- /dev/null +++ b/types/focus-within/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "test/focus-within-global-tests.ts", + "test/focus-within-import-default-tests.ts" + ] +} diff --git a/types/focus-within/tslint.json b/types/focus-within/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/focus-within/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/fork-ts-checker-webpack-plugin/fork-ts-checker-webpack-plugin-tests.ts b/types/fork-ts-checker-webpack-plugin/fork-ts-checker-webpack-plugin-tests.ts new file mode 100644 index 0000000000..78ead793b4 --- /dev/null +++ b/types/fork-ts-checker-webpack-plugin/fork-ts-checker-webpack-plugin-tests.ts @@ -0,0 +1,24 @@ +import { Configuration } from 'webpack'; +import * as ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin'; + +let config: Configuration = { + plugins: [ + new ForkTsCheckerWebpackPlugin() + ] +}; + +config = { + plugins: [ + new ForkTsCheckerWebpackPlugin({}) + ] +}; + +config = { + plugins: [ + new ForkTsCheckerWebpackPlugin({ + vue: true + }) + ] +}; + +export default config; diff --git a/types/fork-ts-checker-webpack-plugin/index.d.ts b/types/fork-ts-checker-webpack-plugin/index.d.ts new file mode 100644 index 0000000000..ace3db5b24 --- /dev/null +++ b/types/fork-ts-checker-webpack-plugin/index.d.ts @@ -0,0 +1,104 @@ +// Type definitions for fork-ts-checker-webpack-plugin 0.4 +// Project: https://github.com/Realytics/fork-ts-checker-webpack-plugin#readme +// Definitions by: JounQin +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +import { RuleFailure } from 'tslint'; +import { Diagnostic } from 'typescript'; +import { Plugin } from 'webpack'; + +declare namespace ForkTsCheckerWebpackPlugin { + type ErrorType = 'diagnostic' | 'lint'; + type Severity = 'error' | 'warning'; + + interface NormalizedMessageJson { + type: ErrorType; + code: string | number; + severity: Severity; + content: string; + file: string; + line: number; + character: number; + } + + class NormalizedMessage { + static TYPE_DIAGNOSTIC: ErrorType; + static TYPE_LINT: ErrorType; + static SEVERITY_ERROR: Severity; + static SEVERITY_WARNING: Severity; + type: ErrorType; + code: string | number; + severity: Severity; + content: string; + file: string; + line: number; + character: number; + constructor(data: NormalizedMessageJson); + static createFromDiagnostic(diagnostic: Diagnostic): NormalizedMessage; + static createFromLint(lint: RuleFailure): NormalizedMessage; + static createFromJSON(json: NormalizedMessageJson): NormalizedMessage; + static compare( + messageA: NormalizedMessage, + messageB: NormalizedMessage, + ): number; + static equals( + messageA: NormalizedMessage, + messageB: NormalizedMessage, + ): boolean; + static deduplicate(messages: NormalizedMessage[]): NormalizedMessage[]; + static compareTypes(typeA: ErrorType, typeB: ErrorType): number; + static compareSeverities( + severityA: Severity, + severityB: Severity, + ): number; + static compareOptionalStrings(stringA: string, stringB: string): number; + static compareNumbers(numberA: number, numberB: number): number; + toJSON(): NormalizedMessageJson; + getType(): ErrorType; + isDiagnosticType(): boolean; + isLintType(): boolean; + getCode(): string | number; + getFormattedCode(): string | number; + getSeverity(): Severity; + isErrorSeverity(): boolean; + isWarningSeverity(): boolean; + getContent(): string; + getFile(): string; + getLine(): number; + getCharacter(): number; + } + + type Formatter = (message: NormalizedMessage, useColors: boolean) => string; + + interface Options { + tsconfig?: string; + tslint?: string | true; + watch?: string | string[]; + async?: boolean; + ignoreDiagnostics?: number[]; + ignoreLints?: string[]; + colors?: boolean; + logger?: Console; + formatter?: 'default' | 'codeframe' | Formatter; + formatterOptions?: { + highlightCode?: boolean + linesAbove?: number + linesBelow?: number + forceColor?: boolean + }; + silent?: boolean; + checkSyntacticErrors?: boolean; + memoryLimit?: number; + workers?: number; + vue?: boolean; + } +} + +declare class ForkTsCheckerWebpackPlugin extends Plugin { + constructor(options?: ForkTsCheckerWebpackPlugin.Options); +} + +export = ForkTsCheckerWebpackPlugin; diff --git a/types/fork-ts-checker-webpack-plugin/tsconfig.json b/types/fork-ts-checker-webpack-plugin/tsconfig.json new file mode 100644 index 0000000000..cfd6ee81db --- /dev/null +++ b/types/fork-ts-checker-webpack-plugin/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "fork-ts-checker-webpack-plugin-tests.ts" + ] +} diff --git a/types/fork-ts-checker-webpack-plugin/tslint.json b/types/fork-ts-checker-webpack-plugin/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/fork-ts-checker-webpack-plugin/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/formidable/index.d.ts b/types/formidable/index.d.ts index 8163fa5894..da5c730ae8 100644 --- a/types/formidable/index.d.ts +++ b/types/formidable/index.d.ts @@ -14,6 +14,7 @@ export declare class IncomingForm extends events.EventEmitter { encoding: string; uploadDir: string; keepExtensions: boolean; + maxFileSize: number; maxFieldsSize: number; maxFields: number; hash: string | boolean; diff --git a/types/freshy/freshy-tests.ts b/types/freshy/freshy-tests.ts new file mode 100644 index 0000000000..406791d0eb --- /dev/null +++ b/types/freshy/freshy-tests.ts @@ -0,0 +1,21 @@ +import { unload, reload, freshy } from 'freshy'; +import minimist = require('minimist'); + +declare function require(x: string): any; + +unload('minimist'); // $ExpectType boolean + +const reloaded = reload('minimist'); // $ExpectType any +minimist === reloaded; // false + +const freshlyLoaded = freshy('minimist'); // $ExpectType any +minimist === freshlyLoaded; // false + +let alsofresh: any; +// $ExpectType any +const fresh = freshy('minimist', (fresh) => { + alsofresh = require('minimist'); + fresh === alsofresh; // true +}); +minimist === fresh; // false +fresh === alsofresh; // true diff --git a/types/freshy/index.d.ts b/types/freshy/index.d.ts new file mode 100644 index 0000000000..93b424143a --- /dev/null +++ b/types/freshy/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for freshy 1.0 +// Project: https://github.com/krakenjs/freshy#readme +// Definitions by: Nikita Volodin +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export function unload(module: string): boolean; +export function reload(module: string): any; +export function freshy(module: string, cb?: (module: any) => any): any; diff --git a/types/freshy/tsconfig.json b/types/freshy/tsconfig.json new file mode 100644 index 0000000000..7cc3f4d9f4 --- /dev/null +++ b/types/freshy/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "freshy-tests.ts" + ] +} diff --git a/types/freshy/tslint.json b/types/freshy/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/freshy/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/fs-extra-promise-es6/fs-extra-promise-es6-tests.ts b/types/fs-extra-promise-es6/fs-extra-promise-es6-tests.ts index 337dd1ca0f..bdff193912 100644 --- a/types/fs-extra-promise-es6/fs-extra-promise-es6-tests.ts +++ b/types/fs-extra-promise-es6/fs-extra-promise-es6-tests.ts @@ -14,7 +14,7 @@ declare const dir: string; declare const path: string; declare const data: any; declare const object: any; -let buffer: NodeBuffer; +let buffer: Buffer; declare const modeNum: number; declare const modeStr: string; declare const encoding: string; @@ -148,19 +148,19 @@ fs.futimes(fd, atime, mtime, errorCallback); fs.futimesSync(fd, atime, mtime); fs.fsync(fd, errorCallback); fs.fsyncSync(fd); -fs.write(fd, buffer, offset, length, position, (err: Error, written: number, buffer: NodeBuffer) => { +fs.write(fd, buffer, offset, length, position, (err: Error, written: number, buffer: Buffer) => { }); num = fs.writeSync(fd, buffer, offset, length, position); -fs.read(fd, buffer, offset, length, position, (err: Error, bytesRead: number, buffer: NodeBuffer) => { +fs.read(fd, buffer, offset, length, position, (err: Error, bytesRead: number, buffer: Buffer) => { }); num = fs.readSync(fd, buffer, offset, length, position); -fs.readFile(filename, (err: Error, data: NodeBuffer) => { +fs.readFile(filename, (err: Error, data: Buffer) => { }); fs.readFile(filename, encoding, (err: Error, data: string) => { }); fs.readFile(filename, openOpts, (err: Error, data: string) => { }); -fs.readFile(filename, (err: Error, data: NodeBuffer) => { +fs.readFile(filename, (err: Error, data: Buffer) => { }); buffer = fs.readFileSync(filename); str = fs.readFileSync(filename, encoding); diff --git a/types/fs-extra-promise-es6/index.d.ts b/types/fs-extra-promise-es6/index.d.ts index 0f52b5c02e..2b7dacd108 100644 --- a/types/fs-extra-promise-es6/index.d.ts +++ b/types/fs-extra-promise-es6/index.d.ts @@ -113,13 +113,13 @@ export function futimes(fd: number, atime: number, mtime: number, callback?: (er export function futimesSync(fd: number, atime: number, mtime: number): void; export function fsync(fd: number, callback?: (err: Error) => void): void; export function fsyncSync(fd: number): void; -export function write(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number, callback?: (err: Error, written: number, buffer: NodeBuffer) => void): void; -export function writeSync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): number; -export function read(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number, callback?: (err: Error, bytesRead: number, buffer: NodeBuffer) => void): void; -export function readSync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): number; +export function write(fd: number, buffer: Buffer, offset: number, length: number, position: number, callback?: (err: Error, written: number, buffer: Buffer) => void): void; +export function writeSync(fd: number, buffer: Buffer, offset: number, length: number, position: number): number; +export function read(fd: number, buffer: Buffer, offset: number, length: number, position: number, callback?: (err: Error, bytesRead: number, buffer: Buffer) => void): void; +export function readSync(fd: number, buffer: Buffer, offset: number, length: number, position: number): number; export function readFile(filename: string, options: OpenOptions | string, callback: (err: Error, data: string) => void): void; -export function readFile(filename: string, callback: (err: Error, data: NodeBuffer) => void): void; -export function readFileSync(filename: string): NodeBuffer; +export function readFile(filename: string, callback: (err: Error, data: Buffer) => void): void; +export function readFileSync(filename: string): Buffer; export function readFileSync(filename: string, options: OpenOptions | string): string; export function writeFile(filename: string, data: any, callback?: (err: Error) => void): void; export function writeFile(filename: string, data: any, options: OpenOptions | string, callback?: (err: Error) => void): void; @@ -201,10 +201,10 @@ export function openAsync(path: string, flags: string, mode?: string): Promise; export function futimesAsync(fd: number, atime: number, mtime: number): Promise; export function fsyncAsync(fd: number): Promise; -export function writeAsync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): Promise<[number, NodeBuffer]>; -export function readAsync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): Promise<[number, NodeBuffer]>; +export function writeAsync(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<[number, Buffer]>; +export function readAsync(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<[number, Buffer]>; export function readFileAsync(filename: string, options: OpenOptions | string): Promise; -export function readFileAsync(filename: string): Promise; +export function readFileAsync(filename: string): Promise; export function writeFileAsync(filename: string, data: any, options?: OpenOptions | string): Promise; export function appendFileAsync(filename: string, data: any, option?: OpenOptions | string): Promise; diff --git a/types/fs-extra-promise/fs-extra-promise-tests.ts b/types/fs-extra-promise/fs-extra-promise-tests.ts index f273d6efb6..61549a55ad 100644 --- a/types/fs-extra-promise/fs-extra-promise-tests.ts +++ b/types/fs-extra-promise/fs-extra-promise-tests.ts @@ -16,7 +16,7 @@ declare const data: any; declare const object: object; declare const buf: Buffer; let strOrBuf: string | Buffer; -let buffer: NodeBuffer; +let buffer: Buffer; declare const modeNum: number; declare const modeStr: string; declare const encoding: string; @@ -148,19 +148,19 @@ fs.futimes(fd, atime, mtime, errorCallback); fs.futimesSync(fd, atime, mtime); fs.fsync(fd, errorCallback); fs.fsyncSync(fd); -fs.write(fd, buffer, offset, length, position, (err: Error, written: number, buffer: NodeBuffer) => { +fs.write(fd, buffer, offset, length, position, (err: Error, written: number, buffer: Buffer) => { }); num = fs.writeSync(fd, buffer, offset, length, position); -fs.read(fd, buffer, offset, length, position, (err: Error, bytesRead: number, buffer: NodeBuffer) => { +fs.read(fd, buffer, offset, length, position, (err: Error, bytesRead: number, buffer: Buffer) => { }); num = fs.readSync(fd, buffer, offset, length, position); -fs.readFile(filename, (err: Error, data: NodeBuffer) => { +fs.readFile(filename, (err: Error, data: Buffer) => { }); fs.readFile(filename, encoding, (err: Error, data: string) => { }); fs.readFile(filename, openOpts, (err: NodeJS.ErrnoException, data: Buffer) => { }); -fs.readFile(filename, (err: Error, data: NodeBuffer) => { +fs.readFile(filename, (err: Error, data: Buffer) => { }); buffer = fs.readFileSync(filename); str = fs.readFileSync(filename, encoding); diff --git a/types/fs-extra-promise/index.d.ts b/types/fs-extra-promise/index.d.ts index de47c81a1e..b4ac5be133 100644 --- a/types/fs-extra-promise/index.d.ts +++ b/types/fs-extra-promise/index.d.ts @@ -65,10 +65,10 @@ export function openAsync(path: string, flags: string, mode?: string): Promise; export function futimesAsync(fd: number, atime: number, mtime: number): Promise; export function fsyncAsync(fd: number): Promise; -export function writeAsync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): Promise<[number, NodeBuffer]>; -export function readAsync(fd: number, buffer: NodeBuffer, offset: number, length: number, position: number): Promise<[number, NodeBuffer]>; +export function writeAsync(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<[number, Buffer]>; +export function readAsync(fd: number, buffer: Buffer, offset: number, length: number, position: number): Promise<[number, Buffer]>; export function readFileAsync(filename: string, options: string | ReadOptions): Promise; -export function readFileAsync(filename: string): Promise; +export function readFileAsync(filename: string): Promise; export function writeFileAsync(filename: string, data: any, options?: string | WriteOptions): Promise; export function appendFileAsync(filename: string, data: any, option?: string | WriteOptions): Promise; diff --git a/types/fs-extra/fs-extra-tests.ts b/types/fs-extra/fs-extra-tests.ts index 50d594e1a4..dbe48cf971 100644 --- a/types/fs-extra/fs-extra-tests.ts +++ b/types/fs-extra/fs-extra-tests.ts @@ -48,7 +48,7 @@ fs.copy(src, dest, { overwrite: true, preserveTimestamps: true, - filter: (src: string, dest: string) => false + filter: (src: string, dest: string) => Promise.resolve(false) }, errorCallback ); diff --git a/types/fs-extra/index.d.ts b/types/fs-extra/index.d.ts index 6183dce393..adf236955b 100644 --- a/types/fs-extra/index.d.ts +++ b/types/fs-extra/index.d.ts @@ -3,7 +3,8 @@ // Definitions by: Alan Agius , // midknight41 , // Brendan Forster , -// Mees van Dijk +// Mees van Dijk , +// Justin Rockwood // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -16,7 +17,7 @@ export * from "fs"; export function copy(src: string, dest: string, options?: CopyOptions): Promise; export function copy(src: string, dest: string, callback: (err: Error) => void): void; export function copy(src: string, dest: string, options: CopyOptions, callback: (err: Error) => void): void; -export function copySync(src: string, dest: string, options?: CopyOptions): void; +export function copySync(src: string, dest: string, options?: CopyOptionsSync): void; export function move(src: string, dest: string, options?: MoveOptions): Promise; export function move(src: string, dest: string, callback: (err: Error) => void): void; @@ -254,7 +255,8 @@ export interface PathEntryStream { read(): PathEntry | null; } -export type CopyFilter = (src: string, dest: string) => boolean; +export type CopyFilterSync = (src: string, dest: string) => boolean; +export type CopyFilterAsync = (src: string, dest: string) => Promise; export type SymlinkType = "dir" | "file"; @@ -263,10 +265,14 @@ export interface CopyOptions { overwrite?: boolean; preserveTimestamps?: boolean; errorOnExist?: boolean; - filter?: CopyFilter; + filter?: CopyFilterSync | CopyFilterAsync; recursive?: boolean; } +export interface CopyOptionsSync extends CopyOptions { + filter?: CopyFilterSync; +} + export interface MoveOptions { overwrite?: boolean; limit?: number; diff --git a/types/geojson/geojson-tests.ts b/types/geojson/geojson-tests.ts index c5c3fa2bdd..4ea0f57a6f 100644 --- a/types/geojson/geojson-tests.ts +++ b/types/geojson/geojson-tests.ts @@ -306,6 +306,11 @@ const collectionNoNull: FeatureCollection = { features: [featureNoNull], }; +const collectionDefault: FeatureCollection = { + type: "FeatureCollection", + features: [] +}; + isNull = featureAllNull.geometry; isPoint = featurePropertyNull.geometry; isNull = featureAllNull.properties; @@ -322,3 +327,18 @@ isPropertyOrNull = collectionMaybeNull.features[0].properties; isPropertyOrNull = collectionPropertyMaybeNull.features[0].properties; isProperty = collectionGeometryMaybeNull.features[0].properties; isProperty = collectionNoNull.features[0].properties; + +for (const { geometry } of collectionDefault.features) { + switch (geometry.type) { + case "Point": + isPoint = geometry; + break; + case "GeometryCollection": + for (const child of geometry.geometries) { + if (child.type === "Point") { + isPoint = child; + } + } + break; + } +} diff --git a/types/geojson/index.d.ts b/types/geojson/index.d.ts index 9a0ab3cd8b..ac1bf84e99 100644 --- a/types/geojson/index.d.ts +++ b/types/geojson/index.d.ts @@ -3,6 +3,7 @@ // Definitions by: Jacob Bruun // Arne Schubert // Jeff Jacobson +// Ilia Choly // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -62,6 +63,11 @@ export interface GeoJsonObject { bbox?: BBox; } +/** + * Union of GeoJSON objects. + */ +export type GeoJSON = Geometry | Feature | FeatureCollection; + /** * A geometry object. * https://tools.ietf.org/html/rfc7946#section-3 @@ -70,6 +76,12 @@ export interface GeometryObject extends GeoJsonObject { type: GeoJsonGeometryTypes; } +/** + * Union of geometry objects. + * https://tools.ietf.org/html/rfc7946#section-3 + */ +export type Geometry = Point | MultiPoint | LineString | Polygon | MultiPolygon | GeometryCollection; + /** * Point geometry object. * https://tools.ietf.org/html/rfc7946#section-3.1.2 @@ -130,7 +142,7 @@ export interface MultiPolygon extends GeometryObject { */ export interface GeometryCollection extends GeometryObject { type: "GeometryCollection"; - geometries: Array; + geometries: Geometry[]; } export type GeoJsonProperties = { [name: string]: any; } | null; @@ -139,7 +151,7 @@ export type GeoJsonProperties = { [name: string]: any; } | null; * A feature object which contains a geometry and associated properties. * https://tools.ietf.org/html/rfc7946#section-3.2 */ -export interface Feature extends GeoJsonObject { +export interface Feature extends GeoJsonObject { type: "Feature"; /** * The feature's geometry @@ -160,7 +172,7 @@ export interface Feature * A collection of feature objects. * https://tools.ietf.org/html/rfc7946#section-3.3 */ -export interface FeatureCollection extends GeoJsonObject { +export interface FeatureCollection extends GeoJsonObject { type: "FeatureCollection"; features: Array>; } diff --git a/types/gijgo/index.d.ts b/types/gijgo/index.d.ts index 188d8753b1..611373be11 100644 --- a/types/gijgo/index.d.ts +++ b/types/gijgo/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Gijgo v1.8.2 +// Type definitions for Gijgo v1.9.6 // Project: http://gijgo.com // Definitions by: Atanas Atanasov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -88,6 +88,7 @@ declare module Types { //Configuration options autoGenerateColumns?: boolean; autoLoad?: boolean; + bodyRowHeight?: string; columnReorder?: boolean; columns?: Array; dataSource?: any; @@ -97,6 +98,7 @@ declare module Types { fontSize?: string; grouping?: GridGrouping; headerFilter?: GridHeaderFilter; + headerRowHeight?: string; icons?: GridIcons; iconsLibrary?: string; inlineEditing?: GridInlineEditing; @@ -158,7 +160,7 @@ declare module Types { edit(id: string): Grid; expandAll(): Grid; //get(position: number): Entity; //TODO: rename to getByPosition to avoid conflicts with jquery.get - getAll(): Array; + getAll(includeAllRecords?: boolean): Array; getById(id: string): Entity; getChanges(): Array; getCSV(includeAllRecords?: boolean): string; @@ -256,11 +258,16 @@ declare module Types { keyboardNavigation?: boolean; locale?: string; icons?: DatePickerIcons; + size?: string; + modal?: boolean; + header?: boolean; + footer?: boolean; //Events change?: (e: any) => any; open?: (e: any) => any; close?: (e: any) => any; + select?: (e: any, type: string) => any; } interface DatePicker extends JQuery { @@ -285,6 +292,7 @@ declare module Types { uiLibrary?: string; iconsLibrary?: string; icons?: DropDownIcons; + placeholder?: string; //Events change?: (e: any) => any; @@ -325,11 +333,13 @@ declare module Types { value?: string; mode?: string; locale?: string; + size?: string; //Events change?: (e: any) => any; open?: (e: any) => any; close?: (e: any) => any; + select?: (e: any, type: string) => any; } interface TimePicker extends JQuery { @@ -339,6 +349,45 @@ declare module Types { value(value?: string): string | TimePicker; } + // DateTimePicker + interface DateTimePickerSettings { + datepicker?: Types.DatePickerSettings; + footer?: boolean; + format?: string; + locale?: string; + modal?: boolean; + size?: string; + uiLibrary?: string; + value?: string; + width?: number; + + //Events + change?: (e: any) => any; + } + + interface DateTimePicker extends JQuery { + destroy(): void; + value(value?: string): string | DateTimePicker; + } + + // Slider + interface SliderSettings { + min?: number; + max?: number; + uiLibrary?: string; + value?: string; + width?: number; + + //Events + change?: (e: any) => any; + slide?: (e: any, value: number) => any; + } + + interface Slider extends JQuery { + destroy(): void; + value(value?: string): string | Slider; + } + // Tree interface TreeIcons { expand?: string; @@ -397,6 +446,7 @@ declare module Types { render(response: any): any; addNode(data: any, parentNode: any, position: number): Tree; removeNode(node: any): Tree; + updateNode(id: string, record: any) : Tree; destroy(): void; expand(node: any, cascade: boolean): Tree; collapse(node: any, cascade: boolean) : Tree; @@ -444,5 +494,9 @@ interface JQuery { timepicker(settings: Types.TimePickerSettings): Types.TimePicker; + datetimepicker(settings: Types.DateTimePickerSettings): Types.DateTimePicker; + + slider(settings: Types.SliderSettings): Types.Slider; + tree(settings: Types.TreeSettings): Types.Tree; } diff --git a/types/gitlab/ApiBase.d.ts b/types/gitlab/ApiBase.d.ts new file mode 100644 index 0000000000..7187ce4352 --- /dev/null +++ b/types/gitlab/ApiBase.d.ts @@ -0,0 +1,31 @@ +import { ApiBaseOptions } from './ApiBase'; +import { Labels } from './Models/Labels'; +import { Users } from './Models/Users'; +import { Notes } from './Models/Notes'; +import { Issues } from './Models/Issues'; +import { Projects } from './Models/Projects'; +import { Groups } from './Models/Groups'; + +export interface ApiBaseOptions { + url?: string; + token?: string; + oauth_token?: string; + base_url?: string; + auth?: any; + [key: string]: any; +} + +export class ApiBase { + constructor(options: ApiBaseOptions); + readonly client: this; + readonly groups: Groups + readonly projects: Projects + readonly issues: Issues + readonly notes: Notes + readonly users: Users + readonly labels: Labels + options: ApiBaseOptions; + + handleOptions(): void; + init(): object; +} diff --git a/types/gitlab/ApiBaseHTTP.d.ts b/types/gitlab/ApiBaseHTTP.d.ts new file mode 100644 index 0000000000..7ed5fb0d69 --- /dev/null +++ b/types/gitlab/ApiBaseHTTP.d.ts @@ -0,0 +1,12 @@ +import { ApiBase } from './ApiBase'; + +export class ApiBaseHTTP extends ApiBase { + prepare_opts(opts: T): T; + fn_wrapper(fn: T): T; + get(path: string, fn?: Function): any; + get(path: string, query?: object, fn?: Function): any; + delete(path: string, fn?: Function): any; + post(path: string, data?: object, fn?: Function): any; + put(path: string, data?: object, fn?: Function): any; + patch(path: string, data?: object, fn?: Function): any; +} diff --git a/types/gitlab/ApiV3.d.ts b/types/gitlab/ApiV3.d.ts new file mode 100644 index 0000000000..bd3d02557b --- /dev/null +++ b/types/gitlab/ApiV3.d.ts @@ -0,0 +1,5 @@ +import { ApiBaseHTTP } from './ApiBaseHTTP'; + +export class ApiV3 extends ApiBaseHTTP { + +} diff --git a/types/gitlab/BaseModel.d.ts b/types/gitlab/BaseModel.d.ts new file mode 100644 index 0000000000..ca6eb4e7c6 --- /dev/null +++ b/types/gitlab/BaseModel.d.ts @@ -0,0 +1,17 @@ +export class BaseModel { + load(model: string): object; + get(path: string, fn?: Function): any; + get(path: string, query?: object, fn?: Function): any; + delete(path: string, fn?: Function): any; + post(path: string, data?: object, fn?: Function): any; + put(path: string, data?: object, fn?: Function): any; + patch(path: string, data?: object, fn?: Function): any; +} + +export interface DefParams { + page?: number; + per_page?: number; + [key: string]: any; +} + +export type TId = number | string; diff --git a/types/gitlab/Models/Groups.d.ts b/types/gitlab/Models/Groups.d.ts new file mode 100644 index 0000000000..1b528039f0 --- /dev/null +++ b/types/gitlab/Models/Groups.d.ts @@ -0,0 +1,27 @@ +import { BaseModel, DefParams } from "../BaseModel"; + +interface IAccessLevels { + GUEST: number + REPORTER: number + DEVELOPER: number + MASTER: number + OWNER: number +} + +export class Groups extends BaseModel { + readonly access_levels: IAccessLevels; + + init(): object; + all(fn?: Function): any; + all(params?: DefParams, fn?: Function): any; + show(groupId: number, fn?: Function): any; + listProjects(groupId: number, fn?: Function): any; + listMembers(groupId: number, fn?: Function): any; + addMember(groupId: number, userId: number, accessLevel: IAccessLevels[keyof IAccessLevels], fn?: Function): any; + editMember(groupId: number, userId: number, accessLevel: IAccessLevels[keyof IAccessLevels], fn?: Function): any; + removeMember(groupId: number, userId: number, fn?: Function): any; + create(params?: object, fn?: Function): any; + addProject(groupId: number, projectId: number, fn?: Function): any; + deleteGroup(groupId: number, fn?: Function): any; + search(nameOrPath: string, fn?: Function): any; +} diff --git a/types/gitlab/Models/IssueNotes.d.ts b/types/gitlab/Models/IssueNotes.d.ts new file mode 100644 index 0000000000..de1821b1df --- /dev/null +++ b/types/gitlab/Models/IssueNotes.d.ts @@ -0,0 +1,6 @@ +import { BaseModel, TId, DefParams } from '../BaseModel'; + +export class IssueNotes extends BaseModel{ + all(projectId: TId, issueId: number, fn?: Function): any + all(projectId: TId, issueId: number, params?: DefParams, fn?: Function): any +} diff --git a/types/gitlab/Models/Issues.d.ts b/types/gitlab/Models/Issues.d.ts new file mode 100644 index 0000000000..e751b6a002 --- /dev/null +++ b/types/gitlab/Models/Issues.d.ts @@ -0,0 +1,12 @@ +import { BaseModel, TId } from '../BaseModel'; + +export class Issues extends BaseModel { + all(fn?: Function): any; + all(params?: object, fn?: Function): any; + show(projectId: TId, issueId: TId, fn?: Function): any; + create(projectId: TId, params?: object, fn?: Function): any; + edit(projectId: TId, issueId: TId, params?: object, fn?: Function): any; + remove(projectId: TId, issueId: TId, fn?: Function): any; + subscribe(projectId: TId, issueId: TId, params?: object, fn?: Function): any; + unsubscribe(projectId: TId, issueId: TId, fn?: Function): any; +} diff --git a/types/gitlab/Models/Labels.d.ts b/types/gitlab/Models/Labels.d.ts new file mode 100644 index 0000000000..63f1110b4d --- /dev/null +++ b/types/gitlab/Models/Labels.d.ts @@ -0,0 +1,5 @@ +import { BaseModel, TId } from '../BaseModel'; + +export class Labels extends BaseModel { + create(projectId: TId, params?: object, fn?: Function): any; +} diff --git a/types/gitlab/Models/Notes.d.ts b/types/gitlab/Models/Notes.d.ts new file mode 100644 index 0000000000..95b9cd623e --- /dev/null +++ b/types/gitlab/Models/Notes.d.ts @@ -0,0 +1,5 @@ +import { BaseModel, TId } from '../BaseModel'; + +export class Notes extends BaseModel { + create(projectId: TId, issueId: number, params?: object, fn?: Function): any; +} diff --git a/types/gitlab/Models/Pipelines.d.ts b/types/gitlab/Models/Pipelines.d.ts new file mode 100644 index 0000000000..f65a9e7d25 --- /dev/null +++ b/types/gitlab/Models/Pipelines.d.ts @@ -0,0 +1,5 @@ +import { BaseModel, TId } from '../BaseModel'; + +export class Pipelines extends BaseModel { + all(projectId: TId, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectBuilds.d.ts b/types/gitlab/Models/ProjectBuilds.d.ts new file mode 100644 index 0000000000..df7c33c32a --- /dev/null +++ b/types/gitlab/Models/ProjectBuilds.d.ts @@ -0,0 +1,13 @@ +import { BaseModel, TId, DefParams } from '../BaseModel'; + +interface IShowBuildParam { + projectId: TId; + [key: string]: any; +} + +export class ProjectBuilds extends BaseModel { + listBuilds(projectId: TId, fn?: Function): any; + listBuilds(projectId: TId, params?: DefParams, fn?: Function): any; + showBuild(projectId: TId, buildId: string, fn?: Function): any; + triggerBuild(params?: IShowBuildParam, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectDeployKeys.d.ts b/types/gitlab/Models/ProjectDeployKeys.d.ts new file mode 100644 index 0000000000..3be9d66bc4 --- /dev/null +++ b/types/gitlab/Models/ProjectDeployKeys.d.ts @@ -0,0 +1,7 @@ +import { BaseModel, TId } from '../BaseModel'; + +export class ProjectKeys extends BaseModel { + listKeys(projectId: TId, fn?: Function): any; + getKey(projectId: TId, keyId: number, fn?: Function): any; + addKey(projectId: TId, params?: object, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectHooks.d.ts b/types/gitlab/Models/ProjectHooks.d.ts new file mode 100644 index 0000000000..ce0878eec9 --- /dev/null +++ b/types/gitlab/Models/ProjectHooks.d.ts @@ -0,0 +1,16 @@ +import { BaseModel, TId } from '../BaseModel'; + +interface IAddParam { + url: string; + [key: string]: any; +} + +type HooksCb = (hooks: any[]) => any; + +export class ProjectHooks extends BaseModel { + list(projectId: TId, fn?: HooksCb): any; + show(projectId: TId, hookId: number, fn?: Function): any; + add(projectId: TId, params: IAddParam | string, fn?: Function): any; + update(projectId: TId, hookId: number, url: string, fn?: Function): any; + remove(projectId: TId, hookId: number, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectIssues.d.ts b/types/gitlab/Models/ProjectIssues.d.ts new file mode 100644 index 0000000000..8f7fc439a6 --- /dev/null +++ b/types/gitlab/Models/ProjectIssues.d.ts @@ -0,0 +1,9 @@ +import { IssueNotes } from './IssueNotes'; +import { BaseModel, TId, DefParams } from '../BaseModel'; + +export class ProjectIssues extends BaseModel { + readonly notes: IssueNotes; + + list(projectId: TId, fn?: Function): any; + list(projectId: TId, params?: DefParams, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectLabels.d.ts b/types/gitlab/Models/ProjectLabels.d.ts new file mode 100644 index 0000000000..2f6ca1dabc --- /dev/null +++ b/types/gitlab/Models/ProjectLabels.d.ts @@ -0,0 +1,6 @@ +import { BaseModel, TId, DefParams } from '../BaseModel'; + +export class ProjectLabels extends BaseModel { + all(projectId: TId, fn?: Function): any; + all(projectId: TId, params?: DefParams, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectMembers.d.ts b/types/gitlab/Models/ProjectMembers.d.ts new file mode 100644 index 0000000000..25aa87332a --- /dev/null +++ b/types/gitlab/Models/ProjectMembers.d.ts @@ -0,0 +1,12 @@ +import { BaseModel, TId } from '../BaseModel'; + +type MenberCb = (menber: any) => any; +type MenbersCb = (menbers: any[]) => any; + +export class ProjectMembers extends BaseModel { + list(projectId: TId, fn?: MenbersCb): any; + show(projectId: TId, userId: number, fn?: MenberCb): any; + add(projectId: TId, userId: number, accessLevel: number,fn?: Function): any; + update(projectId: TId, userId: number, accessLevel: number, fn?: Function): any; + remove(projectId: TId, userId: number, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectMergeRequests.d.ts b/types/gitlab/Models/ProjectMergeRequests.d.ts new file mode 100644 index 0000000000..37b2ab33e6 --- /dev/null +++ b/types/gitlab/Models/ProjectMergeRequests.d.ts @@ -0,0 +1,11 @@ +import { BaseModel, TId, DefParams } from '../BaseModel'; + +export class ProjectMergeRequests extends BaseModel { + list(projectId: TId, fn?: Function): any; + list(projectId: TId, params?: DefParams, fn?: Function): any; + show(projectId: TId, mergerequestId: number, fn?: Function): any; + add(projectId: TId, sourceBranch: string, targetBranch: string, assigneeId: number, title: string, fn?: Function): any; + update(projectId: TId, mergerequestId: number, params: object, fn?: Function): any; + comment(projectId: TId, mergerequestId: number, note: any, fn?: Function): any; + merge(projectId: TId, mergerequestId: number, params: object, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectMilestones.d.ts b/types/gitlab/Models/ProjectMilestones.d.ts new file mode 100644 index 0000000000..d36d1c016a --- /dev/null +++ b/types/gitlab/Models/ProjectMilestones.d.ts @@ -0,0 +1,12 @@ +import { BaseModel, TId } from '../BaseModel'; + +type MilestonesCb = (milestones: any[]) => any; +type MilestoneCb = (milestones: any) => any; + +export class ProjectMilestones extends BaseModel { + list(projectId: TId, fn?: MilestonesCb): any; + all(projectId: TId, fn?: MilestonesCb): any; + show(projectId: TId, milestoneId: number, fn?: MilestoneCb): any; + add(projectId: TId, title: string, description: string, due_date: any, fn?: Function): any; + update(projectId: TId, milestoneId: number, title: string, description: string, due_date: any, state_event: any, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectRepository.d.ts b/types/gitlab/Models/ProjectRepository.d.ts new file mode 100644 index 0000000000..7bef1b6212 --- /dev/null +++ b/types/gitlab/Models/ProjectRepository.d.ts @@ -0,0 +1,39 @@ +import { BaseModel, TId } from '../BaseModel'; + +interface ShowFileParams { + file_path: string; + ref?: any; + file_id?: any; + [key: string]: any; +} + +interface AddTagParams { + id: TId; + tag_name: string; + ref: string; + message?: string; + release_description?: string; +} + +export class ProjectRepository extends BaseModel { + listBranches(projectId: TId, fn?: Function): any; + showBranch(projectId: TId, branchId: string, fn?: Function): any; + protectBranch(projectId: TId, branchId: string, params: object, fn?: Function): any; + unprotectBranch(projectId: TId, branchId: string, fn?: Function): any; + createBranch(params: object, fn?: Function): any; + deleteBranch(projectId: TId, branchId: string, fn?: Function): any; + addTag(params: AddTagParams, fn?: Function): any; + deleteTag(projectId: TId, tagName: string, fn?: Function): any; + showTag(projectId: TId, tagName: string, fn?: Function): any; + listTags(projectId: TId, fn?: Function): any; + listCommits(projectId: TId, fn?: Function): any; + showCommit(projectId: TId, sha: string, fn?: Function): any; + diffCommit(projectId: TId, sha: string, fn?: Function): any; + listTree(projectId: TId, fn?: Function): any; + listTree(projectId: TId, params?: object, fn?: Function): any; + showFile(projectId: TId, fn?: Function): any; + showFile(projectId: TId, params?: ShowFileParams, fn?: Function): any; + createFile(params?: object, fn?: Function): any; + updateFile(params?: object, fn?: Function): any; + compare(params?: object, fn?: Function): any; +} diff --git a/types/gitlab/Models/ProjectServices.d.ts b/types/gitlab/Models/ProjectServices.d.ts new file mode 100644 index 0000000000..25c59ae400 --- /dev/null +++ b/types/gitlab/Models/ProjectServices.d.ts @@ -0,0 +1,9 @@ +import { BaseModel, TId } from './../BaseModel'; + +type ServiceCb = (service: any) => any; + +export class ProjectServices extends BaseModel { + show(projectId: TId, serviceName: string, fn?: ServiceCb): any; + update(projectId: TId, serviceName: string, params: object, fn?: ServiceCb): any; + remove(projectId: TId, serviceName: string, fn?: ServiceCb): any; +} diff --git a/types/gitlab/Models/Projects.d.ts b/types/gitlab/Models/Projects.d.ts new file mode 100644 index 0000000000..9ba8faa551 --- /dev/null +++ b/types/gitlab/Models/Projects.d.ts @@ -0,0 +1,55 @@ +import { Runners } from './Runners'; +import { Pipelines } from './Pipelines'; +import { ProjectBuilds } from './ProjectBuilds'; +import { ProjectMergeRequests } from './ProjectMergeRequests'; +import { ProjectKeys } from './ProjectDeployKeys'; +import { ProjectMilestones } from './ProjectMilestones'; +import { ProjectRepository } from './ProjectRepository'; +import { ProjectLabels } from './ProjectLabels'; +import { ProjectIssues } from './ProjectIssues'; +import { ProjectHooks } from './ProjectHooks'; +import { ProjectMembers } from './ProjectMembers'; +import { BaseModel, DefParams, TId } from '../BaseModel'; +import { ProjectServices } from './ProjectServices'; + +type ProjectsCb = (projects: any[]) => any; + +export class Projects extends BaseModel { + + readonly members: ProjectMembers; + readonly hooks: ProjectHooks; + readonly issues: ProjectIssues; + readonly labels: ProjectLabels; + readonly repository: ProjectRepository; + readonly milestones: ProjectMilestones; + readonly deploy_keys: ProjectKeys; + readonly merge_requests: ProjectMergeRequests; + readonly services: ProjectServices; + readonly builds: ProjectBuilds; + readonly pipelines: Pipelines; + readonly runners: Runners; + + + all(fn?: ProjectsCb): any; + all(params?: DefParams, fn?: ProjectsCb): any; + allAdmin(fn?: Function): any; + allAdmin(params?: DefParams, fn?: Function): any; + show(projectId: TId, fn?: Function): any; + create(params: object, fn?: Function): any; + create_for_user(params: object, fn?: Function): any; + edit(projectId: TId, params: object, fn?: Function): any; + addMember(params?: object, fn?: Function): any; + editMember(params?: object, fn?: Function): any; + listMembers(params?: object, fn?: Function): any; + listCommits(params?: object, fn?: Function): any; + listTags(params?: object, fn?: Function): any; + remove(projectId: TId, fn?: Function): any; + fork(params?: object, fn?: Function): any; + share(params?: object, fn?: Function): any; + search(projectName: string, fn?: Function): any; + search(projectName: string, params?: object, fn?: Function): any; + listTriggers(projectId: TId, fn?: Function): any; + showTrigger(projectId: TId, token: string, fn?: Function): any; + createTrigger(params?: object, fn?: Function): any; + removeTrigger(projectId: TId, token: string, fn?: Function): any; +} diff --git a/types/gitlab/Models/Runners.d.ts b/types/gitlab/Models/Runners.d.ts new file mode 100644 index 0000000000..1656fe0c5d --- /dev/null +++ b/types/gitlab/Models/Runners.d.ts @@ -0,0 +1,11 @@ +import { BaseModel, DefParams, TId } from '../BaseModel'; + +export class Runners extends BaseModel { + all(projectId?: TId, fn?: Function): any; + all(projectId?: TId, params?: object, fn?: Function): any; + show(runnerId: number, fn?: Function): any; + update(runnerId: number, attributes: any, fn?: Function): any; + remove(runnerId: number, projectId: any, enable: any, fn?: Function): any; + enable(projectId: TId, runnerId: number, fn?: Function): any; + disable(projectId: TId, runnerId: number, fn?: Function): any; +} diff --git a/types/gitlab/Models/UserKeys.d.ts b/types/gitlab/Models/UserKeys.d.ts new file mode 100644 index 0000000000..5182b5a2d1 --- /dev/null +++ b/types/gitlab/Models/UserKeys.d.ts @@ -0,0 +1,6 @@ +import { BaseModel, DefParams, TId } from '../BaseModel'; + +export class UserKeys extends BaseModel { + all(userId?: TId, fn?: Function): any; + addKey(userId: string, title: string, key: any, fn?: Function): any; +} diff --git a/types/gitlab/Models/Users.d.ts b/types/gitlab/Models/Users.d.ts new file mode 100644 index 0000000000..e4572ac659 --- /dev/null +++ b/types/gitlab/Models/Users.d.ts @@ -0,0 +1,17 @@ +import { BaseModel, DefParams, TId } from '../BaseModel'; +import { UserKeys } from './UserKeys'; + +type UsersCb = (users: any[]) => any; +type UserCb = (user: any) => any; + +export class Users extends BaseModel { + readonly keys: UserKeys; + + all(fn?: UsersCb): any; + all(params?: DefParams, fn?: UsersCb): any; + current(fn?: Function): any; + show(userId: number, fn?: UserCb): any; + create(params?: DefParams, fn?: Function): any; + session(email: string, password: string, fn?: Function): any; + search(emailOrUsername: string, fn?: Function): any; +} diff --git a/types/gitlab/gitlab-tests.ts b/types/gitlab/gitlab-tests.ts new file mode 100644 index 0000000000..00ab2c761e --- /dev/null +++ b/types/gitlab/gitlab-tests.ts @@ -0,0 +1,20 @@ +import * as lib from "gitlab"; + +const gitlab = lib({ + url: 'http://example.com', + token: 'abcdefghij123456' +}); + +const v3 = new lib.ApiV3({ }); + +// From README + +// Listing users +gitlab.users.all((users) => { }); + +// Listing projects +gitlab.projects.all((projects) => { }); + +// From examples/delet-service + +gitlab.projects.services.remove("pid", "name", (service) => { }); diff --git a/types/gitlab/index.d.ts b/types/gitlab/index.d.ts new file mode 100644 index 0000000000..1ff52505ee --- /dev/null +++ b/types/gitlab/index.d.ts @@ -0,0 +1,17 @@ +// Type definitions for gitlab 1.8 +// Project: https://github.com/node-gitlab/node-gitlab#readme +// Definitions by: sam +// AryloYeung +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +import { ApiV3 } from "./ApiV3"; +import { ApiBaseOptions } from "./ApiBase"; + +declare namespace Gitlib { + const ApiV3: new(options: ApiBaseOptions) => ApiV3; +} + +declare function Gitlib(options: ApiBaseOptions): ApiV3; + +export = Gitlib; diff --git a/types/gitlab/tsconfig.json b/types/gitlab/tsconfig.json new file mode 100644 index 0000000000..f1297faf67 --- /dev/null +++ b/types/gitlab/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gitlab-tests.ts" + ] +} diff --git a/types/gitlab/tslint.json b/types/gitlab/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gitlab/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/gl-shader/gl-shader-tests.ts b/types/gl-shader/gl-shader-tests.ts new file mode 100644 index 0000000000..ad42dd2507 --- /dev/null +++ b/types/gl-shader/gl-shader-tests.ts @@ -0,0 +1,41 @@ +import createShader = require("gl-shader"); + +const gl = new WebGLRenderingContext(); + +let shader = createShader(gl, "", ""); + +shader = createShader(gl, "", "", []); +shader = createShader(gl, "", "", [], []); +shader = createShader(gl, "", "", [{name: "foo", type: "bool"}]); +shader = createShader(gl, "", "", [{name: "foo", type: "bool"}, {name: "bar", type: "float"}]); +shader = createShader(gl, "", "", [{name: "foo", type: "bool"}], [{name: "bar", type: "float"}]); + +shader = createShader(gl, {vertex: "", fragment: ""}); +shader = createShader(gl, {vertex: "", fragment: "", uniforms: [{name: "foo", type: "bool"}]}); +shader = createShader(gl, {vertex: "", fragment: "", uniforms: [{name: "foo", type: "bool"}]}); +shader = createShader(gl, { + vertex: "", + fragment: "", + uniforms: [{name: "foo", type: "bool"}], + attributes: [{name: "bar", type: "float"}] +}); + +shader.bind(); +shader.dispose(); +shader.update("", ""); +shader.update("", "", [{name: "foo", type: "bool"}]); +shader.update("", "", [{name: "foo", type: "bool"}], [{name: "foo", type: "bool"}]); + +shader.uniforms; +shader.uniforms.color; +shader.uniforms.color = 4; +shader.uniforms.color = [ 1, 0, 0, 0 ]; + +shader.uniforms = { + model: [ 1, 2, 3, 4 ], + foo: 13 +}; + +shader.attributes; +shader.attributes.position.length; +shader.attributes.position.pointer(); diff --git a/types/gl-shader/index.d.ts b/types/gl-shader/index.d.ts new file mode 100644 index 0000000000..3049516cca --- /dev/null +++ b/types/gl-shader/index.d.ts @@ -0,0 +1,51 @@ +// Type definitions for gl-shader 4.2 +// Project: https://github.com/stackgl/gl-shader +// Definitions by: Mathias Paumgarten +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +interface Parameter { + type: string; + name: string; +} + +interface Attribute { + location: number[] | number; + pointer(type?: number, normalized?: boolean, stride?: number, offset?: number): number; +} + +declare class Shader { + readonly gl: WebGLRenderingContext; + readonly program: WebGLProgram; + readonly vertShader: WebGLShader; + readonly fragShader: WebGLShader; + readonly attributes: {[key: string]: Attribute & any[]}; + + uniforms: {[key: string]: any}; + + constructor(gl: WebGLRenderingContext); + + bind(): void; + dispose(): void; + + update(vertex: string, fragment: string, uniforms?: Parameter[], attributes?: Parameter[]): void; + update(obj: {vertex: string, fragment: string, uniforms: Parameter[], attributes: Parameter[]}): void; +} + +declare function createShader( + gl: WebGLRenderingContext, + vertex: string, + fragment: string, + uniforms?: Parameter[], + attributes?: Parameter[]): Shader; + +declare function createShader( + gl: WebGLRenderingContext, + options: { + vertex: string, + fragment: string, + uniforms?: Parameter[], + attributes?: Parameter[], + }): Shader; + +export = createShader; diff --git a/types/gl-shader/tsconfig.json b/types/gl-shader/tsconfig.json new file mode 100644 index 0000000000..fefb7e0c4c --- /dev/null +++ b/types/gl-shader/tsconfig.json @@ -0,0 +1,24 @@ +{ + "files": [ + "index.d.ts", + "gl-shader-tests.ts" + ], + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + } +} diff --git a/types/gl-shader/tslint.json b/types/gl-shader/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/gl-shader/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/gl-texture2d/gl-texture2d-tests.ts b/types/gl-texture2d/gl-texture2d-tests.ts new file mode 100644 index 0000000000..f51046f420 --- /dev/null +++ b/types/gl-texture2d/gl-texture2d-tests.ts @@ -0,0 +1,79 @@ +import texture2d = require("gl-texture2d"); +import ndarray = require("ndarray"); + +const gl = new WebGLRenderingContext(); +const canvas = new HTMLCanvasElement(); +const video = new HTMLVideoElement(); +const image = new HTMLImageElement(); +const imageData = new ImageData(1, 1); + +// tslint:disable-next-line: no-unnecessary-generics +declare function rawType(): {width: number, height: number, raw: T}; + +texture2d(gl, canvas); +texture2d(gl, canvas, gl.RGBA); +texture2d(gl, canvas, gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, video); +texture2d(gl, video, gl.RGBA); +texture2d(gl, video, gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, image); +texture2d(gl, image, gl.RGBA); +texture2d(gl, image, gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, imageData); +texture2d(gl, imageData, gl.RGBA); +texture2d(gl, imageData, gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, [1, 1]); +texture2d(gl, [1, 1], gl.RGBA); +texture2d(gl, [1, 1], gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, rawType()); +texture2d(gl, rawType(), gl.RGBA); +texture2d(gl, rawType(), gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, rawType()); +texture2d(gl, rawType(), gl.RGBA); +texture2d(gl, rawType(), gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, rawType()); +texture2d(gl, rawType(), gl.RGBA); +texture2d(gl, rawType(), gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, rawType()); +texture2d(gl, rawType(), gl.RGBA); +texture2d(gl, rawType(), gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, rawType()); +texture2d(gl, rawType(), gl.RGBA); +texture2d(gl, rawType(), gl.RGBA, gl.UNSIGNED_BYTE); + +texture2d(gl, ndarray([1, 2, 3])); + +const texture = texture2d(gl, canvas); + +texture.bind(); +texture.bind(1); +texture.dispose(); +texture.generateMipmap(); + +texture.magFilter = 1; +texture.minFilter = 1; +texture.mipSamples = 1; + +texture.shape = [1, 1]; +texture.wrap = [gl.REPEAT, gl.REPEAT]; + + // $ExpectType WebGLRenderingContext +texture.gl; + +// $ExpectType WebGLTexture +texture.handle; + +// $ExpectType number +texture.format; + +// $expectType number +texture.type; diff --git a/types/gl-texture2d/index.d.ts b/types/gl-texture2d/index.d.ts new file mode 100644 index 0000000000..2b44b9985a --- /dev/null +++ b/types/gl-texture2d/index.d.ts @@ -0,0 +1,42 @@ +// Type definitions for gl-texture2d 2.1 +// Project: https://github.com/stackgl/gl-texture2d +// Definitions by: Mathias Paumgarten +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import ndarray = require("ndarray"); + +type InputType = ImageData | HTMLCanvasElement | HTMLImageElement | HTMLVideoElement; + +interface RawObject { + width: number; + height: number; + raw: ArrayBufferView | InputType | ImageBitmap; +} + +declare class Texture { + shape: [number, number]; + wrap: [GLenum, GLenum]; + magFilter: GLenum; + minFilter: GLenum; + mipSamples: GLenum; + + readonly gl: WebGLRenderingContext; + readonly handle: WebGLTexture; + readonly format: GLenum; + readonly type: GLenum; + + bind(id?: number): number; + dispose(): void; + generateMipmap(): void; +} + +declare function texture2d(gl: WebGLRenderingContext, array: ndarray): Texture; + +declare function texture2d( + gl: WebGLRenderingContext, + input: InputType | RawObject | [number, number], + format?: GLenum, + type?: GLenum): Texture; + +export = texture2d; diff --git a/types/gl-texture2d/tsconfig.json b/types/gl-texture2d/tsconfig.json new file mode 100644 index 0000000000..32954b0979 --- /dev/null +++ b/types/gl-texture2d/tsconfig.json @@ -0,0 +1,24 @@ +{ + "files": [ + "index.d.ts", + "gl-texture2d-tests.ts" + ], + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + } +} diff --git a/types/gl-texture2d/tslint.json b/types/gl-texture2d/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/gl-texture2d/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/glue/index.d.ts b/types/glue/index.d.ts index 8e710d233a..f347e69746 100644 --- a/types/glue/index.d.ts +++ b/types/glue/index.d.ts @@ -24,7 +24,7 @@ export interface Plugin { export interface Manifest { server: ServerOptions; register?: { - plugins: Plugin[] + plugins: string[] | Plugin[] }; } diff --git a/types/gm/gm-tests.ts b/types/gm/gm-tests.ts index 9f59854467..b2efd9505a 100644 --- a/types/gm/gm-tests.ts +++ b/types/gm/gm-tests.ts @@ -62,6 +62,7 @@ declare const font: string; declare const quality: number; declare const align: string; declare const depth: number; +declare const defineValue: string; let readStream: stream.PassThrough; gm(src) @@ -104,7 +105,7 @@ gm(src) .crop(width, height, x, y, usePercent) .cycle(factor) .deconstruct() - .define() + .define(defineValue) .delay(time) .density(width, height) .despeckle() diff --git a/types/gm/index.d.ts b/types/gm/index.d.ts index 0670f0ae0f..5e8853efce 100644 --- a/types/gm/index.d.ts +++ b/types/gm/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for gm 1.17 +// Type definitions for gm 1.18 // Project: https://github.com/aheckmann/gm // Definitions by: Joel Spadin , Maarten van Vliet // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -123,7 +123,7 @@ declare namespace m { crop(width: number, height: number, x?: number, y?: number, percent?: boolean): State; cycle(amount: number): State; deconstruct(): State; - define(): State; + define(value: string): State; delay(milliseconds: number): State; density(width: number, height: number): State; despeckle(): State; diff --git a/types/google-apps-script/google-apps-script.calendar.d.ts b/types/google-apps-script/google-apps-script.calendar.d.ts index 34a3d46a11..21770b6efb 100644 --- a/types/google-apps-script/google-apps-script.calendar.d.ts +++ b/types/google-apps-script/google-apps-script.calendar.d.ts @@ -1,6 +1,7 @@ -// Type definitions for Google Apps Script 2017-05-12 +// Type definitions for Google Apps Script 2018-05-03 // Project: https://developers.google.com/apps-script/ // Definitions by: motemen +// linlex // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -24,6 +25,7 @@ declare namespace GoogleAppsScript { deleteCalendar(): void; getColor(): string; getDescription(): string; + getEventById(iCalId: string): CalendarEvent; getEventSeriesById(iCalId: string): CalendarEventSeries; getEvents(startTime: Date, endTime: Date): CalendarEvent[]; getEvents(startTime: Date, endTime: Date, options: Object): CalendarEvent[]; diff --git a/types/google-apps-script/google-apps-script.spreadsheet.d.ts b/types/google-apps-script/google-apps-script.spreadsheet.d.ts index 7cd1cb8946..b656032a96 100644 --- a/types/google-apps-script/google-apps-script.spreadsheet.d.ts +++ b/types/google-apps-script/google-apps-script.spreadsheet.d.ts @@ -1,6 +1,7 @@ -// Type definitions for Google Apps Script 2017-05-12 +// Type definitions for Google Apps Script 2018-05-03 // Project: https://developers.google.com/apps-script/ // Definitions by: motemen +// linlex // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -11,7 +12,7 @@ declare namespace GoogleAppsScript { /** * This service allows scripts to create, access, and modify Google Sheets files. See also the guide to storing data in spreadsheets. - * + * * https://developers.google.com/apps-script/guides/sheets */ export module Spreadsheet { @@ -858,6 +859,7 @@ declare namespace GoogleAppsScript { autoResizeColumn(columnPosition: Integer): Sheet; clear(): Sheet; clear(options: Object): Sheet; + clearConditionalFormatRules(): void; clearContents(): Sheet; clearFormats(): Sheet; clearNotes(): Sheet; @@ -870,6 +872,7 @@ declare namespace GoogleAppsScript { getActiveRange(): Range; getCharts(): EmbeddedChart[]; getColumnWidth(columnPosition: Integer): Integer; + getConditionalFormatRules(): ConditionalFormatRule[]; getDataRange(): Range; getFrozenColumns(): Integer; getFrozenRows(): Integer; @@ -923,6 +926,8 @@ declare namespace GoogleAppsScript { setActiveSelection(range: Range): Range; setActiveSelection(a1Notation: string): Range; setColumnWidth(columnPosition: Integer, width: Integer): Sheet; + setConditionalFormatRules(rules: ReadonlyArray): void; + setCurrentCell(cell: Range): void; setFrozenColumns(columns: Integer): void; setFrozenRows(rows: Integer): void; setName(name: string): Sheet; @@ -1066,6 +1071,14 @@ declare namespace GoogleAppsScript { * An enumeration representing the data-validation criteria that can be set on a range. */ DataValidationCriteria: typeof DataValidationCriteria; + /** + * An enumeration representing the interpolation options for calculating a value to be used in a GradientCondition in a ConditionalFormatRule. + */ + InterpolationType: typeof InterpolationType; + /** + * An enumeration representing the boolean criteria that can be used in conditional format or filter. + */ + BooleanCriteria: typeof BooleanCriteria; /** * An enumeration representing the parts of a spreadsheet that can be protected from edits. */ @@ -1111,27 +1124,408 @@ declare namespace GoogleAppsScript { */ open(file: Drive.File): Spreadsheet; /** - * Opens the spreadsheet with the given ID. + * Opens the spreadsheet with the given ID. */ openById(id: string): Spreadsheet; /** - * Opens the spreadsheet with the given url. + * Opens the spreadsheet with the given url. */ openByUrl(url: string): Spreadsheet; /** - * Sets the active range for the application. + * Sets the active range for the application. */ setActiveRange(range: Range): Range; /** - * Sets the active sheet in a spreadsheet. + * Sets the active sheet in a spreadsheet. */ setActiveSheet(sheet: Sheet): Sheet; /** - * Sets the active spreadsheet. + * Sets the active spreadsheet. */ setActiveSpreadsheet(newActiveSpreadsheet: Spreadsheet): void; + /** + * Creates a builder for a conditional formatting rule. + */ + newConditionalFormatRule(): ConditionalFormatRuleBuilder; } + /** + * Access conditional formatting rules. To create a new rule, use SpreadsheetApp.newConditionalFormatRule() and + * ConditionalFormatRuleBuilder. You can use Sheet.setConditionalFormatRules(rules) to set the rules for a given + * sheet. + */ + export interface ConditionalFormatRule { + /** + * Returns a rule builder preset with this rule's settings. + */ + copy(): ConditionalFormatRuleBuilder; + + /** + * Retrieves the rule's BooleanCondition information if this rule uses boolean condition criteria. + */ + getBooleanCondition(): BooleanCondition; + + /** + * Retrieves the rule's GradientCondition information, if this rule uses gradient condition criteria. + */ + getGradientCondition(): GradientCondition; + + /** + * Retrieves the ranges to which this conditional format rule is applied. + */ + getRanges(): Range[]; + } + + /** + * Builder for conditional format rules. + */ + export interface ConditionalFormatRuleBuilder { + + /** + * Constructs a conditional format rule from the settings applied to the builder. + */ + build(): ConditionalFormatRule; + + /** + * Returns a rule builder preset with this rule's settings. + */ + copy(): ConditionalFormatRuleBuilder; + + /** + * Retrieves the rule's BooleanCondition information if this rule uses boolean condition criteria. + */ + getBooleanCondition(): BooleanCondition; + + /** + * Retrieves the rule's GradientCondition information, if this rule uses gradient condition criteria. + */ + getGradientCondition(): GradientCondition; + + /** + * Retrieves the ranges to which this conditional format rule is applied. + */ + getRanges(): Range[]; + + /** + * Sets the background color for the conditional format rule's format. + */ + setBackground(color: string): ConditionalFormatRuleBuilder; + + /** + * Sets text bolding for the conditional format rule's format. + */ + setBold(bold: boolean): ConditionalFormatRuleBuilder; + + /** + * Sets the font color for the conditional format rule's format. + */ + setFontColor(color: string): ConditionalFormatRuleBuilder; + + /** + * Clears the conditional format rule's gradient maxpoint value, and instead uses the maximum value in the rule's ranges. + */ + setGradientMaxpoint(color: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule's gradient maxpoint fields. + */ + setGradientMaxpointWithValue(color: string, type: InterpolationType, value: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule's gradient midpoint fields. + */ + setGradientMidpointWithValue(color: string, type: InterpolationType, value: string): ConditionalFormatRuleBuilder; + + /** + * Clears the conditional format rule's gradient minpoint value, and instead uses the minimum value in the rule's ranges. + */ + setGradientMinpoint(color: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule's gradient minpoint fields. + */ + setGradientMinpointWithValue(color: string, type: SpreadsheetApp.InterpolationType, value: string): ConditionalFormatRuleBuilder; + + /** + * Sets text italics for the conditional format rule's format. + */ + setItalic(italic: boolean): ConditionalFormatRuleBuilder; + + /** + * Sets one or more ranges to which this conditional format rule is applied. + */ + setRanges(ranges: ReadonlyArray): ConditionalFormatRuleBuilder; + + /** + * Sets text strikethrough for the conditional format rule's format. + */ + setStrikethrough(strikethrough: boolean): ConditionalFormatRuleBuilder; + + /** + * Sets text underlining for the conditional format rule's format. + */ + setUnderline(underline: boolean): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when the cell is empty. + */ + whenCellEmpty(): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when the cell is not empty. + */ + whenCellNotEmpty(): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is after the given value. + */ + whenDateAfter(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is after the given relative date. + */ + whenDateAfter(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is before the given date. + */ + whenDateBefore(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is before the given relative date. + */ + whenDateBefore(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is equal to the given date. + */ + whenDateEqualTo(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a date is equal to the given relative date. + */ + whenDateEqualTo(date: Date): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the given formula evaluates to true. + */ + whenFormulaSatisfied(formula: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number falls between, or is either of, two specified values. + */ + whenNumberBetween(start: number, end: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number is equal to the given value. + */ + whenNumberEqualTo(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number is greater than the given value. + */ + whenNumberGreaterThan(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number is greater than or equal to the given value. + */ + whenNumberGreaterThanOrEqualTo(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional conditional format rule to trigger when a number less than the given value. + */ + whenNumberLessThan(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number less than or equal to the given value. + */ + whenNumberLessThanOrEqualTo(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number does not fall between, and is neither of, two specified values. + */ + whenNumberNotBetween(start: number, end: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when a number is not equal to the given value. + */ + whenNumberNotEqualTo(number: number): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the input contains the given value. + */ + whenTextContains(text: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the input does not contain the given value. + */ + whenTextDoesNotContain(text: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the input ends with the given value. + */ + whenTextEndsWith(text: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the input is equal to the given value. + */ + whenTextEqualTo(text: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to trigger when that the input starts with the given value. + */ + whenTextStartsWith(text: string): ConditionalFormatRuleBuilder; + + /** + * Sets the conditional format rule to criteria defined by BooleanCriteria values, typically taken from the criteria and arguments of an existing rule. + */ + withCriteria(criteria: BooleanCriteria, args: ReadonlyArray): ConditionalFormatRuleBuilder; + } + + /** + * An enumeration representing the boolean criteria that can be used in conditional format or filter. + */ + export enum BooleanCriteria { + /** + * The criteria is met when a cell is empty. + */ + CELL_EMPTY, + + /** + * The criteria is met when a cell is not empty. + */ + CELL_NOT_EMPTY, + + /** + * The criteria is met when a date is after the given value. + */ + DATE_AFTER, + + /** + * The criteria is met when a date is before the given value. + */ + DATE_BEFORE, + + /** + * The criteria is met when a date is equal to the given value. + */ + DATE_EQUAL_TO, + + /** + * The criteria is met when a date is after the relative date value. + */ + DATE_AFTER_RELATIVE, + + /** + * The criteria is met when a date is before the relative date value. + */ + DATE_BEFORE_RELATIVE, + + /** + * The criteria is met when a date is equal to the relative date value. + */ + DATE_EQUAL_TO_RELATIVE, + + /** + * The criteria is met when a number that is between the given values. + */ + NUMBER_BETWEEN, + + /** + * The criteria is met when a number that is equal to the given value. + */ + NUMBER_EQUAL_TO, + + /** + * The criteria is met when a number that is greater than the given value. + */ + NUMBER_GREATER_THAN, + + /** + * The criteria is met when a number that is greater than or equal to the given value. + */ + NUMBER_GREATER_THAN_OR_EQUAL_TO, + + /** + * The criteria is met when a number that is less than the given value. + */ + NUMBER_LESS_THAN, + + /** + * The criteria is met when a number that is less than or equal to the given value. + */ + NUMBER_LESS_THAN_OR_EQUAL_TO, + + /** + * The criteria is met when a number that is not between the given values. + */ + NUMBER_NOT_BETWEEN, + + /** + * The criteria is met when a number that is not equal to the given value. + */ + NUMBER_NOT_EQUAL_TO, + + /** + * The criteria is met when the input contains the given value. + */ + TEXT_CONTAINS, + + /** + * The criteria is met when the input does not contain the given value. + */ + TEXT_DOES_NOT_CONTAIN, + + /** + * The criteria is met when the input is equal to the given value. + */ + TEXT_EQUAL_TO, + + /** + * The criteria is met when the input begins with the given value. + */ + TEXT_STARTS_WITH, + + /** + * The criteria is met when the input ends with the given value. + */ + TEXT_ENDS_WITH, + + /** + * The criteria is met when the input makes the given formula evaluate to true. + */ + CUSTOM_FORMULA + } + + /** + * An enumeration representing the interpolation options for calculating a value to be used in a GradientCondition in a ConditionalFormatRule. + */ + export enum InterpolationType { + /** + * Use the number as as specific interpolation point for a gradient condition. + */ + NUMBER, + + /** + * Use the number as a percentage interpolation point for a gradient condition. + */ + PERCENT, + + /** + * Use the number as a percentile interpolation point for a gradient condition. + */ + PERCENTILE, + + /** + * Infer the minimum number as a specific interpolation point for a gradient condition. + */ + MIN, + + /** + * Infer the maximum number as a specific interpolation point for a gradient condition. + */ + MAX + } } } diff --git a/types/google-cloud__datastore/google-cloud__datastore-tests.ts b/types/google-cloud__datastore/google-cloud__datastore-tests.ts index 3093a8256a..cb723d0d5b 100644 --- a/types/google-cloud__datastore/google-cloud__datastore-tests.ts +++ b/types/google-cloud__datastore/google-cloud__datastore-tests.ts @@ -14,8 +14,7 @@ interface TestEntity { name?: string; location?: string; symbol?: string; - - [keySymbol: string]: any; + [Datastore.KEY]?: any; } const kind = 'Company'; diff --git a/types/google-cloud__datastore/index.d.ts b/types/google-cloud__datastore/index.d.ts index 8c9cdd23c3..f864f965c9 100644 --- a/types/google-cloud__datastore/index.d.ts +++ b/types/google-cloud__datastore/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/googleapis/nodejs-datastore // Definitions by: Antoine Beauvais-Lacasse // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.4 +// TypeScript Version: 2.7 /// @@ -36,7 +36,7 @@ declare module '@google-cloud/datastore' { class Datastore extends DatastoreRequest_ { constructor(options: InitOptions); - readonly KEY: KEY_SYMBOL; + readonly KEY: typeof Datastore.KEY; readonly MORE_RESULTS_AFTER_CURSOR: MoreResultsAfterCursor; readonly MORE_RESULTS_AFTER_LIMIT: MoreResultsAfterLimit; readonly NO_MORE_RESULTS: NoMoreResults; @@ -81,7 +81,7 @@ declare module '@google-cloud/datastore' { } namespace Datastore { - const KEY: KEY_SYMBOL; + const KEY: unique symbol; const MORE_RESULTS_AFTER_CURSOR: MoreResultsAfterCursor; const MORE_RESULTS_AFTER_LIMIT: MoreResultsAfterLimit; const NO_MORE_RESULTS: NoMoreResults; @@ -93,6 +93,8 @@ declare module '@google-cloud/datastore' { } declare module '@google-cloud/datastore/entity' { + import Datastore = require("@google-cloud/datastore"); + interface DatastoreInt { value: string; } @@ -133,7 +135,7 @@ declare module '@google-cloud/datastore/entity' { parent?: DatastoreKey; } - type KEY_SYMBOL = symbol; + type KEY_SYMBOL = typeof Datastore.KEY; interface DatastorePayload { key: DatastoreKey; diff --git a/types/google-cloud__pubsub/index.d.ts b/types/google-cloud__pubsub/index.d.ts index 7c9014b7d3..2cadd026cd 100644 --- a/types/google-cloud__pubsub/index.d.ts +++ b/types/google-cloud__pubsub/index.d.ts @@ -111,7 +111,7 @@ declare namespace PubSub { interface Publisher { publish(data: Buffer, callback: Publisher.PublishCallback): void; publish(data: Buffer, attributes: object, callback: Publisher.PublishCallback): void; - publish(data: Buffer, attributes?: object): Promise; + publish(data: Buffer, attributes?: object): Promise; } namespace Publisher { type PublishCallback = (error: Error | null, messageId: string) => void; diff --git a/types/google-libphonenumber/index.d.ts b/types/google-libphonenumber/index.d.ts index 9a46ac69a6..dd73c56790 100644 --- a/types/google-libphonenumber/index.d.ts +++ b/types/google-libphonenumber/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for libphonenumber v7.4.3 // Project: https://github.com/googlei18n/libphonenumber, https://github.com/seegno/google-libphonenumber // Definitions by: Leon Yu +// Roman Jurkov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace libphonenumber { @@ -112,6 +113,7 @@ declare namespace libphonenumber { export class PhoneNumberUtil { static getInstance(): PhoneNumberUtil format(phoneNumber: PhoneNumber, format: PhoneNumberFormat): string; + formatOutOfCountryCallingNumber(phoneNumber: PhoneNumber, regionDialingFrom?: string): string; getNddPrefixForRegion(regionCode?: string, stripNonDigits?: boolean): string | undefined; getNumberType(phoneNumber: PhoneNumber): PhoneNumberType; getCountryCodeForRegion(supportedRegion:string):string; diff --git a/types/google-map-react/google-map-react-tests.tsx b/types/google-map-react/google-map-react-tests.tsx index 464f840658..552e75d362 100644 --- a/types/google-map-react/google-map-react-tests.tsx +++ b/types/google-map-react/google-map-react-tests.tsx @@ -1,9 +1,20 @@ -import GoogleMapReact, { BootstrapURLKeys } from 'google-map-react'; +import GoogleMapReact, { BootstrapURLKeys, MapOptions } from 'google-map-react'; import * as React from 'react'; const center = { lat: 0, lng: 0 }; const key: BootstrapURLKeys = { key: 'my-google-maps-key' }; const client: BootstrapURLKeys = { client: 'my-client-identifier', v: '3.28' , language: 'en' }; +const options: MapOptions = { + zoomControl: false, + gestureHandling: 'cooperative', + styles: [ + { + featureType: "administrative", + elementType: "all", + stylers: [ {saturation: "-100"} ] + } + ], +}; -; +; diff --git a/types/google-map-react/index.d.ts b/types/google-map-react/index.d.ts index d0606f76fd..ca5348323a 100644 --- a/types/google-map-react/index.d.ts +++ b/types/google-map-react/index.d.ts @@ -8,15 +8,48 @@ import * as React from 'react'; export type BootstrapURLKeys = ({ key: string; } | { client: string; v: string; }) & { language?: string }; -export interface Options { - styles?: any[]; - scrollwheel?: boolean; - panControl?: boolean; +export interface MapTypeStyle { + elementType: string; + featureType: string; + stylers: any[]; +} + +export interface MapOptions { + // Any options from https://developers.google.com/maps/documentation/javascript/reference/3/#MapOptions + // excluding 'zoom' and 'center' which get set via props. + backgroundColor?: string; + clickableIcons?: boolean; + disableDefaultUI?: boolean; + disableDoubleClickZoom?: boolean; + draggable?: boolean; + draggableCursor?: string; + draggingCursor?: string; + fullscreenControl?: boolean; + fullscreenControlOptions?: {position: number}; + gestureHandling?: string; + heading?: number; + keyboardShortcuts?: boolean; mapTypeControl?: boolean; - minZoomOverride?: boolean; + mapTypeControlOptions?: any; + mapTypeId?: string; minZoom?: number; maxZoom?: number; - gestureHandling?: string; + noClear?: boolean; + panControl?: boolean; + panControlOptions?: {position: number}; + rotateControl?: boolean; + rotateControlOptions?: {position: number}; + scaleControl?: boolean; + scaleControlOptions?: any; + scrollwheel?: boolean; + streetView?: any; + streetViewControl?: boolean; + streetViewControlOptions?: {position: number}; + styles?: MapTypeStyle[]; + tilt?: number; + zoomControl?: boolean; + zoomControlOptions?: {position: number}; + minZoomOverride?: boolean; // Not a standard option; specific to google-map-react: https://github.com/google-map-react/google-map-react/pull/154 } export interface Maps { @@ -47,10 +80,10 @@ export interface Maps { } export interface Bounds { - nw: number; - ne: number; - sw: number; - se: number; + nw: Coords; + ne: Coords; + sw: Coords; + se: Coords; } export interface Point { @@ -63,6 +96,11 @@ export interface Coords { lng: number; } +export interface Size { + width: number; + height: number; +} + export interface ClickEventValue extends Point, Coords { event: any; } @@ -72,6 +110,7 @@ export interface ChangeEventValue { zoom: number; bounds: Bounds; marginBounds: Bounds; + size: Size; } export interface Props { @@ -81,7 +120,7 @@ export interface Props { defaultZoom?: number; zoom?: number; hoverDistance?: number; - options?: Options | ((maps: Maps) => Options); + options?: MapOptions | ((maps: Maps) => MapOptions); margin?: any[]; debounced?: boolean; draggable?: boolean; diff --git a/types/google.picker/index.d.ts b/types/google.picker/index.d.ts index 851697cb32..b5fc91404d 100644 --- a/types/google.picker/index.d.ts +++ b/types/google.picker/index.d.ts @@ -47,6 +47,9 @@ declare namespace google { // ISO 639 language code. If the language is not supported, en-US is used. This method provides an alternative to setting the locale at google.load() time. See the Developer's Guide for a list of supported locales. setLocale(locale:string):PickerBuilder; + // Sets the maximum number of items a user can pick. + setMaxItems(max: number):PickerBuilder; + // Sets an OAuth token to use for authenticating the current user. Depending on the scope of the token, only certain views will display data. Valid scopes are Google Docs, Drive, Photos, YouTube. setOAuthToken(token:string):PickerBuilder; diff --git a/types/googlepay/googlepay-tests.ts b/types/googlepay/googlepay-tests.ts new file mode 100644 index 0000000000..ea97c2a586 --- /dev/null +++ b/types/googlepay/googlepay-tests.ts @@ -0,0 +1,68 @@ +const allowedPaymentMethods = new Array('CARD', 'TOKENIZED_CARD'); + +const allowedCardNetworks = new Array('AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA'); + +const tokenizationParameters: google.payments.api.PaymentMethodTokenizationParameters = { + tokenizationType: 'PAYMENT_GATEWAY', + parameters: { + gateway: 'example', + gatewayMerchantId: 'abc123' + } +}; + +const getGooglePaymentsClient = (env?: google.payments.api.EnvironmentType) => new google.payments.api.PaymentsClient({environment: env}); + +function onGooglePayLoaded() { + const client = getGooglePaymentsClient(); + + client.isReadyToPay({allowedPaymentMethods}).then(response => { + if (response.result) { + addGooglePayButton(); + prefetchGooglePaymentData(); + } + }).catch(err => { + console.error(err); + }); +} + +function addGooglePayButton() { + const button = document.createElement('button'); + button.className = 'google-pay'; + button.appendChild(document.createTextNode('Google Pay')); + button.addEventListener('click', onGooglePaymentButtonClick); + document.appendChild(document.createElement('div').appendChild(button)); +} + +function getGooglePaymentDataConfiguration(): google.payments.api.PaymentDataRequest { + return { + merchantId: '01234567890123456789', + transactionInfo: { + totalPriceStatus: 'FINAL', + totalPrice: '123.45', + currencyCode: 'USD' + }, + paymentMethodTokenizationParameters: tokenizationParameters, + allowedPaymentMethods, + cardRequirements: { + allowedCardNetworks, + billingAddressRequired: true, + billingAddressFormat: 'FULL' + }, + phoneNumberRequired: false, + shippingAddressRequired: true + }; +} + +function prefetchGooglePaymentData() { + const client = getGooglePaymentsClient(); + client.prefetchPaymentData(getGooglePaymentDataConfiguration()); +} + +function onGooglePaymentButtonClick() { + const request = getGooglePaymentDataConfiguration(); + const client = getGooglePaymentsClient(); + + client.loadPaymentData(request) + .then(data => console.log(data)) + .catch(err => console.error(err)); +} diff --git a/types/googlepay/index.d.ts b/types/googlepay/index.d.ts new file mode 100644 index 0000000000..524c277691 --- /dev/null +++ b/types/googlepay/index.d.ts @@ -0,0 +1,160 @@ +// Type definitions for Google Pay API 0.0 +// Project: https://developers.google.com/pay/api/web/setup/ +// Definitions by: Florian Luccioni +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare namespace google.payments.api { + type AddressFormat = 'FULL' | 'MIN'; + type AllowedCardNetwork = 'AMEX' | 'DISCOVER' | 'JCB' | 'MASTERCARD' | 'VISA'; + type AllowedPaymentMethod = 'CARD' | 'TOKENIZED_CARD'; + type CardClass = 'CREDIT' | 'DEBIT'; + type CardInfo = CardInfoMin | CardInfoFull; + type CardRequirements = CardRequirementsMin | CardRequirementsFull; + type EnvironmentType = 'PRODUCTION' | 'TEST'; + type ErrorStatusCode = 'BUYER_ACCOUNT_ERROR' | 'CANCELED' | 'DEVELOPER_ERROR' | 'INTERNAL_ERROR'; + type PaymentMethodTokenizationParameters = PaymentMethodDirectTokenizationParameters | PaymentMethodGatewayTokenizationParameters; + type TokenizationType = 'DIRECT' | 'PAYMENT_GATEWAY'; + type TotalPriceStatus = 'ESTIMATED' | 'FINAL' | 'NOT_CURRENTLY_KNOWN'; + type UserAddress = UserAddressFull | UserAddressMin; + type PaymentDataRequest = PaymentDataRequestMin | PaymentDataRequestFull; + type PaymentData = PaymentDataMin | PaymentDataFull; + + interface PaymentOptions { + environment?: EnvironmentType; + } + + interface IsReadyToPayRequest { + allowedPaymentMethods: AllowedPaymentMethod[]; + } + + interface BasePaymentDataRequest { + merchantId: string; + transactionInfo: TransactionInfo; + cardRequirements: CardRequirements; + paymentMethodTokenizationParameters: PaymentMethodTokenizationParameters; + allowedPaymentMethods: AllowedPaymentMethod[]; + phoneNumberRequired?: boolean; + emailRequired?: boolean; + shippingAddressRequired?: boolean; + shippingAddressRequirements?: ShippingAddressRequirements; + } + + interface PaymentDataRequestMin extends BasePaymentDataRequest { + cardRequirements: CardRequirementsMin; + } + + interface PaymentDataRequestFull extends BasePaymentDataRequest { + cardRequirements: CardRequirementsFull; + } + + interface BasePaymentMethodTokenizationParameters { + tokenizationType: TokenizationType; + } + + interface PaymentMethodGatewayTokenizationParameters extends BasePaymentMethodTokenizationParameters { + tokenizationType: 'PAYMENT_GATEWAY'; + parameters: { + [parameter: string]: string; + }; + } + + interface PaymentMethodDirectTokenizationParameters extends BasePaymentMethodTokenizationParameters { + tokenizationType: 'DIRECT'; + parameters: { + publicKey: string; + }; + } + + interface BaseCardRequirements { + allowedCardNetworks: AllowedCardNetwork[]; + billingAddressRequired?: boolean; + billingAddressFormat?: AddressFormat; + } + + interface CardRequirementsMin extends BaseCardRequirements { + billingAddressFormat?: 'MIN'; + } + + interface CardRequirementsFull extends BaseCardRequirements { + billingAddressFormat?: 'FULL'; + } + + interface ShippingAddressRequirements { + allowedCountryCodes?: string[]; + } + + interface TransactionInfo { + totalPriceStatus: TotalPriceStatus; + totalPrice?: string; + currencyCode?: string; + } + + interface BasePaymentData { + cardInfo: CardInfo; + paymentMethodToken: PaymentMethodToken; + shippingAddress?: UserAddressFull; + email?: string; + } + + interface PaymentDataMin extends BasePaymentData { + cardInfo: CardInfoMin; + } + + interface PaymentDataFull extends BasePaymentData { + cardInfo: CardInfoFull; + } + + interface BaseCardInfo { + cardDescription: string; + cardClass: CardClass; + cardDetails: string; + cardNetwork: AllowedCardNetwork; + billingAddress?: UserAddress; + } + + interface CardInfoMin extends BaseCardInfo { + billingAddress?: UserAddressMin; + } + + interface CardInfoFull extends BaseCardInfo { + billingAddress?: UserAddressFull; + } + + interface UserAddressMin { + name: string; + postalCode: string; + countryCode: string; + phoneNumber?: string; + } + + interface UserAddressFull extends UserAddressMin { + companyName: string; + address1: string; + address2: string; + address3: string; + address4: string; + address5: string; + locality: string; + administrativeArea: string; + sortingCode: string; + } + + interface PaymentMethodToken { + tokenizationType: TokenizationType; + token: string; + } + + interface PaymentsError { + statusCode: ErrorStatusCode; + statusMessage: string; + } + + class PaymentsClient { + constructor(paymentOptions: PaymentOptions); + isReadyToPay(request: IsReadyToPayRequest): Promise<{result: boolean}>; + loadPaymentData(request: PaymentDataRequestMin): Promise; + loadPaymentData(request: PaymentDataRequestFull): Promise; + loadPaymentData(request: PaymentDataRequest): Promise; + prefetchPaymentData(request: PaymentDataRequest): void; + } +} diff --git a/types/googlepay/tsconfig.json b/types/googlepay/tsconfig.json new file mode 100644 index 0000000000..38fba1d6c8 --- /dev/null +++ b/types/googlepay/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "googlepay-tests.ts" + ] +} diff --git a/types/googlepay/tslint.json b/types/googlepay/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/googlepay/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/got/got-tests.ts b/types/got/got-tests.ts index 7048533295..1eb2d89aa8 100644 --- a/types/got/got-tests.ts +++ b/types/got/got-tests.ts @@ -1,8 +1,12 @@ import got = require('got'); import cookie = require('cookie'); import FormData = require('form-data'); +import Keyv = require('keyv'); import * as fs from 'fs'; import * as http from 'http'; +import * as https from 'https'; +import * as url from 'url'; +import QuickLRU = require('quick-lru'); let str: string; let buf: Buffer; @@ -94,6 +98,7 @@ let res: http.IncomingMessage | undefined; let opts: got.GotOptions; let err: got.GotError; let href: string | undefined; +let progress: got.Progress; const stream = got.stream('todomvc.com'); stream.addListener('request', (r) => req = r); @@ -107,6 +112,12 @@ stream.addListener('error', (e, b, r) => { err = e; res = r; }); +stream.addListener('downloadProgress', (p) => { + progress = p; +}); +stream.addListener('uploadProgress', (p) => { + progress = p; +}); stream.on('request', (r) => req = r); stream.on('response', (r) => res = r); @@ -119,6 +130,12 @@ stream.on('error', (e, b, r) => { err = e; res = r; }); +stream.on('downloadProgress', (p) => { + progress = p; +}); +stream.on('uploadProgress', (p) => { + progress = p; +}); stream.once('request', (r) => req = r); stream.once('response', (r) => res = r); @@ -131,6 +148,12 @@ stream.once('error', (e, b, r) => { err = e; res = r; }); +stream.once('downloadProgress', (p) => { + progress = p; +}); +stream.once('uploadProgress', (p) => { + progress = p; +}); stream.prependListener('request', (r) => req = r); stream.prependListener('response', (r) => res = r); @@ -143,6 +166,12 @@ stream.prependListener('error', (e, b, r) => { err = e; res = r; }); +stream.prependListener('downloadProgress', (p) => { + progress = p; +}); +stream.prependListener('uploadProgress', (p) => { + progress = p; +}); stream.prependOnceListener('request', (r) => req = r); stream.prependOnceListener('response', (r) => res = r); @@ -155,6 +184,12 @@ stream.prependOnceListener('error', (e, b, r) => { err = e; res = r; }); +stream.prependOnceListener('downloadProgress', (p) => { + progress = p; +}); +stream.prependOnceListener('uploadProgress', (p) => { + progress = p; +}); stream.removeListener('request', (r) => req = r); stream.removeListener('response', (r) => res = r); @@ -167,6 +202,12 @@ stream.removeListener('error', (e, b, r) => { err = e; res = r; }); +stream.removeListener('downloadProgress', (p) => { + progress = p; +}); +stream.removeListener('uploadProgress', (p) => { + progress = p; +}); got('google.com', { headers: { @@ -190,3 +231,30 @@ got('todomvc.com', { got('https://httpbin.org/404') .catch(err => err instanceof got.HTTPError && err.statusCode === 404); + +got('todomvc', { + throwHttpErrors: false +}); + +got('todomvc', { + agent: { + http: new http.Agent(), + https: new https.Agent() + } +}); + +got('todomvc', { + cache: new Map(), +}).then(res => res.fromCache); + +got('todomvc', { + cache: new Keyv(), +}).then(res => res.fromCache); + +got('todomvc', { + cache: new QuickLRU(), +}).then(res => res.fromCache); + +got(new url.URL('http://todomvc.com')); + +got(url.parse('http://todomvc.com')); diff --git a/types/got/index.d.ts b/types/got/index.d.ts index 5872b4f993..f786af118e 100644 --- a/types/got/index.d.ts +++ b/types/got/index.d.ts @@ -1,14 +1,16 @@ -// Type definitions for got 7.1 +// Type definitions for got 8.3 // Project: https://github.com/sindresorhus/got#readme // Definitions by: BendingBender // Linus Unnebäck +// Konstantin Ikonnikov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 /// -import { Url } from 'url'; +import { Url, URL } from 'url'; import * as http from 'http'; +import * as https from 'https'; import * as nodeStream from 'stream'; export = got; @@ -45,6 +47,10 @@ declare class UnsupportedProtocolError extends StdError { name: 'UnsupportedProtocolError'; } +declare class CancelError extends StdError { + name: 'CancelError'; +} + declare class StdError extends Error { code?: string; host?: string; @@ -59,15 +65,22 @@ declare class StdError extends Error { declare const got: got.GotFn & Record<'get' | 'post' | 'put' | 'patch' | 'head' | 'delete', got.GotFn> & { - stream: got.GotStreamFn & Record<'get' | 'post' | 'put' | 'patch' | 'head' | 'delete', got.GotStreamFn> - RequestError: typeof RequestError - ReadError: typeof ReadError - ParseError: typeof ParseError - HTTPError: typeof HTTPError - MaxRedirectsError: typeof MaxRedirectsError - UnsupportedProtocolError: typeof UnsupportedProtocolError + stream: got.GotStreamFn & Record<'get' | 'post' | 'put' | 'patch' | 'head' | 'delete', got.GotStreamFn>; + RequestError: typeof RequestError; + ReadError: typeof ReadError; + ParseError: typeof ParseError; + HTTPError: typeof HTTPError; + MaxRedirectsError: typeof MaxRedirectsError; + UnsupportedProtocolError: typeof UnsupportedProtocolError; + CancelError: typeof CancelError; }; +interface InternalRequestOptions extends http.RequestOptions { + // Redeclare options with `any` type for allow specify types incompatible with http.RequestOptions. + timeout?: any; + agent?: any; +} + declare namespace got { interface GotFn { (url: GotUrl): GotPromise; @@ -80,7 +93,7 @@ declare namespace got { type GotStreamFn = (url: GotUrl, options?: GotOptions) => GotEmitter & nodeStream.Duplex; - type GotUrl = string | http.RequestOptions | Url; + type GotUrl = string | http.RequestOptions | Url | URL; interface GotBodyOptions extends GotOptions { body?: string | Buffer | nodeStream.Readable; @@ -98,11 +111,7 @@ declare namespace got { json?: boolean; } - interface TimoutRequestOptions extends http.RequestOptions { - timeout?: any; - } - - interface GotOptions extends TimoutRequestOptions { + interface GotOptions extends InternalRequestOptions { encoding?: E; query?: string | object; timeout?: number | TimeoutOptions; @@ -110,6 +119,9 @@ declare namespace got { followRedirect?: boolean; decompress?: boolean; useElectronNet?: boolean; + cache?: Cache; + agent?: http.Agent | boolean | AgentOptions; + throwHttpErrors?: boolean; } interface TimeoutOptions { @@ -118,12 +130,24 @@ declare namespace got { request?: number; } + interface AgentOptions { + http: http.Agent; + https: https.Agent; + } + type RetryFunction = (retry: number, error: any) => number; + interface Cache { + set(key: string, value: any, ttl?: number): any; + get(key: string): any; + delete(key: string): any; + } + interface Response extends http.IncomingMessage { body: B; url: string; requestUrl: string; + fromCache: boolean; redirectUrls?: string[]; } @@ -134,32 +158,50 @@ declare namespace got { addListener(event: 'response', listener: (res: http.IncomingMessage) => void): this; addListener(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; addListener(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + addListener(event: 'downloadProgress', listener: (progress: Progress) => void): this; + addListener(event: 'uploadProgress', listener: (progress: Progress) => void): this; on(event: 'request', listener: (req: http.ClientRequest) => void): this; on(event: 'response', listener: (res: http.IncomingMessage) => void): this; on(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; on(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + on(event: 'downloadProgress', listener: (progress: Progress) => void): this; + on(event: 'uploadProgress', listener: (progress: Progress) => void): this; once(event: 'request', listener: (req: http.ClientRequest) => void): this; once(event: 'response', listener: (res: http.IncomingMessage) => void): this; once(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; once(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + once(event: 'downloadProgress', listener: (progress: Progress) => void): this; + once(event: 'uploadProgress', listener: (progress: Progress) => void): this; prependListener(event: 'request', listener: (req: http.ClientRequest) => void): this; prependListener(event: 'response', listener: (res: http.IncomingMessage) => void): this; prependListener(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; prependListener(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + prependListener(event: 'downloadProgress', listener: (progress: Progress) => void): this; + prependListener(event: 'uploadProgress', listener: (progress: Progress) => void): this; prependOnceListener(event: 'request', listener: (req: http.ClientRequest) => void): this; prependOnceListener(event: 'response', listener: (res: http.IncomingMessage) => void): this; prependOnceListener(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; prependOnceListener(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + prependOnceListener(event: 'downloadProgress', listener: (progress: Progress) => void): this; + prependOnceListener(event: 'uploadProgress', listener: (progress: Progress) => void): this; removeListener(event: 'request', listener: (req: http.ClientRequest) => void): this; removeListener(event: 'response', listener: (res: http.IncomingMessage) => void): this; removeListener(event: 'redirect', listener: (res: http.IncomingMessage, nextOptions: GotOptions & Url) => void): this; removeListener(event: 'error', listener: (error: GotError, body?: any, res?: http.IncomingMessage) => void): this; + removeListener(event: 'downloadProgress', listener: (progress: Progress) => void): this; + removeListener(event: 'uploadProgress', listener: (progress: Progress) => void): this; } - type GotError = RequestError | ReadError | ParseError | HTTPError | MaxRedirectsError | UnsupportedProtocolError; + type GotError = RequestError | ReadError | ParseError | HTTPError | MaxRedirectsError | UnsupportedProtocolError | CancelError; + + interface Progress { + percent: number; + transferred: number; + total: number | null; + } } diff --git a/types/graceful-fs/graceful-fs-tests.ts b/types/graceful-fs/graceful-fs-tests.ts index 233eb7124a..17f20c786a 100644 --- a/types/graceful-fs/graceful-fs-tests.ts +++ b/types/graceful-fs/graceful-fs-tests.ts @@ -14,7 +14,7 @@ gfs.renameSync(str, str); gfs2.chmodSync(buf, 1); const gracefulified = gfs.gracefulify(fs); -gracefulified; // $ExpectType typeof "fs" & Lutimes +const _fs: typeof fs = gracefulified; gracefulified.lutimes; // $ExpectType typeof lutimes promisify(gracefulified.lutimes); // $ExpectType (path: PathLike, atime: string | number | Date, mtime: string | number | Date) => Promise diff --git a/types/graphql-deduplicator/graphql-deduplicator-tests.ts b/types/graphql-deduplicator/graphql-deduplicator-tests.ts new file mode 100644 index 0000000000..7da4764de2 --- /dev/null +++ b/types/graphql-deduplicator/graphql-deduplicator-tests.ts @@ -0,0 +1,4 @@ +import { deflate, inflate } from 'graphql-deduplicator'; + +deflate({}); +inflate({}); diff --git a/types/graphql-deduplicator/index.d.ts b/types/graphql-deduplicator/index.d.ts new file mode 100644 index 0000000000..079b7c31be --- /dev/null +++ b/types/graphql-deduplicator/index.d.ts @@ -0,0 +1,13 @@ +// Type definitions for graphql-deduplicator 2.0 +// Project: https://github.com/gajus/graphql-deduplicator#readme +// Definitions by: Luis Fernando Alvarez D. +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +export function deflate(response: object): { + [key: string]: any; +}; + +export function inflate(response: object): { + [key: string]: any; +}; diff --git a/types/graphql-deduplicator/tsconfig.json b/types/graphql-deduplicator/tsconfig.json new file mode 100644 index 0000000000..2254638503 --- /dev/null +++ b/types/graphql-deduplicator/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "graphql-deduplicator-tests.ts" + ] +} diff --git a/types/graphql-deduplicator/tslint.json b/types/graphql-deduplicator/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/graphql-deduplicator/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/graphql-depth-limit/graphql-depth-limit-tests.ts b/types/graphql-depth-limit/graphql-depth-limit-tests.ts new file mode 100644 index 0000000000..68a5aa51f9 --- /dev/null +++ b/types/graphql-depth-limit/graphql-depth-limit-tests.ts @@ -0,0 +1,29 @@ +import graphqlDepthLimit = require('graphql-depth-limit'); +import { + GraphQLSchema, + DocumentNode, + buildSchema, + Source, + parse, + validate, + specifiedRules +} from 'graphql'; + +const schema: GraphQLSchema = buildSchema(` + # graphql schema goes here... +`); +const document: DocumentNode = parse(new Source(` + # graphql query goes here... +`, 'GraphQL request')); + +validate(schema, document, [ graphqlDepthLimit(5) ]); + +validate(schema, document, [ ...specifiedRules, graphqlDepthLimit(10) ]); + +validate(schema, document, [ graphqlDepthLimit( + 10, + { ignore: [ /_trusted$/, 'idontcare' ] }, + (depths: any) => { + // do something.... + }, +)]); diff --git a/types/graphql-depth-limit/index.d.ts b/types/graphql-depth-limit/index.d.ts new file mode 100644 index 0000000000..281f8fdaff --- /dev/null +++ b/types/graphql-depth-limit/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for graphql-depth-limit 1.1 +// Project: https://github.com/stems/graphql-depth-limit#readme +// Definitions by: Siim Tiilen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +declare function depthLimit(depthLimit: number, options?: depthLimit.Options, callback?: (obj: any) => void): any; +export = depthLimit; + +declare namespace depthLimit { + interface Options { + ignore: Array boolean)>; + } +} diff --git a/types/graphql-depth-limit/tsconfig.json b/types/graphql-depth-limit/tsconfig.json new file mode 100644 index 0000000000..5c59137102 --- /dev/null +++ b/types/graphql-depth-limit/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "graphql-depth-limit-tests.ts" + ] +} diff --git a/types/graphql-depth-limit/tslint.json b/types/graphql-depth-limit/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/graphql-depth-limit/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/graphql/error/GraphQLError.d.ts b/types/graphql/error/GraphQLError.d.ts index a4aa3f17c6..ce31564fb1 100644 --- a/types/graphql/error/GraphQLError.d.ts +++ b/types/graphql/error/GraphQLError.d.ts @@ -1,6 +1,8 @@ +import Maybe from "../tsutils/Maybe"; import { getLocation } from "../language"; import { ASTNode } from "../language/ast"; import { Source } from "../language/source"; +import { SourceLocation } from "../language/location"; /** * A GraphQLError describes an Error found during the parse, validate, or @@ -13,6 +15,8 @@ export class GraphQLError extends Error { * A message describing the Error for debugging purposes. * * Enumerable, and appears in the result of JSON.stringify(). + * + * Note: should be treated as readonly, despite invariant usage. */ message: string; @@ -26,7 +30,7 @@ export class GraphQLError extends Error { * * Enumerable, and appears in the result of JSON.stringify(). */ - locations?: Array<{ line: number; column: number }> | undefined; + readonly locations: ReadonlyArray | undefined; /** * An array describing the JSON-path into the execution response which @@ -34,41 +38,41 @@ export class GraphQLError extends Error { * * Enumerable, and appears in the result of JSON.stringify(). */ - path?: Array | undefined; + readonly path: ReadonlyArray | undefined; /** * An array of GraphQL AST Nodes corresponding to this error. */ - nodes?: ASTNode[] | undefined; + readonly nodes: ReadonlyArray | undefined; /** * The source GraphQL document corresponding to this error. */ - source?: Source | undefined; + readonly source: Source | undefined; /** * An array of character offsets within the source GraphQL document * which correspond to this error. */ - positions?: number[] | undefined; + readonly positions: ReadonlyArray | undefined; /** * The original error thrown from a field resolver during execution. */ - originalError?: Error; + readonly originalError: Maybe; /** * Extension fields to add to the formatted error. */ - extensions?: { [key: string]: any } | undefined; + readonly extensions: { [key: string]: any } | void; constructor( message: string, - nodes?: any[], - source?: Source, - positions?: number[], - path?: Array, - originalError?: Error, - extensions?: { [key: string]: any } + nodes?: ReadonlyArray | ASTNode | undefined, + source?: Maybe, + positions?: Maybe>, + path?: Maybe>, + originalError?: Maybe, + extensions?: Maybe<{ [key: string]: any }> ); } diff --git a/types/graphql/error/formatError.d.ts b/types/graphql/error/formatError.d.ts index a683da0375..7f13117cf0 100644 --- a/types/graphql/error/formatError.d.ts +++ b/types/graphql/error/formatError.d.ts @@ -1,4 +1,5 @@ import { GraphQLError } from "./GraphQLError"; +import { SourceLocation } from "../language/location"; /** * Given a GraphQLError, format it according to the rules described by the @@ -7,12 +8,9 @@ import { GraphQLError } from "./GraphQLError"; export function formatError(error: GraphQLError): GraphQLFormattedError; export interface GraphQLFormattedError { - message: string; - locations?: GraphQLErrorLocation[]; - path?: Array; -} - -export interface GraphQLErrorLocation { - line: number; - column: number; + readonly message: string; + readonly locations: ReadonlyArray | undefined; + readonly path: ReadonlyArray | undefined; + // Extensions + readonly [key: string]: any; } diff --git a/types/graphql/error/index.d.ts b/types/graphql/error/index.d.ts index 8d81175bcc..bed0763ed3 100644 --- a/types/graphql/error/index.d.ts +++ b/types/graphql/error/index.d.ts @@ -1,4 +1,5 @@ export { GraphQLError } from "./GraphQLError"; export { syntaxError } from "./syntaxError"; export { locatedError } from "./locatedError"; -export { formatError, GraphQLFormattedError, GraphQLErrorLocation } from "./formatError"; +export { printError } from "./printError"; +export { formatError, GraphQLFormattedError } from "./formatError"; diff --git a/types/graphql/error/locatedError.d.ts b/types/graphql/error/locatedError.d.ts index c41fd0df50..77dd470c63 100644 --- a/types/graphql/error/locatedError.d.ts +++ b/types/graphql/error/locatedError.d.ts @@ -1,8 +1,13 @@ import { GraphQLError } from "./GraphQLError"; +import { ASTNode } from "../language/ast"; /** * Given an arbitrary Error, presumably thrown while attempting to execute a * GraphQL operation, produce a new GraphQLError aware of the location in the * document responsible for the original Error. */ -export function locatedError(originalError: Error, nodes: T[], path: Array): GraphQLError; +export function locatedError( + originalError: Error, + nodes: ReadonlyArray, + path: ReadonlyArray +): GraphQLError; diff --git a/types/graphql/error/printError.d.ts b/types/graphql/error/printError.d.ts new file mode 100644 index 0000000000..924682f471 --- /dev/null +++ b/types/graphql/error/printError.d.ts @@ -0,0 +1,7 @@ +import { GraphQLError } from "./GraphQLError"; + +/** + * Prints a GraphQLError to a string, representing useful location information + * about the error's position in the source. + */ +export function printError(error: GraphQLError): string; diff --git a/types/graphql/execution/execute.d.ts b/types/graphql/execution/execute.d.ts index 387a3d4d73..7ef4d5ce63 100644 --- a/types/graphql/execution/execute.d.ts +++ b/types/graphql/execution/execute.d.ts @@ -1,6 +1,13 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLError, locatedError } from "../error"; import { GraphQLSchema } from "../type/schema"; -import { GraphQLField, GraphQLFieldResolver, ResponsePath } from "../type/definition"; +import { + GraphQLField, + GraphQLFieldResolver, + ResponsePath, + GraphQLObjectType, + GraphQLResolveInfo, +} from "../type/definition"; import { DirectiveNode, DocumentNode, @@ -10,6 +17,8 @@ import { InlineFragmentNode, FragmentDefinitionNode, } from "../language/ast"; +import { MaybePromise } from "../jsutils/MaybePromise"; + /** * Data that must be available at all points during query execution. * @@ -20,6 +29,7 @@ export interface ExecutionContext { schema: GraphQLSchema; fragments: { [key: string]: FragmentDefinitionNode }; rootValue: any; + contextValue: any; operation: OperationDefinitionNode; variableValues: { [key: string]: any }; fieldResolver: GraphQLFieldResolver; @@ -27,15 +37,14 @@ export interface ExecutionContext { } /** - * The result of execution. `data` is the result of executing the - * query, `extensions` represents additional metadata, `errors` is - * null if no errors occurred, and is a - * non-empty array if an error occurred. + * The result of GraphQL execution. + * + * - `errors` is included when any errors occurred as a non-empty array. + * - `data` is the result of a successful execution of the query. */ export interface ExecutionResult { + errors?: ReadonlyArray; data?: { [key: string]: any }; - extensions?: { [key: string]: any }; - errors?: GraphQLError[]; } export type ExecutionArgs = { @@ -43,41 +52,114 @@ export type ExecutionArgs = { document: DocumentNode; rootValue?: any; contextValue?: any; - variableValues?: { [key: string]: any }; - operationName?: string; - fieldResolver?: GraphQLFieldResolver; + variableValues?: Maybe<{ [key: string]: any }>; + operationName?: Maybe; + fieldResolver?: Maybe>; }; /** * Implements the "Evaluating requests" section of the GraphQL specification. * - * Returns a Promise that will eventually be resolved and never rejected. + * Returns either a synchronous ExecutionResult (if all encountered resolvers + * are synchronous), or a Promise of an ExecutionResult that will eventually be + * resolved and never rejected. * * If the arguments to this function do not result in a legal execution context, * a GraphQLError will be thrown immediately explaining the invalid input. * * Accepts either an object with named arguments, or individual arguments. */ -export function execute(args: ExecutionArgs): Promise; +export function execute(args: ExecutionArgs): MaybePromise; export function execute( schema: GraphQLSchema, document: DocumentNode, rootValue?: any, contextValue?: any, - variableValues?: { - [key: string]: any; - }, - operationName?: string, - fieldResolver?: GraphQLFieldResolver -): Promise; + variableValues?: Maybe<{ [key: string]: any }>, + operationName?: Maybe, + fieldResolver?: Maybe> +): MaybePromise; /** * Given a ResponsePath (found in the `path` entry in the information provided * as the last argument to a field resolver), return an Array of the path keys. */ -export function responsePathAsArray(path: ResponsePath): Array; +export function responsePathAsArray(path: ResponsePath): ReadonlyArray; -export function addPath(prev: ResponsePath, key: string | number): any; +/** + * Given a ResponsePath and a key, return a new ResponsePath containing the + * new key. + */ +export function addPath( + prev: ResponsePath | undefined, + key: string | number +): { prev: ResponsePath | undefined; key: string | number }; + +/** + * Essential assertions before executing to provide developer feedback for + * improper use of the GraphQL library. + */ +export function assertValidExecutionArguments( + schema: GraphQLSchema, + document: DocumentNode, + rawVariableValues: Maybe<{ [key: string]: any }> +): void; + +/** + * Constructs a ExecutionContext object from the arguments passed to + * execute, which we will pass throughout the other execution methods. + * + * Throws a GraphQLError if a valid execution context cannot be created. + */ +export function buildExecutionContext( + schema: GraphQLSchema, + document: DocumentNode, + rootValue: any, + contextValue: any, + rawVariableValues: Maybe<{ [key: string]: any }>, + operationName: Maybe, + fieldResolver: Maybe> +): ReadonlyArray | ExecutionContext; + +/** + * Extracts the root type of the operation from the schema. + */ +export function getOperationRootType(schema: GraphQLSchema, operation: OperationDefinitionNode): GraphQLObjectType; + +/** + * Given a selectionSet, adds all of the fields in that selection to + * the passed in map of fields, and returns it at the end. + * + * CollectFields requires the "runtime type" of an object. For a field which + * returns an Interface or Union type, the "runtime type" will be the actual + * Object type returned by that field. + */ +export function collectFields( + exeContext: ExecutionContext, + runtimeType: GraphQLObjectType, + selectionSet: SelectionSetNode, + fields: { [key: string]: Array }, + visitedFragmentNames: { [key: string]: boolean } +): { [key: string]: Array }; + +export function buildResolveInfo( + exeContext: ExecutionContext, + fieldDef: GraphQLField, + fieldNodes: ReadonlyArray, + parentType: GraphQLObjectType, + path: ResponsePath +): GraphQLResolveInfo; + +// Isolates the "ReturnOrAbrupt" behavior to not de-opt the `resolveField` +// function. Returns the result of resolveFn or the abrupt-return Error object. +export function resolveFieldValueOrError( + exeContext: ExecutionContext, + fieldDef: GraphQLField, + fieldNodes: ReadonlyArray, + resolveFn: GraphQLFieldResolver, + source: TSource, + info: GraphQLResolveInfo +): Error | any; /** * If a resolve function is not given, then a default resolve behavior is used @@ -86,3 +168,18 @@ export function addPath(prev: ResponsePath, key: string | number): any; * of calling that function while passing along args and context. */ export const defaultFieldResolver: GraphQLFieldResolver; + +/** + * This method looks up the field on the given type defintion. + * It has special casing for the two introspection fields, __schema + * and __typename. __typename is special because it can always be + * queried as a field, even in situations where no other fields + * are allowed, like on a Union. __schema could get automatically + * added to the query type, but that would require mutating type + * definitions, which would cause issues. + */ +export function getFieldDef( + schema: GraphQLSchema, + parentType: GraphQLObjectType, + fieldName: string +): Maybe>; diff --git a/types/graphql/execution/values.d.ts b/types/graphql/execution/values.d.ts index d8e1ec2e7e..e3cb7eb4bc 100644 --- a/types/graphql/execution/values.d.ts +++ b/types/graphql/execution/values.d.ts @@ -1,27 +1,42 @@ +import Maybe from "../tsutils/Maybe"; +import { GraphQLError } from "../error"; import { GraphQLInputType, GraphQLField, GraphQLArgument } from "../type/definition"; import { GraphQLDirective } from "../type/directives"; import { GraphQLSchema } from "../type/schema"; import { FieldNode, DirectiveNode, VariableDefinitionNode } from "../language/ast"; +interface CoercedVariableValues { + errors: ReadonlyArray | undefined; + coerced: { [key: string]: any } | undefined; +} + /** * Prepares an object map of variableValues of the correct type based on the * provided variable definitions and arbitrary input. If the input cannot be * parsed to match the variable definitions, a GraphQLError will be thrown. + * + * Note: The returned value is a plain Object with a prototype, since it is + * exposed to user code. Care should be taken to not pull values from the + * Object prototype. */ export function getVariableValues( schema: GraphQLSchema, varDefNodes: VariableDefinitionNode[], inputs: { [key: string]: any } -): { [key: string]: any }; +): CoercedVariableValues; /** * Prepares an object map of argument values given a list of argument * definitions and list of argument AST nodes. + * + * Note: The returned value is a plain Object with a prototype, since it is + * exposed to user code. Care should be taken to not pull values from the + * Object prototype. */ export function getArgumentValues( def: GraphQLField | GraphQLDirective, node: FieldNode | DirectiveNode, - variableValues?: { [key: string]: any } + variableValues?: Maybe<{ [key: string]: any }> ): { [key: string]: any }; /** @@ -30,9 +45,15 @@ export function getArgumentValues( * of variable values. * * If the directive does not exist on the node, returns undefined. + * + * Note: The returned value is a plain Object with a prototype, since it is + * exposed to user code. Care should be taken to not pull values from the + * Object prototype. */ export function getDirectiveValues( directiveDef: GraphQLDirective, - node: { directives?: Array }, - variableValues?: { [key: string]: any } -): void | { [key: string]: any }; + node: { + readonly directives?: ReadonlyArray; + }, + variableValues?: Maybe<{ [key: string]: any }> +): undefined | { [key: string]: any }; diff --git a/types/graphql/graphql.d.ts b/types/graphql/graphql.d.ts index 386cdd9e1b..59dc3918f1 100644 --- a/types/graphql/graphql.d.ts +++ b/types/graphql/graphql.d.ts @@ -1,3 +1,4 @@ +import Maybe from "./tsutils/Maybe"; import { Source } from "./language/source"; import { GraphQLFieldResolver } from "./type/definition"; import { GraphQLSchema } from "./type/schema"; @@ -33,25 +34,40 @@ import { ExecutionResult } from "./execution/execute"; * If not provided, the default field resolver is used (which looks for a * value or method on the source value with the field's name). */ -export function graphql(args: { +export interface GraphQLArgs { schema: GraphQLSchema; - source: string | Source; + source: Source | string; rootValue?: any; contextValue?: any; - variableValues?: { - [key: string]: any; - }; - operationName?: string; - fieldResolver?: GraphQLFieldResolver; -}): Promise; + variableValues?: Maybe<{ [key: string]: any }>; + operationName?: Maybe; + fieldResolver?: Maybe>; +} + +export function graphql(args: GraphQLArgs): Promise; export function graphql( schema: GraphQLSchema, - source: string | Source, + source: Source | string, rootValue?: any, contextValue?: any, - variableValues?: { - [key: string]: any; - }, - operationName?: string, - fieldResolver?: GraphQLFieldResolver + variableValues?: Maybe<{ [key: string]: any }>, + operationName?: Maybe, + fieldResolver?: Maybe> ): Promise; + +/** + * The graphqlSync function also fulfills GraphQL operations by parsing, + * validating, and executing a GraphQL document along side a GraphQL schema. + * However, it guarantees to complete synchronously (or throw an error) assuming + * that all field resolvers are also synchronous. + */ +export function graphqlSync(args: GraphQLArgs): ExecutionResult; +export function graphqlSync( + schema: GraphQLSchema, + source: Source | string, + rootValue?: any, + contextValue?: any, + variableValues?: Maybe<{ [key: string]: any }>, + operationName?: Maybe, + fieldResolver?: Maybe> +): ExecutionResult; diff --git a/types/graphql/index.d.ts b/types/graphql/index.d.ts index 017f006787..ba9213b7c4 100644 --- a/types/graphql/index.d.ts +++ b/types/graphql/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for graphql 0.12 +// Type definitions for graphql 0.13 // Project: https://www.npmjs.com/package/graphql // Definitions by: TonyYang // Caleb Meredith @@ -13,19 +13,226 @@ // Dylan Stewart // Alessio Dionisi // Divyendu Singh +// Brad Zacher // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 // The primary entry point into fulfilling a GraphQL request. -export { graphql } from "./graphql"; +export { graphql, graphqlSync, GraphQLArgs } from "./graphql"; // Create and operate on GraphQL type definitions and schema. -export * from "./type"; +export { + GraphQLSchema, + // Definitions + GraphQLScalarType, + GraphQLObjectType, + GraphQLInterfaceType, + GraphQLUnionType, + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLList, + GraphQLNonNull, + GraphQLDirective, + // "Enum" of Type Kinds + TypeKind, + // Scalars + specifiedScalarTypes, + GraphQLInt, + GraphQLFloat, + GraphQLString, + GraphQLBoolean, + GraphQLID, + // Built-in Directives defined by the Spec + specifiedDirectives, + GraphQLIncludeDirective, + GraphQLSkipDirective, + GraphQLDeprecatedDirective, + // Constant Deprecation Reason + DEFAULT_DEPRECATION_REASON, + // Meta-field definitions. + SchemaMetaFieldDef, + TypeMetaFieldDef, + TypeNameMetaFieldDef, + // GraphQL Types for introspection. + introspectionTypes, + __Schema, + __Directive, + __DirectiveLocation, + __Type, + __Field, + __InputValue, + __EnumValue, + __TypeKind, + // Predicates + isSchema, + isDirective, + isType, + isScalarType, + isObjectType, + isInterfaceType, + isUnionType, + isEnumType, + isInputObjectType, + isListType, + isNonNullType, + isInputType, + isOutputType, + isLeafType, + isCompositeType, + isAbstractType, + isWrappingType, + isNullableType, + isNamedType, + isSpecifiedScalarType, + isIntrospectionType, + isSpecifiedDirective, + // Assertions + assertType, + assertScalarType, + assertObjectType, + assertInterfaceType, + assertUnionType, + assertEnumType, + assertInputObjectType, + assertListType, + assertNonNullType, + assertInputType, + assertOutputType, + assertLeafType, + assertCompositeType, + assertAbstractType, + assertWrappingType, + assertNullableType, + assertNamedType, + // Un-modifiers + getNullableType, + getNamedType, + // Validate GraphQL schema. + validateSchema, + assertValidSchema, + // type + GraphQLType, + GraphQLInputType, + GraphQLOutputType, + GraphQLLeafType, + GraphQLCompositeType, + GraphQLAbstractType, + GraphQLWrappingType, + GraphQLNullableType, + GraphQLNamedType, + Thunk, + GraphQLSchemaConfig, + GraphQLArgument, + GraphQLArgumentConfig, + GraphQLEnumTypeConfig, + GraphQLEnumValue, + GraphQLEnumValueConfig, + GraphQLEnumValueConfigMap, + GraphQLField, + GraphQLFieldConfig, + GraphQLFieldConfigArgumentMap, + GraphQLFieldConfigMap, + GraphQLFieldMap, + GraphQLFieldResolver, + GraphQLInputField, + GraphQLInputFieldConfig, + GraphQLInputFieldConfigMap, + GraphQLInputFieldMap, + GraphQLInputObjectTypeConfig, + GraphQLInterfaceTypeConfig, + GraphQLIsTypeOfFn, + GraphQLObjectTypeConfig, + GraphQLResolveInfo, + ResponsePath, + GraphQLScalarTypeConfig, + GraphQLTypeResolver, + GraphQLUnionTypeConfig, + GraphQLDirectiveConfig, +} from "./type"; // Parse and operate on GraphQL language source files. -export * from "./language"; - -export * from "./subscription"; +export { + Source, + getLocation, + // Parse + parse, + parseValue, + parseType, + // Print + print, + // Visit + visit, + visitInParallel, + visitWithTypeInfo, + getVisitFn, + Kind, + TokenKind, + DirectiveLocation, + BREAK, + // type + Lexer, + ParseOptions, + SourceLocation, + // Visitor utilities + ASTVisitor, + Visitor, + VisitFn, + VisitorKeyMap, + // AST nodes + Location, + Token, + ASTNode, + ASTKindToNode, + NameNode, + DocumentNode, + DefinitionNode, + ExecutableDefinitionNode, + OperationDefinitionNode, + OperationTypeNode, + VariableDefinitionNode, + VariableNode, + SelectionSetNode, + SelectionNode, + FieldNode, + ArgumentNode, + FragmentSpreadNode, + InlineFragmentNode, + FragmentDefinitionNode, + ValueNode, + IntValueNode, + FloatValueNode, + StringValueNode, + BooleanValueNode, + NullValueNode, + EnumValueNode, + ListValueNode, + ObjectValueNode, + ObjectFieldNode, + DirectiveNode, + TypeNode, + NamedTypeNode, + ListTypeNode, + NonNullTypeNode, + TypeSystemDefinitionNode, + SchemaDefinitionNode, + OperationTypeDefinitionNode, + TypeDefinitionNode, + ScalarTypeDefinitionNode, + ObjectTypeDefinitionNode, + FieldDefinitionNode, + InputValueDefinitionNode, + InterfaceTypeDefinitionNode, + UnionTypeDefinitionNode, + EnumTypeDefinitionNode, + EnumValueDefinitionNode, + InputObjectTypeDefinitionNode, + TypeExtensionNode, + ObjectTypeExtensionNode, + DirectiveDefinitionNode, + KindEnum, + TokenKindEnum, + DirectiveLocationEnum, +} from "./language"; // Execute GraphQL queries. export { @@ -33,10 +240,13 @@ export { defaultFieldResolver, responsePathAsArray, getDirectiveValues, + // type ExecutionArgs, ExecutionResult, } from "./execution"; +export { subscribe, createSourceEventStream } from "./subscription"; + // Validate GraphQL queries. export { validate, @@ -44,8 +254,6 @@ export { // All validation rules in the GraphQL Specification. specifiedRules, // Individual validation rules. - ArgumentsOfCorrectTypeRule, - DefaultValuesOfCorrectTypeRule, FieldsOnCorrectTypeRule, FragmentsOnCompositeTypesRule, KnownArgumentNamesRule, @@ -68,44 +276,60 @@ export { UniqueInputFieldNamesRule, UniqueOperationNamesRule, UniqueVariableNamesRule, + ValuesOfCorrectTypeRule, VariablesAreInputTypesRule, + VariablesDefaultValueAllowedRule, VariablesInAllowedPositionRule, } from "./validation"; // Create and format GraphQL errors. -export { GraphQLError, formatError, GraphQLFormattedError, GraphQLErrorLocation } from "./error"; +export { GraphQLError, formatError, printError, GraphQLFormattedError } from "./error"; // Utilities for operating on GraphQL type schema and parsed sources. export { - // The GraphQL query recommended for a full schema introspection. + // Produce the GraphQL query recommended for a full schema introspection. + // Accepts optional IntrospectionOptions. + getIntrospectionQuery, + // Deprecated: use getIntrospectionQuery introspectionQuery, // Gets the target Operation from a Document getOperationAST, + // Convert a GraphQLSchema to an IntrospectionQuery + introspectionFromSchema, // Build a GraphQLSchema from an introspection result. buildClientSchema, // Build a GraphQLSchema from a parsed GraphQL Schema language AST. buildASTSchema, // Build a GraphQLSchema from a GraphQL schema language document. buildSchema, - // Get the description of an AST node + // Get the description from a schema AST node. getDescription, // Extends an existing GraphQLSchema from a parsed GraphQL Schema // language AST. extendSchema, + // Sort a GraphQLSchema. + lexicographicSortSchema, // Print a GraphQLSchema to GraphQL Schema language. printSchema, + // Prints the built-in introspection schema in the Schema Language + // format. + printIntrospectionSchema, // Print a GraphQLType to GraphQL Schema language. printType, // Create a GraphQLType from a GraphQL language AST. typeFromAST, - // Create a JavaScript value from a GraphQL language AST. + // Create a JavaScript value from a GraphQL language AST with a Type. valueFromAST, + // Create a JavaScript value from a GraphQL language AST without a Type. + valueFromASTUntyped, // Create a GraphQL language AST from a JavaScript value. astFromValue, // A helper to use within recursive-descent visitors which need to be aware of // the GraphQL type system. TypeInfo, - // Determine if JavaScript values adhere to a GraphQL type. + // Coerces a JavaScript value to a GraphQL type, or produces errors. + coerceValue, + // @deprecated use coerceValue isValidJSValue, // Determine if AST values adhere to a GraphQL type. isValidLiteralValue, @@ -119,22 +343,35 @@ export { doTypesOverlap, // Asserts a string is a valid GraphQL name. assertValidName, + // Determine if a string is a valid GraphQL name. + isValidNameError, // Compares two GraphQLSchemas and detects breaking changes. findBreakingChanges, + findDangerousChanges, + BreakingChangeType, + DangerousChangeType, // Report all deprecated usage within a GraphQL document. findDeprecatedUsages, + // type + BuildSchemaOptions, BreakingChange, + DangerousChange, + IntrospectionOptions, IntrospectionDirective, IntrospectionEnumType, IntrospectionEnumValue, IntrospectionField, IntrospectionInputObjectType, + IntrospectionInputType, + IntrospectionInputTypeRef, IntrospectionInputValue, IntrospectionInterfaceType, IntrospectionListTypeRef, IntrospectionNamedTypeRef, IntrospectionNonNullTypeRef, IntrospectionObjectType, + IntrospectionOutputType, + IntrospectionOutputTypeRef, IntrospectionQuery, IntrospectionScalarType, IntrospectionSchema, diff --git a/types/graphql/jsutils/MaybePromise.d.ts b/types/graphql/jsutils/MaybePromise.d.ts new file mode 100644 index 0000000000..5eb85a3f92 --- /dev/null +++ b/types/graphql/jsutils/MaybePromise.d.ts @@ -0,0 +1 @@ +export type MaybePromise = Promise | T; diff --git a/types/graphql/language/ast.d.ts b/types/graphql/language/ast.d.ts index 21dbe83361..21601385ff 100644 --- a/types/graphql/language/ast.d.ts +++ b/types/graphql/language/ast.d.ts @@ -1,4 +1,5 @@ import { Source } from "./source"; +import { TokenKindEnum } from "./lexer"; /** * Contains a range of UTF-8 character offsets and token references that @@ -8,57 +9,29 @@ export interface Location { /** * The character offset at which this Node begins. */ - start: number; + readonly start: number; /** * The character offset at which this Node ends. */ - end: number; + readonly end: number; /** * The Token at which this Node begins. */ - startToken: Token; + readonly startToken: Token; /** * The Token at which this Node ends. */ - endToken: Token; + readonly endToken: Token; /** * The Source document the AST represents. */ - source: Source; + readonly source: Source; } -/** - * Represents the different kinds of tokens in a GraphQL document. - * This type is not inlined in `Token` to fix syntax highlighting on GitHub - * *only*. - */ -type TokenKind = - | "" - | "" - | "!" - | "$" - | "(" - | ")" - | "..." - | ":" - | "=" - | "@" - | "[" - | "]" - | "{" - | "|" - | "}" - | "Name" - | "Int" - | "Float" - | "String" - | "BlockString" - | "Comment"; - /** * Represents a range of characters represented by a lexical token * within a Source. @@ -67,40 +40,40 @@ export interface Token { /** * The kind of Token. */ - kind: TokenKind; + readonly kind: TokenKindEnum; /** * The character offset at which this Node begins. */ - start: number; + readonly start: number; /** * The character offset at which this Node ends. */ - end: number; + readonly end: number; /** * The 1-indexed line number on which this Token appears. */ - line: number; + readonly line: number; /** * The 1-indexed column number at which this Token begins. */ - column: number; + readonly column: number; /** * For non-punctuation tokens, represents the interpreted value of the token. */ - value: string | undefined; + readonly value: string | undefined; /** * Tokens exist as nodes in a double-linked-list amongst all tokens * including ignored tokens. is always the first node and * the last. */ - prev?: Token; - next?: Token; + readonly prev: Token | null; + readonly next: Token | null; } /** @@ -201,17 +174,17 @@ export interface ASTKindToNode { // Name export interface NameNode { - kind: "Name"; - loc?: Location; - value: string; + readonly kind: "Name"; + readonly loc?: Location; + readonly value: string; } // Document export interface DocumentNode { - kind: "Document"; - loc?: Location; - definitions: DefinitionNode[]; + readonly kind: "Document"; + readonly loc?: Location; + readonly definitions: ReadonlyArray; } export type DefinitionNode = ExecutableDefinitionNode | TypeSystemDefinitionNode; // experimental non-spec addition. @@ -219,84 +192,83 @@ export type DefinitionNode = ExecutableDefinitionNode | TypeSystemDefinitionNode export type ExecutableDefinitionNode = OperationDefinitionNode | FragmentDefinitionNode; export interface OperationDefinitionNode { - kind: "OperationDefinition"; - loc?: Location; - operation: OperationTypeNode; - name?: NameNode; - variableDefinitions?: VariableDefinitionNode[]; - directives?: DirectiveNode[]; - selectionSet: SelectionSetNode; + readonly kind: "OperationDefinition"; + readonly loc?: Location; + readonly operation: OperationTypeNode; + readonly name?: NameNode; + readonly variableDefinitions?: ReadonlyArray; + readonly directives?: ReadonlyArray; + readonly selectionSet: SelectionSetNode; } -// Note: subscription is an experimental non-spec addition. export type OperationTypeNode = "query" | "mutation" | "subscription"; export interface VariableDefinitionNode { - kind: "VariableDefinition"; - loc?: Location; - variable: VariableNode; - type: TypeNode; - defaultValue?: ValueNode; + readonly kind: "VariableDefinition"; + readonly loc?: Location; + readonly variable: VariableNode; + readonly type: TypeNode; + readonly defaultValue?: ValueNode; } export interface VariableNode { - kind: "Variable"; - loc?: Location; - name: NameNode; + readonly kind: "Variable"; + readonly loc?: Location; + readonly name: NameNode; } export interface SelectionSetNode { kind: "SelectionSet"; loc?: Location; - selections: SelectionNode[]; + selections: ReadonlyArray; } export type SelectionNode = FieldNode | FragmentSpreadNode | InlineFragmentNode; export interface FieldNode { - kind: "Field"; - loc?: Location; - alias?: NameNode; - name: NameNode; - arguments?: ArgumentNode[]; - directives?: DirectiveNode[]; - selectionSet?: SelectionSetNode; + readonly kind: "Field"; + readonly loc?: Location; + readonly alias?: NameNode; + readonly name: NameNode; + readonly arguments?: ReadonlyArray; + readonly directives?: ReadonlyArray; + readonly selectionSet?: SelectionSetNode; } export interface ArgumentNode { - kind: "Argument"; - loc?: Location; - name: NameNode; - value: ValueNode; + readonly kind: "Argument"; + readonly loc?: Location; + readonly name: NameNode; + readonly value: ValueNode; } // Fragments export interface FragmentSpreadNode { - kind: "FragmentSpread"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; + readonly kind: "FragmentSpread"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; } export interface InlineFragmentNode { - kind: "InlineFragment"; - loc?: Location; - typeCondition?: NamedTypeNode; - directives?: DirectiveNode[]; - selectionSet: SelectionSetNode; + readonly kind: "InlineFragment"; + readonly loc?: Location; + readonly typeCondition?: NamedTypeNode; + readonly directives?: ReadonlyArray; + readonly selectionSet: SelectionSetNode; } export interface FragmentDefinitionNode { - kind: "FragmentDefinition"; - loc?: Location; - name: NameNode; + readonly kind: "FragmentDefinition"; + readonly loc?: Location; + readonly name: NameNode; // Note: fragment variable definitions are experimental and may be changed // or removed in the future. - variableDefinitions?: VariableDefinitionNode[]; - typeCondition: NamedTypeNode; - directives?: DirectiveNode[]; - selectionSet: SelectionSetNode; + readonly variableDefinitions?: ReadonlyArray; + readonly typeCondition: NamedTypeNode; + readonly directives?: ReadonlyArray; + readonly selectionSet: SelectionSetNode; } // Values @@ -313,66 +285,67 @@ export type ValueNode = | ObjectValueNode; export interface IntValueNode { - kind: "IntValue"; - loc?: Location; - value: string; + readonly kind: "IntValue"; + readonly loc?: Location; + readonly value: string; } export interface FloatValueNode { - kind: "FloatValue"; - loc?: Location; - value: string; + readonly kind: "FloatValue"; + readonly loc?: Location; + readonly value: string; } export interface StringValueNode { - kind: "StringValue"; - loc?: Location; - value: string; + readonly kind: "StringValue"; + readonly loc?: Location; + readonly value: string; + readonly block?: boolean; } export interface BooleanValueNode { - kind: "BooleanValue"; - loc?: Location; - value: boolean; + readonly kind: "BooleanValue"; + readonly loc?: Location; + readonly value: boolean; } export interface NullValueNode { - kind: "NullValue"; - loc?: Location; + readonly kind: "NullValue"; + readonly loc?: Location; } export interface EnumValueNode { - kind: "EnumValue"; - loc?: Location; - value: string; + readonly kind: "EnumValue"; + readonly loc?: Location; + readonly value: string; } export interface ListValueNode { - kind: "ListValue"; - loc?: Location; - values: ValueNode[]; + readonly kind: "ListValue"; + readonly loc?: Location; + readonly values: ReadonlyArray; } export interface ObjectValueNode { - kind: "ObjectValue"; - loc?: Location; - fields: ObjectFieldNode[]; + readonly kind: "ObjectValue"; + readonly loc?: Location; + readonly fields: ReadonlyArray; } export interface ObjectFieldNode { - kind: "ObjectField"; - loc?: Location; - name: NameNode; - value: ValueNode; + readonly kind: "ObjectField"; + readonly loc?: Location; + readonly name: NameNode; + readonly value: ValueNode; } // Directives export interface DirectiveNode { - kind: "Directive"; - loc?: Location; - name: NameNode; - arguments?: ArgumentNode[]; + readonly kind: "Directive"; + readonly loc?: Location; + readonly name: NameNode; + readonly arguments?: ReadonlyArray; } // Type Reference @@ -380,21 +353,21 @@ export interface DirectiveNode { export type TypeNode = NamedTypeNode | ListTypeNode | NonNullTypeNode; export interface NamedTypeNode { - kind: "NamedType"; - loc?: Location; - name: NameNode; + readonly kind: "NamedType"; + readonly loc?: Location; + readonly name: NameNode; } export interface ListTypeNode { - kind: "ListType"; - loc?: Location; - type: TypeNode; + readonly kind: "ListType"; + readonly loc?: Location; + readonly type: TypeNode; } export interface NonNullTypeNode { - kind: "NonNullType"; - loc?: Location; - type: NamedTypeNode | ListTypeNode; + readonly kind: "NonNullType"; + readonly loc?: Location; + readonly type: NamedTypeNode | ListTypeNode; } // Type System Definition @@ -406,19 +379,21 @@ export type TypeSystemDefinitionNode = | DirectiveDefinitionNode; export interface SchemaDefinitionNode { - kind: "SchemaDefinition"; - loc?: Location; - directives: DirectiveNode[]; - operationTypes: OperationTypeDefinitionNode[]; + readonly kind: "SchemaDefinition"; + readonly loc?: Location; + readonly directives: ReadonlyArray; + readonly operationTypes: ReadonlyArray; } export interface OperationTypeDefinitionNode { - kind: "OperationTypeDefinition"; - loc?: Location; - operation: OperationTypeNode; - type: NamedTypeNode; + readonly kind: "OperationTypeDefinition"; + readonly loc?: Location; + readonly operation: OperationTypeNode; + readonly type: NamedTypeNode; } +// Type Definition + export type TypeDefinitionNode = | ScalarTypeDefinitionNode | ObjectTypeDefinitionNode @@ -428,87 +403,89 @@ export type TypeDefinitionNode = | InputObjectTypeDefinitionNode; export interface ScalarTypeDefinitionNode { - kind: "ScalarTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; + readonly kind: "ScalarTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; } export interface ObjectTypeDefinitionNode { - kind: "ObjectTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - interfaces?: NamedTypeNode[]; - directives?: DirectiveNode[]; - fields: FieldDefinitionNode[]; + readonly kind: "ObjectTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly interfaces?: ReadonlyArray; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; } export interface FieldDefinitionNode { - kind: "FieldDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - arguments: InputValueDefinitionNode[]; - type: TypeNode; - directives?: DirectiveNode[]; + readonly kind: "FieldDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly arguments?: ReadonlyArray; + readonly type: TypeNode; + readonly directives?: ReadonlyArray; } export interface InputValueDefinitionNode { - kind: "InputValueDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - type: TypeNode; - defaultValue?: ValueNode; - directives?: DirectiveNode[]; + readonly kind: "InputValueDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly type: TypeNode; + readonly defaultValue?: ValueNode; + readonly directives?: ReadonlyArray; } export interface InterfaceTypeDefinitionNode { - kind: "InterfaceTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; - fields: FieldDefinitionNode[]; + readonly kind: "InterfaceTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; } export interface UnionTypeDefinitionNode { - kind: "UnionTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; - types: NamedTypeNode[]; + readonly kind: "UnionTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly types?: ReadonlyArray; } export interface EnumTypeDefinitionNode { - kind: "EnumTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; - values: EnumValueDefinitionNode[]; + readonly kind: "EnumTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly values?: ReadonlyArray; } export interface EnumValueDefinitionNode { - kind: "EnumValueDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; + readonly kind: "EnumValueDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; } export interface InputObjectTypeDefinitionNode { - kind: "InputObjectTypeDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - directives?: DirectiveNode[]; - fields: InputValueDefinitionNode[]; + readonly kind: "InputObjectTypeDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; } +// Type Extensions + export type TypeExtensionNode = | ScalarTypeExtensionNode | ObjectTypeExtensionNode @@ -517,61 +494,61 @@ export type TypeExtensionNode = | EnumTypeExtensionNode | InputObjectTypeExtensionNode; -export type ScalarTypeExtensionNode = { - kind: "ScalarTypeExtension"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; -}; +export interface ScalarTypeExtensionNode { + readonly kind: "ScalarTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; +} -export type ObjectTypeExtensionNode = { - kind: "ObjectTypeExtension"; - loc?: Location; - name: NameNode; - interfaces?: NamedTypeNode[]; - directives?: DirectiveNode[]; - fields?: FieldDefinitionNode[]; -}; +export interface ObjectTypeExtensionNode { + readonly kind: "ObjectTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly interfaces?: ReadonlyArray; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; +} -export type InterfaceTypeExtensionNode = { - kind: "InterfaceTypeExtension"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; - fields?: FieldDefinitionNode[]; -}; +export interface InterfaceTypeExtensionNode { + readonly kind: "InterfaceTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; +} -export type UnionTypeExtensionNode = { - kind: "UnionTypeExtension"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; - types?: NamedTypeNode[]; -}; +export interface UnionTypeExtensionNode { + readonly kind: "UnionTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly types?: ReadonlyArray; +} -export type EnumTypeExtensionNode = { - kind: "EnumTypeExtension"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; - values?: EnumValueDefinitionNode[]; -}; +export interface EnumTypeExtensionNode { + readonly kind: "EnumTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly values?: ReadonlyArray; +} -export type InputObjectTypeExtensionNode = { - kind: "InputObjectTypeExtension"; - loc?: Location; - name: NameNode; - directives?: DirectiveNode[]; - fields?: InputValueDefinitionNode[]; -}; +export interface InputObjectTypeExtensionNode { + readonly kind: "InputObjectTypeExtension"; + readonly loc?: Location; + readonly name: NameNode; + readonly directives?: ReadonlyArray; + readonly fields?: ReadonlyArray; +} // Directive Definitions export interface DirectiveDefinitionNode { - kind: "DirectiveDefinition"; - loc?: Location; - description?: StringValueNode; - name: NameNode; - arguments?: InputValueDefinitionNode[]; - locations: NameNode[]; + readonly kind: "DirectiveDefinition"; + readonly loc?: Location; + readonly description?: StringValueNode; + readonly name: NameNode; + readonly arguments?: ReadonlyArray; + readonly locations: ReadonlyArray; } diff --git a/types/graphql/language/blockStringValue.d.ts b/types/graphql/language/blockStringValue.d.ts new file mode 100644 index 0000000000..64fb87dafd --- /dev/null +++ b/types/graphql/language/blockStringValue.d.ts @@ -0,0 +1,7 @@ +/** + * Produces the value of a block string from its parsed raw value, similar to + * Coffeescript's block string, Python's docstring trim or Ruby's strip_heredoc. + * + * This implements the GraphQL spec's BlockStringValue() static algorithm. + */ +export default function blockStringValue(rawString: string): string; diff --git a/types/graphql/language/directiveLocation.d.ts b/types/graphql/language/directiveLocation.d.ts new file mode 100644 index 0000000000..16c42d7877 --- /dev/null +++ b/types/graphql/language/directiveLocation.d.ts @@ -0,0 +1,34 @@ +/** + * The set of allowed directive location values. + */ +export const DirectiveLocation: _DirectiveLocation; + +// @internal +type _DirectiveLocation = { + // Request Definitions + QUERY: "QUERY"; + MUTATION: "MUTATION"; + SUBSCRIPTION: "SUBSCRIPTION"; + FIELD: "FIELD"; + FRAGMENT_DEFINITION: "FRAGMENT_DEFINITION"; + FRAGMENT_SPREAD: "FRAGMENT_SPREAD"; + INLINE_FRAGMENT: "INLINE_FRAGMENT"; + + // Type System Definitions + SCHEMA: "SCHEMA"; + SCALAR: "SCALAR"; + OBJECT: "OBJECT"; + FIELD_DEFINITION: "FIELD_DEFINITION"; + ARGUMENT_DEFINITION: "ARGUMENT_DEFINITION"; + INTERFACE: "INTERFACE"; + UNION: "UNION"; + ENUM: "ENUM"; + ENUM_VALUE: "ENUM_VALUE"; + INPUT_OBJECT: "INPUT_OBJECT"; + INPUT_FIELD_DEFINITION: "INPUT_FIELD_DEFINITION"; +}; + +/** + * The enum type representing the directive location values. + */ +export type DirectiveLocationEnum = _DirectiveLocation[keyof _DirectiveLocation]; diff --git a/types/graphql/language/index.d.ts b/types/graphql/language/index.d.ts index db088e6925..e36dcbbb91 100644 --- a/types/graphql/language/index.d.ts +++ b/types/graphql/language/index.d.ts @@ -1,9 +1,74 @@ -export * from "./ast"; -export { getLocation } from "./location"; -import * as Kind from "./kinds"; -export { Kind }; -export { createLexer, TokenKind, Lexer } from "./lexer"; +export { getLocation, SourceLocation } from "./location"; +export { Kind, KindEnum } from "./kinds"; +export { createLexer, TokenKind, Lexer, TokenKindEnum } from "./lexer"; export { parse, parseValue, parseType, ParseOptions } from "./parser"; export { print } from "./printer"; export { Source } from "./source"; -export { visit, visitInParallel, visitWithTypeInfo, getVisitFn, BREAK } from "./visitor"; +export { + visit, + visitInParallel, + visitWithTypeInfo, + getVisitFn, + BREAK, + // type + ASTVisitor, + Visitor, + VisitFn, + VisitorKeyMap, +} from "./visitor"; + +export { + Location, + Token, + ASTNode, + ASTKindToNode, + // Each kind of AST node + NameNode, + DocumentNode, + DefinitionNode, + ExecutableDefinitionNode, + OperationDefinitionNode, + OperationTypeNode, + VariableDefinitionNode, + VariableNode, + SelectionSetNode, + SelectionNode, + FieldNode, + ArgumentNode, + FragmentSpreadNode, + InlineFragmentNode, + FragmentDefinitionNode, + ValueNode, + IntValueNode, + FloatValueNode, + StringValueNode, + BooleanValueNode, + NullValueNode, + EnumValueNode, + ListValueNode, + ObjectValueNode, + ObjectFieldNode, + DirectiveNode, + TypeNode, + NamedTypeNode, + ListTypeNode, + NonNullTypeNode, + TypeSystemDefinitionNode, + SchemaDefinitionNode, + OperationTypeDefinitionNode, + TypeDefinitionNode, + ScalarTypeDefinitionNode, + ObjectTypeDefinitionNode, + FieldDefinitionNode, + InputValueDefinitionNode, + InterfaceTypeDefinitionNode, + UnionTypeDefinitionNode, + EnumTypeDefinitionNode, + EnumValueDefinitionNode, + InputObjectTypeDefinitionNode, + TypeExtensionNode, + ObjectTypeExtensionNode, + DirectiveDefinitionNode, +} from "./ast"; + +export { DirectiveLocation, DirectiveLocationEnum } from "./directiveLocation"; diff --git a/types/graphql/language/kinds.d.ts b/types/graphql/language/kinds.d.ts index 2e7db3ad87..768f00addd 100644 --- a/types/graphql/language/kinds.d.ts +++ b/types/graphql/language/kinds.d.ts @@ -1,72 +1,74 @@ -// Name +/** + * The set of allowed kind values for AST nodes. + */ +export const Kind: _Kind; -export const NAME: "Name"; +// @internal +type _Kind = { + // Name + NAME: "Name"; -// Document + // Document + DOCUMENT: "Document"; + OPERATION_DEFINITION: "OperationDefinition"; + VARIABLE_DEFINITION: "VariableDefinition"; + VARIABLE: "Variable"; + SELECTION_SET: "SelectionSet"; + FIELD: "Field"; + ARGUMENT: "Argument"; -export const DOCUMENT: "Document"; -export const OPERATION_DEFINITION: "OperationDefinition"; -export const VARIABLE_DEFINITION: "VariableDefinition"; -export const VARIABLE: "Variable"; -export const SELECTION_SET: "SelectionSet"; -export const FIELD: "Field"; -export const ARGUMENT: "Argument"; + // Fragments + FRAGMENT_SPREAD: "FragmentSpread"; + INLINE_FRAGMENT: "InlineFragment"; + FRAGMENT_DEFINITION: "FragmentDefinition"; -// Fragments + // Values + INT: "IntValue"; + FLOAT: "FloatValue"; + STRING: "StringValue"; + BOOLEAN: "BooleanValue"; + NULL: "NullValue"; + ENUM: "EnumValue"; + LIST: "ListValue"; + OBJECT: "ObjectValue"; + OBJECT_FIELD: "ObjectField"; -export const FRAGMENT_SPREAD: "FragmentSpread"; -export const INLINE_FRAGMENT: "InlineFragment"; -export const FRAGMENT_DEFINITION: "FragmentDefinition"; + // Directives + DIRECTIVE: "Directive"; -// Values + // Types + NAMED_TYPE: "NamedType"; + LIST_TYPE: "ListType"; + NON_NULL_TYPE: "NonNullType"; -export const INT: "IntValue"; -export const FLOAT: "FloatValue"; -export const STRING: "StringValue"; -export const BOOLEAN: "BooleanValue"; -export const NULL: "NullValue"; -export const ENUM: "EnumValue"; -export const LIST: "ListValue"; -export const OBJECT: "ObjectValue"; -export const OBJECT_FIELD: "ObjectField"; + // Type System Definitions + SCHEMA_DEFINITION: "SchemaDefinition"; + OPERATION_TYPE_DEFINITION: "OperationTypeDefinition"; -// Directives + // Type Definitions + SCALAR_TYPE_DEFINITION: "ScalarTypeDefinition"; + OBJECT_TYPE_DEFINITION: "ObjectTypeDefinition"; + FIELD_DEFINITION: "FieldDefinition"; + INPUT_VALUE_DEFINITION: "InputValueDefinition"; + INTERFACE_TYPE_DEFINITION: "InterfaceTypeDefinition"; + UNION_TYPE_DEFINITION: "UnionTypeDefinition"; + ENUM_TYPE_DEFINITION: "EnumTypeDefinition"; + ENUM_VALUE_DEFINITION: "EnumValueDefinition"; + INPUT_OBJECT_TYPE_DEFINITION: "InputObjectTypeDefinition"; -export const DIRECTIVE: "Directive"; + // Type Extensions + SCALAR_TYPE_EXTENSION: "ScalarTypeExtension"; + OBJECT_TYPE_EXTENSION: "ObjectTypeExtension"; + INTERFACE_TYPE_EXTENSION: "InterfaceTypeExtension"; + UNION_TYPE_EXTENSION: "UnionTypeExtension"; + ENUM_TYPE_EXTENSION: "EnumTypeExtension"; + INPUT_OBJECT_TYPE_EXTENSION: "InputObjectTypeExtension"; -// Types + // Directive Definitions + DIRECTIVE_DEFINITION: "DirectiveDefinition"; +}; -export const NAMED_TYPE: "NamedType"; -export const LIST_TYPE: "ListType"; -export const NON_NULL_TYPE: "NonNullType"; - -// Type System Definitions - -export const SCHEMA_DEFINITION: "SchemaDefinition"; -export const OPERATION_TYPE_DEFINITION: "OperationTypeDefinition"; - -// Type Definitions - -export const SCALAR_TYPE_DEFINITION: "ScalarTypeDefinition"; -export const OBJECT_TYPE_DEFINITION: "ObjectTypeDefinition"; -export const FIELD_DEFINITION: "FieldDefinition"; -export const INPUT_VALUE_DEFINITION: "InputValueDefinition"; -export const INTERFACE_TYPE_DEFINITION: "InterfaceTypeDefinition"; -export const UNION_TYPE_DEFINITION: "UnionTypeDefinition"; -export const ENUM_TYPE_DEFINITION: "EnumTypeDefinition"; -export const ENUM_VALUE_DEFINITION: "EnumValueDefinition"; -export const INPUT_OBJECT_TYPE_DEFINITION: "InputObjectTypeDefinition"; - -// Type Extensions - -export const TYPE_EXTENSION_DEFINITION: "TypeExtensionDefinition"; -export const SCALAR_TYPE_EXTENSION: "ScalarTypeExtension"; -export const OBJECT_TYPE_EXTENSION: "ObjectTypeExtension"; -export const INTERFACE_TYPE_EXTENSION: "InterfaceTypeExtension"; -export const UNION_TYPE_EXTENSION: "UnionTypeExtension"; -export const ENUM_TYPE_EXTENSION: "EnumTypeExtension"; -export const INPUT_OBJECT_TYPE_EXTENSION: "InputObjectTypeExtension"; - -// Directive Definitions - -export const DIRECTIVE_DEFINITION: "DirectiveDefinition"; +/** + * The enum type representing the possible kind values of AST nodes. + */ +export type KindEnum = _Kind[keyof _Kind]; diff --git a/types/graphql/language/lexer.d.ts b/types/graphql/language/lexer.d.ts index 27db5b04cc..19a57d3a11 100644 --- a/types/graphql/language/lexer.d.ts +++ b/types/graphql/language/lexer.d.ts @@ -43,17 +43,27 @@ export interface Lexer { * Advances the token stream to the next non-ignored token. */ advance(): Token; + + /** + * Looks ahead and returns the next non-ignored token, but does not change + * the Lexer's state. + */ + lookahead(): Token; } /** * An exported enum describing the different kinds of tokens that the * lexer emits. */ -export const TokenKind: { +export const TokenKind: _TokenKind; + +// @internal +type _TokenKind = { SOF: ""; EOF: ""; BANG: "!"; DOLLAR: "$"; + AMP: "&"; PAREN_L: "("; PAREN_R: ")"; SPREAD: "..."; @@ -69,9 +79,15 @@ export const TokenKind: { INT: "Int"; FLOAT: "Float"; STRING: "String"; + BLOCK_STRING: "BlockString"; COMMENT: "Comment"; }; +/** + * The enum type representing the token kinds values. + */ +export type TokenKindEnum = _TokenKind[keyof _TokenKind]; + /** * A helper function to describe a token as a string for debugging */ diff --git a/types/graphql/language/location.d.ts b/types/graphql/language/location.d.ts index 4d7a13e314..6090531718 100644 --- a/types/graphql/language/location.d.ts +++ b/types/graphql/language/location.d.ts @@ -1,8 +1,15 @@ import { Source } from "./source"; +/** + * Represents a location in a Source. + */ export interface SourceLocation { - line: number; - column: number; + readonly line: number; + readonly column: number; } +/** + * Takes a Source and a UTF-8 character offset, and returns the corresponding + * line and column as a SourceLocation. + */ export function getLocation(source: Source, position: number): SourceLocation; diff --git a/types/graphql/language/parser.d.ts b/types/graphql/language/parser.d.ts index 3cdb3462ae..b07db1ff38 100644 --- a/types/graphql/language/parser.d.ts +++ b/types/graphql/language/parser.d.ts @@ -65,7 +65,7 @@ export function parse(source: string | Source, options?: ParseOptions): Document * This is useful within tools that operate upon GraphQL Values directly and * in isolation of complete GraphQL documents. */ -export function parseValue(source: Source | string, options?: ParseOptions): ValueNode; +export function parseValue(source: string | Source, options?: ParseOptions): ValueNode; /** * Given a string containing a GraphQL Type (ex. `[Int!]`), parse the AST for @@ -77,7 +77,7 @@ export function parseValue(source: Source | string, options?: ParseOptions): Val * * Consider providing the results to the utility function: typeFromAST(). */ -export function parseType(source: Source | string, options?: ParseOptions): TypeNode; +export function parseType(source: string | Source, options?: ParseOptions): TypeNode; export function parseConstValue(lexer: Lexer): ValueNode; diff --git a/types/graphql/language/source.d.ts b/types/graphql/language/source.d.ts index 80e68f5557..26d89640c3 100644 --- a/types/graphql/language/source.d.ts +++ b/types/graphql/language/source.d.ts @@ -1,5 +1,19 @@ +interface Location { + line: number; + column: number; +} + +/** + * A representation of source input to GraphQL. + * `name` and `locationOffset` are optional. They are useful for clients who + * store GraphQL documents in source files; for example, if the GraphQL input + * starts at line 40 in a file named Foo.graphql, it might be useful for name to + * be "Foo.graphql" and location to be `{ line: 40, column: 0 }`. + * line and column in locationOffset are 1-indexed + */ export class Source { body: string; name: string; - constructor(body: string, name?: string); + locationOffset: Location; + constructor(body: string, name?: string, locationOffset?: Location); } diff --git a/types/graphql/language/visitor.d.ts b/types/graphql/language/visitor.d.ts index 320d181e4a..be50e6e02e 100644 --- a/types/graphql/language/visitor.d.ts +++ b/types/graphql/language/visitor.d.ts @@ -1,55 +1,161 @@ -export const QueryDocumentKeys: { - Name: any[]; - Document: string[]; - OperationDefinition: string[]; - VariableDefinition: string[]; - Variable: string[]; - SelectionSet: string[]; - Field: string[]; - Argument: string[]; +import Maybe from "../tsutils/Maybe"; +import { ASTNode, ASTKindToNode } from "./ast"; +import { TypeInfo } from "../utilities/TypeInfo"; - FragmentSpread: string[]; - InlineFragment: string[]; - FragmentDefinition: string[]; +interface EnterLeave { + readonly enter?: T; + readonly leave?: T; +} - IntValue: number[]; - FloatValue: number[]; - StringValue: string[]; - BooleanValue: boolean[]; - NullValue: null[]; - EnumValue: any[]; - ListValue: string[]; - ObjectValue: string[]; - ObjectField: string[]; +type EnterLeaveVisitor = EnterLeave< + VisitFn | { [K in keyof KindToNode]?: VisitFn } +>; - Directive: string[]; - - NamedType: string[]; - ListType: string[]; - NonNullType: string[]; - - ObjectTypeDefinition: string[]; - FieldDefinition: string[]; - InputValueDefinition: string[]; - InterfaceTypeDefinition: string[]; - UnionTypeDefinition: string[]; - ScalarTypeDefinition: string[]; - EnumTypeDefinition: string[]; - EnumValueDefinition: string[]; - InputObjectTypeDefinition: string[]; - TypeExtensionDefinition: string[]; +type ShapeMapVisitor = { + [K in keyof KindToNode]?: VisitFn | EnterLeave> }; +export type ASTVisitor = Visitor; +export type Visitor = + | EnterLeaveVisitor + | ShapeMapVisitor; + +/** + * A visitor is comprised of visit functions, which are called on each node + * during the visitor's traversal. + */ +export type VisitFn = ( + // The current node being visiting. + node: TVisitedNode, + // The index or key to this node from the parent node or Array. + key: string | number | undefined, + // The parent immediately above this node, which may be an Array. + parent: TAnyNode | ReadonlyArray | undefined, + // The key path to get to this node from the root node. + path: ReadonlyArray, + // All nodes and Arrays visited before reaching this node. + // These correspond to array indices in `path`. + // Note: ancestors includes arrays which contain the visited node. + ancestors: ReadonlyArray> +) => any; + +/** + * A KeyMap describes each the traversable properties of each kind of node. + */ +export type VisitorKeyMap = { [P in keyof T]: ReadonlyArray }; + +export const QueryDocumentKeys: { [key: string]: string[] }; + export const BREAK: any; -export function visit(root: any, visitor: any, keyMap?: any): any; +/** + * visit() will walk through an AST using a depth first traversal, calling + * the visitor's enter function at each node in the traversal, and calling the + * leave function after visiting that node and all of its child nodes. + * + * By returning different values from the enter and leave functions, the + * behavior of the visitor can be altered, including skipping over a sub-tree of + * the AST (by returning false), editing the AST by returning a value or null + * to remove the value, or to stop the whole traversal by returning BREAK. + * + * When using visit() to edit an AST, the original AST will not be modified, and + * a new version of the AST with the changes applied will be returned from the + * visit function. + * + * const editedAST = visit(ast, { + * enter(node, key, parent, path, ancestors) { + * // @return + * // undefined: no action + * // false: skip visiting this node + * // visitor.BREAK: stop visiting altogether + * // null: delete this node + * // any value: replace this node with the returned value + * }, + * leave(node, key, parent, path, ancestors) { + * // @return + * // undefined: no action + * // false: no action + * // visitor.BREAK: stop visiting altogether + * // null: delete this node + * // any value: replace this node with the returned value + * } + * }); + * + * Alternatively to providing enter() and leave() functions, a visitor can + * instead provide functions named the same as the kinds of AST nodes, or + * enter/leave visitors at a named key, leading to four permutations of + * visitor API: + * + * 1) Named visitors triggered when entering a node a specific kind. + * + * visit(ast, { + * Kind(node) { + * // enter the "Kind" node + * } + * }) + * + * 2) Named visitors that trigger upon entering and leaving a node of + * a specific kind. + * + * visit(ast, { + * Kind: { + * enter(node) { + * // enter the "Kind" node + * } + * leave(node) { + * // leave the "Kind" node + * } + * } + * }) + * + * 3) Generic visitors that trigger upon entering and leaving any node. + * + * visit(ast, { + * enter(node) { + * // enter any node + * }, + * leave(node) { + * // leave any node + * } + * }) + * + * 4) Parallel visitors for entering and leaving nodes of a specific kind. + * + * visit(ast, { + * enter: { + * Kind(node) { + * // enter the "Kind" node + * } + * }, + * leave: { + * Kind(node) { + * // leave the "Kind" node + * } + * } + * }) + */ +export function visit( + root: ASTNode, + visitor: Visitor, + visitorKeys?: VisitorKeyMap // default: QueryDocumentKeys +): any; -export function visitInParallel(visitors: any): any; +/** + * Creates a new visitor instance which delegates to many visitors to run in + * parallel. Each visitor will be visited for each node before moving on. + * + * If a prior visitor edits a node, no following visitors will see that node. + */ +export function visitInParallel(visitors: Array>): Visitor; -export function visitWithTypeInfo(typeInfo: any, visitor: any): any; +/** + * Creates a new visitor instance which maintains a provided TypeInfo instance + * along with visiting visitor. + */ +export function visitWithTypeInfo(typeInfo: TypeInfo, visitor: Visitor): Visitor; /** * Given a visitor instance, if it is leaving or not, and a node kind, return * the function the visitor runtime should call. */ -export function getVisitFn(visitor: any, kind: any, isLeaving: any): any; +export function getVisitFn(visitor: Visitor, kind: string, isLeaving: boolean): Maybe>; diff --git a/types/graphql/subscription/subscribe.d.ts b/types/graphql/subscription/subscribe.d.ts index c4eec87ac9..f5b29ebbb8 100644 --- a/types/graphql/subscription/subscribe.d.ts +++ b/types/graphql/subscription/subscribe.d.ts @@ -1,29 +1,75 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLSchema } from "../type/schema"; import { DocumentNode } from "../language/ast"; import { GraphQLFieldResolver } from "../type/definition"; import { ExecutionResult } from "../execution/execute"; +/** + * Implements the "Subscribe" algorithm described in the GraphQL specification. + * + * Returns a Promise which resolves to either an AsyncIterator (if successful) + * or an ExecutionResult (client error). The promise will be rejected if a + * server error occurs. + * + * If the client-provided arguments to this function do not result in a + * compliant subscription, a GraphQL Response (ExecutionResult) with + * descriptive errors and no data will be returned. + * + * If the the source stream could not be created due to faulty subscription + * resolver logic or underlying systems, the promise will resolve to a single + * ExecutionResult containing `errors` and no `data`. + * + * If the operation succeeded, the promise resolves to an AsyncIterator, which + * yields a stream of ExecutionResults representing the response stream. + * + * Accepts either an object with named arguments, or individual arguments. + */ +export function subscribe(args: { + schema: GraphQLSchema; + document: DocumentNode; + rootValue?: any; + contextValue?: any; + variableValues?: Maybe<{ [key: string]: any }>; + operationName?: Maybe; + fieldResolver?: Maybe>; + subscribeFieldResolver?: Maybe>; +}): Promise | ExecutionResult>; + export function subscribe( schema: GraphQLSchema, document: DocumentNode, rootValue?: any, contextValue?: any, - variableValues?: { - [key: string]: any; - }, - operationName?: string, - fieldResolver?: GraphQLFieldResolver, - subscribeFieldResolver?: GraphQLFieldResolver + variableValues?: Maybe<{ [key: string]: any }>, + operationName?: Maybe, + fieldResolver?: Maybe>, + subscribeFieldResolver?: Maybe> ): Promise | ExecutionResult>; +/** + * Implements the "CreateSourceEventStream" algorithm described in the + * GraphQL specification, resolving the subscription source event stream. + * + * Returns a Promise. + * + * If the client-provided invalid arguments, the source stream could not be + * created, or the resolver did not return an AsyncIterable, this function will + * will throw an error, which should be caught and handled by the caller. + * + * A Source Event Stream represents a sequence of events, each of which triggers + * a GraphQL execution for that event. + * + * This may be useful when hosting the stateful subscription service in a + * different process or machine than the stateless GraphQL execution engine, + * or otherwise separating these two steps. For more on this, see the + * "Supporting Subscriptions at Scale" information in the GraphQL specification. + */ export function createSourceEventStream( schema: GraphQLSchema, document: DocumentNode, rootValue?: any, contextValue?: any, - variableValues?: { - [key: string]: any; - }, - operationName?: string, - fieldResolver?: GraphQLFieldResolver -): Promise>; + variableValues?: { [key: string]: any }, + operationName?: Maybe, + fieldResolver?: Maybe> +): Promise | ExecutionResult>; diff --git a/types/graphql/tsconfig.json b/types/graphql/tsconfig.json index 72f0de0665..3bc66f8bea 100644 --- a/types/graphql/tsconfig.json +++ b/types/graphql/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "strictFunctionTypes": true, "baseUrl": "../", "typeRoots": [ @@ -21,4 +21,4 @@ "index.d.ts", "graphql-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/graphql/tsutils/Maybe.d.ts b/types/graphql/tsutils/Maybe.d.ts new file mode 100644 index 0000000000..7ad0bc85a4 --- /dev/null +++ b/types/graphql/tsutils/Maybe.d.ts @@ -0,0 +1,4 @@ +// Conveniently represents flow's "Maybe" type https://flow.org/en/docs/types/maybe/ +type Maybe = null | undefined | T + +export default Maybe diff --git a/types/graphql/type/definition.d.ts b/types/graphql/type/definition.d.ts index b31ac6bbed..b078acccb1 100644 --- a/types/graphql/type/definition.d.ts +++ b/types/graphql/type/definition.d.ts @@ -1,3 +1,5 @@ +import Maybe from "../tsutils/Maybe"; +import { MaybePromise } from "../jsutils/MaybePromise"; import { ScalarTypeDefinitionNode, ObjectTypeDefinitionNode, @@ -8,7 +10,8 @@ import { EnumTypeDefinitionNode, EnumValueDefinitionNode, InputObjectTypeDefinitionNode, - TypeExtensionNode, + ObjectTypeExtensionNode, + InterfaceTypeExtensionNode, OperationDefinitionNode, FieldNode, FragmentDefinitionNode, @@ -33,6 +36,38 @@ export function isType(type: any): type is GraphQLType; export function assertType(type: any): GraphQLType; +export function isScalarType(type: GraphQLType): type is GraphQLScalarType; + +export function assertScalarType(type: GraphQLType): GraphQLScalarType; + +export function isObjectType(type: GraphQLType): type is GraphQLObjectType; + +export function assertObjectType(type: GraphQLType): GraphQLObjectType; + +export function isInterfaceType(type: GraphQLType): type is GraphQLInterfaceType; + +export function assertInterfaceType(type: GraphQLType): GraphQLInterfaceType; + +export function isUnionType(type: GraphQLType): type is GraphQLUnionType; + +export function assertUnionType(type: GraphQLType): GraphQLUnionType; + +export function isEnumType(type: GraphQLType): type is GraphQLEnumType; + +export function assertEnumType(type: GraphQLType): GraphQLEnumType; + +export function isInputObjectType(type: GraphQLType): type is GraphQLInputObjectType; + +export function assertInputObjectType(type: GraphQLType): GraphQLInputObjectType; + +export function isListType(type: GraphQLType): type is GraphQLList; + +export function assertListType(type: GraphQLType): GraphQLList; + +export function isNonNullType(type: GraphQLType): type is GraphQLNonNull; + +export function assertNonNullType(type: GraphQLType): GraphQLNonNull; + /** * These types may be used as input types for arguments and directives. */ @@ -97,6 +132,66 @@ export function isAbstractType(type: GraphQLType): type is GraphQLAbstractType; export function assertAbstractType(type: GraphQLType): GraphQLAbstractType; +/** + * List Modifier + * + * A list is a kind of type marker, a wrapping type which points to another + * type. Lists are often created within the context of defining the fields of + * an object type. + * + * Example: + * + * const PersonType = new GraphQLObjectType({ + * name: 'Person', + * fields: () => ({ + * parents: { type: new GraphQLList(Person) }, + * children: { type: new GraphQLList(Person) }, + * }) + * }) + * + */ +export class GraphQLList { + readonly ofType: T; + constructor(type: T); + toString(): string; + toJSON(): string; + inspect(): string; +} + +/** + * Non-Null Modifier + * + * A non-null is a kind of type marker, a wrapping type which points to another + * type. Non-null types enforce that their values are never null and can ensure + * an error is raised if this ever occurs during a request. It is useful for + * fields which you can make a strong guarantee on non-nullability, for example + * usually the id field of a database row will never be null. + * + * Example: + * + * const RowType = new GraphQLObjectType({ + * name: 'Row', + * fields: () => ({ + * id: { type: new GraphQLNonNull(GraphQLString) }, + * }) + * }) + * + * Note: the enforcement of non-nullability occurs within the executor. + */ +export class GraphQLNonNull { + readonly ofType: T; + constructor(type: T); + toString(): string; + toJSON(): string; + inspect(): string; +} + +export type GraphQLWrappingType = GraphQLList | GraphQLNonNull; + +export function isWrappingType(type: GraphQLType): type is GraphQLWrappingType; + +export function assertWrappingType(type: GraphQLType): GraphQLWrappingType; + /** * These types can all accept null as a value. */ @@ -109,7 +204,13 @@ export type GraphQLNullableType = | GraphQLInputObjectType | GraphQLList; -export function getNullableType(type: T): T & GraphQLNullableType; +export function isNullableType(type: GraphQLType): type is GraphQLNullableType; + +export function assertNullableType(type: GraphQLType): GraphQLNullableType; + +export function getNullableType(type: void): undefined; +export function getNullableType(type: T): T; +export function getNullableType(type: GraphQLNonNull): T; /** * These named types do not include modifiers like List or NonNull. @@ -122,10 +223,11 @@ export type GraphQLNamedType = | GraphQLEnumType | GraphQLInputObjectType; -export function isNamedType(type: GraphQLType): boolean; +export function isNamedType(type: GraphQLType): type is GraphQLNamedType; export function assertNamedType(type: GraphQLType): GraphQLNamedType; +export function getNamedType(type: void): undefined; export function getNamedType(type: GraphQLType): GraphQLNamedType; /** @@ -153,8 +255,8 @@ export type Thunk = (() => T) | T; */ export class GraphQLScalarType { name: string; - description: string; - astNode?: ScalarTypeDefinitionNode; + description: Maybe; + astNode?: Maybe; constructor(config: GraphQLScalarTypeConfig); // Serializes an internal value to include in a response. @@ -164,18 +266,20 @@ export class GraphQLScalarType { parseValue(value: any): any; // Parses an externally provided literal value to use as an input. - parseLiteral(valueNode: ValueNode): any; + parseLiteral(valueNode: ValueNode, variables?: Maybe<{ [key: string]: any }>): any; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLScalarTypeConfig { name: string; - description?: string; - astNode?: ScalarTypeDefinitionNode; - serialize(value: any): TExternal | null | undefined; - parseValue?(value: any): TInternal | null | undefined; - parseLiteral?(valueNode: ValueNode): TInternal | null | undefined; + description?: Maybe; + astNode?: Maybe; + serialize(value: any): Maybe; + parseValue?(value: any): Maybe; + parseLiteral?(valueNode: ValueNode, variables: Maybe<{ [key: string]: any }>): Maybe; } /** @@ -217,38 +321,40 @@ export interface GraphQLScalarTypeConfig { */ export class GraphQLObjectType { name: string; - description: string; - astNode?: ObjectTypeDefinitionNode; - extensionASTNodes: Array; - isTypeOf: GraphQLIsTypeOfFn; + description: Maybe; + astNode: Maybe; + extensionASTNodes: Maybe>; + isTypeOf: Maybe>; constructor(config: GraphQLObjectTypeConfig); getFields(): GraphQLFieldMap; getInterfaces(): GraphQLInterfaceType[]; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLObjectTypeConfig { name: string; - interfaces?: Thunk; + interfaces?: Thunk>; fields: Thunk>; - isTypeOf?: GraphQLIsTypeOfFn; - description?: string; - astNode?: ObjectTypeDefinitionNode; - extensionASTNodes?: Array; + isTypeOf?: Maybe>; + description?: Maybe; + astNode?: Maybe; + extensionASTNodes?: Maybe>; } export type GraphQLTypeResolver = ( value: TSource, context: TContext, info: GraphQLResolveInfo -) => GraphQLObjectType | string | Promise; +) => MaybePromise>; export type GraphQLIsTypeOfFn = ( source: TSource, context: TContext, info: GraphQLResolveInfo -) => boolean | Promise; +) => MaybePromise; export type GraphQLFieldResolver = ( source: TSource, @@ -258,68 +364,69 @@ export type GraphQLFieldResolver any; export interface GraphQLResolveInfo { - fieldName: string; - fieldNodes: FieldNode[]; - returnType: GraphQLOutputType; - parentType: GraphQLCompositeType; - path: ResponsePath; - schema: GraphQLSchema; - fragments: { [fragmentName: string]: FragmentDefinitionNode }; - rootValue: any; - operation: OperationDefinitionNode; - variableValues: { [variableName: string]: any }; + readonly fieldName: string; + readonly fieldNodes: ReadonlyArray; + readonly returnType: GraphQLOutputType; + readonly parentType: GraphQLObjectType; + readonly path: ResponsePath; + readonly schema: GraphQLSchema; + readonly fragments: { [key: string]: FragmentDefinitionNode }; + readonly rootValue: any; + readonly operation: OperationDefinitionNode; + readonly variableValues: { [variableName: string]: any }; } -export type ResponsePath = { prev: ResponsePath; key: string | number } | undefined; +export type ResponsePath = { + readonly prev: ResponsePath | undefined; + readonly key: string | number; +}; export interface GraphQLFieldConfig { type: GraphQLOutputType; args?: GraphQLFieldConfigArgumentMap; resolve?: GraphQLFieldResolver; subscribe?: GraphQLFieldResolver; - deprecationReason?: string; - description?: string; - astNode?: FieldDefinitionNode; + deprecationReason?: Maybe; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLFieldConfigArgumentMap { - [argName: string]: GraphQLArgumentConfig; -} +export type GraphQLFieldConfigArgumentMap = { [key: string]: GraphQLArgumentConfig }; export interface GraphQLArgumentConfig { type: GraphQLInputType; defaultValue?: any; - description?: string; - astNode?: InputValueDefinitionNode; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLFieldConfigMap { - [fieldName: string]: GraphQLFieldConfig; -} +export type GraphQLFieldConfigMap = { + [key: string]: GraphQLFieldConfig; +}; -export interface GraphQLField { +export interface GraphQLField { name: string; - description: string; + description: Maybe; type: GraphQLOutputType; args: GraphQLArgument[]; resolve?: GraphQLFieldResolver; subscribe?: GraphQLFieldResolver; isDeprecated?: boolean; - deprecationReason?: string; - astNode?: FieldDefinitionNode; + deprecationReason?: Maybe; + astNode?: Maybe; } export interface GraphQLArgument { name: string; type: GraphQLInputType; defaultValue?: any; - description?: string; - astNode?: InputValueDefinitionNode; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLFieldMap { - [fieldName: string]: GraphQLField; -} +export type GraphQLFieldMap = { + [key: string]: GraphQLField; +}; /** * Interface Type Definition @@ -341,15 +448,18 @@ export interface GraphQLFieldMap { */ export class GraphQLInterfaceType { name: string; - description: string; - astNode?: InterfaceTypeDefinitionNode; - resolveType: GraphQLTypeResolver; + description: Maybe; + astNode?: Maybe; + extensionASTNodes: Maybe>; + resolveType: Maybe>; constructor(config: GraphQLInterfaceTypeConfig); getFields(): GraphQLFieldMap; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLInterfaceTypeConfig { @@ -360,9 +470,10 @@ export interface GraphQLInterfaceTypeConfig { * the default implementation will call `isTypeOf` on each implementing * Object type. */ - resolveType?: GraphQLTypeResolver; - description?: string; - astNode?: InterfaceTypeDefinitionNode; + resolveType?: Maybe>; + description?: Maybe; + astNode?: Maybe; + extensionASTNodes?: Maybe>; } /** @@ -390,15 +501,17 @@ export interface GraphQLInterfaceTypeConfig { */ export class GraphQLUnionType { name: string; - description: string; - astNode?: UnionTypeDefinitionNode; - resolveType: GraphQLTypeResolver; + description: Maybe; + astNode?: Maybe; + resolveType: Maybe>; constructor(config: GraphQLUnionTypeConfig); getTypes(): GraphQLObjectType[]; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLUnionTypeConfig { @@ -409,9 +522,9 @@ export interface GraphQLUnionTypeConfig { * the default implementation will call `isTypeOf` on each implementing * Object type. */ - resolveType?: GraphQLTypeResolver; - description?: string; - astNode?: UnionTypeDefinitionNode; + resolveType?: Maybe>; + description?: Maybe; + astNode?: Maybe; } /** @@ -437,43 +550,42 @@ export interface GraphQLUnionTypeConfig { */ export class GraphQLEnumType { name: string; - description: string; - astNode?: EnumTypeDefinitionNode; + description: Maybe; + astNode: Maybe; constructor(config: GraphQLEnumTypeConfig); getValues(): GraphQLEnumValue[]; - getValue(name: string): GraphQLEnumValue; - isValidValue(value: any): boolean; - serialize(value: any): string; - parseValue(value: any): any; - parseLiteral(valueNode: ValueNode): any; + getValue(name: string): Maybe; + serialize(value: any): Maybe; + parseValue(value: any): Maybe; + parseLiteral(valueNode: ValueNode, _variables: Maybe<{ [key: string]: any }>): Maybe; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLEnumTypeConfig { name: string; values: GraphQLEnumValueConfigMap; - description?: string; - astNode?: EnumTypeDefinitionNode; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLEnumValueConfigMap { - [valueName: string]: GraphQLEnumValueConfig; -} +export type GraphQLEnumValueConfigMap = { [key: string]: GraphQLEnumValueConfig }; export interface GraphQLEnumValueConfig { value?: any; - deprecationReason?: string; - description?: string; - astNode?: EnumValueDefinitionNode; + deprecationReason?: Maybe; + description?: Maybe; + astNode?: Maybe; } export interface GraphQLEnumValue { name: string; - description: string; + description: Maybe; isDeprecated?: boolean; - deprecationReason: string; - astNode?: EnumValueDefinitionNode; + deprecationReason: Maybe; + astNode?: Maybe; value: any; } @@ -499,91 +611,39 @@ export interface GraphQLEnumValue { */ export class GraphQLInputObjectType { name: string; - description: string; - astNode?: InputObjectTypeDefinitionNode; + description: Maybe; + astNode: Maybe; constructor(config: GraphQLInputObjectTypeConfig); getFields(): GraphQLInputFieldMap; toString(): string; + toJSON(): string; + inspect(): string; } export interface GraphQLInputObjectTypeConfig { name: string; fields: Thunk; - description?: string; - astNode?: InputObjectTypeDefinitionNode; + description?: Maybe; + astNode?: Maybe; } export interface GraphQLInputFieldConfig { type: GraphQLInputType; defaultValue?: any; - description?: string; - astNode?: InputValueDefinitionNode; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLInputFieldConfigMap { - [fieldName: string]: GraphQLInputFieldConfig; -} +export type GraphQLInputFieldConfigMap = { + [key: string]: GraphQLInputFieldConfig; +}; export interface GraphQLInputField { name: string; type: GraphQLInputType; defaultValue?: any; - description?: string; - astNode?: InputValueDefinitionNode; + description?: Maybe; + astNode?: Maybe; } -export interface GraphQLInputFieldMap { - [fieldName: string]: GraphQLInputField; -} - -/** - * List Modifier - * - * A list is a kind of type marker, a wrapping type which points to another - * type. Lists are often created within the context of defining the fields of - * an object type. - * - * Example: - * - * const PersonType = new GraphQLObjectType({ - * name: 'Person', - * fields: () => ({ - * parents: { type: new GraphQLList(Person) }, - * children: { type: new GraphQLList(Person) }, - * }) - * }) - * - */ -export class GraphQLList { - ofType: T; - constructor(type: T); - toString(): string; -} - -/** - * Non-Null Modifier - * - * A non-null is a kind of type marker, a wrapping type which points to another - * type. Non-null types enforce that their values are never null and can ensure - * an error is raised if this ever occurs during a request. It is useful for - * fields which you can make a strong guarantee on non-nullability, for example - * usually the id field of a database row will never be null. - * - * Example: - * - * const RowType = new GraphQLObjectType({ - * name: 'Row', - * fields: () => ({ - * id: { type: new GraphQLNonNull(GraphQLString) }, - * }) - * }) - * - * Note: the enforcement of non-nullability occurs within the executor. - */ -export class GraphQLNonNull { - ofType: T; - - constructor(type: T); - - toString(): string; -} +export type GraphQLInputFieldMap = { [key: string]: GraphQLInputField }; diff --git a/types/graphql/type/directives.d.ts b/types/graphql/type/directives.d.ts index bf1fc8df16..ca9e947640 100644 --- a/types/graphql/type/directives.d.ts +++ b/types/graphql/type/directives.d.ts @@ -1,30 +1,12 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLFieldConfigArgumentMap, GraphQLArgument } from "./definition"; import { DirectiveDefinitionNode } from "../language/ast"; +import { DirectiveLocationEnum } from "../language/directiveLocation"; -export const DirectiveLocation: { - // Operations - QUERY: "QUERY"; - MUTATION: "MUTATION"; - SUBSCRIPTION: "SUBSCRIPTION"; - FIELD: "FIELD"; - FRAGMENT_DEFINITION: "FRAGMENT_DEFINITION"; - FRAGMENT_SPREAD: "FRAGMENT_SPREAD"; - INLINE_FRAGMENT: "INLINE_FRAGMENT"; - // Schema Definitions - SCHEMA: "SCHEMA"; - SCALAR: "SCALAR"; - OBJECT: "OBJECT"; - FIELD_DEFINITION: "FIELD_DEFINITION"; - ARGUMENT_DEFINITION: "ARGUMENT_DEFINITION"; - INTERFACE: "INTERFACE"; - UNION: "UNION"; - ENUM: "ENUM"; - ENUM_VALUE: "ENUM_VALUE"; - INPUT_OBJECT: "INPUT_OBJECT"; - INPUT_FIELD_DEFINITION: "INPUT_FIELD_DEFINITION"; -}; - -export type DirectiveLocationEnum = keyof typeof DirectiveLocation; +/** + * Test if the given value is a GraphQL directive. + */ +export function isDirective(directive: any): directive is GraphQLDirective; /** * Directives are used by the GraphQL runtime as a way of modifying execution @@ -32,20 +14,20 @@ export type DirectiveLocationEnum = keyof typeof DirectiveLocation; */ export class GraphQLDirective { name: string; - description?: string; + description: Maybe; locations: DirectiveLocationEnum[]; args: GraphQLArgument[]; - astNode?: DirectiveDefinitionNode; + astNode: Maybe; constructor(config: GraphQLDirectiveConfig); } export interface GraphQLDirectiveConfig { name: string; - description?: string; + description?: Maybe; locations: DirectiveLocationEnum[]; - args?: GraphQLFieldConfigArgumentMap; - astNode?: DirectiveDefinitionNode; + args?: Maybe; + astNode?: Maybe; } /** @@ -71,4 +53,6 @@ export const GraphQLDeprecatedDirective: GraphQLDirective; /** * The full list of specified directives. */ -export const specifiedDirectives: GraphQLDirective[]; +export const specifiedDirectives: ReadonlyArray; + +export function isSpecifiedDirective(directive: GraphQLDirective): boolean; diff --git a/types/graphql/type/index.d.ts b/types/graphql/type/index.d.ts index 551ade35e7..c498f648e4 100644 --- a/types/graphql/type/index.d.ts +++ b/types/graphql/type/index.d.ts @@ -1,29 +1,133 @@ -// GraphQL Schema definition -export { GraphQLSchema } from "./schema"; - -export * from "./definition"; +export { + // Predicate + isSchema, + // GraphQL Schema definition + GraphQLSchema, + GraphQLSchemaConfig, +} from "./schema"; export { - // "Enum" of Directive Locations - DirectiveLocation, + // Predicates + isType, + isScalarType, + isObjectType, + isInterfaceType, + isUnionType, + isEnumType, + isInputObjectType, + isListType, + isNonNullType, + isInputType, + isOutputType, + isLeafType, + isCompositeType, + isAbstractType, + isWrappingType, + isNullableType, + isNamedType, + // Assertions + assertType, + assertScalarType, + assertObjectType, + assertInterfaceType, + assertUnionType, + assertEnumType, + assertInputObjectType, + assertListType, + assertNonNullType, + assertInputType, + assertOutputType, + assertLeafType, + assertCompositeType, + assertAbstractType, + assertWrappingType, + assertNullableType, + assertNamedType, + // Un-modifiers + getNullableType, + getNamedType, + // Definitions + GraphQLScalarType, + GraphQLObjectType, + GraphQLInterfaceType, + GraphQLUnionType, + GraphQLEnumType, + GraphQLInputObjectType, + // Type Wrappers + GraphQLList, + GraphQLNonNull, + // type + GraphQLType, + GraphQLInputType, + GraphQLOutputType, + GraphQLLeafType, + GraphQLCompositeType, + GraphQLAbstractType, + GraphQLWrappingType, + GraphQLNullableType, + GraphQLNamedType, + Thunk, + GraphQLArgument, + GraphQLArgumentConfig, + GraphQLEnumTypeConfig, + GraphQLEnumValue, + GraphQLEnumValueConfig, + GraphQLEnumValueConfigMap, + GraphQLField, + GraphQLFieldConfig, + GraphQLFieldConfigArgumentMap, + GraphQLFieldConfigMap, + GraphQLFieldMap, + GraphQLFieldResolver, + GraphQLInputField, + GraphQLInputFieldConfig, + GraphQLInputFieldConfigMap, + GraphQLInputFieldMap, + GraphQLInputObjectTypeConfig, + GraphQLInterfaceTypeConfig, + GraphQLIsTypeOfFn, + GraphQLObjectTypeConfig, + GraphQLResolveInfo, + ResponsePath, + GraphQLScalarTypeConfig, + GraphQLTypeResolver, + GraphQLUnionTypeConfig, +} from "./definition"; + +export { + // Predicate + isDirective, // Directives Definition GraphQLDirective, // Built-in Directives defined by the Spec + isSpecifiedDirective, specifiedDirectives, GraphQLIncludeDirective, GraphQLSkipDirective, GraphQLDeprecatedDirective, // Constant Deprecation Reason DEFAULT_DEPRECATION_REASON, + // type + GraphQLDirectiveConfig, } from "./directives"; // Common built-in scalar instances. -export { GraphQLInt, GraphQLFloat, GraphQLString, GraphQLBoolean, GraphQLID } from "./scalars"; +export { + isSpecifiedScalarType, + specifiedScalarTypes, + GraphQLInt, + GraphQLFloat, + GraphQLString, + GraphQLBoolean, + GraphQLID, +} from "./scalars"; export { // "Enum" of Type Kinds TypeKind, // GraphQL Types for introspection. + isIntrospectionType, + introspectionTypes, __Schema, __Directive, __DirectiveLocation, @@ -38,4 +142,4 @@ export { TypeNameMetaFieldDef, } from "./introspection"; -export { DirectiveLocationEnum } from "./directives"; +export { validateSchema, assertValidSchema } from "./validate"; diff --git a/types/graphql/type/introspection.d.ts b/types/graphql/type/introspection.d.ts index 042c3e2b6b..beed0ebeb2 100644 --- a/types/graphql/type/introspection.d.ts +++ b/types/graphql/type/introspection.d.ts @@ -35,6 +35,11 @@ export const __TypeKind: GraphQLEnumType; * Note that these are GraphQLField and not GraphQLFieldConfig, * so the format for args is different. */ + export const SchemaMetaFieldDef: GraphQLField; export const TypeMetaFieldDef: GraphQLField; export const TypeNameMetaFieldDef: GraphQLField; + +export const introspectionTypes: ReadonlyArray; + +export function isIntrospectionType(type: any): boolean; diff --git a/types/graphql/type/scalars.d.ts b/types/graphql/type/scalars.d.ts index 287d99602a..1476bf7ab8 100644 --- a/types/graphql/type/scalars.d.ts +++ b/types/graphql/type/scalars.d.ts @@ -5,3 +5,7 @@ export const GraphQLFloat: GraphQLScalarType; export const GraphQLString: GraphQLScalarType; export const GraphQLBoolean: GraphQLScalarType; export const GraphQLID: GraphQLScalarType; + +export const specifiedScalarTypes: ReadonlyArray; + +export function isSpecifiedScalarType(type: GraphQLScalarType): boolean; diff --git a/types/graphql/type/schema.d.ts b/types/graphql/type/schema.d.ts index bdd1089756..b5ddc9d8d4 100644 --- a/types/graphql/type/schema.d.ts +++ b/types/graphql/type/schema.d.ts @@ -1,8 +1,14 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLObjectType } from "./definition"; import { GraphQLType, GraphQLNamedType, GraphQLAbstractType } from "./definition"; import { SchemaDefinitionNode } from "../language/ast"; import { GraphQLDirective } from "./directives"; +/** + * Test if the given value is a GraphQL schema. + */ +export function isSchema(schema: any): schema is GraphQLSchema; + /** * Schema Definition * @@ -30,31 +36,26 @@ import { GraphQLDirective } from "./directives"; * */ export class GraphQLSchema { - astNode?: SchemaDefinitionNode; - // private _queryType: GraphQLObjectType; - // private _mutationType: GraphQLObjectType; - // private _subscriptionType: GraphQLObjectType; - // private _directives: Array; - // private _typeMap: TypeMap; - // private _implementations: { [interfaceName: string]: Array }; - // private _possibleTypeMap: { [abstractName: string]: { [possibleName: string]: boolean } }; + astNode: Maybe; constructor(config: GraphQLSchemaConfig); - getQueryType(): GraphQLObjectType; - getMutationType(): GraphQLObjectType | null | undefined; - getSubscriptionType(): GraphQLObjectType | null | undefined; - getTypeMap(): { [typeName: string]: GraphQLNamedType }; - getType(name: string): GraphQLNamedType; - getPossibleTypes(abstractType: GraphQLAbstractType): GraphQLObjectType[]; + getQueryType(): Maybe; + getMutationType(): Maybe; + getSubscriptionType(): Maybe; + getTypeMap(): TypeMap; + getType(name: string): Maybe; + getPossibleTypes(abstractType: GraphQLAbstractType): ReadonlyArray; isPossibleType(abstractType: GraphQLAbstractType, possibleType: GraphQLObjectType): boolean; - getDirectives(): GraphQLDirective[]; - getDirective(name: string): GraphQLDirective; + getDirectives(): ReadonlyArray; + getDirective(name: string): Maybe; } -export type GraphQLSchemaValidationOptions = { +type TypeMap = { [key: string]: GraphQLNamedType }; + +export interface GraphQLSchemaValidationOptions { /** * When building a schema from a GraphQL service's introspection result, it * might be safe to assume the schema is valid. Set to true to assume the @@ -72,14 +73,14 @@ export type GraphQLSchemaValidationOptions = { * This option is provided to ease adoption and may be removed in a future * major release. */ - allowedLegacyNames?: ReadonlyArray; -}; + allowedLegacyNames?: Maybe>; +} -export interface GraphQLSchemaConfig { - query: GraphQLObjectType; - mutation?: GraphQLObjectType; - subscription?: GraphQLObjectType; - types?: GraphQLNamedType[]; - directives?: GraphQLDirective[]; - astNode?: SchemaDefinitionNode; +export interface GraphQLSchemaConfig extends GraphQLSchemaValidationOptions { + query: Maybe; + mutation?: Maybe; + subscription?: Maybe; + types?: Maybe; + directives?: Maybe; + astNode?: Maybe; } diff --git a/types/graphql/type/validate.d.ts b/types/graphql/type/validate.d.ts new file mode 100644 index 0000000000..e23f9e6386 --- /dev/null +++ b/types/graphql/type/validate.d.ts @@ -0,0 +1,17 @@ +import { GraphQLSchema } from "./schema"; +import { GraphQLError } from "../error/GraphQLError"; + +/** + * Implements the "Type Validation" sub-sections of the specification's + * "Type System" section. + * + * Validation runs synchronously, returning an array of encountered errors, or + * an empty array if no errors were encountered and the Schema is valid. + */ +export function validateSchema(schema: GraphQLSchema): ReadonlyArray; + +/** + * Utility function which asserts a schema is valid by throwing an error if + * it is invalid. + */ +export function assertValidSchema(schema: GraphQLSchema): void; diff --git a/types/graphql/utilities/TypeInfo.d.ts b/types/graphql/utilities/TypeInfo.d.ts index 8b1ddc6206..826704a52b 100644 --- a/types/graphql/utilities/TypeInfo.d.ts +++ b/types/graphql/utilities/TypeInfo.d.ts @@ -1,3 +1,4 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLSchema } from "../type/schema"; import { GraphQLOutputType, @@ -22,22 +23,27 @@ export class TypeInfo { // NOTE: this experimental optional second parameter is only needed in order // to support non-spec-compliant codebases. You should never need to use it. // It may disappear in the future. - getFieldDefFn?: getFieldDef + getFieldDefFn?: getFieldDef, + // Initial type may be provided in rare cases to facilitate traversals + // beginning somewhere other than documents. + initialType?: GraphQLType ); - getType(): GraphQLOutputType; - getParentType(): GraphQLCompositeType; - getInputType(): GraphQLInputType; - getFieldDef(): GraphQLField; - getDirective(): GraphQLDirective; - getArgument(): GraphQLArgument; - getEnumValue(): GraphQLEnumValue; + getType(): Maybe; + getParentType(): Maybe; + getInputType(): Maybe; + getParentInputType(): Maybe; + getFieldDef(): GraphQLField>; + getDefaultValue(): Maybe; + getDirective(): Maybe; + getArgument(): Maybe; + getEnumValue(): Maybe; enter(node: ASTNode): any; leave(node: ASTNode): any; } -export type getFieldDef = ( +type getFieldDef = ( schema: GraphQLSchema, parentType: GraphQLType, fieldNode: FieldNode -) => GraphQLField; +) => Maybe>; diff --git a/types/graphql/utilities/assertValidName.d.ts b/types/graphql/utilities/assertValidName.d.ts index 5ca2310a26..19f81e3991 100644 --- a/types/graphql/utilities/assertValidName.d.ts +++ b/types/graphql/utilities/assertValidName.d.ts @@ -1,2 +1,12 @@ -// Helper to assert that provided names are valid. -export function assertValidName(name: string): void; +import { GraphQLError } from "../error/GraphQLError"; +import { ASTNode } from "../language/ast"; + +/** + * Upholds the spec rules about naming. + */ +export function assertValidName(name: string): string; + +/** + * Returns an Error if a name is invalid. + */ +export function isValidNameError(name: string, node?: ASTNode | undefined): GraphQLError | undefined; diff --git a/types/graphql/utilities/astFromValue.d.ts b/types/graphql/utilities/astFromValue.d.ts index 57f7f977ad..e6c9f1ba6c 100644 --- a/types/graphql/utilities/astFromValue.d.ts +++ b/types/graphql/utilities/astFromValue.d.ts @@ -1,16 +1,5 @@ -import { - ValueNode, - /* - TODO: - IntValueNode, - FloatValueNode, - StringValueNode, - BooleanValueNode, - EnumValueNode, - ListValueNode, - ObjectValueNode, - */ -} from "../language/ast"; +import Maybe from "../tsutils/Maybe"; +import { ValueNode } from "../language/ast"; import { GraphQLInputType } from "../type/definition"; /** @@ -27,7 +16,7 @@ import { GraphQLInputType } from "../type/definition"; * | String | String / Enum Value | * | Number | Int / Float | * | Mixed | Enum Value | + * | null | NullValue | * */ -// TODO: this should set overloads according to above the table -export function astFromValue(value: any, type: GraphQLInputType): ValueNode; // Warning: there is a code in bottom: throw new TypeError +export function astFromValue(value: any, type: GraphQLInputType): Maybe; diff --git a/types/graphql/utilities/buildASTSchema.d.ts b/types/graphql/utilities/buildASTSchema.d.ts index 4d256fe180..e2406c7ee1 100644 --- a/types/graphql/utilities/buildASTSchema.d.ts +++ b/types/graphql/utilities/buildASTSchema.d.ts @@ -1,6 +1,19 @@ -import { DocumentNode, Location, StringValueNode } from "../language/ast"; +import Maybe from "../tsutils/Maybe"; +import { + DocumentNode, + Location, + StringValueNode, + TypeDefinitionNode, + NamedTypeNode, + DirectiveDefinitionNode, + FieldDefinitionNode, +} from "../language/ast"; +import { GraphQLNamedType, GraphQLFieldConfig } from "../type/definition"; +import { GraphQLDirective } from "../type/directives"; import { Source } from "../language/source"; import { GraphQLSchema, GraphQLSchemaValidationOptions } from "../type/schema"; +import { ParseOptions } from "../language/parser"; +import blockStringValue from "../language/blockStringValue"; interface BuildSchemaOptions extends GraphQLSchemaValidationOptions { /** @@ -22,8 +35,29 @@ interface BuildSchemaOptions extends GraphQLSchemaValidationOptions { * * Given that AST it constructs a GraphQLSchema. The resulting schema * has no resolve methods, so execution will use default resolvers. + * + * Accepts options as a second argument: + * + * - commentDescriptions: + * Provide true to use preceding comments as the description. + * */ -export function buildASTSchema(ast: DocumentNode): GraphQLSchema; +export function buildASTSchema(ast: DocumentNode, options?: BuildSchemaOptions): GraphQLSchema; + +type TypeDefinitionsMap = { [key: string]: TypeDefinitionNode }; +type TypeResolver = (typeRef: NamedTypeNode) => GraphQLNamedType; + +export class ASTDefinitionBuilder { + constructor(typeDefinitionsMap: TypeDefinitionsMap, options: Maybe, resolveType: TypeResolver); + + buildTypes(nodes: ReadonlyArray): Array; + + buildType(node: NamedTypeNode | TypeDefinitionNode): GraphQLNamedType; + + buildDirective(directiveNode: DirectiveDefinitionNode): GraphQLDirective; + + buildField(field: FieldDefinitionNode): GraphQLFieldConfig; +} /** * Given an ast node, returns its string description. @@ -35,12 +69,12 @@ export function buildASTSchema(ast: DocumentNode): GraphQLSchema; * */ export function getDescription( - node: { description?: StringValueNode; loc?: Location }, - options: BuildSchemaOptions -): string; + node: { readonly description?: StringValueNode; readonly loc?: Location }, + options: Maybe +): string | undefined; /** * A helper function to build a GraphQLSchema directly from a source * document. */ -export function buildSchema(source: string | Source): GraphQLSchema; +export function buildSchema(source: string | Source, options?: BuildSchemaOptions & ParseOptions): GraphQLSchema; diff --git a/types/graphql/utilities/buildClientSchema.d.ts b/types/graphql/utilities/buildClientSchema.d.ts index 80516c2111..128c34ca48 100644 --- a/types/graphql/utilities/buildClientSchema.d.ts +++ b/types/graphql/utilities/buildClientSchema.d.ts @@ -11,5 +11,8 @@ interface Options extends GraphQLSchemaValidationOptions {} * tools, but cannot be used to execute a query, as introspection does not * represent the "resolver", "parse" or "serialize" functions or any other * server-internal mechanisms. + * + * This function expects a complete introspection result. Don't forget to check + * the "errors" field of a server response before calling this function. */ export function buildClientSchema(introspection: IntrospectionQuery, options?: Options): GraphQLSchema; diff --git a/types/graphql/utilities/coerceValue.d.ts b/types/graphql/utilities/coerceValue.d.ts new file mode 100644 index 0000000000..081eea4a32 --- /dev/null +++ b/types/graphql/utilities/coerceValue.d.ts @@ -0,0 +1,22 @@ +import { GraphQLError } from "../error"; +import { ASTNode } from "../language/ast"; +import { GraphQLInputType } from "../type/definition"; + +interface CoercedValue { + readonly errors: ReadonlyArray | undefined; + readonly value: any; +} + +interface Path { + readonly prev: Path | undefined; + readonly key: string | number; +} + +/** + * Coerces a JavaScript value given a GraphQL Type. + * + * Returns either a value which is valid for the provided type or a list of + * encountered coercion errors. + * + */ +export function coerceValue(value: any, type: GraphQLInputType, blameNode?: ASTNode, path?: Path): CoercedValue; diff --git a/types/graphql/utilities/concatAST.d.ts b/types/graphql/utilities/concatAST.d.ts index 6e4c33aed5..08c5104076 100644 --- a/types/graphql/utilities/concatAST.d.ts +++ b/types/graphql/utilities/concatAST.d.ts @@ -5,4 +5,4 @@ import { DocumentNode } from "../language/ast"; * concatenate the ASTs together into batched AST, useful for validating many * GraphQL source files which together represent one conceptual application. */ -export function concatAST(asts: DocumentNode[]): DocumentNode; +export function concatAST(asts: ReadonlyArray): DocumentNode; diff --git a/types/graphql/utilities/extendSchema.d.ts b/types/graphql/utilities/extendSchema.d.ts index 027c4d5745..7cde767ed7 100644 --- a/types/graphql/utilities/extendSchema.d.ts +++ b/types/graphql/utilities/extendSchema.d.ts @@ -1,5 +1,17 @@ import { DocumentNode } from "../language/ast"; import { GraphQLSchema } from "../type/schema"; +import { GraphQLSchemaValidationOptions } from "../type/schema"; + +interface Options extends GraphQLSchemaValidationOptions { + /** + * Descriptions are defined as preceding string literals, however an older + * experimental version of the SDL supported preceding comments as + * descriptions. Set to true to enable this deprecated behavior. + * + * Default: false + */ + commentDescriptions?: boolean; +} /** * Produces a new schema given an existing schema and a document which may @@ -12,5 +24,11 @@ import { GraphQLSchema } from "../type/schema"; * * This algorithm copies the provided schema, applying extensions while * producing the copy. The original schema remains unaltered. + * + * Accepts options as a third argument: + * + * - commentDescriptions: + * Provide true to use preceding comments as the description. + * */ -export function extendSchema(schema: GraphQLSchema, documentAST: DocumentNode): GraphQLSchema; +export function extendSchema(schema: GraphQLSchema, documentAST: DocumentNode, options?: Options): GraphQLSchema; diff --git a/types/graphql/utilities/findBreakingChanges.d.ts b/types/graphql/utilities/findBreakingChanges.d.ts index 37b98dae34..84f1bea158 100644 --- a/types/graphql/utilities/findBreakingChanges.d.ts +++ b/types/graphql/utilities/findBreakingChanges.d.ts @@ -8,27 +8,50 @@ import { GraphQLUnionType, GraphQLNamedType, } from "../type/definition"; +import { GraphQLDirective } from "../type/directives"; import { GraphQLSchema } from "../type/schema"; +import { DirectiveLocationEnum } from "../language/directiveLocation"; -export const BreakingChangeType: { +export const BreakingChangeType : _BreakingChangeType; + +// @internal +type _BreakingChangeType = { FIELD_CHANGED_KIND: "FIELD_CHANGED_KIND"; FIELD_REMOVED: "FIELD_REMOVED"; TYPE_CHANGED_KIND: "TYPE_CHANGED_KIND"; TYPE_REMOVED: "TYPE_REMOVED"; TYPE_REMOVED_FROM_UNION: "TYPE_REMOVED_FROM_UNION"; VALUE_REMOVED_FROM_ENUM: "VALUE_REMOVED_FROM_ENUM"; + ARG_REMOVED: "ARG_REMOVED"; + ARG_CHANGED_KIND: "ARG_CHANGED_KIND"; + NON_NULL_ARG_ADDED: "NON_NULL_ARG_ADDED"; + NON_NULL_INPUT_FIELD_ADDED: "NON_NULL_INPUT_FIELD_ADDED"; + INTERFACE_REMOVED_FROM_OBJECT: "INTERFACE_REMOVED_FROM_OBJECT"; + DIRECTIVE_REMOVED: "DIRECTIVE_REMOVED"; + DIRECTIVE_ARG_REMOVED: "DIRECTIVE_ARG_REMOVED"; + DIRECTIVE_LOCATION_REMOVED: "DIRECTIVE_LOCATION_REMOVED"; + NON_NULL_DIRECTIVE_ARG_ADDED: "NON_NULL_DIRECTIVE_ARG_ADDED"; }; -export type BreakingChangeKey = - | "FIELD_CHANGED_KIND" - | "FIELD_REMOVED" - | "TYPE_CHANGED_KIND" - | "TYPE_REMOVED" - | "TYPE_REMOVED_FROM_UNION" - | "VALUE_REMOVED_FROM_ENUM"; +export const DangerousChangeType: _DangerousChangeType; + +// @internal +type _DangerousChangeType = { + ARG_DEFAULT_VALUE_CHANGE: "ARG_DEFAULT_VALUE_CHANGE"; + VALUE_ADDED_TO_ENUM: "VALUE_ADDED_TO_ENUM"; + INTERFACE_ADDED_TO_OBJECT: "INTERFACE_ADDED_TO_OBJECT"; + TYPE_ADDED_TO_UNION: "TYPE_ADDED_TO_UNION"; + NULLABLE_INPUT_FIELD_ADDED: "NULLABLE_INPUT_FIELD_ADDED"; + NULLABLE_ARG_ADDED: "NULLABLE_ARG_ADDED"; +}; export interface BreakingChange { - type: BreakingChangeKey; + type: keyof _BreakingChangeType; + description: string; +} + +export interface DangerousChange { + type: keyof _DangerousChangeType; description: string; } @@ -36,35 +59,102 @@ export interface BreakingChange { * Given two schemas, returns an Array containing descriptions of all the types * of breaking changes covered by the other functions down below. */ -export function findBreakingChanges(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findBreakingChanges(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +/** + * Given two schemas, returns an Array containing descriptions of all the types + * of potentially dangerous changes covered by the other functions down below. + */ +export function findDangerousChanges(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; /** * Given two schemas, returns an Array containing descriptions of any breaking * changes in the newSchema related to removing an entire type. */ -export function findRemovedTypes(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findRemovedTypes(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; /** * Given two schemas, returns an Array containing descriptions of any breaking * changes in the newSchema related to changing the type of a type. */ -export function findTypesThatChangedKind(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findTypesThatChangedKind(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; /** - * Given two schemas, returns an Array containing descriptions of any breaking - * changes in the newSchema related to the fields on a type. This includes if - * a field has been removed from a type or if a field has changed type. + * Given two schemas, returns an Array containing descriptions of any + * breaking or dangerous changes in the newSchema related to arguments + * (such as removal or change of type of an argument, or a change in an + * argument's default value). */ -export function findFieldsThatChangedType(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findArgChanges( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): { + breakingChanges: Array; + dangerousChanges: Array; +}; + +export function findFieldsThatChangedTypeOnObjectOrInterfaceTypes( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): Array; + +export function findFieldsThatChangedTypeOnInputObjectTypes( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): { + breakingChanges: Array; + dangerousChanges: Array; +}; /** * Given two schemas, returns an Array containing descriptions of any breaking * changes in the newSchema related to removing types from a union type. */ -export function findTypesRemovedFromUnions(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findTypesRemovedFromUnions(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +/** + * Given two schemas, returns an Array containing descriptions of any dangerous + * changes in the newSchema related to adding types to a union type. + */ +export function findTypesAddedToUnions(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; /** * Given two schemas, returns an Array containing descriptions of any breaking * changes in the newSchema related to removing values from an enum type. */ -export function findValuesRemovedFromEnums(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): BreakingChange[]; +export function findValuesRemovedFromEnums(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +/** + * Given two schemas, returns an Array containing descriptions of any dangerous + * changes in the newSchema related to adding values to an enum type. + */ +export function findValuesAddedToEnums(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +export function findInterfacesRemovedFromObjectTypes( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): Array; + +export function findInterfacesAddedToObjectTypes( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): Array; + +export function findRemovedDirectives(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +export function findRemovedDirectiveArgs(oldSchema: GraphQLSchema, newSchema: GraphQLSchema): Array; + +export function findAddedNonNullDirectiveArgs( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): Array; + +export function findRemovedLocationsForDirective( + oldDirective: GraphQLDirective, + newDirective: GraphQLDirective +): Array; + +export function findRemovedDirectiveLocations( + oldSchema: GraphQLSchema, + newSchema: GraphQLSchema +): Array; diff --git a/types/graphql/utilities/getOperationAST.d.ts b/types/graphql/utilities/getOperationAST.d.ts index 5a1e0dc7a7..a36cfa139c 100644 --- a/types/graphql/utilities/getOperationAST.d.ts +++ b/types/graphql/utilities/getOperationAST.d.ts @@ -1,3 +1,4 @@ +import Maybe from "../tsutils/Maybe"; import { DocumentNode, OperationDefinitionNode } from "../language/ast"; /** @@ -5,4 +6,7 @@ import { DocumentNode, OperationDefinitionNode } from "../language/ast"; * name. If a name is not provided, an operation is only returned if only one is * provided in the document. */ -export function getOperationAST(documentAST: DocumentNode, operationName?: string): OperationDefinitionNode; +export function getOperationAST( + documentAST: DocumentNode, + operationName: Maybe +): Maybe; diff --git a/types/graphql/utilities/index.d.ts b/types/graphql/utilities/index.d.ts index 91777235d1..f571c3ab76 100644 --- a/types/graphql/utilities/index.d.ts +++ b/types/graphql/utilities/index.d.ts @@ -1,9 +1,17 @@ // The GraphQL query recommended for a full schema introspection. -export { introspectionQuery } from "./introspectionQuery"; export { + getIntrospectionQuery, + // Deprecated, use getIntrospectionQuery() + introspectionQuery, +} from "./introspectionQuery"; + +export { + IntrospectionOptions, IntrospectionQuery, IntrospectionSchema, IntrospectionType, + IntrospectionInputType, + IntrospectionOutputType, IntrospectionScalarType, IntrospectionObjectType, IntrospectionInterfaceType, @@ -11,6 +19,8 @@ export { IntrospectionEnumType, IntrospectionInputObjectType, IntrospectionTypeRef, + IntrospectionInputTypeRef, + IntrospectionOutputTypeRef, IntrospectionNamedTypeRef, IntrospectionListTypeRef, IntrospectionNonNullTypeRef, @@ -23,24 +33,33 @@ export { // Gets the target Operation from a Document export { getOperationAST } from "./getOperationAST"; +// Convert a GraphQLSchema to an IntrospectionQuery +export { introspectionFromSchema } from "./introspectionFromSchema"; + // Build a GraphQLSchema from an introspection result. export { buildClientSchema } from "./buildClientSchema"; // Build a GraphQLSchema from GraphQL Schema language. -export { buildASTSchema, buildSchema, getDescription } from "./buildASTSchema"; +export { buildASTSchema, buildSchema, getDescription, BuildSchemaOptions } from "./buildASTSchema"; // Extends an existing GraphQLSchema from a parsed GraphQL Schema language AST. export { extendSchema } from "./extendSchema"; +// Sort a GraphQLSchema. +export { lexicographicSortSchema } from "./lexicographicSortSchema"; + // Print a GraphQLSchema to GraphQL Schema language. export { printSchema, printType, printIntrospectionSchema } from "./schemaPrinter"; // Create a GraphQLType from a GraphQL language AST. export { typeFromAST } from "./typeFromAST"; -// Create a JavaScript value from a GraphQL language AST. +// Create a JavaScript value from a GraphQL language AST with a type. export { valueFromAST } from "./valueFromAST"; +// Create a JavaScript value from a GraphQL language AST without a type. +export { valueFromASTUntyped } from "./valueFromASTUntyped"; + // Create a GraphQL language AST from a JavaScript value. export { astFromValue } from "./astFromValue"; @@ -48,7 +67,10 @@ export { astFromValue } from "./astFromValue"; // the GraphQL type system. export { TypeInfo } from "./TypeInfo"; -// Determine if JavaScript values adhere to a GraphQL type. +// Coerces a JavaScript value to a GraphQL type, or produces errors. +export { coerceValue } from "./coerceValue"; + +// @deprecated use coerceValue export { isValidJSValue } from "./isValidJSValue"; // Determine if AST values adhere to a GraphQL type. @@ -64,11 +86,17 @@ export { separateOperations } from "./separateOperations"; export { isEqualType, isTypeSubTypeOf, doTypesOverlap } from "./typeComparators"; // Asserts that a string is a valid GraphQL name -export { assertValidName } from "./assertValidName"; +export { assertValidName, isValidNameError } from "./assertValidName"; // Compares two GraphQLSchemas and detects breaking changes. -export { findBreakingChanges } from "./findBreakingChanges"; -export { BreakingChange } from "./findBreakingChanges"; +export { + BreakingChangeType, + DangerousChangeType, + findBreakingChanges, + findDangerousChanges, + BreakingChange, + DangerousChange, +} from "./findBreakingChanges"; // Report all deprecated usage within a GraphQL document. export { findDeprecatedUsages } from "./findDeprecatedUsages"; diff --git a/types/graphql/utilities/introspectionFromSchema.d.ts b/types/graphql/utilities/introspectionFromSchema.d.ts new file mode 100644 index 0000000000..8733a35087 --- /dev/null +++ b/types/graphql/utilities/introspectionFromSchema.d.ts @@ -0,0 +1,13 @@ +import { GraphQLSchema } from "../type/schema"; +import { IntrospectionQuery, IntrospectionOptions } from "./introspectionQuery"; + +/** + * Build an IntrospectionQuery from a GraphQLSchema + * + * IntrospectionQuery is useful for utilities that care about type and field + * relationships, but do not need to traverse through those relationships. + * + * This is the inverse of buildClientSchema. The primary use case is outside + * of the server context, for instance when doing schema comparisons. + */ +export function introspectionFromSchema(schema: GraphQLSchema, options: IntrospectionOptions): IntrospectionQuery; diff --git a/types/graphql/utilities/introspectionQuery.d.ts b/types/graphql/utilities/introspectionQuery.d.ts index 10c3b0a200..f2172595f8 100644 --- a/types/graphql/utilities/introspectionQuery.d.ts +++ b/types/graphql/utilities/introspectionQuery.d.ts @@ -1,110 +1,26 @@ -import { DirectiveLocationEnum } from "../type/directives"; +import Maybe from "../tsutils/Maybe"; +import { DirectiveLocationEnum } from "../language/directiveLocation"; -/* -query IntrospectionQuery { - __schema { - queryType { name } - mutationType { name } - subscriptionType { name } - types { - ...FullType - } - directives { - name - description - locations - args { - ...InputValue - } - } - } +export interface IntrospectionOptions { + // Whether to include descriptions in the introspection result. + // Default: true + descriptions: boolean; } -fragment FullType on __Type { - kind - name - description - fields(includeDeprecated: true) { - name - description - args { - ...InputValue - } - type { - ...TypeRef - } - isDeprecated - deprecationReason - } - inputFields { - ...InputValue - } - interfaces { - ...TypeRef - } - enumValues(includeDeprecated: true) { - name - description - isDeprecated - deprecationReason - } - possibleTypes { - ...TypeRef - } -} +export function getIntrospectionQuery(options?: IntrospectionOptions): string; -fragment InputValue on __InputValue { - name - description - type { ...TypeRef } - defaultValue -} - -fragment TypeRef on __Type { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - ofType { - kind - name - } - } - } - } - } - } - } -} -*/ export const introspectionQuery: string; export interface IntrospectionQuery { - __schema: IntrospectionSchema; + readonly __schema: IntrospectionSchema; } export interface IntrospectionSchema { - queryType: IntrospectionNamedTypeRef; - mutationType?: IntrospectionNamedTypeRef; - subscriptionType?: IntrospectionNamedTypeRef; - types: IntrospectionType[]; - directives: IntrospectionDirective[]; + readonly queryType: IntrospectionNamedTypeRef; + readonly mutationType: Maybe>; + readonly subscriptionType: Maybe>; + readonly types: ReadonlyArray; + readonly directives: ReadonlyArray; } export type IntrospectionType = @@ -115,92 +31,114 @@ export type IntrospectionType = | IntrospectionEnumType | IntrospectionInputObjectType; +export type IntrospectionOutputType = + | IntrospectionScalarType + | IntrospectionObjectType + | IntrospectionInterfaceType + | IntrospectionUnionType + | IntrospectionEnumType; + +export type IntrospectionInputType = IntrospectionScalarType | IntrospectionEnumType | IntrospectionInputObjectType; + export interface IntrospectionScalarType { - kind: "SCALAR"; - name: string; - description?: string; + readonly kind: "SCALAR"; + readonly name: string; + readonly description?: Maybe; } export interface IntrospectionObjectType { - kind: "OBJECT"; - name: string; - description?: string; - fields: IntrospectionField[]; - interfaces: IntrospectionNamedTypeRef[]; + readonly kind: "OBJECT"; + readonly name: string; + readonly description?: Maybe; + readonly fields: ReadonlyArray; + readonly interfaces: ReadonlyArray>; } export interface IntrospectionInterfaceType { - kind: "INTERFACE"; - name: string; - description?: string; - fields: IntrospectionField[]; - possibleTypes: IntrospectionNamedTypeRef[]; + readonly kind: "INTERFACE"; + readonly name: string; + readonly description?: Maybe; + readonly fields: ReadonlyArray; + readonly possibleTypes: ReadonlyArray>; } export interface IntrospectionUnionType { - kind: "UNION"; - name: string; - description?: string; - possibleTypes: IntrospectionNamedTypeRef[]; + readonly kind: "UNION"; + readonly name: string; + readonly description?: Maybe; + readonly possibleTypes: ReadonlyArray>; } export interface IntrospectionEnumType { - kind: "ENUM"; - name: string; - description?: string; - enumValues: IntrospectionEnumValue[]; + readonly kind: "ENUM"; + readonly name: string; + readonly description?: Maybe; + readonly enumValues: ReadonlyArray; } export interface IntrospectionInputObjectType { - kind: "INPUT_OBJECT"; - name: string; - description?: string; - inputFields: IntrospectionInputValue[]; + readonly kind: "INPUT_OBJECT"; + readonly name: string; + readonly description?: Maybe; + readonly inputFields: ReadonlyArray; } -export type IntrospectionTypeRef = IntrospectionNamedTypeRef | IntrospectionListTypeRef | IntrospectionNonNullTypeRef; - -export interface IntrospectionNamedTypeRef { - kind: string; - name: string; +export interface IntrospectionListTypeRef { + readonly kind: "LIST"; + readonly ofType: T; } -export interface IntrospectionListTypeRef { - kind: "LIST"; - ofType?: IntrospectionTypeRef; +export interface IntrospectionNonNullTypeRef { + readonly kind: "NON_NULL"; + readonly ofType: T; } -export interface IntrospectionNonNullTypeRef { - kind: "NON_NULL"; - ofType?: IntrospectionTypeRef; +export type IntrospectionTypeRef = + | IntrospectionNamedTypeRef + | IntrospectionListTypeRef + | IntrospectionNonNullTypeRef | IntrospectionListTypeRef>; + +export type IntrospectionOutputTypeRef = + | IntrospectionNamedTypeRef + | IntrospectionListTypeRef + | IntrospectionNonNullTypeRef | IntrospectionListTypeRef>; + +export type IntrospectionInputTypeRef = + | IntrospectionNamedTypeRef + | IntrospectionListTypeRef + | IntrospectionNonNullTypeRef | IntrospectionListTypeRef>; + +export interface IntrospectionNamedTypeRef { + readonly kind: T["kind"]; + readonly name: string; } export interface IntrospectionField { - name: string; - description?: string; - args: IntrospectionInputValue[]; - type: IntrospectionTypeRef; - isDeprecated: boolean; - deprecationReason?: string; + readonly name: string; + readonly description?: Maybe; + readonly args: ReadonlyArray; + readonly type: IntrospectionOutputTypeRef; + readonly isDeprecated: boolean; + readonly deprecationReason?: Maybe; } export interface IntrospectionInputValue { - name: string; - description?: string; - type: IntrospectionTypeRef; - defaultValue?: string; + readonly name: string; + readonly description?: Maybe; + readonly type: IntrospectionInputTypeRef; + readonly defaultValue?: Maybe; } export interface IntrospectionEnumValue { - name: string; - description?: string; - isDeprecated: boolean; - deprecationReason?: string; + readonly name: string; + readonly description?: Maybe; + readonly isDeprecated: boolean; + readonly deprecationReason?: Maybe; } export interface IntrospectionDirective { - name: string; - description?: string; - locations: DirectiveLocationEnum[]; - args: IntrospectionInputValue[]; + readonly name: string; + readonly description?: Maybe; + readonly locations: ReadonlyArray; + readonly args: ReadonlyArray; } diff --git a/types/graphql/utilities/isValidJSValue.d.ts b/types/graphql/utilities/isValidJSValue.d.ts index 557429c7f4..d45d104ffd 100644 --- a/types/graphql/utilities/isValidJSValue.d.ts +++ b/types/graphql/utilities/isValidJSValue.d.ts @@ -1,8 +1,6 @@ import { GraphQLInputType } from "../type/definition"; /** - * Given a JavaScript value and a GraphQL type, determine if the value will be - * accepted for that type. This is primarily useful for validating the - * runtime values of query variables. + * Deprecated. Use coerceValue() directly for richer information. */ export function isValidJSValue(value: any, type: GraphQLInputType): string[]; diff --git a/types/graphql/utilities/isValidLiteralValue.d.ts b/types/graphql/utilities/isValidLiteralValue.d.ts index bf54f6bb22..6a9275bce9 100644 --- a/types/graphql/utilities/isValidLiteralValue.d.ts +++ b/types/graphql/utilities/isValidLiteralValue.d.ts @@ -1,11 +1,10 @@ +import { GraphQLError } from "../error/GraphQLError"; import { ValueNode } from "../language/ast"; import { GraphQLInputType } from "../type/definition"; /** - * Utility for validators which determines if a value literal AST is valid given - * an input type. + * Utility which determines if a value literal node is valid for an input type. * - * Note that this only validates literal values, variables are assumed to - * provide values of the correct type. + * Deprecated. Rely on validation for documents containing literal values. */ -export function isValidLiteralValue(type: GraphQLInputType, valueNode: ValueNode): string[]; +export function isValidLiteralValue(type: GraphQLInputType, valueNode: ValueNode): ReadonlyArray; diff --git a/types/graphql/utilities/lexicographicSortSchema.d.ts b/types/graphql/utilities/lexicographicSortSchema.d.ts new file mode 100644 index 0000000000..24ec208bba --- /dev/null +++ b/types/graphql/utilities/lexicographicSortSchema.d.ts @@ -0,0 +1,6 @@ +import { GraphQLSchema } from "../type/schema"; + +/** + * Sort GraphQLSchema. + */ +export function lexicographicSortSchema(schema: GraphQLSchema): GraphQLSchema; diff --git a/types/graphql/utilities/schemaPrinter.d.ts b/types/graphql/utilities/schemaPrinter.d.ts index d49e6aee58..8e3aefe7fc 100644 --- a/types/graphql/utilities/schemaPrinter.d.ts +++ b/types/graphql/utilities/schemaPrinter.d.ts @@ -1,12 +1,19 @@ import { GraphQLSchema } from "../type/schema"; -import { GraphQLType } from "../type/definition"; +import { GraphQLType, GraphQLNamedType } from "../type/definition"; -export interface PrinterOptions { +export interface Options { commentDescriptions?: boolean; } -export function printSchema(schema: GraphQLSchema, options?: PrinterOptions): string; +/** + * Accepts options as a second argument: + * + * - commentDescriptions: + * Provide true to use preceding comments as the description. + * + */ +export function printSchema(schema: GraphQLSchema, options?: Options): string; -export function printIntrospectionSchema(schema: GraphQLSchema, options?: PrinterOptions): string; +export function printIntrospectionSchema(schema: GraphQLSchema, options?: Options): string; -export function printType(type: GraphQLType, options?: PrinterOptions): string; +export function printType(type: GraphQLNamedType, options?: Options): string; diff --git a/types/graphql/utilities/separateOperations.d.ts b/types/graphql/utilities/separateOperations.d.ts index 8269b22d75..6035084860 100644 --- a/types/graphql/utilities/separateOperations.d.ts +++ b/types/graphql/utilities/separateOperations.d.ts @@ -1,3 +1,9 @@ import { DocumentNode, OperationDefinitionNode } from "../language/ast"; -export function separateOperations(documentAST: DocumentNode): { [operationName: string]: DocumentNode }; +/** + * separateOperations accepts a single AST document which may contain many + * operations and fragments and returns a collection of AST documents each of + * which contains a single operation as well the fragment definitions it + * refers to. + */ +export function separateOperations(documentAST: DocumentNode): { [key: string]: DocumentNode }; diff --git a/types/graphql/utilities/typeFromAST.d.ts b/types/graphql/utilities/typeFromAST.d.ts index 79b7b24a38..f2adaa7762 100644 --- a/types/graphql/utilities/typeFromAST.d.ts +++ b/types/graphql/utilities/typeFromAST.d.ts @@ -1,5 +1,16 @@ -import { TypeNode } from "../language/ast"; -import { GraphQLType, GraphQLNullableType } from "../type/definition"; +import { TypeNode, NamedTypeNode, ListTypeNode, NonNullTypeNode } from "../language/ast"; +import { GraphQLType, GraphQLNullableType, GraphQLNamedType, GraphQLList, GraphQLNonNull } from "../type/definition"; import { GraphQLSchema } from "../type/schema"; -export function typeFromAST(schema: GraphQLSchema, typeNode: TypeNode): GraphQLType; +/** + * Given a Schema and an AST node describing a type, return a GraphQLType + * definition which applies to that type. For example, if provided the parsed + * AST node for `[User]`, a GraphQLList instance will be returned, containing + * the type called "User" found in the schema. If a type called "User" is not + * found in the schema, then undefined will be returned. + */ +export function typeFromAST(schema: GraphQLSchema, typeNode: NamedTypeNode): GraphQLNamedType | undefined; + +export function typeFromAST(schema: GraphQLSchema, typeNode: ListTypeNode): GraphQLList | undefined; + +export function typeFromAST(schema: GraphQLSchema, typeNode: NonNullTypeNode): GraphQLNonNull | undefined; diff --git a/types/graphql/utilities/valueFromAST.d.ts b/types/graphql/utilities/valueFromAST.d.ts index e0b06b0506..c95eca9002 100644 --- a/types/graphql/utilities/valueFromAST.d.ts +++ b/types/graphql/utilities/valueFromAST.d.ts @@ -1,10 +1,29 @@ +import Maybe from "../tsutils/Maybe"; import { GraphQLInputType } from "../type/definition"; import { ValueNode, VariableNode, ListValueNode, ObjectValueNode } from "../language/ast"; +/** + * Produces a JavaScript value given a GraphQL Value AST. + * + * A GraphQL type must be provided, which will be used to interpret different + * GraphQL Value literals. + * + * Returns `undefined` when the value could not be validly coerced according to + * the provided type. + * + * | GraphQL Value | JSON Value | + * | -------------------- | ------------- | + * | Input Object | Object | + * | List | Array | + * | Boolean | Boolean | + * | String | String | + * | Int / Float | Number | + * | Enum Value | Mixed | + * | NullValue | null | + * + */ export function valueFromAST( - valueNode: ValueNode, + valueNode: Maybe, type: GraphQLInputType, - variables?: { - [key: string]: any; - } + variables?: Maybe<{ [key: string]: any }> ): any; diff --git a/types/graphql/utilities/valueFromASTUntyped.d.ts b/types/graphql/utilities/valueFromASTUntyped.d.ts new file mode 100644 index 0000000000..4ca58ca867 --- /dev/null +++ b/types/graphql/utilities/valueFromASTUntyped.d.ts @@ -0,0 +1,20 @@ +import Maybe from "../tsutils/Maybe"; +import { ValueNode } from "../language/ast"; + +/** + * Produces a JavaScript value given a GraphQL Value AST. + * + * Unlike `valueFromAST()`, no type is provided. The resulting JavaScript value + * will reflect the provided GraphQL value AST. + * + * | GraphQL Value | JavaScript Value | + * | -------------------- | ---------------- | + * | Input Object | Object | + * | List | Array | + * | Boolean | Boolean | + * | String / Enum | String | + * | Int / Float | Number | + * | Null | null | + * + */ +export function valueFromASTUntyped(valueNode: ValueNode, variables?: Maybe<{ [key: string]: any }>): any; diff --git a/types/graphql/validation/ValidationContext.d.ts b/types/graphql/validation/ValidationContext.d.ts new file mode 100644 index 0000000000..24049decdf --- /dev/null +++ b/types/graphql/validation/ValidationContext.d.ts @@ -0,0 +1,68 @@ +import Maybe from "../tsutils/Maybe"; +import { GraphQLError } from "../error"; +import { + DocumentNode, + OperationDefinitionNode, + VariableNode, + SelectionSetNode, + FragmentSpreadNode, + FragmentDefinitionNode, +} from "../language/ast"; +import { GraphQLSchema } from "../type/schema"; +import { + GraphQLInputType, + GraphQLOutputType, + GraphQLCompositeType, + GraphQLField, + GraphQLArgument, +} from "../type/definition"; +import { GraphQLDirective } from "../type/directives"; +import { TypeInfo } from "../utilities/TypeInfo"; + +type NodeWithSelectionSet = OperationDefinitionNode | FragmentDefinitionNode; +type VariableUsage = { + readonly node: VariableNode; + readonly type: Maybe; + readonly defaultValue: Maybe; +}; + +/** + * An instance of this class is passed as the "this" context to all validators, + * allowing access to commonly useful contextual information from within a + * validation rule. + */ +export default class ValidationContext { + constructor(schema: GraphQLSchema, ast: DocumentNode, typeInfo: TypeInfo); + + reportError(error: GraphQLError): undefined; + + getErrors(): ReadonlyArray; + + getSchema(): GraphQLSchema; + + getDocument(): DocumentNode; + + getFragment(name: string): Maybe; + + getFragmentSpreads(node: SelectionSetNode): ReadonlyArray; + + getRecursivelyReferencedFragments(operation: OperationDefinitionNode): ReadonlyArray; + + getVariableUsages(node: NodeWithSelectionSet): ReadonlyArray; + + getRecursiveVariableUsages(operation: OperationDefinitionNode): ReadonlyArray; + + getType(): Maybe; + + getParentType(): Maybe; + + getInputType(): Maybe; + + getParentInputType(): Maybe; + + getFieldDef(): Maybe>; + + getDirective(): Maybe; + + getArgument(): Maybe; +} diff --git a/types/graphql/validation/index.d.ts b/types/graphql/validation/index.d.ts index 4353da53fa..911c592432 100644 --- a/types/graphql/validation/index.d.ts +++ b/types/graphql/validation/index.d.ts @@ -1,12 +1,10 @@ -export { validate, ValidationContext } from "./validate"; +export { validate } from "./validate"; + +import ValidationContext from "./ValidationContext"; +export { ValidationContext }; + export { specifiedRules } from "./specifiedRules"; -// Spec Section: "Argument Values Type Correctness" -export { ArgumentsOfCorrectType as ArgumentsOfCorrectTypeRule } from "./rules/ArgumentsOfCorrectType"; - -// Spec Section: "Variable Default Values Are Correctly Typed" -export { DefaultValuesOfCorrectType as DefaultValuesOfCorrectTypeRule } from "./rules/DefaultValuesOfCorrectType"; - // Spec Section: "Field Selections on Objects, Interfaces, and Unions Types" export { FieldsOnCorrectType as FieldsOnCorrectTypeRule } from "./rules/FieldsOnCorrectType"; @@ -73,8 +71,14 @@ export { UniqueOperationNames as UniqueOperationNamesRule } from "./rules/Unique // Spec Section: "Variable Uniqueness" export { UniqueVariableNames as UniqueVariableNamesRule } from "./rules/UniqueVariableNames"; +// Spec Section: "Values Type Correctness" +export { ValuesOfCorrectType as ValuesOfCorrectTypeRule } from "./rules/ValuesOfCorrectType"; + // Spec Section: "Variables are Input Types" export { VariablesAreInputTypes as VariablesAreInputTypesRule } from "./rules/VariablesAreInputTypes"; +// Spec Section: "Variables Default Value Is Allowed" +export { VariablesDefaultValueAllowed as VariablesDefaultValueAllowedRule } from "./rules/VariablesDefaultValueAllowed"; + // Spec Section: "All Variable Usages Are Allowed" export { VariablesInAllowedPosition as VariablesInAllowedPositionRule } from "./rules/VariablesInAllowedPosition"; diff --git a/types/graphql/validation/rules/ArgumentsOfCorrectType.d.ts b/types/graphql/validation/rules/ArgumentsOfCorrectType.d.ts deleted file mode 100644 index 235db84162..0000000000 --- a/types/graphql/validation/rules/ArgumentsOfCorrectType.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ValidationContext } from "../index"; - -/** - * Argument values of correct type - * - * A GraphQL document is only valid if all field argument literal values are - * of the type expected by their position. - */ -export function ArgumentsOfCorrectType(context: ValidationContext): any; diff --git a/types/graphql/validation/rules/DefaultValuesOfCorrectType.d.ts b/types/graphql/validation/rules/DefaultValuesOfCorrectType.d.ts deleted file mode 100644 index b617538a74..0000000000 --- a/types/graphql/validation/rules/DefaultValuesOfCorrectType.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ValidationContext } from "../index"; - -/** - * Variable default values of correct type - * - * A GraphQL document is only valid if all variable default values are of the - * type expected by their definition. - */ -export function DefaultValuesOfCorrectType(context: ValidationContext): any; diff --git a/types/graphql/validation/rules/ExecutableDefinitions.d.ts b/types/graphql/validation/rules/ExecutableDefinitions.d.ts new file mode 100644 index 0000000000..423e0dcad2 --- /dev/null +++ b/types/graphql/validation/rules/ExecutableDefinitions.d.ts @@ -0,0 +1,12 @@ +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function nonExecutableDefinitionMessage(defName: string): string; + +/** + * Executable definitions + * + * A GraphQL document is only valid for execution if all definitions are either + * operation or fragment definitions. + */ +export function ExecutableDefinitions(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/FieldsOnCorrectType.d.ts b/types/graphql/validation/rules/FieldsOnCorrectType.d.ts index 247de1298c..c5c7f053c2 100644 --- a/types/graphql/validation/rules/FieldsOnCorrectType.d.ts +++ b/types/graphql/validation/rules/FieldsOnCorrectType.d.ts @@ -1,4 +1,5 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; /** * Fields on correct type @@ -6,4 +7,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if all fields selected are defined by the * parent type, or are an allowed meta field such as __typename. */ -export function FieldsOnCorrectType(context: ValidationContext): any; +export function FieldsOnCorrectType(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/FragmentsOnCompositeTypes.d.ts b/types/graphql/validation/rules/FragmentsOnCompositeTypes.d.ts index 384f43beb3..7c760e331f 100644 --- a/types/graphql/validation/rules/FragmentsOnCompositeTypes.d.ts +++ b/types/graphql/validation/rules/FragmentsOnCompositeTypes.d.ts @@ -1,4 +1,10 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function inlineFragmentOnNonCompositeErrorMessage(type: GraphQLType): string; + +export function fragmentOnNonCompositeErrorMessage(fragName: string, type: GraphQLType): string; /** * Fragments on composite type @@ -7,4 +13,4 @@ import { ValidationContext } from "../index"; * can only be spread into a composite type (object, interface, or union), the * type condition must also be a composite type. */ -export function FragmentsOnCompositeTypes(context: ValidationContext): any; +export function FragmentsOnCompositeTypes(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/KnownArgumentNames.d.ts b/types/graphql/validation/rules/KnownArgumentNames.d.ts index bd56137311..9602c34c43 100644 --- a/types/graphql/validation/rules/KnownArgumentNames.d.ts +++ b/types/graphql/validation/rules/KnownArgumentNames.d.ts @@ -1,4 +1,18 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unknownArgMessage( + argName: string, + fieldName: string, + typeName: string, + suggestedArgs: Array +): string; + +export function unknownDirectiveArgMessage( + argName: string, + directiveName: string, + suggestedArgs: Array +): string; /** * Known argument names @@ -6,4 +20,4 @@ import { ValidationContext } from "../index"; * A GraphQL field is only valid if all supplied arguments are defined by * that field. */ -export function KnownArgumentNames(context: ValidationContext): any; +export function KnownArgumentNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/KnownDirectives.d.ts b/types/graphql/validation/rules/KnownDirectives.d.ts index 40e58ce0c3..179e65b9f7 100644 --- a/types/graphql/validation/rules/KnownDirectives.d.ts +++ b/types/graphql/validation/rules/KnownDirectives.d.ts @@ -1,4 +1,9 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unknownDirectiveMessage(directiveName: string): string; + +export function misplacedDirectiveMessage(directiveName: string, location: string): string; /** * Known directives @@ -6,4 +11,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if all `@directives` are known by the * schema and legally positioned. */ -export function KnownDirectives(context: ValidationContext): any; +export function KnownDirectives(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/KnownFragmentNames.d.ts b/types/graphql/validation/rules/KnownFragmentNames.d.ts index c5fa899995..40405f67dd 100644 --- a/types/graphql/validation/rules/KnownFragmentNames.d.ts +++ b/types/graphql/validation/rules/KnownFragmentNames.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unknownFragmentMessage(fragName: string): string; /** * Known fragment names @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if all `...Fragment` fragment spreads refer * to fragments defined in the same document. */ -export function KnownFragmentNames(context: ValidationContext): any; +export function KnownFragmentNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/KnownTypeNames.d.ts b/types/graphql/validation/rules/KnownTypeNames.d.ts index ab8abce9d5..6bef3661f9 100644 --- a/types/graphql/validation/rules/KnownTypeNames.d.ts +++ b/types/graphql/validation/rules/KnownTypeNames.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unknownTypeMessage(typeName: string, suggestedTypes: Array): string; /** * Known type names @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if referenced types (specifically * variable definitions and fragment conditions) are defined by the type schema. */ -export function KnownTypeNames(context: ValidationContext): any; +export function KnownTypeNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/LoneAnonymousOperation.d.ts b/types/graphql/validation/rules/LoneAnonymousOperation.d.ts index f281df2bce..881814c4d2 100644 --- a/types/graphql/validation/rules/LoneAnonymousOperation.d.ts +++ b/types/graphql/validation/rules/LoneAnonymousOperation.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function anonOperationNotAloneMessage(): string; /** * Lone anonymous operation @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if when it contains an anonymous operation * (the query short-hand) that it contains only that one operation definition. */ -export function LoneAnonymousOperation(context: ValidationContext): any; +export function LoneAnonymousOperation(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/NoFragmentCycles.d.ts b/types/graphql/validation/rules/NoFragmentCycles.d.ts index 4cce233cd5..f119c5a487 100644 --- a/types/graphql/validation/rules/NoFragmentCycles.d.ts +++ b/types/graphql/validation/rules/NoFragmentCycles.d.ts @@ -1,3 +1,6 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; -export function NoFragmentCycles(context: ValidationContext): any; +export function cycleErrorMessage(fragName: string, spreadNames: Array): string; + +export function NoFragmentCycles(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/NoUndefinedVariables.d.ts b/types/graphql/validation/rules/NoUndefinedVariables.d.ts index 418e3cf2b5..f340b41ad8 100644 --- a/types/graphql/validation/rules/NoUndefinedVariables.d.ts +++ b/types/graphql/validation/rules/NoUndefinedVariables.d.ts @@ -1,4 +1,8 @@ -import { ValidationContext } from "../index"; +import Maybe from "../../tsutils/Maybe"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function undefinedVarMessage(varName: string, opName: Maybe): string; /** * No undefined variables @@ -6,4 +10,4 @@ import { ValidationContext } from "../index"; * A GraphQL operation is only valid if all variables encountered, both directly * and via fragment spreads, are defined by that operation. */ -export function NoUndefinedVariables(context: ValidationContext): any; +export function NoUndefinedVariables(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/NoUnusedFragments.d.ts b/types/graphql/validation/rules/NoUnusedFragments.d.ts index 7a099e66be..6f757c16c2 100644 --- a/types/graphql/validation/rules/NoUnusedFragments.d.ts +++ b/types/graphql/validation/rules/NoUnusedFragments.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unusedFragMessage(fragName: string): string; /** * No unused fragments @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if all fragment definitions are spread * within operations, or spread within other fragments spread within operations. */ -export function NoUnusedFragments(context: ValidationContext): any; +export function NoUnusedFragments(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/NoUnusedVariables.d.ts b/types/graphql/validation/rules/NoUnusedVariables.d.ts index 53692ed494..1846995a1f 100644 --- a/types/graphql/validation/rules/NoUnusedVariables.d.ts +++ b/types/graphql/validation/rules/NoUnusedVariables.d.ts @@ -1,4 +1,8 @@ -import { ValidationContext } from "../index"; +import Maybe from "../../tsutils/Maybe"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function unusedVariableMessage(varName: string, opName: Maybe): string; /** * No unused variables @@ -6,4 +10,4 @@ import { ValidationContext } from "../index"; * A GraphQL operation is only valid if all variables defined by an operation * are used, either directly or within a spread fragment. */ -export function NoUnusedVariables(context: ValidationContext): any; +export function NoUnusedVariables(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/OverlappingFieldsCanBeMerged.d.ts b/types/graphql/validation/rules/OverlappingFieldsCanBeMerged.d.ts index 302617386b..1dfa62a089 100644 --- a/types/graphql/validation/rules/OverlappingFieldsCanBeMerged.d.ts +++ b/types/graphql/validation/rules/OverlappingFieldsCanBeMerged.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function fieldsConflictMessage(responseName: string, reason: ConflictReasonMessage): string; /** * Overlapping fields can be merged @@ -7,4 +10,10 @@ import { ValidationContext } from "../index"; * fragments) either correspond to distinct response names or can be merged * without ambiguity. */ -export function OverlappingFieldsCanBeMerged(context: ValidationContext): any; +export function OverlappingFieldsCanBeMerged(context: ValidationContext): ASTVisitor; + +// Field name and reason. +type ConflictReason = [string, string]; + +// Reason is a string, or a nested list of conflicts. +type ConflictReasonMessage = string | Array; diff --git a/types/graphql/validation/rules/PossibleFragmentSpreads.d.ts b/types/graphql/validation/rules/PossibleFragmentSpreads.d.ts index e9e10aca14..f318cb189e 100644 --- a/types/graphql/validation/rules/PossibleFragmentSpreads.d.ts +++ b/types/graphql/validation/rules/PossibleFragmentSpreads.d.ts @@ -1,4 +1,10 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function typeIncompatibleSpreadMessage(fragName: string, parentType: GraphQLType, fragType: GraphQLType): string; + +export function typeIncompatibleAnonSpreadMessage(parentType: GraphQLType, fragType: GraphQLType): string; /** * Possible fragment spread @@ -7,4 +13,4 @@ import { ValidationContext } from "../index"; * be true: if there is a non-empty intersection of the possible parent types, * and possible types which pass the type condition. */ -export function PossibleFragmentSpreads(context: ValidationContext): any; +export function PossibleFragmentSpreads(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/ProvidedNonNullArguments.d.ts b/types/graphql/validation/rules/ProvidedNonNullArguments.d.ts index 291a3ab5bc..e442b47f83 100644 --- a/types/graphql/validation/rules/ProvidedNonNullArguments.d.ts +++ b/types/graphql/validation/rules/ProvidedNonNullArguments.d.ts @@ -1,4 +1,10 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function missingFieldArgMessage(fieldName: string, argName: string, type: GraphQLType): string; + +export function missingDirectiveArgMessage(directiveName: string, argName: string, type: GraphQLType): string; /** * Provided required arguments @@ -6,4 +12,4 @@ import { ValidationContext } from "../index"; * A field or directive is only valid if all required (non-null) field arguments * have been provided. */ -export function ProvidedNonNullArguments(context: ValidationContext): any; +export function ProvidedNonNullArguments(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/ScalarLeafs.d.ts b/types/graphql/validation/rules/ScalarLeafs.d.ts index 8505cc2512..5bbf85043a 100644 --- a/types/graphql/validation/rules/ScalarLeafs.d.ts +++ b/types/graphql/validation/rules/ScalarLeafs.d.ts @@ -1,4 +1,10 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function noSubselectionAllowedMessage(fieldName: string, type: GraphQLType): string; + +export function requiredSubselectionMessage(fieldName: string, type: GraphQLType): string; /** * Scalar leafs @@ -6,4 +12,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is valid only if all leaf fields (fields without * sub selections) are of scalar or enum types. */ -export function ScalarLeafs(context: ValidationContext): any; +export function ScalarLeafs(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/SingleFieldSubscriptions.d.ts b/types/graphql/validation/rules/SingleFieldSubscriptions.d.ts index d6f8fa2c6b..54b1fec36a 100644 --- a/types/graphql/validation/rules/SingleFieldSubscriptions.d.ts +++ b/types/graphql/validation/rules/SingleFieldSubscriptions.d.ts @@ -1,8 +1,12 @@ -import { ValidationContext } from "../index"; +import Maybe from "../../tsutils/Maybe"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function singleFieldOnlyMessage(name: Maybe): string; /** * Subscriptions must only include one field. * * A GraphQL subscription is valid only if it contains a single root field. */ -export function SingleFieldSubscriptions(context: ValidationContext): any; +export function SingleFieldSubscriptions(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueArgumentNames.d.ts b/types/graphql/validation/rules/UniqueArgumentNames.d.ts index f4cc750b86..47a59c3362 100644 --- a/types/graphql/validation/rules/UniqueArgumentNames.d.ts +++ b/types/graphql/validation/rules/UniqueArgumentNames.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateArgMessage(argName: string): string; /** * Unique argument names @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL field or directive is only valid if all supplied arguments are * uniquely named. */ -export function UniqueArgumentNames(context: ValidationContext): any; +export function UniqueArgumentNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueDirectivesPerLocation.d.ts b/types/graphql/validation/rules/UniqueDirectivesPerLocation.d.ts index 80d4a252c6..f3d6327c23 100644 --- a/types/graphql/validation/rules/UniqueDirectivesPerLocation.d.ts +++ b/types/graphql/validation/rules/UniqueDirectivesPerLocation.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateDirectiveMessage(directiveName: string): string; /** * Unique directive names per location @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL document is only valid if all directives at a given location * are uniquely named. */ -export function UniqueDirectivesPerLocation(context: ValidationContext): any; +export function UniqueDirectivesPerLocation(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueFragmentNames.d.ts b/types/graphql/validation/rules/UniqueFragmentNames.d.ts index 525befc0a9..9a2554200c 100644 --- a/types/graphql/validation/rules/UniqueFragmentNames.d.ts +++ b/types/graphql/validation/rules/UniqueFragmentNames.d.ts @@ -1,8 +1,11 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateFragmentNameMessage(fragName: string): string; /** * Unique fragment names * * A GraphQL document is only valid if all defined fragments have unique names. */ -export function UniqueFragmentNames(context: ValidationContext): any; +export function UniqueFragmentNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueInputFieldNames.d.ts b/types/graphql/validation/rules/UniqueInputFieldNames.d.ts index f81fb25e5c..34d5b9845a 100644 --- a/types/graphql/validation/rules/UniqueInputFieldNames.d.ts +++ b/types/graphql/validation/rules/UniqueInputFieldNames.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateInputFieldMessage(fieldName: string): string; /** * Unique input field names @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL input object value is only valid if all supplied fields are * uniquely named. */ -export function UniqueInputFieldNames(context: ValidationContext): any; +export function UniqueInputFieldNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueOperationNames.d.ts b/types/graphql/validation/rules/UniqueOperationNames.d.ts index 5080307d4b..221b1187c2 100644 --- a/types/graphql/validation/rules/UniqueOperationNames.d.ts +++ b/types/graphql/validation/rules/UniqueOperationNames.d.ts @@ -1,8 +1,11 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateOperationNameMessage(operationName: string): string; /** * Unique operation names * * A GraphQL document is only valid if all defined operations have unique names. */ -export function UniqueOperationNames(context: ValidationContext): any; +export function UniqueOperationNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/UniqueVariableNames.d.ts b/types/graphql/validation/rules/UniqueVariableNames.d.ts index a0a029d165..d0aaf0404e 100644 --- a/types/graphql/validation/rules/UniqueVariableNames.d.ts +++ b/types/graphql/validation/rules/UniqueVariableNames.d.ts @@ -1,8 +1,11 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function duplicateVariableMessage(variableName: string): string; /** * Unique variable names * * A GraphQL operation is only valid if all its variables are uniquely named. */ -export function UniqueVariableNames(context: ValidationContext): any; +export function UniqueVariableNames(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/ValuesOfCorrectType.d.ts b/types/graphql/validation/rules/ValuesOfCorrectType.d.ts new file mode 100644 index 0000000000..09314835ad --- /dev/null +++ b/types/graphql/validation/rules/ValuesOfCorrectType.d.ts @@ -0,0 +1,16 @@ +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function badValueMessage(typeName: string, valueName: string, message?: string): string; + +export function requiredFieldMessage(typeName: string, fieldName: string, fieldTypeName: string): string; + +export function unknownFieldMessage(typeName: string, fieldName: string, message?: string): string; + +/** + * Value literals of correct type + * + * A GraphQL document is only valid if all value literals are of the type + * expected at their position. + */ +export function ValuesOfCorrectType(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/VariablesAreInputTypes.d.ts b/types/graphql/validation/rules/VariablesAreInputTypes.d.ts index 79846a3073..32472e15fd 100644 --- a/types/graphql/validation/rules/VariablesAreInputTypes.d.ts +++ b/types/graphql/validation/rules/VariablesAreInputTypes.d.ts @@ -1,4 +1,7 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; + +export function nonInputTypeOnVarMessage(variableName: string, typeName: string): string; /** * Variables are input types @@ -6,4 +9,4 @@ import { ValidationContext } from "../index"; * A GraphQL operation is only valid if all the variables it defines are of * input types (scalar, enum, or input object). */ -export function VariablesAreInputTypes(context: ValidationContext): any; +export function VariablesAreInputTypes(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/VariablesDefaultValueAllowed.d.ts b/types/graphql/validation/rules/VariablesDefaultValueAllowed.d.ts new file mode 100644 index 0000000000..1961eb645e --- /dev/null +++ b/types/graphql/validation/rules/VariablesDefaultValueAllowed.d.ts @@ -0,0 +1,13 @@ +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function defaultForRequiredVarMessage(varName: string, type: GraphQLType, guessType: GraphQLType): string; + +/** + * Variable's default value is allowed + * + * A GraphQL document is only valid if all variable default values are allowed + * due to a variable not being required. + */ +export function VariablesDefaultValueAllowed(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/rules/VariablesInAllowedPosition.d.ts b/types/graphql/validation/rules/VariablesInAllowedPosition.d.ts index bd302a73b4..f21ed5c7fb 100644 --- a/types/graphql/validation/rules/VariablesInAllowedPosition.d.ts +++ b/types/graphql/validation/rules/VariablesInAllowedPosition.d.ts @@ -1,6 +1,10 @@ -import { ValidationContext } from "../index"; +import ValidationContext from "../ValidationContext"; +import { ASTVisitor } from "../../language/visitor"; +import { GraphQLType } from "../../type/definition"; + +export function badVarPosMessage(varName: string, varType: GraphQLType, expectedType: GraphQLType): string; /** * Variables passed to field arguments conform to type */ -export function VariablesInAllowedPosition(context: ValidationContext): any; +export function VariablesInAllowedPosition(context: ValidationContext): ASTVisitor; diff --git a/types/graphql/validation/specifiedRules.d.ts b/types/graphql/validation/specifiedRules.d.ts index 5afc1a09e5..8e9815377f 100644 --- a/types/graphql/validation/specifiedRules.d.ts +++ b/types/graphql/validation/specifiedRules.d.ts @@ -1,6 +1,90 @@ -import { ValidationContext } from "./validate"; // It needs to check. +// Spec Section: "Executable Definitions" +import { ExecutableDefinitions } from "./rules/ExecutableDefinitions"; + +// Spec Section: "Operation Name Uniqueness" +import { UniqueOperationNames } from "./rules/UniqueOperationNames"; + +// Spec Section: "Lone Anonymous Operation" +import { LoneAnonymousOperation } from "./rules/LoneAnonymousOperation"; + +// Spec Section: "Subscriptions with Single Root Field" +import { SingleFieldSubscriptions } from "./rules/SingleFieldSubscriptions"; + +// Spec Section: "Fragment Spread Type Existence" +import { KnownTypeNames } from "./rules/KnownTypeNames"; + +// Spec Section: "Fragments on Composite Types" +import { FragmentsOnCompositeTypes } from "./rules/FragmentsOnCompositeTypes"; + +// Spec Section: "Variables are Input Types" +import { VariablesAreInputTypes } from "./rules/VariablesAreInputTypes"; + +// Spec Section: "Leaf Field Selections" +import { ScalarLeafs } from "./rules/ScalarLeafs"; + +// Spec Section: "Field Selections on Objects, Interfaces, and Unions Types" +import { FieldsOnCorrectType } from "./rules/FieldsOnCorrectType"; + +// Spec Section: "Fragment Name Uniqueness" +import { UniqueFragmentNames } from "./rules/UniqueFragmentNames"; + +// Spec Section: "Fragment spread target defined" +import { KnownFragmentNames } from "./rules/KnownFragmentNames"; + +// Spec Section: "Fragments must be used" +import { NoUnusedFragments } from "./rules/NoUnusedFragments"; + +// Spec Section: "Fragment spread is possible" +import { PossibleFragmentSpreads } from "./rules/PossibleFragmentSpreads"; + +// Spec Section: "Fragments must not form cycles" +import { NoFragmentCycles } from "./rules/NoFragmentCycles"; + +// Spec Section: "Variable Uniqueness" +import { UniqueVariableNames } from "./rules/UniqueVariableNames"; + +// Spec Section: "All Variable Used Defined" +import { NoUndefinedVariables } from "./rules/NoUndefinedVariables"; + +// Spec Section: "All Variables Used" +import { NoUnusedVariables } from "./rules/NoUnusedVariables"; + +// Spec Section: "Directives Are Defined" +import { KnownDirectives } from "./rules/KnownDirectives"; + +// Spec Section: "Directives Are Unique Per Location" +import { UniqueDirectivesPerLocation } from "./rules/UniqueDirectivesPerLocation"; + +// Spec Section: "Argument Names" +import { KnownArgumentNames } from "./rules/KnownArgumentNames"; + +// Spec Section: "Argument Uniqueness" +import { UniqueArgumentNames } from "./rules/UniqueArgumentNames"; + +// Spec Section: "Value Type Correctness" +import { ValuesOfCorrectType } from "./rules/ValuesOfCorrectType"; + +// Spec Section: "Argument Optionality" +import { ProvidedNonNullArguments } from "./rules/ProvidedNonNullArguments"; + +// Spec Section: "Variables Default Value Is Allowed" +import { VariablesDefaultValueAllowed } from "./rules/VariablesDefaultValueAllowed"; + +// Spec Section: "All Variable Usages Are Allowed" +import { VariablesInAllowedPosition } from "./rules/VariablesInAllowedPosition"; + +// Spec Section: "Field Selection Merging" +import { OverlappingFieldsCanBeMerged } from "./rules/OverlappingFieldsCanBeMerged"; + +// Spec Section: "Input Object Field Uniqueness" +import { UniqueInputFieldNames } from "./rules/UniqueInputFieldNames"; + +import ValidationContext from "./ValidationContext"; /** * This set includes all validation rules defined by the GraphQL spec. + * + * The order of the rules in this list has been adjusted to lead to the + * most clear output when encountering multiple validation errors. */ export const specifiedRules: Array<(context: ValidationContext) => any>; diff --git a/types/graphql/validation/validate.d.ts b/types/graphql/validation/validate.d.ts index c60c3bf072..9a5092d258 100644 --- a/types/graphql/validation/validate.d.ts +++ b/types/graphql/validation/validate.d.ts @@ -1,23 +1,7 @@ import { GraphQLError } from "../error"; -import { - DocumentNode, - OperationDefinitionNode, - VariableNode, - SelectionSetNode, - FragmentSpreadNode, - FragmentDefinitionNode, -} from "../language/ast"; +import { DocumentNode } from "../language/ast"; import { GraphQLSchema } from "../type/schema"; -import { - GraphQLInputType, - GraphQLOutputType, - GraphQLCompositeType, - GraphQLField, - GraphQLArgument, -} from "../type/definition"; -import { GraphQLDirective } from "../type/directives"; import { TypeInfo } from "../utilities/TypeInfo"; -import { specifiedRules } from "./specifiedRules"; /** * Implements the "Validation" section of the spec. @@ -31,62 +15,13 @@ import { specifiedRules } from "./specifiedRules"; * Each validation rules is a function which returns a visitor * (see the language/visitor API). Visitor methods are expected to return * GraphQLErrors, or Arrays of GraphQLErrors when invalid. - */ -export function validate(schema: GraphQLSchema, ast: DocumentNode, rules?: any[]): GraphQLError[]; - -/** - * This uses a specialized visitor which runs multiple visitors in parallel, - * while maintaining the visitor skip and break API. * - * @internal + * Optionally a custom TypeInfo instance may be provided. If not provided, one + * will be created from the provided schema. */ -export function visitUsingRules( +export function validate( schema: GraphQLSchema, - typeInfo: TypeInfo, - documentAST: DocumentNode, - rules: any[] -): GraphQLError[]; - -export type NodeWithSelectionSet = OperationDefinitionNode | FragmentDefinitionNode; -export interface VariableUsage { - node: VariableNode; - type: GraphQLInputType; -} - -/** - * An instance of this class is passed as the "this" context to all validators, - * allowing access to commonly useful contextual information from within a - * validation rule. - */ -export class ValidationContext { - constructor(schema: GraphQLSchema, ast: DocumentNode, typeInfo: TypeInfo); - reportError(error: GraphQLError): void; - - getErrors(): GraphQLError[]; - - getSchema(): GraphQLSchema; - - getDocument(): DocumentNode; - - getFragment(name: string): FragmentDefinitionNode; - - getFragmentSpreads(node: SelectionSetNode): FragmentSpreadNode[]; - - getRecursivelyReferencedFragments(operation: OperationDefinitionNode): FragmentDefinitionNode[]; - - getVariableUsages(node: NodeWithSelectionSet): VariableUsage[]; - - getRecursiveVariableUsages(operation: OperationDefinitionNode): VariableUsage[]; - - getType(): GraphQLOutputType; - - getParentType(): GraphQLCompositeType; - - getInputType(): GraphQLInputType; - - getFieldDef(): GraphQLField; - - getDirective(): GraphQLDirective; - - getArgument(): GraphQLArgument; -} + ast: DocumentNode, + rules?: ReadonlyArray, + typeInfo?: TypeInfo +): ReadonlyArray; diff --git a/types/grid-styled/index.d.ts b/types/grid-styled/index.d.ts index dec3fd34f2..af969b0cec 100644 --- a/types/grid-styled/index.d.ts +++ b/types/grid-styled/index.d.ts @@ -1,13 +1,12 @@ -// Type definitions for grid-styled 3.2 +// Type definitions for grid-styled 4.1 // Project: https://github.com/jxnblk/grid-styled // Definitions by: Anton Vasin +// Victor Orlov +// Louis Hache // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.6 -export type Diff = ({ [P in T]: P } & - { [P in U]: never } & { [x: string]: never })[T]; - -export type Omit = Pick>; +export type Omit = Pick; import { ComponentClass } from "react"; import { StyledComponentClass } from "styled-components"; @@ -15,44 +14,45 @@ import { StyledComponentClass } from "styled-components"; export type ResponsiveProp = number | string | Array; export interface CommonProps { - width: ResponsiveProp; - fontSize: ResponsiveProp; - color: ResponsiveProp; - bg: ResponsiveProp; - m: ResponsiveProp; - mt: ResponsiveProp; - mr: ResponsiveProp; - mb: ResponsiveProp; - ml: ResponsiveProp; - mx: ResponsiveProp; - my: ResponsiveProp; - p: ResponsiveProp; - pt: ResponsiveProp; - pr: ResponsiveProp; - pb: ResponsiveProp; - pl: ResponsiveProp; - px: ResponsiveProp; - py: ResponsiveProp; - theme: any; + width?: ResponsiveProp; + fontSize?: ResponsiveProp; + color?: ResponsiveProp; + bg?: ResponsiveProp; + m?: ResponsiveProp; + mt?: ResponsiveProp; + mr?: ResponsiveProp; + mb?: ResponsiveProp; + ml?: ResponsiveProp; + mx?: ResponsiveProp; + my?: ResponsiveProp; + p?: ResponsiveProp; + pt?: ResponsiveProp; + pr?: ResponsiveProp; + pb?: ResponsiveProp; + pl?: ResponsiveProp; + px?: ResponsiveProp; + py?: ResponsiveProp; + theme?: any; } export interface BoxProps extends Omit, "width" | "wrap" | "is"> { - flex: ResponsiveProp; - order: ResponsiveProp; - is: string | ComponentClass; + flex?: ResponsiveProp; + order?: ResponsiveProp; + is?: string | ComponentClass; + alignSelf?: ResponsiveProp; } export interface FlexProps extends BoxProps { - alignItems: ResponsiveProp; - justifyContent: ResponsiveProp; - flexDirection: ResponsiveProp; - flexWrap: ResponsiveProp; + alignItems?: ResponsiveProp; + justifyContent?: ResponsiveProp; + flexDirection?: ResponsiveProp; + flexWrap?: ResponsiveProp; // legacy aliases https://github.com/jxnblk/styled-system/releases/tag/v2.0.0 - justify: ResponsiveProp; - align: ResponsiveProp; - wrap: ResponsiveProp | boolean; + justify?: ResponsiveProp; + align?: ResponsiveProp; + wrap?: ResponsiveProp | boolean; } export type BoxComponent = StyledComponentClass< @@ -67,14 +67,14 @@ export type FlexComponent = StyledComponentClass< export interface Theme { breakpoints: string[]; - space: number[]; - fontSizes: number[]; + space?: number[]; + fontSizes?: number[]; } export const Box: BoxComponent; export const Flex: FlexComponent; export const theme: Theme; export type DivProps = Omit, "ref"> & { - innerRef: (el: HTMLDivElement) => any; + innerRef?: (el: HTMLDivElement) => any; }; export const div: ComponentClass; diff --git a/types/gulp-change/gulp-change-tests.ts b/types/gulp-change/gulp-change-tests.ts new file mode 100644 index 0000000000..5a52062951 --- /dev/null +++ b/types/gulp-change/gulp-change-tests.ts @@ -0,0 +1,17 @@ +import change = require('gulp-change'); + +change(); // $ExpectError +change(1); // $ExpectError + +function performChange(content: string): string { + return content.replace(/foo/g, 'FOO'); +} + +change(performChange); // $ExpectType MapStream + +function performChangeAsync(content: string, done: (err: any, content: string) => any): void { + content.replace(/foo/g, 'FOO'); + done(null, content); +} + +change(performChangeAsync); // $ExpectType MapStream diff --git a/types/gulp-change/index.d.ts b/types/gulp-change/index.d.ts new file mode 100644 index 0000000000..2220100fd9 --- /dev/null +++ b/types/gulp-change/index.d.ts @@ -0,0 +1,16 @@ +// Type definitions for gulp-change 1.0 +// Project: https://github.com/PoliteJS/gulp-change +// Definitions by: Aankhen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import * as eventStream from "event-stream"; + +export = GulpChange; + +declare function GulpChange(transformer: GulpChange.ChangeFunction): eventStream.MapStream; + +declare namespace GulpChange { + type Callback = (err: any, content: string) => any; + + type ChangeFunction = (content: string, callback: Callback) => string | void; +} diff --git a/types/gulp-change/tsconfig.json b/types/gulp-change/tsconfig.json new file mode 100644 index 0000000000..1b736a1975 --- /dev/null +++ b/types/gulp-change/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gulp-change-tests.ts" + ] +} diff --git a/types/gulp-change/tslint.json b/types/gulp-change/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gulp-change/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/gulp-image-resize/gulp-image-resize-tests.ts b/types/gulp-image-resize/gulp-image-resize-tests.ts new file mode 100644 index 0000000000..46360827c1 --- /dev/null +++ b/types/gulp-image-resize/gulp-image-resize-tests.ts @@ -0,0 +1,40 @@ +import resize = require('gulp-image-resize'); + +resize(); // $ExpectType Transform +resize(undefined); +resize("1"); // $ExpectError + +resize({ // $ExpectType Transform + width: 100, + height: 100, + crop: true, + upscale: false +}); + +resize({ + widt: 5 // $ExpectError +}); + +resize({ + width: undefined, + height: undefined, + upscale: undefined, + crop: undefined, + gravity: undefined, + quality: undefined, + format: undefined, + filter: undefined, + sharpen: undefined, + samplingFactor: undefined, + noProfile: undefined, + interlace: undefined, + imageMagick: undefined, + background: undefined, + flatten: undefined, + percentage: undefined, + cover: undefined +}); + +resize({ format: 'jpeg' }); +resize({ width: 100 }); +resize({ percentage: 50 }); diff --git a/types/gulp-image-resize/index.d.ts b/types/gulp-image-resize/index.d.ts new file mode 100644 index 0000000000..3166b0d9b9 --- /dev/null +++ b/types/gulp-image-resize/index.d.ts @@ -0,0 +1,38 @@ +// Type definitions for gulp-image-resize 0.13 +// Project: https://github.com/scalableminds/gulp-image-resize +// Definitions by: Aankhen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import * as stream from "stream"; +import * as gm from "gm"; + +export = GulpImageResize; + +declare function GulpImageResize(options?: GulpImageResize.Options): stream.Transform; + +declare namespace GulpImageResize { + type SamplingFactor = [number, number]; + + interface Options { + width?: number; + height?: number; + upscale?: boolean; + crop?: boolean; + gravity?: gm.GravityDirection; + quality?: number; + format?: string; + filter?: gm.FilterType; + sharpen?: boolean | string; + samplingFactor?: SamplingFactor; + noProfile?: boolean; + interlace?: boolean; + imageMagick?: boolean; + background?: string; + flatten?: boolean; + percentage?: number; + cover?: boolean; + } +} diff --git a/types/gulp-image-resize/tsconfig.json b/types/gulp-image-resize/tsconfig.json new file mode 100644 index 0000000000..7f26af6c84 --- /dev/null +++ b/types/gulp-image-resize/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gulp-image-resize-tests.ts" + ] +} diff --git a/types/gulp-image-resize/tslint.json b/types/gulp-image-resize/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gulp-image-resize/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/gulp-image/gulp-image-tests.ts b/types/gulp-image/gulp-image-tests.ts new file mode 100644 index 0000000000..6d94c46921 --- /dev/null +++ b/types/gulp-image/gulp-image-tests.ts @@ -0,0 +1,28 @@ +import image = require('gulp-image'); + +image(false); // $ExpectError + +image(); // $ExpectType Transform +image({}); +image({ + pngquant: true, + optipng: false, + zopflipng: true, + jpegRecompress: false, + mozjpeg: true, + guetzli: false, + gifsicle: true, + svgo: true, + concurrent: 10, + quiet: true // defaults to false +}); +image({ + optipng: ['-i 1', '-strip all', '-fix', '-o7', '-force'], + pngquant: ['--speed=1', '--force', 256], + zopflipng: ['-y', '--lossy_8bit', '--lossy_transparent'], + jpegRecompress: ['--strip', '--quality', 'medium', '--min', 40, '--max', 80], + mozjpeg: ['-optimize', '-progressive'], + guetzli: ['--quality', 85], + gifsicle: ['--optimize'], + svgo: ['--enable', 'cleanupIDs', '--disable', 'convertColors'] +}); diff --git a/types/gulp-image/index.d.ts b/types/gulp-image/index.d.ts new file mode 100644 index 0000000000..d46d68f3ab --- /dev/null +++ b/types/gulp-image/index.d.ts @@ -0,0 +1,31 @@ +// Type definitions for gulp-image 4.3 +// Project: https://github.com/1000ch/gulp-image#readme +// Definitions by: Aankhen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import stream = require("stream"); + +export = GulpImage; + +declare function GulpImage(options?: GulpImage.Options): stream.Transform; + +declare namespace GulpImage { + type OptimizerSetting = boolean + | any[]; + + interface Options { + pngquant?: OptimizerSetting; + optipng?: OptimizerSetting; + zopflipng?: OptimizerSetting; + jpegRecompress?: OptimizerSetting; + mozjpeg?: OptimizerSetting; + guetzli?: OptimizerSetting; + gifsicle?: OptimizerSetting; + svgo?: OptimizerSetting; + concurrent?: number; + quiet?: boolean; + } +} diff --git a/types/gulp-image/tsconfig.json b/types/gulp-image/tsconfig.json new file mode 100644 index 0000000000..a9d788e360 --- /dev/null +++ b/types/gulp-image/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gulp-image-tests.ts" + ] +} diff --git a/types/gulp-image/tslint.json b/types/gulp-image/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gulp-image/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/gulp-mustache/gulp-mustache-tests.ts b/types/gulp-mustache/gulp-mustache-tests.ts index d8285370e7..d7fb994a58 100644 --- a/types/gulp-mustache/gulp-mustache-tests.ts +++ b/types/gulp-mustache/gulp-mustache-tests.ts @@ -4,6 +4,33 @@ import { Transform } from "stream"; mustache({ // $ExpectType Transform msg: "Hello Gulp!" }); +mustache({ + name: "Chris", + value: 10000, + taxed_value: 10000 - (10000 * 0.4), + in_ca: true +}); +mustache({ + repo: [ + { name: "resque" }, + { name: "hub" }, + { name: "rip" } + ] +}); +mustache({ + name: "Willy", + wrapped: () => { + return (text: string, render: (arg: string) => string) => { + return `${render(text)}`; + }; + } +}); +mustache({ + "person?": { name: "Jon" } +}); +mustache({ + repo: [] +}); mustache({ // $ExpectType Transform msg: "Hello Gulp!", diff --git a/types/gulp-mustache/index.d.ts b/types/gulp-mustache/index.d.ts index 13e0198558..ba6b22df9d 100644 --- a/types/gulp-mustache/index.d.ts +++ b/types/gulp-mustache/index.d.ts @@ -11,7 +11,7 @@ declare namespace GulpMustache { type View = Hash | string | undefined; interface Hash { - [key: string]: string; + [key: string]: any; } interface Options { diff --git a/types/gulp-responsive-images/gulp-responsive-images-tests.ts b/types/gulp-responsive-images/gulp-responsive-images-tests.ts new file mode 100644 index 0000000000..63957ec047 --- /dev/null +++ b/types/gulp-responsive-images/gulp-responsive-images-tests.ts @@ -0,0 +1,63 @@ +import gulpResponsiveImages = require('gulp-responsive-images'); + +gulpResponsiveImages(); // $ExpectError + +gulpResponsiveImages({}); // $ExpectType Transform + +gulpResponsiveImages({ 1: "abcd" }); // $ExpectError + +gulpResponsiveImages({ + 'hero.png': [ + { + } + ] +} +); + +gulpResponsiveImages({ + 'hero.png': [ + { + crop: false, + gravity: 'Center', + height: 100, + overwrite: true, + quality: 100, + sharpen: false, + suffix: '-100', + upscale: false, + width: 100 + } + ] +} +); + +gulpResponsiveImages({ + 'hero.png': [ + { + format: "jpeg", + rename: "image.jpg", + percentage: 50 + } + ] +} +); + +gulpResponsiveImages({ + 'hero.png': [ + { + crop: undefined, + gravity: undefined, + height: undefined, + overwrite: undefined, + quality: undefined, + sharpen: undefined, + suffix: undefined, + upscale: undefined, + width: undefined, + format: undefined, + rename: undefined, + percentage: undefined + } + ] +} +); diff --git a/types/gulp-responsive-images/index.d.ts b/types/gulp-responsive-images/index.d.ts new file mode 100644 index 0000000000..3b3707f024 --- /dev/null +++ b/types/gulp-responsive-images/index.d.ts @@ -0,0 +1,43 @@ +// Type definitions for gulp-responsive-images 0.0 +// Project: https://github.com/dcgauld/gulp-responsive-images#readme +// Definitions by: Aankhen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +import * as stream from "stream"; +import * as gm from "gm"; +import { ParsedPath, Options as RenameOptions } from "gulp-rename"; + +export = GulpResponsiveImage; + +declare function GulpResponsiveImage(configs: GulpResponsiveImage.Matchers): stream.Transform; + +declare namespace GulpResponsiveImage { + type SamplingFactor = [number, number]; + + type Rename = string + | ((path: ParsedPath) => any) + | RenameOptions; + + interface Settings { + crop?: boolean; + format?: string; + gravity?: gm.GravityDirection; + overwrite?: boolean; + quality?: number; + rename?: Rename; + percentage?: number; + sharpen?: boolean; + upscale?: boolean; + filter?: gm.FilterType; + height?: number; + width?: number; + samplingFactor?: SamplingFactor; + suffix?: string; + } + + interface Matchers { + [index: string]: ReadonlyArray; + } +} diff --git a/types/gulp-responsive-images/tsconfig.json b/types/gulp-responsive-images/tsconfig.json new file mode 100644 index 0000000000..2c4c0aa75b --- /dev/null +++ b/types/gulp-responsive-images/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gulp-responsive-images-tests.ts" + ] +} diff --git a/types/gulp-responsive-images/tslint.json b/types/gulp-responsive-images/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gulp-responsive-images/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/gulp-svgmin/gulp-svgmin-tests.ts b/types/gulp-svgmin/gulp-svgmin-tests.ts new file mode 100644 index 0000000000..2d3d6e7e44 --- /dev/null +++ b/types/gulp-svgmin/gulp-svgmin-tests.ts @@ -0,0 +1,51 @@ +import svgmin = require("gulp-svgmin"); +import { basename, extname } from "path"; + +// From tests + +svgmin({ plugins: [] }); +svgmin({ plugins: [{ removeDoctype: false }] }); +svgmin({ plugins: [{ removeDoctype: false }, { removeComments: false }] }); + +// From examples given in README + +// $ExpectType Transform +svgmin(); + +// $ExpectType Transform +svgmin({ + plugins: [{ + removeDoctype: false + }, { + removeComments: false + }, { + cleanupNumericValues: { + floatPrecision: 2 + } + }, { + convertColors: { + names2hex: false, + rgb2hex: false + } + }] +}); + +// $ExpectType Transform +svgmin({ + js2svg: { + pretty: true + } +}); + +// $ExpectType Transform +svgmin(function getOptions(file) { + const prefix = basename(file.relative, extname(file.relative)); + return { + plugins: [{ + cleanupIDs: { + prefix: prefix + '-', + minify: true + } + }] + }; +}); diff --git a/types/gulp-svgmin/index.d.ts b/types/gulp-svgmin/index.d.ts new file mode 100644 index 0000000000..08c84bc930 --- /dev/null +++ b/types/gulp-svgmin/index.d.ts @@ -0,0 +1,17 @@ +// Type definitions for gulp-svgmin 1.2 +// Project: https://github.com/ben-eb/gulp-svgmin +// Definitions by: Aankhen +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 +// (required because svgo specifies 2.2) + +/// + +import SVGO = require("svgo"); +import { Transform } from "stream"; +import * as File from "vinyl"; + +export = GulpSvgmin; + +declare function GulpSvgmin(cb: (file: File) => SVGO.Options): Transform; +declare function GulpSvgmin(options?: SVGO.Options): Transform; diff --git a/types/gulp-svgmin/tsconfig.json b/types/gulp-svgmin/tsconfig.json new file mode 100644 index 0000000000..1d94db7181 --- /dev/null +++ b/types/gulp-svgmin/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "gulp-svgmin-tests.ts" + ] +} diff --git a/types/gulp-svgmin/tslint.json b/types/gulp-svgmin/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/gulp-svgmin/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/handlebars/handlebars-tests.ts b/types/handlebars/handlebars-tests.ts index 95342c2e63..1ec2528db3 100644 --- a/types/handlebars/handlebars-tests.ts +++ b/types/handlebars/handlebars-tests.ts @@ -1,8 +1,8 @@ -import Handlebars = require('handlebars'); +//import Handlebars = require('handlebars'); +import * as Handlerbars from 'handlebars'; - -var context = { +const context = { author: { firstName: 'Alan', lastName: 'Johnson' }, body: 'I Love Handlebars', comments: [{ @@ -20,65 +20,61 @@ Handlebars.registerHelper('agree_button', function() { ); }); -var source = '

Hello, my name is {{name}}. I am from {{hometown}}. I have ' + +const source1 = '

Hello, my name is {{name}}. I am from {{hometown}}. I have ' + '{{kids.length}} kids:

' + '
    {{#kids}}
  • {{name}} is {{age}}
  • {{/kids}}
'; -var template = Handlebars.compile(source); -var data = { 'name': 'Alan', 'hometown': 'Somewhere, TX', - 'kids': [{'name': 'Jimmy', 'age': '12'}, {'name': 'Sally', 'age': '4'}]}; -var result = template(data); +const template1 = Handlebars.compile(source1); +template1({ name: "Alan", hometown: "Somewhere, TX", kids: [{name: "Jimmy", age: 12}, {name: "Sally", age: 4}]}); Handlebars.registerHelper('link_to', (context: typeof post) => { return '' + context.body + ''; }); - -var post = { url: '/hello-world', body: 'Hello World!' }; -var context2 = { posts: [post] }; -var source2 = '
    {{#posts}}
  • {{{link_to this}}}
  • {{/posts}}
'; - -var template2: HandlebarsTemplateDelegate<{ posts: { url: string, body: string }[] }> = Handlebars.compile(source2); +const post = { url: "/hello-world", body: "Hello World!" }; +const context2 = { posts: [post] }; +const source2 = '
    {{#posts}}
  • {{{link_to this}}}
  • {{/posts}}
'; +const template2: HandlebarsTemplateDelegate<{ posts: { url: string, body: string }[] }> = Handlebars.compile(source2); template2(context2); Handlebars.registerHelper('link_to', (title: string, context: typeof post) => { return '' + title + '!'; }); - -var context3 = { posts: [{url: '/hello-world', body: 'Hello World!'}] }; -var source3 = '
    {{#posts}}
  • {{{link_to "Post" this}}}
  • {{/posts}}
'; -var template3 = Handlebars.compile(source3); +const context3 = { posts: [{url: '/hello-world', body: 'Hello World!'}] }; +const source3 = '
    {{#posts}}
  • {{{link_to "Post" this}}}
  • {{/posts}}
'; +const template3 = Handlebars.compile(source3); template3(context3); -var source4 = '
    {{#people}}
  • {{#link}}{{name}}{{/link}}
  • {{/people}}
'; +const source4 = '
    {{#people}}
  • {{#link}}{{name}}{{/link}}
  • {{/people}}
'; Handlebars.registerHelper('link', function(context: any) { return '' + context.fn(this) + ''; }); -var template4 = Handlebars.compile<{ people: { name: string, id: number }[] }>(source4); -var data2 = { 'people': [ +const template4 = Handlebars.compile<{ people: { name: string, id: number }[] }>(source4); +const data2 = { 'people': [ { 'name': 'Alan', 'id': 1 }, { 'name': 'Yehuda', 'id': 2 } ]}; template4(data2); -var source5 = '
    {{#people}}
  • {{> link}}
  • {{/people}}
'; +const source5 = '
    {{#people}}
  • {{> link}}
  • {{/people}}
'; Handlebars.registerPartial('link', '{{name}}'); -var template5 = Handlebars.compile(source5); -var data3 = { 'people': [ +const template5 = Handlebars.compile(source5); +const data3 = { 'people': [ { 'name': 'Alan', 'id': 1 }, { 'name': 'Yehuda', 'id': 2 } ]}; template5(data3); -Handlebars.registerHelper('list', (items: any, fn: (item: any) => string) => { - var out = '
    '; - for(var i=0, l=items.length; i' + fn(items[i]) + ''; - } - return out + '
'; -}); -Handlebars.registerHelper('fullName', (person: typeof context.author) => { - return person.firstName + ' ' + person.lastName; +const source6 = '{{#list nav}}{{title}}{{/list}}'; +const template6 = Handlebars.compile(source6); +Handlebars.registerHelper('list', (context, options: Handlebars.HelperOptions) => { + let ret = "
    "; + for(let i=0, j=context.length; i" + options.fn(context[i]) + ""; + } + return ret + "
"; }); +template6([{url:"", title:""}]) -var escapedExpression = Handlebars.Utils.escapeExpression(''); + +const escapedExpression = Handlebars.Utils.escapeExpression(''); Handlebars.helpers !== undefined; diff --git a/types/handlebars/index.d.ts b/types/handlebars/index.d.ts index eb5958f6db..351d98fb10 100644 --- a/types/handlebars/index.d.ts +++ b/types/handlebars/index.d.ts @@ -1,15 +1,48 @@ -// Type definitions for Handlebars v4.0.5 +// Type definitions for Handlebars v4.0.11 // Project: http://handlebarsjs.com/ -// Definitions by: Boris Yankov +// Definitions by: Boris Yankov , Sergei Dorogin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 declare namespace Handlebars { - export function registerHelper(name: string, fn: Function, inverse?: boolean): void; - export function registerHelper(name: Object): void; - export function registerPartial(name: string, str: any): void; + export interface TemplateDelegate { + (context: T, options?: RuntimeOptions): string; + } + + export type Template = TemplateDelegate|string; + + export interface RuntimeOptions { + partial?: boolean; + depths?: any[]; + helpers?: { [name: string]: Function }; + partials?: { [name: string]: HandlebarsTemplateDelegate }; + decorators?: { [name: string]: Function }; + data?: any; + blockParams?: any[]; + } + + export interface HelperOptions { + fn: TemplateDelegate; + inverse: TemplateDelegate; + hash: any; + data?: any; + } + + export interface HelperDelegate { + (context?: any, arg1?: any, arg2?: any, arg3?: any, arg4?: any, arg5?: any, options?: HelperOptions): any; + } + export interface HelperDeclareSpec { + [key: string]: HelperDelegate; + } + + export function registerHelper(name: string, fn: HelperDelegate): void; + export function registerHelper(name: HelperDeclareSpec): void; export function unregisterHelper(name: string): void; + + export function registerPartial(name: string, fn: Template): void; export function unregisterPartial(name: string): void; + + // TODO: replace Function with actual signature export function registerDecorator(name: string, fn: Function): void; export function unregisterDecorator(name: string): void; @@ -25,23 +58,36 @@ declare namespace Handlebars { export function create(): typeof Handlebars; - export var SafeString: typeof hbs.SafeString; - export var escapeExpression: typeof hbs.Utils.escapeExpression; - export var Utils: typeof hbs.Utils; - export var logger: Logger; - export var templates: HandlebarsTemplates; - export var helpers: { [name: string]: Function }; - export var partials: { [name: string]: any }; - export var decorators: { [name: string]: Function }; - - export function registerDecorator(name: string, fn: Function): void; - export function registerDecorator(obj: {[name: string] : Function}): void; - export function unregisterDecorator(name: string): void; + export const escapeExpression: typeof Utils.escapeExpression; + //export const Utils: typeof hbs.Utils; + export const logger: Logger; + export const templates: HandlebarsTemplates; + export const helpers: { [name: string]: HelperDelegate }; + export const partials: { [name: string]: any }; + // TODO: replace Function with actual signature + export const decorators: { [name: string]: Function }; export function noConflict(): typeof Handlebars; - export module AST { - export var helpers: hbs.AST.helpers; + export class SafeString { + constructor(str: string); + toString(): string; + toHTML(): string; + } + + export namespace Utils { + export function escapeExpression(str: string): string; + export function createFrame(object: any): any; + export function blockParams(obj: any[], ids: any[]): any[]; + export function isEmpty(obj: any) : boolean; + export function extend(obj: any, ...source: any[]): any; + export function toString(obj: any): string; + export function isArray(obj: any): boolean; + export function isFunction(obj: any): boolean; + } + + export namespace AST { + export const helpers: hbs.AST.helpers; } interface ICompiler { @@ -96,9 +142,8 @@ interface HandlebarsTemplatable { template: HandlebarsTemplateDelegate; } -interface HandlebarsTemplateDelegate { - (context: T, options?: RuntimeOptions): string; -} +// NOTE: for backward compatibility of this typing +type HandlebarsTemplateDelegate = Handlebars.TemplateDelegate; interface HandlebarsTemplates { [index: string]: HandlebarsTemplateDelegate; @@ -108,13 +153,8 @@ interface TemplateSpecification { } -interface RuntimeOptions { - partial?: boolean; - depths?: any[]; - helpers?: { [name: string]: Function } - partials?: { [name: string]: HandlebarsTemplateDelegate } - decorators?: { [name: string]: Function } -} +// for backward compatibility of this typing +type RuntimeOptions = Handlebars.RuntimeOptions; interface CompileOptions { data?: boolean; @@ -128,7 +168,7 @@ interface CompileOptions { with?: boolean; log?: boolean; lookup?: boolean; - } + }; knownHelpersOnly?: boolean; noEscape?: boolean; strict?: boolean; @@ -144,21 +184,10 @@ interface PrecompileOptions extends CompileOptions { } declare namespace hbs { - class SafeString { - constructor(str: string); - static toString(): string; - } + // for backward compatibility of this typing + type SafeString = Handlebars.SafeString; - namespace Utils { - function escapeExpression(str: string): string; - function createFrame(object: any): any; - function blockParams(obj: any[], ids: any[]): any[]; - function isEmpty(obj: any) : boolean; - function extend(obj: any, ...source: any[]): any; - function toString(obj: any): string; - function isArray(obj: any): boolean; - function isFunction(obj: any): boolean; - } + type Utils = typeof Handlebars.Utils; } interface Logger { @@ -231,11 +260,11 @@ declare namespace hbs { interface PartialBlockStatement extends Statement { name: PathExpression | SubExpression; - params: Expression[], - hash: Hash, - program: Program, - openStrip: StripFlags, - closeStrip: StripFlags + params: Expression[]; + hash: Hash; + program: Program; + openStrip: StripFlags; + closeStrip: StripFlags; } interface ContentStatement extends Statement { diff --git a/types/handlebars/tsconfig.json b/types/handlebars/tsconfig.json index 5f874f3996..5c7bf000d0 100644 --- a/types/handlebars/tsconfig.json +++ b/types/handlebars/tsconfig.json @@ -19,5 +19,9 @@ "types": [], "noEmit": true, "forceConsistentCasingInFileNames": true - } + }, + "files": [ + "index.d.ts", + "handlebars-tests.ts" + ] } \ No newline at end of file diff --git a/types/hapi-auth-jwt2/hapi-auth-jwt2-tests.ts b/types/hapi-auth-jwt2/hapi-auth-jwt2-tests.ts index cf51162eb4..50b17e8db6 100644 --- a/types/hapi-auth-jwt2/hapi-auth-jwt2-tests.ts +++ b/types/hapi-auth-jwt2/hapi-auth-jwt2-tests.ts @@ -32,7 +32,7 @@ server.register({ .then(() => { const opts: hapiAuthJwt2.Options = { key: 'NeverShareYourSecret', - async validate(decoded: { id: number }, request) { + async validate(decoded: { id: number }) { return { isValid: !!users[decoded.id], }; @@ -42,5 +42,14 @@ server.register({ issuer: 'test', } }; + const opts2: hapiAuthJwt2.Options = { + key: 'NeverShareYourSecret2', + validate(decoded: { id: number }) { + return { + isValid: !!users[decoded.id], + }; + } + }; server.auth.strategy('jwt', 'jwt', opts); + server.auth.strategy('jwt2', 'jwt', opts2); }); diff --git a/types/hapi-auth-jwt2/index.d.ts b/types/hapi-auth-jwt2/index.d.ts index a93f740bfc..f980cfa6e9 100644 --- a/types/hapi-auth-jwt2/index.d.ts +++ b/types/hapi-auth-jwt2/index.d.ts @@ -39,6 +39,12 @@ declare namespace hapiAuthJwt2 { }; } + interface ValidationResult { + isValid: boolean; + credentials?: any; + response?: ResponseObject; + } + /** * Options passed to `hapi.auth.strategy` when this plugin is used */ @@ -54,11 +60,7 @@ declare namespace hapiAuthJwt2 { * @param decoded the *decoded* and *verified* JWT received from the client in *request.headers.authorization* * @param request the original *request* received from the client */ - validate(decoded: {}, request: Request, tk: ResponseToolkit): Promise<{ - isValid: boolean; - credentials?: any; - response?: ResponseObject - }>; + validate(decoded: {}, request: Request, tk: ResponseToolkit): ValidationResult | Promise; /** * Settings to define how tokens are verified by the jsonwebtoken library diff --git a/types/hapi/index.d.ts b/types/hapi/index.d.ts index 3628a7a931..d8edc40685 100644 --- a/types/hapi/index.d.ts +++ b/types/hapi/index.d.ts @@ -3,6 +3,7 @@ // Definitions by: Marc Bornträger // Rafael Souza Fijalkowski // Justin Simms +// Simon Schick // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 @@ -543,7 +544,7 @@ export interface Request extends Podium { * @return void * [See docs](https://hapijs.com/api/17.0.1#-requestseturlurl-striptrailingslash) */ - setUrl(url: string | url.URL, stripTrailingSlash?: boolean): void; + setUrl(url: string | url.Url, stripTrailingSlash?: boolean): void; } /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1008,7 +1009,7 @@ export interface ResponseToolkit { * @return Return value: none. * [See docs](https://github.com/hapijs/hapi/blob/master/API.md#-hstatename-value-options) */ - state(name: string, value: string, options?: ServerStateCookieOptions): void; + state(name: string, value: string | object, options?: ServerStateCookieOptions): void; /** * Used by the [authentication] method to indicate authentication failed and pass back the credentials received where: @@ -1143,7 +1144,7 @@ export interface RouteOptionsAccess { * [See docs](https://github.com/hapijs/hapi/blob/master/API.md#-routeoptionscache) */ export type RouteOptionsCache = { - privacy?: 'default' | 'public' | 'privacy'; + privacy?: 'default' | 'public' | 'private'; statuses?: number[]; otherwise?: string; } & ( @@ -1724,12 +1725,7 @@ export interface RouteOptions { * [See docs](https://github.com/hapijs/hapi/blob/master/API.md#request-lifecycle) */ ext?: { - onPreAuth?: Lifecycle.Method; - onCredentials?: Lifecycle.Method; - onPostAuth?: Lifecycle.Method; - onPreHandler?: Lifecycle.Method; - onPostHandler?: Lifecycle.Method; - onPreResponse?: Lifecycle.Method; + [key in RouteRequestExtType]?: RouteExtObject | RouteExtObject[]; }; /** @@ -2229,8 +2225,8 @@ export interface RequestEvent { error: object; } -export type LogEventHandler = (event: LogEvent, tags: object) => void; -export type RequestEventHandler = (request: Request, event: RequestEvent, tags: object) => void; +export type LogEventHandler = (event: LogEvent, tags: { [key: string]: true }) => void; +export type RequestEventHandler = (request: Request, event: RequestEvent, tags: { [key: string]: true }) => void; export type ResponseEventHandler = (request: Request) => void; export type RouteEventHandler = (route: ServerRoute) => void; export type StartEventHandler = () => void; @@ -2354,15 +2350,17 @@ export interface ServerEvents extends Podium { * For context [See docs](https://github.com/hapijs/hapi/blob/master/API.md#request-lifecycle) */ export type ServerExtType = 'onPreStart' | 'onPostStart' | 'onPreStop' | 'onPostStop'; -export type ServerRequestExtType = - 'onRequest' - | 'onPreAuth' +export type RouteRequestExtType = 'onPreAuth' | 'onCredentials' | 'onPostAuth' | 'onPreHandler' | 'onPostHandler' | 'onPreResponse'; +export type ServerRequestExtType = + RouteRequestExtType + | 'onRequest'; + /** * [See docs](https://github.com/hapijs/hapi/blob/master/API.md#-serverextevents) * Registers an extension function in one of the request lifecycle extension points where: @@ -2401,14 +2399,11 @@ export interface ServerExtEventsObject { * * request extension points: a lifecycle method. */ method: ServerExtPointFunction | ServerExtPointFunction[]; - /** - * options - (optional) an object with the following: - * * before - a string or array of strings of plugin names this method must execute before (on the same event). Otherwise, extension methods are executed in the order added. - * * after - a string or array of strings of plugin names this method must execute after (on the same event). Otherwise, extension methods are executed in the order added. - * * bind - a context object passed back to the provided method (via this) when called. Ignored if the method is an arrow function. - * * sandbox - if set to 'plugin' when adding a request extension points the extension is only added to routes defined by the current plugin. Not allowed when configuring route-level extensions, - * or when adding server extensions. Defaults to 'server' which applies to any route added to the server the extension is added to. - */ + options?: ServerExtOptions; +} + +export interface RouteExtObject { + method: Lifecycle.Method; options?: ServerExtOptions; } @@ -2477,15 +2472,15 @@ export interface ServerExtOptions { /** * a string or array of strings of plugin names this method must execute before (on the same event). Otherwise, extension methods are executed in the order added. */ - before: string | string[]; + before?: string | string[]; /** * a string or array of strings of plugin names this method must execute after (on the same event). Otherwise, extension methods are executed in the order added. */ - after: string | string[]; + after?: string | string[]; /** * a context object passed back to the provided method (via this) when called. Ignored if the method is an arrow function. */ - bind: object; + bind?: object; /** * if set to 'plugin' when adding a request extension points the extension is only added to routes defined by the current plugin. Not allowed when configuring route-level extensions, or when * adding server extensions. Defaults to 'server' which applies to any route added to the server the extension is added to. @@ -2586,7 +2581,7 @@ export interface ServerInjectOptions extends Shot.RequestOptions { /** * sets the initial value of request.app, defaults to {}. */ - app: ApplicationState; + app?: ApplicationState; /** * sets the initial value of request.plugins, defaults to {}. */ diff --git a/types/hapi/test/request/event-types.ts b/types/hapi/test/request/event-types.ts index 386b93e19d..4d4f3f01ca 100644 --- a/types/hapi/test/request/event-types.ts +++ b/types/hapi/test/request/event-types.ts @@ -1,6 +1,6 @@ // https://github.com/hapijs/hapi/blob/master/API.md#-servereventevents // https://github.com/hapijs/hapi/blob/master/API.md#-requestevents -import { Lifecycle, Request, ResponseToolkit, RouteOptions, Server, ServerOptions, ServerRoute } from "hapi"; +import { Lifecycle, Request, Server, ServerOptions, ServerRoute } from "hapi"; import * as Crypto from 'crypto'; const options: ServerOptions = { @@ -10,7 +10,7 @@ const options: ServerOptions = { const serverRoute: ServerRoute = { path: '/', method: 'GET', - handler(request, h) { + handler(request) { return 'ok: ' + request.path; } }; @@ -42,7 +42,7 @@ const onRequest: Lifecycle.Method = (request, h) => { */ const hash = Crypto.createHash('sha1'); - request.events.on("peek", (chunk, encoding) => { + request.events.on("peek", (chunk) => { hash.update(chunk); }); @@ -59,7 +59,9 @@ const onRequest: Lifecycle.Method = (request, h) => { const server = new Server(options); server.route(serverRoute); -server.ext('onRequest', onRequest); +server.ext('onRequest', onRequest, { + before: 'test', +}); server.start(); console.log('Server started at: ' + server.info.uri); diff --git a/types/hapi/test/route/ext.ts b/types/hapi/test/route/ext.ts index 0a2ac25a4b..b8dff44699 100644 --- a/types/hapi/test/route/ext.ts +++ b/types/hapi/test/route/ext.ts @@ -7,9 +7,16 @@ server.route({ path: "/test", options: { ext: { - onPreResponse(request, h) { - return h.continue; + onPreResponse: { + method(_request, h) { + return h.continue; + }, }, + onPostHandler: [{ + method(_request, h) { + return h.continue; + }, + }], } } }); diff --git a/types/hapi/test/server/server-state.ts b/types/hapi/test/server/server-state.ts index 97cf5997f0..ba4ffe344c 100644 --- a/types/hapi/test/server/server-state.ts +++ b/types/hapi/test/server/server-state.ts @@ -1,5 +1,5 @@ // from https://hapijs.com/tutorials/cookies?lang=en_US -import { Request, ResponseToolkit, Server, ServerOptions, ServerRoute, ServerStateCookieOptions } from "hapi"; +import { Server, ServerOptions, ServerRoute, ServerStateCookieOptions } from "hapi"; const options: ServerOptions = { port: 8000, @@ -8,7 +8,8 @@ const options: ServerOptions = { const serverRoute: ServerRoute = { path: '/say-hello', method: 'GET', - handler(request, h) { + handler(_request, h) { + h.state('test', { test: true }); return h.response('Hello').state('data', { firstVisit: false }); } }; diff --git a/types/he/he-tests.ts b/types/he/he-tests.ts index 6045574fa5..3fce7214c9 100644 --- a/types/he/he-tests.ts +++ b/types/he/he-tests.ts @@ -2,18 +2,18 @@ import he = require('he'); function main() { var result: string; - + result = he.encode('foo \xa9 bar \u2260 baz qux'); // 'foo © bar ≠ baz qux' - + he.encode('foo \0 bar'); // 'foo \0 bar' - + // Passing an `options` object to `encode`, to explicitly disallow named references: he.encode('foo \xa9 bar \u2260 baz qux', { 'useNamedReferences': false }); - + he.encode('foo \xa9 bar \u2260 baz qux', { 'encodeEverything': true }); @@ -22,21 +22,43 @@ function main() { 'encodeEverything': true, 'useNamedReferences': true }); - + he.encode('\x01', { 'strict': false }); - // '' - + // '' + he.encode('foo © and & ampersand', { 'allowUnsafeSymbols': true }); - + + // Using the global default setting (defaults to `false`): + he.encode('foo © bar ≠ baz ðŒ† qux'); + // → 'foo © bar ≠ baz 𝌆 qux' + + // Passing an `options` object to `encode`, to explicitly disable decimal escapes: + he.encode('foo © bar ≠ baz ðŒ† qux', { + 'decimal': false + }); + // → 'foo © bar ≠ baz 𝌆 qux' + + // Passing an `options` object to `encode`, to explicitly enable decimal escapes: + he.encode('foo © bar ≠ baz ðŒ† qux', { + 'decimal': true + }); + // → 'foo © bar ≠ baz 𝌆 qux' + + // Passing an `options` object to `encode`, to explicitly allow named references and decimal escapes: + he.encode('foo © bar ≠ baz ðŒ† qux', { + 'useNamedReferences': true, + 'decimal': true + }); + // Override the global default setting: he.encode.options.useNamedReferences = true; - + he.decode('foo © bar ≠ baz 𝌆 qux'); - + he.decode('foo&bar', { 'isAttributeValue': false }); diff --git a/types/he/index.d.ts b/types/he/index.d.ts index a890ad823c..e729b6bbdc 100644 --- a/types/he/index.d.ts +++ b/types/he/index.d.ts @@ -1,6 +1,7 @@ -// Type definitions for he v0.5.0 +// Type definitions for he v1.1.1 // Project: https://github.com/mathiasbynens/he // Definitions by: Simon Edwards +// Robin Tregaskis // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // he - "HTML Entities" - A high quality pair of HTML encode and decode functions. @@ -18,6 +19,18 @@ export interface EncodeOptions { */ useNamedReferences?: boolean; + /** + * The default value for the decimal option is false. If the option is + * enabled, encode will generally use decimal escapes (e.g. ©) + * rather than hexadecimal escapes (e.g. ©). Beside of this + * replacement, the basic behavior remains the same when combined with + * other options. For example: if both options useNamedReferences and + * decimal are enabled, named references (e.g. ©) are used over + * decimal escapes. HTML entities without a named reference are encoded + * using decimal escapes. + */ + decimal?: boolean; + /** * The default value for the encodeEverything option is false. This means * that encode() will not use any character references for printable ASCII diff --git a/types/heapdump/heapdump-tests.ts b/types/heapdump/heapdump-tests.ts index 49019f83fc..80306b9d32 100644 --- a/types/heapdump/heapdump-tests.ts +++ b/types/heapdump/heapdump-tests.ts @@ -1,9 +1,20 @@ import * as heapdump from 'heapdump'; -heapdump.writeSnapshot('/tmp/myDump', (err) => { - if (err) { - console.log('Failed to dump heap: ' + err); - } else { - console.log('Successfully dumped heap!'); - } +let strValue = ""; +let errValue = new Error(strValue); +let nullValue = null; +let undefinedValue; + +heapdump.writeSnapshot(strValue, (err, filename) => { + errValue = err as Error; + nullValue = err as null; + strValue = filename as string; + undefinedValue = filename as undefined; +}); + +heapdump.writeSnapshot((err, filename) => { + errValue = err as Error; + nullValue = err as null; + strValue = filename as string; + undefinedValue = filename as undefined; }); diff --git a/types/heapdump/index.d.ts b/types/heapdump/index.d.ts index d4e0477a32..1473ebb70a 100644 --- a/types/heapdump/index.d.ts +++ b/types/heapdump/index.d.ts @@ -2,5 +2,7 @@ // Project: https://github.com/bnoordhuis/node-heapdump // Definitions by: weekens // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.1 -export function writeSnapshot(dumpFileName: string, callback: (err?: Error) => void): void; +export function writeSnapshot(dumpFileName?: string, callback?: (err: Error | null, filename: string | undefined) => void): void; +export function writeSnapshot(callback: (err: Error | null, filename: string | undefined) => void): void; diff --git a/types/hellojs/hellojs-tests.ts b/types/hellojs/hellojs-tests.ts index 4a4e068379..8cf42d11e4 100644 --- a/types/hellojs/hellojs-tests.ts +++ b/types/hellojs/hellojs-tests.ts @@ -4,7 +4,8 @@ hello.init({ oauth: { version: 2, auth: '', - grant: '' + grant: '', + response_type: 'id_token token' }, refresh: true, scope_delim: ' ', diff --git a/types/hellojs/index.d.ts b/types/hellojs/index.d.ts index e8efdaf19c..5b23b29e07 100644 --- a/types/hellojs/index.d.ts +++ b/types/hellojs/index.d.ts @@ -53,7 +53,15 @@ declare namespace hello { type HelloJSResponseCallback = (r: any, headers: any) => void; - type HelloJSTokenResponseType = "token" | "code"; + type HelloJSTokenResponseType = + "code" + | "code id_token" + | "code id_token token" + | "code token" + | "id_token" + | "id_token token" + | "none" + | "token"; type HelloJSDisplayType = "popup" | "page" | "none"; diff --git a/types/heremaps/index.d.ts b/types/heremaps/index.d.ts index 1fd1f3da29..918e464c09 100644 --- a/types/heremaps/index.d.ts +++ b/types/heremaps/index.d.ts @@ -2,6 +2,7 @@ // Project: https://developer.here.com/ // Definitions by: Joshua Efiong // Bernd Hacker +// Ferdinand Armbruster // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.1 @@ -1634,6 +1635,12 @@ declare namespace H { * @returns {H.map.AbstractMarker} - the marker itself */ setIcon(icon: (H.map.Icon | H.map.DomIcon)): H.map.AbstractMarker; + + /** + * @property draggable + * @description This property ensure that the marker can receive drag events. + */ + draggable?: boolean; } namespace AbstractMarker { diff --git a/types/hexo-log/hexo-log-tests.ts b/types/hexo-log/hexo-log-tests.ts index 9d0c263c03..a6fbcced57 100644 --- a/types/hexo-log/hexo-log-tests.ts +++ b/types/hexo-log/hexo-log-tests.ts @@ -1,90 +1,52 @@ -import mocha = require('mocha'); -import chai = require('chai'); -const should = chai.should(); -import rewire = require('rewire'); -import sinon = require('sinon'); import logger = require('hexo-log'); -const _c = logger(); -type HexoLogger = typeof _c; +declare function it(s: string, cb: () => void): void; -describe('hexo-log', () => { - const loggerModule = rewire<(options?: { name?: string; silent?: boolean; debug?: boolean; }) => HexoLogger>('./'); +it('add alias for levels', () => { + const log = logger(); - it('add alias for levels', () => { - const log = logger(); - - log.d.should.eql(log.debug); - log.i.should.eql(log.info); - log.w.should.eql(log.warn); - log.e.should.eql(log.error); - log.log.should.eql(log.info); - }); - - it('default name is hexo', () => { - const log = logger(); - - log.fields.name.should.eql('hexo'); - }); - - it('options.name', () => { - const log = logger({ name: 'foo' }); - - log.fields.name.should.eql('foo'); - }); - - it('level should be trace if options.debug is true', () => { - const log: any = logger({ debug: true }); - - log.streams[0].level.should.eql(10); - }); - - it('should add file stream if options.debug is true', () => { - const log: any = logger({ debug: true }); - - log.streams[1].path.should.eql('debug.log'); - }); - - it('should remove console stream if options.silent is true', () => { - const log: any = logger({ silent: true }); - - log.streams.length.should.eql(0); - }); - - it('should display time if options.debug is true', () => { - const spy = sinon.spy(); - const now = new Date(); - - loggerModule.__with__({ - process: { - stdout: { - write: spy - } - } - })(() => { - sinon.useFakeTimers(now.valueOf()); - const log = loggerModule({ debug: true }); - log.info('test'); - sinon.restore(undefined); - }); - - spy.args[0][0].should.contain(now.toISOString().substring(11, 23)); - }); - - it('should print error to process.stderr stream', () => { - const spy = sinon.spy(); - - loggerModule.__with__({ - process: { - stderr: { - write: spy - } - } - })(() => { - const log = loggerModule(); - log.error('test'); - }); - - spy.calledOnce.should.be.true; - }); + log.d === log.debug; + log.i === log.info; + log.w === log.warn; + log.e === log.error; + log.log === log.info; +}); + +it('default name is hexo', () => { + const log = logger(); + + log.fields.name === 'hexo'; +}); + +it('options.name', () => { + const log = logger({ name: 'foo' }); + log.fields === 'foo'; +}); + +it('level should be trace if options.debug is true', () => { + const log = logger({ debug: true }); + // TODO + // log.streams[0].level.should.eql(10); +}); + +it('should add file stream if options.debug is true', () => { + const log = logger({ debug: true }); + // TODO + // log.streams[1].path === 'debug.log'; +}); + +it('should remove console stream if options.silent is true', () => { + const log = logger({ silent: true }); + // TODO + // log.streams.length === 0; +}); + +it('should display time if options.debug is true', () => { + const log = logger({ debug: true }); + log.info('test'); +}); + +it('should print error to process.stderr stream', () => { + const log = logger(); + log.error('test'); }); diff --git a/types/highcharts/highstock.d.ts b/types/highcharts/highstock.d.ts index d2d81af469..a97ae9effa 100644 --- a/types/highcharts/highstock.d.ts +++ b/types/highcharts/highstock.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Highstock 2.1.5 +// Type definitions for Highstock 2.1.6 // Project: http://www.highcharts.com/ // Definitions by: David Deutsch @@ -87,12 +87,39 @@ declare namespace Highstock { scrollbar?: ScrollbarOptions; } + interface XAxisOptions extends AxisOptions { + ordinal?: boolean; + overscroll?: number; + } + + interface YAxisOptions extends AxisOptions { + height?: number | string; + maxLength?: number | string; + minLength?: number | string; + resize?: { + controlledAxis?: { + next?: Array; + prev?: Array; + }, + cursor?: string; + enabled?: boolean; + lineColor?: string; + lineDashStyle?: string; + lineWidth?: number; + x?: number; + y?: number; + }; + reversedStacks?: boolean; + tooltipValueFormat?: string; + top?: number | string; + } + interface Options extends Highcharts.Options { navigator?: NavigatorOptions; rangeSelector?: RangeSelectorOptions; scrollbar?: ScrollbarOptions; - xAxis?: AxisOptions[] | AxisOptions; - yAxis?: AxisOptions[] | AxisOptions; + xAxis?: XAxisOptions[] |XAxisOptions; + yAxis?: YAxisOptions[] | YAxisOptions; } interface Chart { diff --git a/types/highcharts/index.d.ts b/types/highcharts/index.d.ts index cf73a08e68..1434999411 100644 --- a/types/highcharts/index.d.ts +++ b/types/highcharts/index.d.ts @@ -5242,6 +5242,96 @@ declare namespace Highcharts { upColor?: Color; } + interface WordCloudChart extends BarChart { + /** + * For some series, there is a limit that shuts down initial animation by default when the total number of points + * in the chart is too high. For example, for a column chart and its derivatives, animation doesn't run if there + * is more than 250 points totally. To disable this cap, set animationLimit to Infinity. + * @default undefined + * @since 6.0.0 + */ + animationLimit?: number; + /** + * By default, series are exposed to screen readers as regions. By enabling this option, the series element itself + * will be exposed in the same way as the data points. This is useful if the series is not used as a grouping entity + * in the chart, but you still want to attach a description to the series. + * Requires the Accessibility module. + * @default undefined + * @since 5.0.12 + */ + exposeElementToA11y?: boolean; + /** + * This option decides which algorithm is used for placement, and rotation of a word. The choice of algorith is + * therefore a crucial part of the resulting layout of the wordcloud. It is possible for users to add their own + * custom placement strategies for use in word cloud. Read more about it in our documentation + * @default center + * @since 6.0.0 + */ + placementStrategy?: string; + /** + * Same as accessibility.pointDescriptionFormatter, but for an individual series. Overrides the chart wide + * configuration. + * @default undefined + * @since 5.0.12 + */ + pointDescriptionFormatter?: () => string; + /** + * Rotation options for the words in the wordcloud. + * @since 6.0.0 + */ + rotation?: { + /** + * The smallest degree of rotation for a + * @default 0 + * @since 6.0.0 + */ + from?: number; + /** + * The largest degree of rotation for a word. + * @default 90 + * @since 6.0.0 + */ + to?: number; + /** + * The number of possible orientations for a word, within the range of rotation.from and rotation.to. + * @default 2 + * @since 6.0.0 + */ + orientations?: number; + }; + + /** + * If set to True, the accessibility module will skip past the points in this series for keyboard navigation. + * @default undefined + * @since 5.0.12 + */ + skipKeyboardNavigation?: boolean; + /** + * Spiral used for placing a word after the inital position experienced a collision with either another word or the + * borders. It is possible for users to add their own custom spiralling algorithms for use in word cloud. Read more + * about it in our documentation + * @default rectangular + * @since 6.0.0 + */ + spiral?: string; + /** + * CSS styles for the words. + * @since 6.0.0 + */ + style?: { + /** + * @default sans-serif + * @since 6.0.0 + */ + fontFamily?: string; + /** + * @default 900 + * @since 6.0.0 + */ + fontWeight?: number | string; + }; + } + /** * The plotOptions is a wrapper object for config objects for each series type. The config objects for each series can * also be overridden for each series item as given in the series array. @@ -5423,6 +5513,7 @@ declare namespace Highcharts { interface SplineChartSeriesOptions extends IndividualSeriesOptions, SplineChart { } interface TreeMapChartSeriesOptions extends IndividualSeriesOptions, TreeMapChart { } interface WaterFallChartSeriesOptions extends IndividualSeriesOptions, WaterFallChart { } + interface WordCloudChartSeriesOptions extends IndividualSeriesOptions, WordCloudChart { } interface DataPoint { /** @@ -6711,6 +6802,36 @@ declare namespace Highcharts { map(array: any[], fn: Function): any[]; wrap(prototype: any, type: string, cb: (proceed: Function, ...args: any[]) => void): void; + + /** + * Add an event listener. + * + * @see {@link https://api.highcharts.com/class-reference/Highcharts#addEvent} + * @see {@link https://www.highcharts.com/docs/extending-highcharts/extending-highcharts} + * + * @param element The element or object to add a listener to. It can be a HTMLDOMElement, an Highcharts.SVGElement or any other object. + * @param type The event type. + * @param cb The function callback to execute when the event is fired. + * @returns A callback function to remove the added event. + */ + addEvent(element: HTMLElement | ElementObject | object, + type: string, + cb: (evt: Event) => void): () => void; + + /** + * Fire an event that was registered with + * + * @see {@link https://api.highcharts.com/class-reference/Highcharts#fireEvent} + * + * @param element The element or object to add a listener to. It can be a HTMLDOMElement, an Highcharts.SVGElement or any other object. + * @param type The event type. + * @param eventArguments Custom event arguments that are passed on as an argument to the event handler. + * @param defaultFunction The default function to execute if the other listeners haven't returned false. + */ + fireEvent(element: HTMLElement | ElementObject | object, + type: string, + eventArguments?: any, + defaultFunction?: () => void): void; } /** diff --git a/types/highcharts/test/index.ts b/types/highcharts/test/index.ts index c4ea1bd7a8..310886b585 100644 --- a/types/highcharts/test/index.ts +++ b/types/highcharts/test/index.ts @@ -2789,3 +2789,30 @@ function test_TitleUpdate() { } }); } + +function test_AddAndFireEvent() { + const chart = $('#container').highcharts(); + const type = 'drilldown'; + const evt = Highcharts.addEvent(chart, type, it => {}); + Highcharts.fireEvent(chart, type); +} + +function test_WordCloud() { + const allDefaults: Highcharts.WordCloudChartSeriesOptions = {}; + + // partial wordcloud demo + const series: Highcharts.WordCloudChartSeriesOptions = { + type: 'wordcloud', + data: [], + name: 'Occurrences', + rotation: { + to: 0 + }, + tooltip: { + headerFormat: null, + pointFormatter() { + return `${this.name}: Occurrence ${this.weight}`; + } + } + }; +} diff --git a/types/historykana/historykana-tests.ts b/types/historykana/historykana-tests.ts new file mode 100644 index 0000000000..f801ce4f52 --- /dev/null +++ b/types/historykana/historykana-tests.ts @@ -0,0 +1,23 @@ +import historykana from "historykana"; + +// Stock input history +const inputHistory = [ + "ï½™", + "ã‚„", + "ã‚„ï½", + "ã‚„ã¾", + "ã‚„ã¾ï½„", + "ã‚„ã¾ã ", + "山田", + "山田", + "山田t", + "山田ãŸ", + "山田ãŸï½’", + "山田ãŸã‚", + "山田ãŸã‚ã†", + "山田太郎", + "山田太郎" +]; + +const result = historykana(inputHistory); +// => ã‚„ã¾ã ãŸã‚ㆠdiff --git a/types/historykana/index.d.ts b/types/historykana/index.d.ts new file mode 100644 index 0000000000..c99c82de98 --- /dev/null +++ b/types/historykana/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for HistoryKana 1.0 +// Project: https://github.com/terrierscript/historykana +// Definitions by: shiratsuki +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/** + * Get Kana string from input history array. + * @param histories Input History Array + * @param options kanaRegexp : Hiragana detection regular expression rule. + */ +declare function historykana(histories: string[], options?: object): string; + +export = historykana; diff --git a/types/historykana/tsconfig.json b/types/historykana/tsconfig.json new file mode 100644 index 0000000000..8ae561d5d6 --- /dev/null +++ b/types/historykana/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6", "dom"], + "allowSyntheticDefaultImports": true, + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "historykana-tests.ts"] +} diff --git a/types/historykana/tslint.json b/types/historykana/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/historykana/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/html-tag-names/html-tag-names-tests.ts b/types/html-tag-names/html-tag-names-tests.ts new file mode 100644 index 0000000000..b3362a6b7e --- /dev/null +++ b/types/html-tag-names/html-tag-names-tests.ts @@ -0,0 +1,3 @@ +import htmlTagNames = require("html-tag-names"); +htmlTagNames.length; // => 147 +const firstNames: string[] = htmlTagNames.slice(0, 20); diff --git a/types/html-tag-names/index.d.ts b/types/html-tag-names/index.d.ts new file mode 100644 index 0000000000..8c9558edb7 --- /dev/null +++ b/types/html-tag-names/index.d.ts @@ -0,0 +1,6 @@ +// Type definitions for html-tag-names 1.1 +// Project: https://github.com/wooorm/html-tag-names +// Definitions by: Nathan Shively-Sanders +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +declare const htmlTagNames: string[]; +export = htmlTagNames; diff --git a/types/html-tag-names/tsconfig.json b/types/html-tag-names/tsconfig.json new file mode 100644 index 0000000000..05cded79c8 --- /dev/null +++ b/types/html-tag-names/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "html-tag-names-tests.ts" + ] +} diff --git a/types/html-tag-names/tslint.json b/types/html-tag-names/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/html-tag-names/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/html2canvas/index.d.ts b/types/html2canvas/index.d.ts index dbc38f44bc..4fcfd81338 100644 --- a/types/html2canvas/index.d.ts +++ b/types/html2canvas/index.d.ts @@ -1,6 +1,6 @@ -// Type definitions for html2canvas.js 0.5 +// Type definitions for html2canvas.js 1.0-alpha // Project: https://github.com/niklasvh/html2canvas -// Definitions by: Richard Hepburn , Pei-Tang Huang +// Definitions by: Richard Hepburn , Pei-Tang Huang , Sebastian Schocke // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -8,15 +8,27 @@ declare namespace Html2Canvas { interface Html2CanvasOptions { + /** Whether to parse and render the element asynchronously */ + async?: boolean; + /** Whether to allow cross-origin images to taint the canvas */ allowTaint?: boolean; /** Canvas background color, if none is specified in DOM. Set undefined for transparent */ - background?: string; + backgroundColor?: string; - /** Define the heigt of the canvas in pixels. If null, renders with full height of the window. */ - height?: number; + /** Existing canvas element to use as a base for drawing on */ + canvas?: any; + /** Whether to use ForeignObject rendering if the browser supports it */ + foreignObjectRendering?: boolean; + + /** Predicate function which removes the matching elements from the render. */ + ignoreElements?: (element: HTMLElement) => boolean; + + /** Timeout for loading images, in milliseconds. Setting it to 0 will result in no timeout. */ + imageTimeout?: number; + /** Whether to render each letter seperately. Necessary if letter-spacing is used. */ letterRendering?: boolean; @@ -26,20 +38,44 @@ declare namespace Html2Canvas { /** Url to the proxy which is to be used for loading cross-origin images. If left empty, cross-origin images won't be loaded. */ proxy?: string; + /** Whether to cleanup the cloned DOM elements html2canvas creates temporarily */ + removeContainer?: boolean; + + /** The scale to use for rendering. Defaults to the browsers device pixel ratio. */ + scale?: number; + + /** Use svg powered rendering where available (FF11+). */ + svgRendering?: boolean; + /** Whether to test each image if it taints the canvas before drawing them */ taintTest?: boolean; - /** Timeout for loading images, in milliseconds. Setting it to 0 will result in no timeout. */ - timeout?: number; - - /** Define the width of the canvas in pixels. If null, renders with full width of the window. */ - width?: number; - /** Whether to attempt to load cross-origin images as CORS served, before reverting back to proxy. */ useCORS?: boolean; - /** Use svg powered rendering where available (FF11+). */ - svgRendering?: boolean; + /** Define the width of the canvas in pixels. If null, renders with full width of the window. */ + width?: number; + + /** Define the heigt of the canvas in pixels. If null, renders with full height of the window. */ + height?: number; + + /** Crop canvas x-coordinate */ + x?: number; + + /** Crop canvas y-coordinate */ + y?: number; + + /** The x-scroll position to used when rendering element, (for example if the Element uses position: fixed ) */ + scrollX?: number; + + /** The y-scroll position to used when rendering element, (for example if the Element uses position: fixed ) */ + scrollY?: number; + + /** Window width to use when rendering Element, which may affect things like Media queries */ + windowWidth?: number; + + /** Window height to use when rendering Element, which may affect things like Media queries */ + windowHeight?: number; } } diff --git a/types/http-proxy/http-proxy-tests.ts b/types/http-proxy/http-proxy-tests.ts index 70ea803da6..1610befc7d 100644 --- a/types/http-proxy/http-proxy-tests.ts +++ b/types/http-proxy/http-proxy-tests.ts @@ -24,3 +24,11 @@ proxy.on("start", (req, res, target) => { http.createServer((req, res) => { proxy.web(req, res); }); + +const newProxy = HttpProxy.createProxyServer({ + target: { + host: 'localhost', + port: '9015' + }, + ws: true +}); diff --git a/types/http-proxy/index.d.ts b/types/http-proxy/index.d.ts index e9ef9a572d..fb7eb26abc 100644 --- a/types/http-proxy/index.d.ts +++ b/types/http-proxy/index.d.ts @@ -1,6 +1,8 @@ // Type definitions for node-http-proxy 1.16 // Project: https://github.com/nodejitsu/node-http-proxy -// Definitions by: Maxime LUCE , Florian Oellerich +// Definitions by: Maxime LUCE +// Florian Oellerich +// Daniel Schmidt // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -166,9 +168,9 @@ declare namespace Server { /** Buffer */ buffer?: stream.Stream; /** URL string to be parsed with the url module. */ - target?: string; + target?: ProxyTargetUrl; /** URL string to be parsed with the url module. */ - forward?: string; + forward?: ProxyTargetUrl; /** Object to be passed to http(s).request. */ agent?: any; /** Object to be passed to https.createServer(). */ diff --git a/types/hubot/hubot-tests.ts b/types/hubot/hubot-tests.ts index 9c5e832bc2..1c7540c950 100644 --- a/types/hubot/hubot-tests.ts +++ b/types/hubot/hubot-tests.ts @@ -4,11 +4,12 @@ const brain = new Hubot.Brain(); brain; // $ExpectType Brain brain.userForName('someone'); // $ExpectType any -const robot = new Hubot.Robot( +const robot = new Hubot.Robot<{}>( 'src/adapters', 'slack', false, 'hubot', ); -robot; // $ExpectType Robot +robot; // $ExpectType Robot<{}> +robot.adapter; // $ExpectType {} robot.hear(/hello/, () => null); // $ExpectType void diff --git a/types/hubot/index.d.ts b/types/hubot/index.d.ts index e0a809f69a..1b90a512af 100644 --- a/types/hubot/index.d.ts +++ b/types/hubot/index.d.ts @@ -1,6 +1,7 @@ // Type definitions for hubot 2.19 // Project: https://github.com/github/hubot // Definitions by: Dirk Gadsden +// Kees C. Bakker // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace Hubot { @@ -20,26 +21,31 @@ declare namespace Hubot { id: string; } - class Response { + class Response { match: RegExpMatchArray; message: Message; - constructor(robot: Robot, message: Message, match: RegExpMatchArray); + constructor(robot: R, message: Message, match: RegExpMatchArray); send(...strings: string[]): void; reply(...strings: string[]): void; random(items: T[]): T; } - type ListenerCallback = (response: Response) => void; + type ListenerCallback = (response: Response) => void; - class Robot { + class Robot { + alias: string; brain: Brain; + name: string; + readonly adapter: A; constructor(adapterPath: string, adapter: string, httpd: boolean, name: string, alias?: string); - hear(regex: RegExp, callback: ListenerCallback): void; - hear(regex: RegExp, options: any, callback: ListenerCallback): void; - respond(regex: RegExp, callback: ListenerCallback): void; - respond(regex: RegExp, options: any, callback: ListenerCallback): void; + hear(regex: RegExp, callback: ListenerCallback): void; + hear(regex: RegExp, options: any, callback: ListenerCallback): void; + helpCommands(): string[]; + loadFile(directory: string, fileName: string): void; + respond(regex: RegExp, callback: ListenerCallback): void; + respond(regex: RegExp, options: any, callback: ListenerCallback): void; } } diff --git a/types/ibm_db/index.d.ts b/types/ibm_db/index.d.ts index 662a16ffb3..de54b9ca26 100644 --- a/types/ibm_db/index.d.ts +++ b/types/ibm_db/index.d.ts @@ -187,6 +187,9 @@ export class ODBCStatement { export class ODBCResult { fetchMode: number; + fetchAllSync(): any[]; + moreResultsSync(): any[]; + closeSync(): void; } // Class ODBCResult export function getElapsedTime(): string; diff --git a/types/ids/ids-tests.ts b/types/ids/ids-tests.ts deleted file mode 100644 index 16ba06e34f..0000000000 --- a/types/ids/ids-tests.ts +++ /dev/null @@ -1,9 +0,0 @@ -import Ids = require('ids'); - -const ids = new Ids(); - -const next = ids.next(); // returns id - -ids.claim('f71a81'); // claim id as already existing - -ids.assigned('f71a81'); // true if id was already generated / claimed diff --git a/types/ids/index.d.ts b/types/ids/index.d.ts deleted file mode 100644 index f744f77a5c..0000000000 --- a/types/ids/index.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -// Type definitions for ids 0.2.0 -// Project: https://github.com/bpmn-io/ids -// Definitions by: Jan Steinbruecker -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - -export = Ids; - -declare class Ids { - - /** - * Create a new id generator / cache instance. - * @param {number[]} [seed] a seed that is used internally. - */ - constructor(seed?: number[]); - - /** - * Returns true if the given id has already been assigned. - * @param {string} id - * @return {boolean} - */ - assigned(id: string): boolean; - - /** - * Manually claim an existing id. - * @param {string} id - * @param {*} [element] element the id is claimed by - */ - claim(id: string, element?: any): void; - - /** Clear all claimed ids. */ - clear(): void; - - /** - * Generate a next id. - * @param {*} [element] element to bind the id to - * @return {string} id - */ - next(element?: any): string; - - /** - * Generate a next id with a given prefix. - * @param {*} [element] element to bind the id to - * @return {string} id - */ - nextPrefixed(prefix: string, element?: any): string; - - /** - * Unclaim an id. - * @param {string} id - the id to unclaim - */ - unclaim(id: string): void; - -} diff --git a/types/idyll-ast/idyll-ast-tests.ts b/types/idyll-ast/idyll-ast-tests.ts new file mode 100644 index 0000000000..6b3eb7d651 --- /dev/null +++ b/types/idyll-ast/idyll-ast-tests.ts @@ -0,0 +1,99 @@ +import { AST, Property, TreeNode, Node } from "idyll-compiler"; + +import { + appendNode, + getNodesByName, + appendNodes, + prependNode, + prependNodes, + createNode, + getChildren, + walkNodes, + findNodes, + modifyChildren, + filterChildren, + filterNodes, + modifyNodesByName, + getProperty, + getProperties, + getPropertiesByType, + removeNodesByName, + setProperty, + setProperties, + removeProperty +} from "idyll-ast"; + +const ast: AST = [ + ["h2", [], []], + "world", + ["h1", [], ["child1", ["child2", [], []]]] +]; +const prop: Property = ["className", ["value", "hello"]]; + +// $ExpectType Node[] +appendNode(ast, "hello"); + +// $ExpectType Node[] +appendNode(getNodesByName(ast, "div"), "test"); + +// $ExpectType Node[] +appendNodes(ast, [["strong", [], ["div", ["pre", [], []]]], "test"]); + +// $ExpectType Node[] +prependNode(getNodesByName(ast, "div"), "test"); + +// $ExpectType Node[] +prependNodes(ast, [["strong", [], ["div", ["pre", [], []]]], "test"]); + +// $ExpectType TreeNode +createNode("div", { prop1: "prop1", prop2: ["expression", "x=2"] }, []); + +// $ExpectType Node[] +getChildren(ast[0]); + +// $ExpectType void +walkNodes(ast, (n: Node) => { + (n as TreeNode)[0] = "funky-name"; +}); + +// $ExpectType Node[] +findNodes(ast, n => n instanceof Array); + +// $ExpectType Node +modifyChildren(ast[0], (n: Node) => { + if (typeof n === "object") { + n[0] = "somename"; + } +}); +// $ExpectType Node[] +getNodesByName(ast, "h1"); + +// $ExpectType Node +filterChildren(ast[1], n => n === "world"); + +// $ExpectType Node[] +filterNodes(ast, n => (n instanceof Object ? n[0] === "h1" : false)); + +// $ExpectType Node[] +modifyNodesByName(ast, "h2", n => { + typeof n === "object" ? (n[1] = []) : undefined; +}); + +// $ExpectType [PropType, PropData] | null +getProperty(ast[1], "someProp"); +// $ExpectType [string, [PropType, PropData]] +getProperties(ast[1])[0]; +// $ExpectType [string, [PropType, PropData]][] +getPropertiesByType(["h1", [], []], "variable"); + +// $ExpectType Node[] +removeNodesByName(ast, "h1"); + +// $ExpectType Node +setProperty(ast[0], "prop", 9); + +// $ExpectType Node +setProperties(ast[1], { prop1: ["expression", "x"], prop2: 3 }); + +// $ExpectType Node +removeProperty(ast[0], "prop1"); diff --git a/types/idyll-ast/index.d.ts b/types/idyll-ast/index.d.ts new file mode 100644 index 0000000000..4a46320b82 --- /dev/null +++ b/types/idyll-ast/index.d.ts @@ -0,0 +1,137 @@ +// Type definitions for idyll-ast 1.3 +// Project: https://github.com/idyll-lang/idyll/tree/master/packages/idyll-ast +// Definitions by: Thanh Ngo +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +import { + AST, + Node, + TreeNode, + PropValue, + Property, + PropType +} from "idyll-compiler"; + +/** + * appends a single node to the AST + */ +export function appendNode(ast: AST, node: Node): AST; +/** + * appends multiple nodes to the AST + */ +export function appendNodes(ast: AST, nodes: AST): AST; +/** + * creates a node + */ +export function createNode( + name: string, + props: Record, + children: Node[] +): TreeNode; +/** + * gets all children of the node if there is any + * returns an empty array if there is no child + */ +export function getChildren(node: Node): Node[]; +/** + * executes func against every node + */ +export function walkNodes(ast: AST | null, func: (n: Node) => void): void; +/** + * deeply walks the AST tree and returns all the nodes that satisfies the + * given filter + */ +export function findNodes(ast: AST, filter: (n: Node) => boolean): Node[]; +/** + * visits each child of the node and modifies them using the modifier + */ +export function modifyChildren(node: Node, modifier: (n: Node) => void): Node; +/** + * get all nodes by name + */ +export function getNodesByName(ast: AST, name: string): Node[]; +/** + * filters and returns the same node where all children + * satisfy the given filter + */ +export function filterChildren( + node: Node, + filter: (child: Node) => boolean +): Node; + +/** + * filters every node in the AST and returns a new AST whose nodes + * satisfy the given filter + */ +export function filterNodes(ast: AST, filter: (node: Node) => boolean): AST; + +/** + * applies the modifier against node whose name is the given name + * Returns a new ast with the modified nodes + * + * Names are case-insensitive + */ +export function modifyNodesByName( + ast: AST, + name: string, + modifier: (node: Node) => void +): AST; + +/** + * gets the node's property value + * + * returns null if node is a string node + */ +export function getProperty(node: Node, key: string): PropValue | null; + +/** + * returns all node's properties + * + * returns empty array if node is a string node + */ +export function getProperties(node: Node): Property[]; + +/** + * returns all properties having the given property's type + */ +export function getPropertiesByType(node: Node, type: PropType): Property[]; + +export function prependNode(ast: AST, node: Node): AST; +export function prependNodes(ast: AST, nodes: Node[]): AST; + +/** + * returns a new AST with nodes having the given name + * + * Names are case-insensitive + */ +export function removeNodesByName(ast: AST, name: string): AST; + +/** + * sets the property of the node + * + * if value is an array, the property's type is assumed to be included in it + * otherwise, "value" will be the property's type, and parameter value + * is the property's value + * + */ +export function setProperty( + node: Node, + key: string, + value: PropValue | PropValue[1] +): Node; + +/** + * sets the properties of the node + * + * also see setProperty() + */ +export function setProperties( + node: Node, + properties: Record +): Node; + +/** + * removes the node's property which has the given key + */ +export function removeProperty(node: Node, key: string): Node; diff --git a/types/idyll-ast/tsconfig.json b/types/idyll-ast/tsconfig.json new file mode 100644 index 0000000000..1e026c3377 --- /dev/null +++ b/types/idyll-ast/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "idyll-ast-tests.ts"] +} diff --git a/types/idyll-ast/tslint.json b/types/idyll-ast/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/idyll-ast/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/idyll-compiler/idyll-compiler-tests.ts b/types/idyll-compiler/idyll-compiler-tests.ts new file mode 100644 index 0000000000..c131a8600d --- /dev/null +++ b/types/idyll-compiler/idyll-compiler-tests.ts @@ -0,0 +1,13 @@ +import compile from "idyll-compiler"; + +// Dummy log +const log = (msg: string) => {}; + +// $ExpectType Node[] | Promise +compile("*italics*", { async: false }, () => log("window")); + +// $ExpectType Node[] | Promise +compile("Simple **idyll**", { async: false }); + +// $ExpectType Node[] | Promise +compile(`# Test`); diff --git a/types/idyll-compiler/index.d.ts b/types/idyll-compiler/index.d.ts new file mode 100644 index 0000000000..577dae2070 --- /dev/null +++ b/types/idyll-compiler/index.d.ts @@ -0,0 +1,55 @@ +// Type definitions for idyll-compiler 3.1 +// Project: https://github.com/idyll-lang/idyll/tree/master/packages/idyll-compiler +// Definitions by: Thanh Ngo +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +export type PropType = "variable" | "value" | "expression"; +export type PropData = string | number | boolean; +export type PropKey = string; +export type PropValue = [PropType, PropData]; +export type Property = [PropKey, PropValue]; +type __RecursiveNode = [string, Property[], T[]]; +export interface TreeNode extends __RecursiveNode {} +export type Node = TreeNode | string; +export type AST = Node[]; + +export type PostProcessor = + | ((ast: AST) => AST) + | ((ast: AST, callback: (err: any, value: AST) => void) => void); + +export interface Options { + spellcheck?: boolean; + + smartquotes?: boolean; + + /** + * If false and there is no postprocessors, compiler returns the AST synchronously + * Otherwise, a promise is returned + * + */ + async?: boolean; + + /** + * compiler plugins + * If provided, compiler always compiles asynchronously + */ + postProcessors?: PostProcessor[]; +} + +/** + * Compiles the given idyllMarkup and returns an AST either synchronously + * or asynchronously. + * + * If postProcessors are provided or options.async is set to true: + * compiler returns a promise + * Otherwise, compile returns the AST synchronously + * + */ +declare function compiler( + input: string, + options?: Options, + callback?: () => void +): Promise | AST; + +export default compiler; diff --git a/types/idyll-compiler/tsconfig.json b/types/idyll-compiler/tsconfig.json new file mode 100644 index 0000000000..bb08224d15 --- /dev/null +++ b/types/idyll-compiler/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "idyll-compiler-tests.ts"] +} diff --git a/types/idyll-compiler/tslint.json b/types/idyll-compiler/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/idyll-compiler/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/idyll-document/idyll-document-tests.ts b/types/idyll-document/idyll-document-tests.ts new file mode 100644 index 0000000000..880e017013 --- /dev/null +++ b/types/idyll-document/idyll-document-tests.ts @@ -0,0 +1,5 @@ +import IdyllDocument, { IdyllDocumentProps } from "idyll-document"; +import { createElement } from "react"; + +// $ExpectType ReactElement +createElement(IdyllDocument); diff --git a/types/idyll-document/index.d.ts b/types/idyll-document/index.d.ts new file mode 100644 index 0000000000..47ba1f7845 --- /dev/null +++ b/types/idyll-document/index.d.ts @@ -0,0 +1,62 @@ +// Type definitions for idyll-document 2.9 +// Project: https://github.com/idyll-lang/idyll/tree/master/packages/idyll-document +// Definitions by: Thanh Ngo +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +import { PureComponent, ReactType } from "react"; +import { Options as CompilerOptions, AST } from "idyll-compiler"; + +export interface IdyllDocumentProps { + /** + * Components to be rendered with + */ + components: any; + /** + * the AST to be rendered on the page + * If provided, this will be used insteaed of + * the markup + */ + ast?: AST; + /** + * The Idyll markup to be compiled into AST + */ + markup?: string; + /** + * Initial data set + */ + datasets?: object; + + /** + * The theme for idyll document + * Will correspond to one theme in idyll-theme package + */ + theme?: string; + /** + * The layout for idyll document + * Will correspond to one one layout in idyll-layouts package + */ + layout?: string; + /** + * Callback function if error happens during compilation + */ + onError?: (err: Error) => void; + /** + * The React component rendered when an error occurs + */ + errorComponent?: ReactType<{ + className?: string; + children: Error["message"] | null; + }>; + /** + * Compiler option for Idyll compiler when compiling markup + */ + compilerOptions?: CompilerOptions; + + context?: (context: any) => void; + initialState?: any; +} + +declare class IdyllDocument extends PureComponent {} + +export default IdyllDocument; diff --git a/types/idyll-document/tsconfig.json b/types/idyll-document/tsconfig.json new file mode 100644 index 0000000000..6e3da4c990 --- /dev/null +++ b/types/idyll-document/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "idyll-document-tests.ts"] +} diff --git a/types/idyll-document/tslint.json b/types/idyll-document/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/idyll-document/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/idyll/idyll-tests.ts b/types/idyll/idyll-tests.ts new file mode 100644 index 0000000000..3f4b90c18c --- /dev/null +++ b/types/idyll/idyll-tests.ts @@ -0,0 +1,7 @@ +import idyll = require("idyll"); + +// $ExpectType IdyllInstance +idyll({ + watch: true, + datasets: "." +}); diff --git a/types/idyll/index.d.ts b/types/idyll/index.d.ts new file mode 100644 index 0000000000..a2f1846a7a --- /dev/null +++ b/types/idyll/index.d.ts @@ -0,0 +1,130 @@ +// Type definitions for idyll 2.10 +// Project: https://github.com/idyll-lang/idyll/tree/master/packages/idyll-cli +// Definitions by: Thanh Ngo +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +import { EventEmitter } from "events"; +import { Options as CompilerOptions } from "idyll-compiler"; + +interface Options { + /** + * Monitor input files and rebuild on changes + */ + watch?: boolean; + /** + * The datasets directory + */ + datasets?: string; + /** + * Whether to minify output build + */ + minify?: boolean; + /** + * + * Pre-render HTML as part of the build + */ + ssr?: boolean; + /** + * The components directory + */ + components?: boolean; + /** + * The default component directory + * This corresponds to where the idyll-components package stays + */ + defaultComponents?: boolean; + /** + * The layout defined in idyll-layouts package + */ + layout?: string; + /** + * The theme defined in idyll-theme package + */ + theme?: string; + /** + * The output directory for compiled documents + */ + output?: string; + /** + * Custom port to bind the local server to. + */ + port?: number; + /** + * Temporary directory used by idyll + */ + temp?: string; + /** + * path to HTML template + * + */ + template?: string; + + /** + * Custom CSS file to include in output + */ + css?: string; + /** + * Custom browserify transforms to apply. + */ + transform?: string[]; + /** + * Compiler options + */ + compiler?: CompilerOptions; + /** + * the idyll file to be compiled into + */ + inputFile?: string; + + /** + * used internally by IdyllInstance + */ + inputConfig?: { + components: any; + transform: any[]; + compiler: CompilerOptions; + }; +} + +type PredefinedFile = + | "APP_PATH" + | "CSS_INPUT_FILE" + | "DATA_DIR" + | "HTML_TEMPLATE_FILE" + | "IDYLL_INPUT_FILE" + | "INPUT_DIR" + | "PACKAGE_FILE" + | "OUTPUT_DIR" + | "TMP_DIR" + | "CSS_OUTPUT_FILE" + | "HTML_OUTPUT_FILE" + | "JS_OUTPUT_FILE"; + +type ComponentFiles = "COMPONENT_DIRS" | "DEFAULT_COMPONENT_DIRS"; + +type Paths = Record & Record; + +declare class IdyllInstance extends EventEmitter { + /** + * Returns internal paths used by idyll-cli + */ + getPaths(): Paths; + /** + * Returns idyll compiling's options + */ + getOptions(): Options; + /** + * + * if indexIdyllMarkup is provided, compiles it + * + * Otherwise, compiles and optionally watches + * the idyll file at IOptions.inputFile + * + */ + build(indexIdyllMarkup?: string | null): this; +} + +declare function idyll(options: Options, callback?: () => void): IdyllInstance; + +export = idyll; diff --git a/types/idyll/tsconfig.json b/types/idyll/tsconfig.json new file mode 100644 index 0000000000..6e24200367 --- /dev/null +++ b/types/idyll/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "idyll-tests.ts"] +} diff --git a/types/idyll/tslint.json b/types/idyll/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/idyll/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/iframe-resizer/index.d.ts b/types/iframe-resizer/index.d.ts index 70d9c1d4f3..3858cab780 100644 --- a/types/iframe-resizer/index.d.ts +++ b/types/iframe-resizer/index.d.ts @@ -31,7 +31,7 @@ export interface IFrameOptions { * Override the default body margin style in the iFrame. A string can be any valid value for the * CSS margin attribute, for example '8px 3em'. A number value is converted into px. */ - bodyMargin?: number; + bodyMargin?: number | string; /** * When set to true, only allow incoming messages from the domain listed in the src property of the iFrame tag. * If your iFrame navigates between different domains, ports or protocols; then you will need to diff --git a/types/ignite-ui/index.d.ts b/types/ignite-ui/index.d.ts index bff55ec33d..a57a3606fe 100644 --- a/types/ignite-ui/index.d.ts +++ b/types/ignite-ui/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Ignite UI 17.2 +// Type definitions for Ignite UI 18.1 // Project: https://github.com/IgniteUI/ignite-ui // Definitions by: Ignite UI // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -6,12 +6,14 @@ interface DataSourceSettingsPaging { /** * Paging is not enabled by default + * */ enabled?: boolean; /** * Type for the paging operation * + * * Valid values: * "local" Data is paged client-side. * "remote" A remote request is done and URL params encoded @@ -20,26 +22,31 @@ interface DataSourceSettingsPaging { /** * Number of records on each page + * */ pageSize?: number; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size + * */ pageSizeUrlKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index + * */ pageIndexUrlKey?: string; /** * Current page index + * */ pageIndex?: number; /** * Whether when a new page of data is requested we should append the new data to the existing data + * */ appendPage?: boolean; @@ -61,46 +68,55 @@ interface DataSourceSettingsFiltering { /** * Enables or disables case sensitive filtering on the data. Works only for local filtering + * */ caseSensitive?: boolean; /** * If the type of paging/sorting/filtering is local and applyToAllData is true, filtering will be performed on the whole data source that's present locally, otherwise only on the current dataView. if type is remote, this setting doesn't have any effect. + * */ applyToAllData?: boolean; /** * Can point to either a string or a function object. The parameters that are passed are 1) the data array to be filtered, 2) the filtering expression definitions. Should return an array of the filtered data + * */ customFunc?: any; /** * Url key that will be encoded in the request if remote filtering is performed. Default value of null implies OData-style URL encoding. Please see http://www.odata.org/developers/protocols/uri-conventions for details + * */ filterExprUrlKey?: string; /** * Url key that will be encoded in the request, specifying if the filtering logic will be AND or OR + * */ filterLogicUrlKey?: string; /** * Data will be initially filtered accordingly, directly after dataBind() + * */ defaultFields?: any[]; /** * A list of expression objects, containing the following key-value pairs: fieldName, expression (search string), condition , and logic (AND/OR) + * */ expressions?: any[]; /** * An "SQL-like' encoded expressions string. Takes precedence over "expressions". Example: col2 > 100; col2 LIKE %test% + * */ exprString?: string; /** * An object containing custom defined filtering conditions as objects. + * */ customConditions?: any; @@ -114,6 +130,7 @@ interface DataSourceSettingsSorting { /** * Sorting direction * + * * Valid values: * "none" * "asc" @@ -123,32 +140,38 @@ interface DataSourceSettingsSorting { /** * When defaultDirection is different than "none", and defaultFields is specified, data will be initially sorted accordingly, directly after dataBind() + * */ defaultFields?: any[]; /** * If the sorting type is local and applyToAllData is true, sorting will be performed on the whole data source that's present locally, otherwise only on the current dataView. If sorting type is remote, this setting doesn't have any effect. + * */ applyToAllData?: boolean; /** * Custom sorting function that can point to either a string or a function object. When the function is called, the following arguments are passed: data array, fields (array of field definitions) , direction ("asc" or "desc"). The function should return a sorted data array + * */ customFunc?: any; /** * Custom comparison sorting function. Accepts the following arguments: fields, schema, booleand value whether sorting is ascending , convert function(please check option for customConvertFunc) and returns a value 0 indicating that values are equal, 1 indicating that val1 > val2 and -1 indicating that val1 < val2 + * */ compareFunc?: any; /** * Custom data value conversion function(called from sorting function). Accepts a value of the data cell and column key and should return the converted value + * */ customConvertFunc?: any; /** * Specifies whether sorting will be applied locally or remotely (via a remote request) * + * * Valid values: * "remote" * "local" @@ -157,31 +180,37 @@ interface DataSourceSettingsSorting { /** * Specifies if sorting will be case sensitive or not. Works only for local sorting + * */ caseSensitive?: boolean; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Default is null and uses OData conventions + * */ sortUrlKey?: string; /** * URL param value for ascending type of sorting. Default is null and uses OData conventions + * */ sortUrlAscValueKey?: string; /** * URL param value for descending type of sorting. Default is null and uses OData conventions + * */ sortUrlDescValueKey?: string; /** * A list of sorting expressions , consisting of the following keys (and their respective values): fieldName, direction and compareFunc (optional) + * */ expressions?: any[]; /** * Takes precedence over experssions, an "SQL-like" encoded expressions string : see sort(). Example col2 > 100 ORDER BY asc + * */ exprString?: string; @@ -194,28 +223,33 @@ interface DataSourceSettingsSorting { interface DataSourceSettingsGroupby { /** * Default collapse state + * */ defaultCollapseState?: boolean; /** * The name of the property that determines whether a record from the group data view is a group record. + * */ groupRecordKey?: string; /** * The name of the property that determines whether a record from the group data view is a summary group record. + * */ groupSummaryRecordKey?: string; /** * Array of objects containing the summaries for each field. * Each summary object has the following format { field:"fieldName", summaryFunctions: [] }, where the summaryFunctions arrays can contain either a summary name (avg, sum, count etc.) or a custom function for caclulating a custom summary. + * */ summaries?: any[]; /** * Specifies the postion for the summaries for each field inside each group. * + * * Valid values: * "top" One summary row will be displayed at the top for each group * "bottom" One summary row will be displayed at the bottom for each group @@ -226,6 +260,7 @@ interface DataSourceSettingsGroupby { /** * . Specifies how paging should be applied when there is at least one grouped column * + * * Valid values: * "allRecords" Paging is applied for all records - data and non-data records(like group-by records) * "dataRecordsOnly" Paging is applied ONLY for data records. Non-data records are disregarded in paging calculations. @@ -242,6 +277,7 @@ interface DataSourceSettingsSummaries { /** * Specifies whether summaries will be applied locally or remotely (via a remote request) * + * * Valid values: * "remote" A remote request is done and URL params encoded * "local" Data is paged client-side. @@ -250,17 +286,20 @@ interface DataSourceSettingsSummaries { /** * Url key for retrieving data from response - used only when summaries are remote + * */ summaryExprUrlKey?: string; /** * Key for retrieving data from the summaries response - used only when summaries are remote + * */ summariesResponseKey?: string; /** * Determines when the summary values are calculated * + * * Valid values: * "priortofilteringandpaging" * "afterfilteringbeforepaging" @@ -270,6 +309,7 @@ interface DataSourceSettingsSummaries { /** * A list of column settings that specifies custom summaries options per column basis + * */ columnSettings?: any[]; @@ -282,52 +322,62 @@ interface DataSourceSettingsSummaries { interface DataSourceSettings { /** * Setting this is only necessary when the data source is set to a table in string format. we need to create an invisible dummy data container in the body and append the table data to it + * */ id?: string; /** * This is the property in the dataView where actual resulting records will be put. (So the dataView will not be array but an object if this is defined), after the potential data source transformation + * */ outputResultsName?: string; /** * Callback function to call when data binding is complete + * */ callback?: Function; /** * Object on which to invoke the callback function + * */ callee?: any; /** * This is the normalized (transformed) resulting data, after it's fetched from the data source + * */ data?: any[]; /** * This is the source of data - non normalized. Can be an array, can be reference to some JSON object, can be a DOM element for a HTML TABLE, or a function + * */ dataSource?: any; /** * Client-side dataBinding event. Can be a string pointing to a function name, or an object pointing to a function + * */ dataBinding?: any; /** * Client-side dataBound event. Can be a string pointing to a function name, or an object pointing to a function + * */ dataBound?: any; /** * Specifies the HTTP verb to be used to issue the request + * */ requestType?: string; /** * Type of the data source * + * * Valid values: * "json" Specifies that the data source is an already evaluated JSON (JavaScript object/array) or a string that can be evaluated to JSON * "xml" Specifies that the data source is a XML Document object or a string that can be evaluated to XML @@ -347,27 +397,32 @@ interface DataSourceSettings { /** * A schema object that defines which fields from the data to bind to + * */ schema?: any; /** * The unique field identifier + * */ primaryKey?: string; /** * Property in the response which specifies the total number of records in the backend (this is needed for paging) + * */ responseTotalRecCountKey?: string; /** * Property in the response which specifies where the data records array will be held (if the response is wrapped) + * */ responseDataKey?: string; /** * Response type when a URL is set as the data source. See http://api.jquery.com/jQuery.ajax/ => dataType * + * * Valid values: * "json" * "xml" @@ -380,46 +435,55 @@ interface DataSourceSettings { /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ responseContentType?: string; /** * If set to false will disable transformations on schema, even if it is defined locally in the javascript code + * */ localSchemaTransform?: boolean; /** * Event that is fired before URL parameters are encoded. Can point to a function name or the function object itself + * */ urlParamsEncoding?: any; /** * Event that is fired after URL parameters are encoded (When a remote request is done). Can point to a function name or the function object itself + * */ urlParamsEncoded?: any; /** * Settings related to built-in paging functionality + * */ paging?: DataSourceSettingsPaging; /** * Settings related to built-in filtering functionality + * */ filtering?: DataSourceSettingsFiltering; /** * Settings related to built-in sorting functionality + * */ sorting?: DataSourceSettingsSorting; /** * Settings related to built-in group by functionality + * */ groupby?: DataSourceSettingsGroupby; /** * Settings related to built-in summaries functionality + * */ summaries?: DataSourceSettingsSummaries; @@ -427,11 +491,13 @@ interface DataSourceSettings { * *** IMPORTANT DEPRECATED *** * A list of field definitions specifying the schema of the data source. * Field objects description: {name, [type], [xpath]} + * */ fields?: any[]; /** * If true, will serialize the transaction log of updated values - if any - whenever commit is performed via a remote request. + * */ serializeTransactionLog?: boolean; @@ -440,16 +506,19 @@ interface DataSourceSettings { * if a new row is added, and then deleted, there will be no transaction added to the log * if an edit is made to a row or cell, then the value is brought back to its original value, the transaction should be removed * Note: This option takes effect only when autoCommit is set to false. + * */ aggregateTransactions?: boolean; /** * If auto commit is true, data will be automatically commited to the data source, once a value or a batch of values are updated via saveChanges() + * */ autoCommit?: boolean; /** * Specifies an update remote URL, to which an AJAX request will be made as soon as saveChages() is called. + * */ updateUrl?: string; @@ -459,6 +528,7 @@ interface DataSourceSettings { * Use item.row to obtain reference to the added row. * Use item.rowId to get the row ID. * Use dataSource to obtain reference to $.ig.DataSource. + * */ rowAdded?: Function; @@ -469,6 +539,7 @@ interface DataSourceSettings { * Use item.newRow to obtain reference to the updated row. * Use item.oldRow to obtain reference to the row that was updated. * Use dataSource to obtain reference to $.ig.DataSource. + * */ rowUpdated?: Function; @@ -479,6 +550,7 @@ interface DataSourceSettings { * Use item.rowId to get the row ID. * Use item.rowIndex to get the row index. * Use dataSource to obtain reference to $.ig.DataSource. + * */ rowInserted?: Function; @@ -488,6 +560,7 @@ interface DataSourceSettings { * Use item.rowId to get the row ID. * Use item.rowIndex to get the row index. * Use dataSource to obtain reference to $.ig.DataSource. + * */ rowDeleted?: Function; @@ -528,6 +601,8 @@ class DataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -574,12 +649,15 @@ class DataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -591,12 +669,13 @@ class DataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -604,6 +683,7 @@ class DataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -816,6 +896,9 @@ class DataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -876,6 +959,8 @@ class DataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -955,6 +1040,8 @@ class TypeParser { /** * L.A. 18 June 2012 Fixing bug #113265 Column 'date' shows empty values as 'NaN' + * + * @param obj */ toDate(obj: Object): void; toNumber(obj: Object): void; @@ -977,6 +1064,7 @@ interface DataSchemaSchemaFields { * bool * date * object + * */ type?: string|number|boolean|Date|Object; @@ -1018,6 +1106,11 @@ interface DataSchemaSchema { */ outputResultsName?: string; + /** + * This is the property (xpath) in the data source where the child records of a record are located. Used in XML binding. + */ + childDataProperty?: string; + /** * Option for DataSchemaSchema */ @@ -1091,6 +1184,8 @@ class RemoteDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -1137,12 +1232,15 @@ class RemoteDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -1154,12 +1252,13 @@ class RemoteDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -1167,6 +1266,7 @@ class RemoteDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -1379,6 +1479,9 @@ class RemoteDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -1439,6 +1542,8 @@ class RemoteDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -1555,6 +1660,8 @@ class JSONDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -1601,12 +1708,15 @@ class JSONDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -1618,12 +1728,13 @@ class JSONDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -1631,6 +1742,7 @@ class JSONDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -1843,6 +1955,9 @@ class JSONDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -1903,6 +2018,8 @@ class JSONDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -2097,6 +2214,9 @@ class RESTDataSource { /** * Posts to the restSettings urls using $.ajax, by serializing the changes as url params. + * + * @param success + * @param error */ saveChanges(success: Object, error: Object): void; @@ -2127,6 +2247,8 @@ class RESTDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -2173,12 +2295,15 @@ class RESTDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -2190,12 +2315,13 @@ class RESTDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -2203,6 +2329,7 @@ class RESTDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -2407,6 +2534,9 @@ class RESTDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -2467,6 +2597,8 @@ class RESTDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -2543,6 +2675,7 @@ RESTDataSource: typeof Infragistics.RESTDataSource; interface JSONPDataSourceSettings { /** * Override the callback function name in a jsonp request. Sets option jsonp in $.ajax functionbool Setting the jsonp option to false prevents jQuery from adding the "?callback" string to the URL or attempting to use "=?" for transformation + * */ jsonp?: string|boolean; @@ -2593,6 +2726,8 @@ class JSONPDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -2639,12 +2774,15 @@ class JSONPDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -2656,12 +2794,13 @@ class JSONPDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -2669,6 +2808,7 @@ class JSONPDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -2881,6 +3021,9 @@ class JSONPDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -2941,6 +3084,8 @@ class JSONPDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -3045,6 +3190,8 @@ class XmlDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -3091,12 +3238,15 @@ class XmlDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -3108,12 +3258,13 @@ class XmlDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -3121,6 +3272,7 @@ class XmlDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -3333,6 +3485,9 @@ class XmlDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -3393,6 +3548,8 @@ class XmlDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -3509,6 +3666,8 @@ class FunctionDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -3555,12 +3714,15 @@ class FunctionDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -3572,12 +3734,13 @@ class FunctionDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -3585,6 +3748,7 @@ class FunctionDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -3797,6 +3961,9 @@ class FunctionDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -3857,6 +4024,8 @@ class FunctionDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -3973,6 +4142,8 @@ class HtmlTableDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -4019,12 +4190,15 @@ class HtmlTableDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -4036,12 +4210,13 @@ class HtmlTableDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -4049,6 +4224,7 @@ class HtmlTableDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -4261,6 +4437,9 @@ class HtmlTableDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -4321,6 +4500,8 @@ class HtmlTableDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -4425,6 +4606,8 @@ class ArrayDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -4471,12 +4654,15 @@ class ArrayDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -4488,12 +4674,13 @@ class ArrayDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -4501,6 +4688,7 @@ class ArrayDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -4713,6 +4901,9 @@ class ArrayDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -4773,6 +4964,8 @@ class ArrayDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -4940,6 +5133,8 @@ class MashupDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -4986,12 +5181,15 @@ class MashupDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -5003,12 +5201,13 @@ class MashupDataSource { * @param ds the data source in which to search for the record. When not set it will use the current data source. * @param objPath Not used in $.ig.DataSource */ - findRecordByKey(key: string, ds?: string, objPath?: string): Object; + findRecordByKey(key: Object, ds?: string, objPath?: string): Object; /** * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -5016,6 +5215,7 @@ class MashupDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -5167,6 +5367,9 @@ class MashupDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -5227,6 +5430,8 @@ class MashupDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -5435,6 +5640,7 @@ interface TreeHierarchicalDataSourceSettingsTreeDSPaging { /** * When data flows to the next page there are a couple of different modes that can help communicate the context of a leaf level row. When mode option is 'rootLevelOnly' then the context row always shows the value of the contextRowRootText option. * + * * Valid values: * "none" Does not render the contextual row * "parent" Renders a read-only representation of the immediate parent row @@ -5513,16 +5719,19 @@ interface TreeHierarchicalDataSourceSettingsTreeDS { /** * If set to TRUE it is expected that the source of data is normalized and transformed(has set dataLevel and expansion state). The source of data is used as flatDataView. Usually used when the paging is remote and paging mode is allLevels, or features are remote(and the processing of the returned result should be made on the server) + * */ initialFlatDataView?: boolean; /** * Specifies a custom function to be called when requesting data to the server - usually when expanding/collapsing record. If set the function should return the encoded URL. It takes as parameters: data record(type: object), expand - (type: bool). + * */ customEncodeUrlFunc?: Function; /** * If true save expansion states in internal list and send it to the server. Applying to one of the main constraint of the REST architecture Stateless Interactions - client specific data(like expansion states) should NOT be stored on the server + * */ persistExpansionStates?: boolean; @@ -5764,6 +5973,7 @@ class TreeHierarchicalDataSource { * @param fieldExpressions a list of field expression definitions * @param boolLogic boolean logic. Accepted values are AND and OR. * @param keepFilterState if keepFilterState is set to true, it will not discard previous filtering expressions + * @param fieldExpressionsOnStrings */ filter(fieldExpressions: Object, boolLogic: Object, keepFilterState: boolean, fieldExpressionsOnStrings: Object): void; @@ -5796,6 +6006,8 @@ class TreeHierarchicalDataSource { /** * Gets the path of a record by the record or the record's key + * + * @param record */ getPathBy(record: Object): string; @@ -5812,6 +6024,7 @@ class TreeHierarchicalDataSource { * Removes a specific record denoted by the primaryKey of the passed key parameter from the data source * * @param key primary key of the record + * @param origDs */ removeRecordByKey(key: Object, origDs: Object): void; @@ -5869,6 +6082,8 @@ class TreeHierarchicalDataSource { * 1. Before paging and filtering * 2. After filtering before paging * 3. After filtering and paging + * + * @param transformedExecution */ transformedData(transformedExecution: Object): Object; @@ -5915,12 +6130,15 @@ class TreeHierarchicalDataSource { /** * Gets/sets the dataSource setting. If no parameter is specified, returns settings.dataSource + * + * @param ds */ dataSource(ds?: Object): Object; /** * Gets/sets the type of the dataSource. If no parameter is specified, returns settings.type * + * @param t * @return json|xml|unknown|array|function|htmlTableString|htmlTableId|htmlTableDom|invalid|remoteUrl|empty */ type(t?: Object): string; @@ -5929,6 +6147,7 @@ class TreeHierarchicalDataSource { * Removes a record from the data source at specific index. * * @param index index of record + * @param origDs */ removeRecordByIndex(index: number, origDs: Object): void; @@ -6063,6 +6282,9 @@ class TreeHierarchicalDataSource { * match the number of records that exists on the client * * @param count the total number of records + * @param key + * @param dsObj + * @param context */ totalRecordsCount(count?: number, key?: Object, dsObj?: Object, context?: Object): number; @@ -6113,6 +6335,8 @@ class TreeHierarchicalDataSource { /** * For internal use + * + * @param dirty */ pageSizeDirty(dirty: Object): void; @@ -6221,9 +6445,147 @@ interface IgniteUIStatic { SimpleTextMarkerTemplate: typeof Infragistics.SimpleTextMarkerTemplate; } +interface ShapeDataSourceSettings { + /** + * The unique identifier. + */ + id?: string; + + /** + * The Uri of the .shp portion of the Shapefile. + */ + shapefileSource?: string; + + /** + * The Uri of the .dbf portion of the Shapefile. + */ + databaseSource?: string; + + /** + * Callback function to call when data binding is complete. + */ + callback?: Function; + + /** + * Object on which to invoke the callback function. + */ + callee?: any; + + /** + * Callback function to call to allow shape records to be transformed. + * paramType="object" the shape record to be transformed. + */ + transformRecord?: Function; + + /** + * Callback function to call to allow points in the shape records to be transformed. + * paramType="object" the point to be transformed in place. The object will look like { x: value, y: value2 } + */ + transformPoint?: Function; + + /** + * Callback function to call to allow the bounds of the shape data source to be transformed. + * paramType="object" the bounds of the shape datasource to be transformed in place. The object will look like { top: value, left: value, width: value, height: value } + */ + transformBounds?: Function; + + /** + * Callback function to call when the import process has been completed + * paramType="object" the ShapeDataSource instance + */ + importCompleted?: Function; + + /** + * Option for ShapeDataSourceSettings + */ + [optionName: string]: any; +} + +declare namespace Infragistics { +class ShapeDataSource { + constructor(settings: ShapeDataSourceSettings); + + /** + * Loads to the current data source + */ + dataBind(): void; + + /** + * Returns true if data is loaded + */ + isBound(): boolean; + dataView(): void; + + /** + * Returns the current converter instance + */ + converter(): Object; +} +} +interface IgniteUIStatic { +ShapeDataSource: typeof Infragistics.ShapeDataSource; +} + +interface TriangulationDataSourceSettings { + /** + * The unique identifier. + */ + id?: string; + + /** + * A Uri specifying the location of the Itf file. + */ + source?: string; + + /** + * The TriangulationSource which is typically created after importing the Itf from the Source Uri. + */ + triangulationSource?: string; + + /** + * Callback function to call when data binding is complete + */ + callback?: Function; + + /** + * Object on which to invoke the callback function + */ + callee?: any; + + /** + * Option for TriangulationDataSourceSettings + */ + [optionName: string]: any; +} + +declare namespace Infragistics { +class TriangulationDataSource { + constructor(settings: TriangulationDataSourceSettings); + + /** + * Loads to the current data source + */ + dataBind(): void; + + /** + * Returns true if data is loaded + */ + isBound(): boolean; + dataView(): void; + + /** + * Returns the current converter instance + */ + converter(): Object; +} +} +interface IgniteUIStatic { +TriangulationDataSource: typeof Infragistics.TriangulationDataSource; +} + interface GridExcelExporterCallbacks { /** - * Set a callback that is fired after the cell is exported. + * A function to call after the cell is exported. * Function takes arguments sender and args. * Use args.columnKey to get the igGrid column key of the cell. * Use args.columnIndex to get the igGrid column index of the cell. @@ -6231,11 +6593,12 @@ interface GridExcelExporterCallbacks { * Use args.rowId to get key or index of row. * Use args.xlRow to get reference to the worksheet row. * Use args.grid to get reference to the igGrid widget. + * */ cellExported?: Function; /** - * Cancel="true" Set a callback that is fired before the cell exporting. + * Cancel="true" A function to call before the cell is exported. * Function takes arguments sender and args. * Use args.columnKey to get the igGrid column key of the cell. * Use args.columnIndex to get the igGrid column index of the cell. @@ -6243,96 +6606,113 @@ interface GridExcelExporterCallbacks { * Use args.rowId to get key or index of row. * Use args.xlRow to get reference to the worksheet row. * Use args.grid to get reference to the igGrid widget. + * Return false in order to cancel exporting the cell. + * */ cellExporting?: Function; /** - * Set a callback that is fired when exporting fails. - * Use error to get the reference of error object. + * A function to call when exporting fails. + * Use error to obtain reference of the error object. + * */ error?: Function; /** - * Cancel="true" Set a callback that is fired when export is ending, but the document is not saved. + * A function to call before the Excel file is downloaded. * Function takes arguments sender and args. * Use args.grid to get reference to the igGrid widget. - * Use args.workbook to get reference to the excel workbook. - * Use args.worksheet to get reference to the excel worksheet. + * Use args.workbook to get reference to the Excel workbook. + * Use args.worksheet to get reference to the Excel worksheet. + * Return false in order to cancel downloading the file. + * */ exportEnding?: Function; /** - * Cancel="true" Set a callback that is fired when the exporting has started. + * Cancel="true" A function to call before exporting starts. * Function takes arguments sender and args. * Use args.grid to get reference to igGrid widget. + * Return false in order to cancel exporting. + * */ exportStarting?: Function; /** - * Set a callback that is fired after the header cell is exported. + * A function to call after a header cell is exported. * Function takes arguments sender and args. - * Use args.headerText to get the igGrid column key of the header cell. - * Use args.columnKey to get the igGrid column key of the header cell. - * Use args.columnIndex to get the igGrid column index of the header cell. + * Use args.headerText to get the igGrid column header text. + * Use args.columnKey to get the igGrid column key. + * Use args.columnIndex to get the igGrid column index. + * */ headerCellExported?: Function; /** - * Cancel="true" Set a callback that is fired before the header cell exporting. + * A function to call before the header cell is exported. * Function takes arguments sender and args. - * Use args.headerText to get or set the igGrid column key of the header cell. - * Use args.columnKey to get the igGrid column key of the header cell. - * Use args.columnIndex to get the igGrid column index of the header cell. + * Use args.headerText to get or set the igGrid column header text. + * Use args.columnKey to get the igGrid column key. + * Use args.columnIndex to get the igGrid column index. + * Return false in order to cancel exporting the cell. + * */ headerCellExporting?: Function; /** - * Cancel="true" Set a callback that is fired after the row is exported. + * Cancel="true" A function to call after the row is exported. * Function takes arguments sender and args. * Use args.rowId to get key or index of row. * Use args.element to get row TR element. * Use args.xlRow to get reference to the worksheet row. * Use args.grid to get reference to the igGrid widget. - * Note: When exporting an igHierarchicalGrid this callback is available only for the root grid rows. + * Note: When exporting igHierarchicalGrid this callback is available only for the root grid rows. + * */ rowExported?: Function; /** - * Cancel="true" Set a callback that is fired before the row exporting. + * A function to call before the row is exported. * Function takes arguments sender and args. * Use args.rowId to get key or index of row. * Use args.element to get row TR element. * Use args.xlRow to get reference to the worksheet row. * Use args.grid to get reference to the igGrid widget. - * Note: When exporting an igHierarchicalGrid this callback is available only for the root grid rows. + * Return false in order to cancel exporting the row. + * Note: When exporting igHierarchicalGrid this callback is available only for the root grid rows. + * */ rowExporting?: Function; /** - * Set a callback that is fired when exporting is successful. + * A function to call when saving the file succeeds. * Use data to get the reference of saved object. + * */ success?: Function; /** - * Set a callback that is fired after the summary is exported. + * A function to call after the summary is exported. * Function takes arguments sender and args. * Use args.headerText to get the igGrid column header text. * Use args.columnKey to get the igGrid column key. * Use args.columnIndex to get the igGrid column index. * Use args.summary to get a reference to the summary object. - * Use args.xlRowIndex to get the worksheet row index. + * Use args.xlRowIndex to get the Excel worksheet row index. + * */ summaryExported?: Function; /** - * Cancel="true" Set a callback that is fired before the summary exporting. + * A function to call before the summary is exported. * Function takes arguments sender and args. * Use args.headerText to get the igGrid column header text. * Use args.columnKey to get the igGrid column key. * Use args.columnIndex to get the igGrid column index. * Use args.summary to get a reference to the summary object. * Use args.xlRowIndex to get reference to worksheet row index. + * Return false in order to cancel exporting the summary. + * */ summaryExporting?: Function; @@ -6346,6 +6726,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether fixed columns will be applied in the exported table. This is set to none by default, but will change to applied if column fixing feature is defined in the igGrid. * + * * Valid values: * "none" No column fixing will be applied in the excel document. * "applied" Column fixing will be applied in the excel document. @@ -6355,6 +6736,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether filtering will be applied in the exported table. this is set to none by default, but will change to applied if filtering feature is defined in the igGrid. * + * * Valid values: * "none" No filtering will be applied in the excel document. * "applied" Filtering will be applied in the excel document. @@ -6365,6 +6747,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether hidden columns will be removed from the exported table. This is set to none by default, but will change to applied if hiding feature is defined in the igGrid. * + * * Valid values: * "none" All hidden columns will be exported to the excel document. * "applied" Hidden columns will be exported as hidden in the excel document. @@ -6375,6 +6758,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether the rows on the current page or entire data will exported. * + * * Valid values: * "currentPage" Only current page will be exported to the excel document. * "allRows" All pages will be exported to the excel document. @@ -6384,6 +6768,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether sorting will be applied in the exported table. This is set_ to none by default, but will change to applied if sorting feature is defined in the igGrid. * + * * Valid values: * "none" No sorting will be applied in the excel document. * "applied" Sorting will be applied in the excel document. @@ -6393,6 +6778,7 @@ interface GridExcelExporterSettingsGridFeatureOptions { /** * Indicates whether summaries will be added in the exported table. This is set to none by default, but will change to applied if summaries feature is defined in the igGrid. * + * * Valid values: * "none" No summaries will be exported to the excel document. * "applied" Summaries will be exported to the excel document. @@ -6407,13 +6793,15 @@ interface GridExcelExporterSettingsGridFeatureOptions { interface GridExcelExporterSettings { /** - * List of strings containing the keys for the columns that will not be exported. + * An array of strings containing the keys for the columns that will not be exported. + * */ columnsToSkip?: any[]; /** * Indicates whether all sublevel data will be exported, or only data under expanded rows. * + * * Valid values: * "allRows" All sublevel data will be exported. * "expandedRows" Only data under expanded rows will be exported. @@ -6422,6 +6810,7 @@ interface GridExcelExporterSettings { /** * Specifies the name of the excel file that will be generated. + * */ fileName?: string; @@ -6433,6 +6822,7 @@ interface GridExcelExporterSettings { /** * Indicates whether excel table styles will be the same as grid styles. This is set to applied by default. Custom grid themes are not supported. * + * * Valid values: * "none" The styles from the grid are not applied to the table region. * "applied" The styles from the grid are applied to the table region. @@ -6441,20 +6831,22 @@ interface GridExcelExporterSettings { /** * List of strings containing the keys for the worksheet columns which will not be applied any filtering + * */ skipFilteringOn?: any[]; /** - * Specifies the excel table style region. - * You can set the following table style + * Specifies the excel table style region. The following table styles are available: * TableStyleMedium[1-28] * TableStyleLight[1-21] * TableStyleDark[1-11] + * */ tableStyle?: string; /** - * Specifies the name of workbook where the igGrid will be exported. + * Specifies the worksheet name where the igGrid will be exported. + * */ worksheetName?: string; @@ -6473,7 +6865,7 @@ class GridExcelExporter { /** * Exports the provided igGrid to Excel document. * - * @param grid Grid to be exported. + * @param grid jQuery element of the igGrid. * @param userSettings Settings for exporting the grid. * @param userCallbacks Callbacks for the events. */ @@ -6608,6 +7000,11 @@ interface OlapXmlaDataSourceOptions { */ mdxSettings?: OlapXmlaDataSourceOptionsMdxSettings; + /** + * Specifies if the data is to be served by a XMLA remote provider. + */ + isRemote?: boolean; + /** * Option for OlapXmlaDataSourceOptions */ @@ -7528,16 +7925,27 @@ class OlapResultView { /** * Creates a new $.ig.OlapResultView object with result object having the same structure as the original one and new visibleResult where the tuples which appear as children under specified tuple and member index are no longer present. + * + * @param axisName + * @param tupleIndex + * @param memberIndex */ collapseTupleMember(axisName: Object, tupleIndex: Object, memberIndex: Object): Object; /** * Creates a $.ig.OlapResultView view object with result object having the same structure as the original one and new visibleResult where the tuples which appear as children under specified tuple and member index are accessible as part of the visibleResult. + * + * @param axisName + * @param tupleIndex + * @param memberIndex */ expandTupleMember(axisName: Object, tupleIndex: Object, memberIndex: Object): Object; /** * Creates a new $.ig.OlapResultView object as the axis specified by axisName of the original result object is extended with the tuples of the same axis found into supplied partialResult object. + * + * @param partialResult + * @param axisName */ extend(partialResult: Object, axisName: Object): Object; } @@ -7767,21 +8175,29 @@ declare namespace Infragistics { class Catalog { /** * Returns the name of the catalog. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the catalog. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the catalog used when displaying the name of the catalog to the user. + * + * @param value */ caption(value: Object): string; /** * Returns the description of the catalog which is a human-readable description of the catalog + * + * @param value */ description(value: Object): string; } @@ -7791,21 +8207,29 @@ declare namespace Infragistics { class Cube { /** * Returns the name of the cube. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the cube. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the cube used when displaying the name of the cube to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the cube. + * + * @param value */ description(value: Object): string; @@ -7815,16 +8239,22 @@ class Cube { * $.ig.CubeType.prototype.cube = 0; * $.ig.CubeType.prototype.dimension = 1; * $.ig.CubeType.prototype.unknown = 2; + * + * @param value */ cubeType(value: Object): number; /** * Returns the date and time on which the cube was last processed. + * + * @param value */ lastProcessed(value: Object): Object; /** * Returns the date and time on which the cube was last updated. + * + * @param value */ lastUpdated(value: Object): Object; } @@ -7834,21 +8264,29 @@ declare namespace Infragistics { class Dimension { /** * Returns the name of the dimension. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the dimension. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the dimension used when displaying the name of the dimension to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the dimension. + * + * @param value */ description(value: Object): string; @@ -7872,6 +8310,8 @@ class Dimension { * $.ig.DimensionType.prototype.organization = 15; * $.ig.DimensionType.prototype.billOfMaterials = 16; * $.ig.DimensionType.prototype.geography = 17; + * + * @param value */ dimensionType(value: Object): number; } @@ -7881,36 +8321,50 @@ declare namespace Infragistics { class Hierarchy { /** * Returns the name of the hierarchy. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the hierarchy. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the hierarchy used when displaying the name of the hierarchy to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the hierarchy. + * + * @param value */ description(value: Object): string; /** * Returns the unique name of the default member for the hierarchy. + * + * @param value */ defaultMember(value: Object): string; /** * Returns the unique name of the 'All' member for the hierarchy. + * + * @param value */ allMember(value: Object): string; /** * Returns the unique name of the dimension that contains the hierarchy. + * + * @param value */ dimensionUniqueName(value: Object): string; @@ -7925,12 +8379,16 @@ class Hierarchy { * * $.ig.HierarchyOrigin.prototype.systemInternal = 4; * Identifies attributes with no attribute . + * + * @param value */ hierarchyOrigin(value: Object): number; /** * Returns the hierarchy display folder path to be used when displaying the hierarchy in the user interface. * Folder names will be separated by a semicolon (;). Nested folders are indicated by a backslash (\). + * + * @param value */ hierarchyDisplayFolder(value: Object): string; } @@ -7940,26 +8398,36 @@ declare namespace Infragistics { class Measure { /** * Returns the name of the measure. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the measure. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the measure used when displaying the name of the measure to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the measure. + * + * @param value */ description(value: Object): string; /** * Returns the name of the measure group this measure belongs to. + * + * @param value */ measureGroupName(value: Object): string; @@ -8010,17 +8478,23 @@ class Measure { * * $.ig.AggregatorType.prototype.calculated = 127; * The aggregated function will returns the result derived from a formula. + * + * @param value */ aggregatorType(value: Object): number; /** * Returns the default format string for the measure. + * + * @param value */ defaultFormatString(value: Object): string; /** * Returns the measure display folder path to be used when displaying the measure in the user interface. * Folder names will be separated by a semicolon (;). Nested folders are indicated by a backslash (\). + * + * @param value */ measureDisplayFolder(value: Object): string; } @@ -8030,51 +8504,71 @@ declare namespace Infragistics { class Level { /** * Returns the name of the level. + * + * @param value */ name(value: Object): string; /** * Returns the unique name of the level. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the level used when displaying the name of the level to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the level. + * + * @param value */ description(value: Object): string; /** * Returns the distance of the level from the root of the level. Root level is zero (0) + * + * @param value */ depth(value: Object): number; /** * Returns the unique name of the hierarchy that contains the level. + * + * @param value */ hierarchyUniqueName(value: Object): string; /** * Returns the unique name of the dimension that contains the level. + * + * @param value */ dimensionUniqueName(value: Object): string; /** * Returns the count of all members in the level. + * + * @param value */ membersCount(value: Object): number; /** * Returns a value that defines how the level was sourced. + * + * @param value */ levelOrigin(value: Object): number; /** * Returns the ID of the attribute that the level is sorted on. + * + * @param value */ levelOrderingProperty(value: Object): number; } @@ -8084,26 +8578,36 @@ declare namespace Infragistics { class MeasureGroup { /** * Returns the name of the measure group. + * + * @param value */ name(value: Object): string; /** * Returns the caption of the measure group used when displaying the name of the measure group to the user. + * + * @param value */ caption(value: Object): string; /** * Returns a user-friendly description of the measure group. + * + * @param value */ description(value: Object): string; /** * Returns the name of the catalog to which this measure group belongs. + * + * @param value */ catalogName(value: Object): string; /** * Returns the name of the cube to which this measure group belongs + * + * @param value */ cubeName(value: Object): string; } @@ -8113,11 +8617,15 @@ declare namespace Infragistics { class MeasureList { /** * Returns the caption of the measure list used when displaying the name of the measure list to the user. + * + * @param value */ caption(value: Object): string; /** * Returns an array of $.ig.Measure objects this measure list is grouping. + * + * @param value */ measures(value: Object): any[]; } @@ -8127,16 +8635,22 @@ declare namespace Infragistics { class OlapResult { /** * Returns a value indicating whether the result object contains any data. + * + * @param value */ isEmpty(value: Object): boolean; /** * Returns an array of $.ig.OlapResultAxis objects this result is built on. + * + * @param value */ axes(value: Object): any[]; /** * Returns an array of $.ig.OlapResultCell objects which hold the result data. + * + * @param value */ cells(value: Object): any[]; } @@ -8208,51 +8722,71 @@ declare namespace Infragistics { class OlapResultAxisMember { /** * Returns the unique name of the axis member. + * + * @param value */ uniqueName(value: Object): string; /** * Returns the caption of the axis member used when displaying the name of the axis member to the user. + * + * @param value */ caption(value: Object): string; /** * Returns the unique name of the level this member belongs to. + * + * @param value */ levelUniqueName(value: Object): string; /** * Returns the unique name of the hierarchy that contains the level. + * + * @param value */ hierarchyUniqueName(value: Object): string; /** * Returns the distance of member parent level from the root of the level. Root level is zero (0) + * + * @param value */ levelNumber(value: Object): number; /** * A bitmap of the information projected by childCount, drilledDown and parentSameAsPrev properties. + * + * @param value */ displayInfo(value: Object): number; /** * Returns the count of children members this member has. + * + * @param value */ childCount(value: Object): number; /** * Returns a value that indicates whether at least one child of this member appears on the axis, immediately following all occurrences of that member. This can be used by applications to display a "+" or a "-" next to the member. + * + * @param value */ drilledDown(value: Object): boolean; /** * Returns a value that indicates whether the parent of this member is the same as the parent of the member preceding all occurrences of the current member. + * + * @param value */ parentSameAsPrev(value: Object): boolean; /** * Returns a key value map of the members' properties. By default only 'PARENT_UNIQUE_NAME' and 'CHILDREN_CARDINALITY' properties are available. + * + * @param value */ properties(value: Object): Object; } @@ -8262,11 +8796,15 @@ declare namespace Infragistics { class OlapResultCell { /** * Returns the position of the cell when cells are iterated row by row. + * + * @param value */ cellOrdinal(value: Object): number; /** * Returns a key value map of the cell's properties. Currently only 'Value' and 'FmtValue' properties are available. + * + * @param value */ properties(value: Object): Object; } @@ -9296,6 +9834,24 @@ interface IgBulletGraph { */ pixelScalingRatio?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised when a label of the bullet graph is formatted. * Function takes first argument evt and second argument ui. @@ -9373,6 +9929,24 @@ interface IgBulletGraphMethods { * Re-polls the css styles for the widget. Use this method when the css styles have been modified. */ styleUpdated(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igBulletGraph"): IgBulletGraphMethods; @@ -9387,6 +9961,9 @@ interface JQuery { igBulletGraph(methodName: "flush"): void; igBulletGraph(methodName: "destroy"): void; igBulletGraph(methodName: "styleUpdated"): void; + igBulletGraph(methodName: "changeLocale", $container: Object): void; + igBulletGraph(methodName: "changeGlobalLanguage"): void; + igBulletGraph(methodName: "changeGlobalRegional"): void; /** * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). @@ -10162,6 +10739,50 @@ interface JQuery { */ igBulletGraph(optionLiteral: 'option', optionName: "pixelScalingRatio", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igBulletGraph(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igBulletGraph(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igBulletGraph(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igBulletGraph(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igBulletGraph(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igBulletGraph(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised when a label of the bullet graph is formatted. * Function takes first argument evt and second argument ui. @@ -10241,26 +10862,46 @@ interface SeriesRemovedEvent { interface SeriesRemovedEventUIParam {} +interface SeriesPointerEnterEvent { + (event: Event, ui: SeriesPointerEnterEventUIParam): void; +} + +interface SeriesPointerEnterEventUIParam {} + +interface SeriesPointerLeaveEvent { + (event: Event, ui: SeriesPointerLeaveEventUIParam): void; +} + +interface SeriesPointerLeaveEventUIParam {} + +interface SeriesPointerMoveEvent { + (event: Event, ui: SeriesPointerMoveEventUIParam): void; +} + +interface SeriesPointerMoveEventUIParam {} + +interface SeriesPointerDownEvent { + (event: Event, ui: SeriesPointerDownEventUIParam): void; +} + +interface SeriesPointerDownEventUIParam {} + +interface SeriesPointerUpEvent { + (event: Event, ui: SeriesPointerUpEventUIParam): void; +} + +interface SeriesPointerUpEventUIParam {} + interface IgCategoryChart { /** - * Gets or sets the data value corresponding to the minimum value of the Y-axis. + * Gets or sets the id of a template element to use for tooltips, or markup representing the tooltip template. */ - yAxisMinimumValue?: number; + tooltipTemplate?: any; /** - * Gets or sets the data value corresponding to the maximum value of the Y-axis. + * Gets or sets the names of tooltip templates */ - yAxisMaximumValue?: number; - - /** - * Gets or sets the distance between the X-axis and the bottom of the chart. - */ - xAxisExtent?: number; - - /** - * Gets or sets the distance between the Y-axis and the left edge of the chart. - */ - yAxisExtent?: number; + tooltipTemplates?: any; /** * Gets or sets the left margin of chart title @@ -10282,78 +10923,6 @@ interface IgCategoryChart { */ titleBottomMargin?: number; - /** - * Gets or sets the duration used for animating series plots when the chart is loading into view - */ - transitionInDuration?: number; - - /** - * Gets or sets the duration used for animating series plots when the data is changing - */ - transitionDuration?: number; - - /** - * Gets or sets the easing function used for animating series plots when the chart is loading into view - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - */ - transitionInEasingFunction?: any; - - /** - * Gets or sets the easing function used for animating series plots when the data is changing. - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - */ - transitionEasingFunction?: any; - - /** - * Gets or sets the left margin of labels on the X-axis - */ - xAxisLabelLeftMargin?: number; - - /** - * Gets or sets the top margin of labels on the X-axis - */ - xAxisLabelTopMargin?: number; - - /** - * Gets or sets the right margin of labels on the X-axis - */ - xAxisLabelRightMargin?: number; - - /** - * Gets or sets the bottom margin of labels on the X-axis - */ - xAxisLabelBottomMargin?: number; - - /** - * Gets or sets the left margin of labels on the Y-axis - */ - yAxisLabelLeftMargin?: number; - - /** - * Gets or sets the top margin of labels on the Y-axis - */ - yAxisLabelTopMargin?: number; - - /** - * Gets or sets the right margin of labels on the Y-axis - */ - yAxisLabelRightMargin?: number; - - /** - * Gets or sets the bottom margin of labels on the Y-axis - */ - yAxisLabelBottomMargin?: number; - - /** - * Gets or sets color of labels on the X-axis - */ - xAxisLabelTextColor?: string; - - /** - * Gets or sets color of labels on the Y-axis - */ - yAxisLabelTextColor?: string; - /** * Gets or sets the left margin of chart subtitle */ @@ -10404,6 +10973,273 @@ interface IgCategoryChart { */ bottomMargin?: number; + /** + * Gets or sets the duration used for animating series plots when the data is changing + */ + transitionDuration?: number; + + /** + * Gets or sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + transitionEasingFunction?: any; + + /** + * Gets or sets a function for creating wrapped tooltip + */ + createWrappedTooltip?: any; + + /** + * Gets or sets the widget of this control + */ + widget?: any; + + /** + * Gets or sets CSS font property for the chart subtitle + */ + subtitleTextStyle?: string; + + /** + * Gets or sets CSS font property for the chart title + */ + titleTextStyle?: string; + + /** + * Gets or sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + itemsSource?: any; + + /** + * Gets or sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + includedProperties?: any; + + /** + * Gets or sets a set of property paths that should be excluded from consideration by the category chart. + */ + excludedProperties?: any; + + /** + * Gets or sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + brushes?: any; + + /** + * Gets or sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + outlines?: any; + + /** + * Gets or sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + legend?: any; + + /** + * Gets or sets whether the chart can be horizontally zoomed through user interactions. + */ + isHorizontalZoomEnabled?: boolean; + + /** + * Gets or sets whether the chart can be vertically zoomed through user interactions. + */ + isVerticalZoomEnabled?: boolean; + + /** + * Gets or sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + windowRect?: any; + + /** + * Gets or sets text to display above the plot area. + */ + title?: string; + + /** + * Gets or sets text to display below the Title, above the plot area. + */ + subtitle?: string; + + /** + * Gets or sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + titleAlignment?: string; + + /** + * Gets or sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + subtitleAlignment?: string; + + /** + * Gets or sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * Valid values: + * "linearInterpolate" Plot the unknown value as the midpoint between surrounding known values using linear interpolation. + * "dontPlot" Do not plot the unknown value on the chart. + */ + unknownValuePlotting?: string; + + /** + * Gets or sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + resolution?: number; + + /** + * Gets or sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + thickness?: number; + + /** + * Gets or sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + markerTypes?: any; + + /** + * Gets or sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerBrushes?: any; + + /** + * Gets or sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerOutlines?: any; + + /** + * Gets or sets the maximum number of markers displyed in the plot area of the chart. + */ + markerMaxCount?: number; + + /** + * Gets or sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + trendLineBrushes?: any; + + /** + * Gets or sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * Valid values: + * "none" No trend line will be displayed. + * "linearFit" Linear fit. + * "quadraticFit" Quadratic polynomial fit. + * "cubicFit" Cubic polynomial fit. + * "quarticFit" Quartic polynomial fit. + * "quinticFit" Quintic polynomial fit. + * "logarithmicFit" Logarithmic fit. + * "exponentialFit" Exponential fit. + * "powerLawFit" Powerlaw fit. + * "simpleAverage" Simple moving average. + * "exponentialAverage" Exponential moving average. + * "modifiedAverage" Modified moving average. + * "cumulativeAverage" Cumulative moving average. + * "weightedAverage" Weighted moving average. + */ + trendLineType?: string; + + /** + * Gets or sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + trendLineThickness?: number; + + /** + * Gets or sets a value indicating whether grid and tick lines are aligned to device pixels. + */ + alignsGridLinesToPixels?: boolean; + trendLinePeriod?: number; + + /** + * Gets or sets function which takes an context object and returns a formatted label for the X-axis. + */ + xAxisFormatLabel?: any; + + /** + * Gets or sets function which takes a context object and returns a formatted label for the Y-axis. + */ + yAxisFormatLabel?: any; + + /** + * Gets or sets the left margin of labels on the X-axis + */ + xAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the X-axis + */ + xAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the X-axis + */ + xAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the X-axis + */ + xAxisLabelBottomMargin?: number; + + /** + * Gets or sets the left margin of labels on the Y-axis + */ + yAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the Y-axis + */ + yAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the Y-axis + */ + yAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the Y-axis + */ + yAxisLabelBottomMargin?: number; + + /** + * Gets or sets color of labels on the X-axis + */ + xAxisLabelTextColor?: string; + + /** + * Gets or sets color of labels on the Y-axis + */ + yAxisLabelTextColor?: string; + /** * Gets or sets the margin around a title on the X-axis */ @@ -10463,34 +11299,6 @@ interface IgCategoryChart { * Gets or sets color of title on the Y-axis */ yAxisTitleTextColor?: string; - createWrappedTooltip?: any; - - /** - * Gets or sets the id of a template element to use for tooltips, or markup representing the tooltip template. - */ - tooltipTemplate?: string; - tooltipTemplates?: any; - - /** - * Gets or sets function which takes an context object and returns a formatted label for the X-axis. - */ - xAxisFormatLabel?: any; - - /** - * Gets or sets function which takes a context object and returns a formatted label for the Y-axis. - */ - yAxisFormatLabel?: any; - - /** - * Gets or sets CSS font property for title on X-axis - */ - xAxisTitleTextStyle?: string; - - /** - * Gets or sets CSS font property for title on Y-axis - */ - yAxisTitleTextStyle?: string; - widget?: any; /** * Gets or sets CSS font property for labels on X-axis @@ -10503,222 +11311,14 @@ interface IgCategoryChart { yAxisLabelTextStyle?: string; /** - * Gets or sets CSS font property for the chart subtitle + * Gets or sets CSS font property for title on X-axis */ - subtitleTextStyle?: string; + xAxisTitleTextStyle?: string; /** - * Gets or sets CSS font property for the chart title + * Gets or sets CSS font property for title on Y-axis */ - titleTextStyle?: string; - - /** - * Gets or sets a collection of data items used to generate the chart. - * Value of this property can be a list of objects containing one or more numeric properties. Additionally, if the objects in the list implement the IEnumerable interface, the Category Chart will attempt to delve into the sub-collections when reading through the data source. Databinding can be further configured by attributing the data item classes with the DataSeriesMemberIntentAttribute. - */ - itemsSource?: any; - - /** - * Gets or sets a set of property paths that should be included for consideration by the category chart, leaving the remaineder excluded. If null, all properties will be considered. - */ - includedProperties?: any; - - /** - * Gets or sets a set of property paths that should be excluded from consideration by the category chart. - */ - excludedProperties?: any; - - /** - * Gets or sets the type of chart series to generate from the data. - * - * Valid values: - * "line" Specifies category line series with markers at each data point - * "area" Specifies category area series - * "column" Specifies category column chart with vertical rectangles at each data point - * "point" Specifies category point chart with markers at each data point - * "stepLine" Specifies category step line chart - * "stepArea" Specifies category step area chart - * "spline" Specifies category spline line series with markers at each data point - * "splineArea" Specifies category spline area series - * "waterfall" Specifies category waterfall chart - * "auto" Specifies automatic selection of chart type based on suggestions from Data Adapter - */ - chartType?: string; - - /** - * Gets or sets the palette of brushes to use for coloring the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - brushes?: any; - - /** - * Gets or sets the palette of brushes to use for outlines on the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - outlines?: any; - - /** - * Sets the legend to connect this chart to. - * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. - */ - legend?: any; - - /** - * Gets or sets whether the chart can be horizontally zoomed through user interaction. - */ - isHorizontalZoomEnabled?: boolean; - - /** - * Gets or sets whether the chart can be vertically zoomed through user interaction. - */ - isVerticalZoomEnabled?: boolean; - - /** - * Gets or sets the rectangle representing the current scroll and zoom state of the chart. - * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. - * The provided object should have numeric properties called left, top, width and height. - */ - windowRect?: any; - - /** - * Gets or sets text to display above the plot area. - */ - title?: string; - - /** - * Gets or sets text to display below the chart Title, above the plot area. - */ - subtitle?: string; - - /** - * Gets or sets horizontal alignment which determines the title position, relative to the left and right edges of the chart. - * - * Valid values: - * "left" Align the item to the left - * "center" Center the item - * "right" Align the item to the right - * "stretch" Stretch the item to the full width - */ - titleAlignment?: string; - - /** - * Gets or sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the chart. - * - * Valid values: - * "left" Align the item to the left - * "center" Center the item - * "right" Align the item to the right - * "stretch" Stretch the item to the full width - */ - subtitleAlignment?: string; - - /** - * Gets or sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. - * - * Valid values: - * "linearInterpolate" Plot the unknown value as the midpoint between surrounding known values using linear interpolation. - * "dontPlot" Do not plot the unknown value on the chart. - */ - unknownValuePlotting?: string; - - /** - * Gets or sets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. - * - * Valid values: - * "none" Collision avoidance is disabled. - * "omit" Items colliding with other items will be hidden from view. - */ - markerCollisionAvoidance?: string; - - /** - * Gets or sets whether animation of series plots is enabled when the chart is loading into view - */ - isTransitionInEnabled?: boolean; - - /** - * Gets or sets the method that determines how to animate series plots when the chart is loading into view - * - * Valid values: - * "auto" Series transitions in an automatically chosen based on type of series and its orientation - * "fromZero" Series transitions in from the reference value of the value axis. - * "sweepFromLeft" Series sweeps in from the left - * "sweepFromRight" Series sweeps in from the right - * "sweepFromTop" Series sweeps in from the top. - * "sweepFromBottom" Series sweeps in from the bottom. - * "sweepFromCenter" Series sweeps in from the center. - * "accordionFromLeft" Series accordions in from the left. - * "accordionFromRight" Series accordions in from the right. - * "accordionFromTop" Series accordions in from the top. - * "accordionFromBottom" Series accordions in from the bottom. - * "expand" Series expands from the value midpoints. - * "sweepFromCategoryAxisMinimum" Series sweeps in from the category axis minimum. - * "sweepFromCategoryAxisMaximum" Series sweeps in from the category axis maximum. - * "sweepFromValueAxisMinimum" Series sweeps in from the value axis minimum. - * "sweepFromValueAxisMaximum" Series sweeps in from the value axis maximum. - * "accordionFromCategoryAxisMinimum" Series accordions in from the category axis minimum. - * "accordionFromCategoryAxisMaximum" Series accordions in from the category axis maximum. - * "accordionFromValueAxisMinimum" Series accordions in from the value axis minimum. - * "accordionFromValueAxisMaximum" Series accordions in from the value axis maximum. - */ - transitionInMode?: string; - - /** - * Gets or sets the arrival speed used for animating series plots when the chart is loading into view - * - * Valid values: - * "auto" A speed type is automatically selected. - * "normal" All speeds are normal, data points will arrive at the same time. - * "valueScaled" Data points will arrive later if their value is further from the start point. - * "indexScaled" Data points will arrive later if their index is further from the axis origin. - * "random" Data points will arrive at random times. - */ - transitionInSpeedType?: string; - - /** - * Gets or sets the frequency of displayed labels along the X-axis. - * Gets or sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. - */ - xAxisInterval?: number; - - /** - * Gets or sets the frequency of displayed minor lines along the X-axis. - * Gets or sets the set value is a factor that determines how the minor lines will be displayed. - */ - xAxisMinorInterval?: number; - - /** - * Gets or sets the amount of space between adjacent categories for the X-axis. - * The gap is silently clamped to the range [0, 1] when used. - */ - xAxisGap?: number; - - /** - * Gets or sets the amount of overlap between adjacent categories for the X-axis. - * Gets or sets the overlap is silently clamped to the range [-1, 1] when used. - */ - xAxisOverlap?: number; - - /** - * Gets or sets the distance between each label and grid line along the Y-axis. - */ - yAxisInterval?: number; - - /** - * Gets or sets whether the Y-axis should use a logarithmic scale instead of a linear one. - * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. - */ - yAxisIsLogarithmic?: boolean; - - /** - * Gets or sets the base value to use in the log function when mapping the position of data items along the Y-axis. - * This property is effective only when YAxisIsLogarithmic is true. - */ - yAxisLogarithmBase?: number; - - /** - * Gets or sets the frequency of displayed minor lines along the Y-axis. - */ - yAxisMinorInterval?: number; + yAxisTitleTextStyle?: string; /** * Gets or sets the format for labels along the X-axis. @@ -10821,12 +11421,12 @@ interface IgCategoryChart { yAxisTickStrokeThickness?: number; /** - * Text to display below the X-axis. + * Gets or sets the Text to display below the X-axis. */ xAxisTitle?: string; /** - * Text to display to the left of the Y-axis. + * Gets or sets the Text to display to the left of the Y-axis. */ yAxisTitle?: string; @@ -10850,6 +11450,16 @@ interface IgCategoryChart { */ yAxisLabelAngle?: number; + /** + * Gets or sets the distance between the X-axis and the bottom of the chart. + */ + xAxisExtent?: number; + + /** + * Gets or sets the distance between the Y-axis and the left edge of the chart. + */ + yAxisExtent?: number; + /** * Gets or sets the angle of rotation for the X-axis title. */ @@ -10861,84 +11471,17 @@ interface IgCategoryChart { yAxisTitleAngle?: number; /** - * Gets or sets the rendering resolution for series in this chart. - * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. - */ - resolution?: number; - - /** - * Gets or sets the palette of brushes to used for coloring trend lines in this chart. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - trendLineBrushes?: any; - - /** - * Gets or sets the formula used for calculating trend lines in this chart. - * - * Valid values: - * "none" No trend line will be displayed. - * "linearFit" Linear fit. - * "quadraticFit" Quadratic polynomial fit. - * "cubicFit" Cubic polynomial fit. - * "quarticFit" Quartic polynomial fit. - * "quinticFit" Quintic polynomial fit. - * "logarithmicFit" Logarithmic fit. - * "exponentialFit" Exponential fit. - * "powerLawFit" Powerlaw fit. - * "simpleAverage" Simple moving average. - * "exponentialAverage" Exponential moving average. - * "modifiedAverage" Modified moving average. - * "cumulativeAverage" Cumulative moving average. - * "weightedAverage" Weighted moving average. - */ - trendLineType?: string; - - /** - * Gets or sets the thickness of the chart series. Depending on the ChartType, this can be the main brush used, or just the outline. - */ - thickness?: number; - - /** - * Gets or sets the collection of marker shapes used for representing data points of series in this chart. - * When MarkerTypes is null or empty, each series' marker type will be set to none or automatic, depending on the series type. - */ - markerTypes?: any; - - /** - * Gets or sets the palette of brushes used as the fill color for data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - markerBrushes?: any; - - /** - * Gets or sets the palette of brushes used for coloring outline of data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - markerOutlines?: any; - - /** - * Gets or sets the thickness of the trend lines in this chart. - */ - trendLineThickness?: number; - - /** - * Gets or sets whether the direction of the X-axis is inverted, placing the first data items on the right side instead of left side + * Gets or sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. */ xAxisInverted?: boolean; /** - * Gets or sets whether the direction of the Y-axis is inverted, placing minimum numeric value at the top of the axis instead of bottom + * Gets or sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. */ yAxisInverted?: boolean; /** - * Gets or sets the palette used for coloring negative items of Waterfall chart type. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - negativeBrushes?: any; - - /** - * Gets or sets the horizontal alignment of the X-axis title. + * Gets or sets Horizontal alignment of the X-axis title. * * Valid values: * "left" Align the item to the left @@ -10949,7 +11492,7 @@ interface IgCategoryChart { xAxisTitleAlignment?: string; /** - * Gets or sets the vertical alignment of the Y-axis title. + * Gets or sets Vertical alignment of the Y-axis title. * * Valid values: * "top" Align the item to the top @@ -10960,7 +11503,7 @@ interface IgCategoryChart { yAxisTitleAlignment?: string; /** - * Gets or sets the horizontal alignment of X-axis labels. + * Gets or sets Horizontal alignment of X-axis labels. * * Valid values: * "left" Align the item to the left @@ -10971,7 +11514,7 @@ interface IgCategoryChart { xAxisLabelHorizontalAlignment?: string; /** - * Gets or sets the horizontal alignment of Y-axis labels. + * Gets or sets Horizontal alignment of Y-axis labels. * * Valid values: * "left" Align the item to the left @@ -10982,7 +11525,7 @@ interface IgCategoryChart { yAxisLabelHorizontalAlignment?: string; /** - * Gets or sets the vertical alignment of X-axis labels. + * Gets or sets Vertical alignment of X-axis labels. * * Valid values: * "top" Align the item to the top @@ -10993,7 +11536,7 @@ interface IgCategoryChart { xAxisLabelVerticalAlignment?: string; /** - * Gets or sets the vertical alignment of Y-axis labels. + * Gets or sets Vertical alignment of Y-axis labels. * * Valid values: * "top" Align the item to the top @@ -11004,7 +11547,7 @@ interface IgCategoryChart { yAxisLabelVerticalAlignment?: string; /** - * Gets or sets the visibility of X-axis labels. + * Gets or sets Visibility of X-axis labels. * * Valid values: * "visible" Display the element. @@ -11013,7 +11556,7 @@ interface IgCategoryChart { xAxisLabelVisibility?: string; /** - * Gets or sets the visibility of Y-axis labels. + * Gets or sets Visibility of Y-axis labels. * * Valid values: * "visible" Display the element. @@ -11021,6 +11564,164 @@ interface IgCategoryChart { */ yAxisLabelVisibility?: string; + /** + * The location of Y-axis labels, relative to the plot area. + * + * Valid values: + * "outsideTop" Places the axis labels at the top, outside of the plotting area. + * "outsideBottom" Places the axis labels at the bottom, outside of the plotting area + * "outsideLeft" Places the axis labels to the left, outside of the plotting area. + * "outsideRight" Places the axis labels to the right, outside of the plotting area. + * "insideTop" Places the axis labels inside the plotting area above the axis line. + * "insideBottom" Places the axis labels inside the plotting area below the axis line. + * "insideLeft" Places the axis labels inside the plotting area and to the left of the axis line. + * "insideRight" Places the axis labels inside the plotting area and to the right of the axis line. + */ + yAxisLabelLocation?: string; + + /** + * Gets or sets the duration used for animating series plots when the chart is loading into view + */ + transitionInDuration?: number; + + /** + * Gets or sets the easing function used for animating series plots when the chart is loading into view + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + transitionInEasingFunction?: any; + + /** + * Gets or sets the type of chart series to generate from the data. + * + * Valid values: + * "line" Specifies category line series with markers at each data point + * "area" Specifies category area series + * "column" Specifies category column chart with vertical rectangles at each data point + * "point" Specifies category point chart with markers at each data point + * "stepLine" Specifies category step line chart + * "stepArea" Specifies category step area chart + * "spline" Specifies category spline line series with markers at each data point + * "splineArea" Specifies category spline area series + * "waterfall" Specifies category waterfall chart + * "auto" Specifies automatic selection of chart type based on suggestions from Data Adapter + */ + chartType?: string; + + /** + * Gets or sets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. + * + * Valid values: + * "none" Collision avoidance is disabled. + * "omit" Items colliding with other items will be hidden from view. + */ + markerCollisionAvoidance?: string; + + /** + * Gets or sets whether animation of series plots is enabled when the chart is loading into view + */ + isTransitionInEnabled?: boolean; + + /** + * Gets or sets the method that determines how to animate series plots when the chart is loading into view + * + * Valid values: + * "auto" Series transitions in an automatically chosen based on type of series and its orientation + * "fromZero" Series transitions in from the reference value of the value axis. + * "sweepFromLeft" Series sweeps in from the left + * "sweepFromRight" Series sweeps in from the right + * "sweepFromTop" Series sweeps in from the top. + * "sweepFromBottom" Series sweeps in from the bottom. + * "sweepFromCenter" Series sweeps in from the center. + * "accordionFromLeft" Series accordions in from the left. + * "accordionFromRight" Series accordions in from the right. + * "accordionFromTop" Series accordions in from the top. + * "accordionFromBottom" Series accordions in from the bottom. + * "expand" Series expands from the value midpoints. + * "sweepFromCategoryAxisMinimum" Series sweeps in from the category axis minimum. + * "sweepFromCategoryAxisMaximum" Series sweeps in from the category axis maximum. + * "sweepFromValueAxisMinimum" Series sweeps in from the value axis minimum. + * "sweepFromValueAxisMaximum" Series sweeps in from the value axis maximum. + * "accordionFromCategoryAxisMinimum" Series accordions in from the category axis minimum. + * "accordionFromCategoryAxisMaximum" Series accordions in from the category axis maximum. + * "accordionFromValueAxisMinimum" Series accordions in from the value axis minimum. + * "accordionFromValueAxisMaximum" Series accordions in from the value axis maximum. + */ + transitionInMode?: string; + + /** + * Gets or sets the arrival speed used for animating series plots when the chart is loading into view + * + * Valid values: + * "auto" A speed type is automatically selected. + * "normal" All speeds are normal, data points will arrive at the same time. + * "valueScaled" Data points will arrive later if their value is further from the start point. + * "indexScaled" Data points will arrive later if their index is further from the axis origin. + * "random" Data points will arrive at random times. + */ + transitionInSpeedType?: string; + + /** + * Gets or sets the frequency of displayed labels along the X-axis. + * Gets or sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + */ + xAxisInterval?: number; + + /** + * Gets or sets the frequency of displayed minor lines along the X-axis. + * Gets or sets the set value is a factor that determines how the minor lines will be displayed. + */ + xAxisMinorInterval?: number; + + /** + * Gets or sets the amount of space between adjacent categories for the X-axis. + * The gap is silently clamped to the range [0, 1] when used. + */ + xAxisGap?: number; + + /** + * Gets or sets the amount of overlap between adjacent categories for the X-axis. + * Gets or sets the overlap is silently clamped to the range [-1, 1] when used. + */ + xAxisOverlap?: number; + + /** + * Gets or sets the distance between each label and grid line along the Y-axis. + */ + yAxisInterval?: number; + + /** + * Gets or sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + yAxisIsLogarithmic?: boolean; + + /** + * Gets or sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + yAxisLogarithmBase?: number; + + /** + * Gets or sets the data value corresponding to the minimum value of the Y-axis. + */ + yAxisMinimumValue?: number; + + /** + * Gets or sets the data value corresponding to the maximum value of the Y-axis. + */ + yAxisMaximumValue?: number; + + /** + * Gets or sets the frequency of displayed minor lines along the Y-axis. + */ + yAxisMinorInterval?: number; + + /** + * Gets or sets the palette used for coloring negative items of Waterfall chart type. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + negativeBrushes?: any; + /** * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall. * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. @@ -11028,9 +11729,14 @@ interface IgCategoryChart { negativeOutlines?: any; /** - * Gets or sets a value indicating whether grid and tick lines are aligned to device pixels. + * Gets or sets whether the series animations should be allowed when a range change has been detected on an axis. */ - alignsGridLinesToPixels?: boolean; + animateSeriesWhenAxisRangeChanges?: boolean; + + /** + * Gets or sets whether the large numbers on the Y-axis labels are abbreviated. + */ + yAxisAbbreviateLargeNumbers?: boolean; /** * The width of the chart. @@ -11075,20 +11781,45 @@ interface IgCategoryChart { responseDataKey?: string; /** - * Event raised when a property value is changed. + * Event raised when a property value is changed on this chart */ propertyChanged?: PropertyChangedEvent; /** - * Event raised when a series is initialized + * Event raised when a series is initialized and added to this chart. */ seriesAdded?: SeriesAddedEvent; /** - * Event raised when a series is removed from the CategoryChart + * Event raised when a series is removed from this chart. */ seriesRemoved?: SeriesRemovedEvent; + /** + * Occurs when the pointer enters a Series. + */ + seriesPointerEnter?: SeriesPointerEnterEvent; + + /** + * Occurs when the pointer leaves a Series. + */ + seriesPointerLeave?: SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer moves over a Series. + */ + seriesPointerMove?: SeriesPointerMoveEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + seriesPointerDown?: SeriesPointerDownEvent; + + /** + * Occurs when the pointer is released over a Series. + */ + seriesPointerUp?: SeriesPointerUpEvent; + /** * Event which is raised before data binding. * Return false in order to cancel data binding. @@ -11266,52 +11997,28 @@ interface JQuery { igCategoryChart(methodName: "flush"): void; /** - * Gets the data value corresponding to the minimum value of the Y-axis. + * Gets the id of a template element to use for tooltips, or markup representing the tooltip template. */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinimumValue"): number; + igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplate"): any; /** - * Sets the data value corresponding to the minimum value of the Y-axis. + * Sets the id of a template element to use for tooltips, or markup representing the tooltip template. * * @optionValue New value to be set. */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinimumValue", optionValue: number): void; + igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplate", optionValue: any): void; /** - * Gets the data value corresponding to the maximum value of the Y-axis. + * Gets the names of tooltip templates */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMaximumValue"): number; + igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplates"): any; /** - * Sets the data value corresponding to the maximum value of the Y-axis. + * Sets the names of tooltip templates * * @optionValue New value to be set. */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMaximumValue", optionValue: number): void; - - /** - * Gets the distance between the X-axis and the bottom of the chart. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisExtent"): number; - - /** - * Sets the distance between the X-axis and the bottom of the chart. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisExtent", optionValue: number): void; - - /** - * Gets the distance between the Y-axis and the left edge of the chart. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisExtent"): number; - - /** - * Sets the distance between the Y-axis and the left edge of the chart. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisExtent", optionValue: number): void; + igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplates", optionValue: any): void; /** * Gets the left margin of chart title @@ -11361,178 +12068,6 @@ interface JQuery { */ igCategoryChart(optionLiteral: 'option', optionName: "titleBottomMargin", optionValue: number): void; - /** - * Gets the duration used for animating series plots when the chart is loading into view - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionInDuration"): number; - - /** - * Sets the duration used for animating series plots when the chart is loading into view - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionInDuration", optionValue: number): void; - - /** - * Gets the duration used for animating series plots when the data is changing - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionDuration"): number; - - /** - * Sets the duration used for animating series plots when the data is changing - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionDuration", optionValue: number): void; - - /** - * Gets the easing function used for animating series plots when the chart is loading into view - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionInEasingFunction"): any; - - /** - * Sets the easing function used for animating series plots when the chart is loading into view - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionInEasingFunction", optionValue: any): void; - - /** - * Gets the easing function used for animating series plots when the data is changing. - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionEasingFunction"): any; - - /** - * Sets the easing function used for animating series plots when the data is changing. - * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "transitionEasingFunction", optionValue: any): void; - - /** - * Gets the left margin of labels on the X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin"): number; - - /** - * Sets the left margin of labels on the X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin", optionValue: number): void; - - /** - * Gets the top margin of labels on the X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin"): number; - - /** - * Sets the top margin of labels on the X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin", optionValue: number): void; - - /** - * Gets the right margin of labels on the X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin"): number; - - /** - * Sets the right margin of labels on the X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin", optionValue: number): void; - - /** - * Gets the bottom margin of labels on the X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin"): number; - - /** - * Sets the bottom margin of labels on the X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin", optionValue: number): void; - - /** - * Gets the left margin of labels on the Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin"): number; - - /** - * Sets the left margin of labels on the Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin", optionValue: number): void; - - /** - * Gets the top margin of labels on the Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin"): number; - - /** - * Sets the top margin of labels on the Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin", optionValue: number): void; - - /** - * Gets the right margin of labels on the Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin"): number; - - /** - * Sets the right margin of labels on the Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin", optionValue: number): void; - - /** - * Gets the bottom margin of labels on the Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin"): number; - - /** - * Sets the bottom margin of labels on the Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin", optionValue: number): void; - - /** - * Gets color of labels on the X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor"): string; - - /** - * Sets color of labels on the X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor", optionValue: string): void; - - /** - * Gets color of labels on the Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor"): string; - - /** - * Sets color of labels on the Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor", optionValue: string): void; - /** * Gets the left margin of chart subtitle */ @@ -11653,6 +12188,568 @@ interface JQuery { */ igCategoryChart(optionLiteral: 'option', optionName: "bottomMargin", optionValue: number): void; + /** + * Gets the duration used for animating series plots when the data is changing + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionDuration"): number; + + /** + * Sets the duration used for animating series plots when the data is changing + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionDuration", optionValue: number): void; + + /** + * Gets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionEasingFunction"): any; + + /** + * Sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionEasingFunction", optionValue: any): void; + + /** + * Gets a function for creating wrapped tooltip + */ + igCategoryChart(optionLiteral: 'option', optionName: "createWrappedTooltip"): any; + + /** + * Sets a function for creating wrapped tooltip + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "createWrappedTooltip", optionValue: any): void; + + /** + * Gets the widget of this control + */ + igCategoryChart(optionLiteral: 'option', optionName: "widget"): any; + + /** + * Sets the widget of this control + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "widget", optionValue: any): void; + + /** + * Gets CSS font property for the chart subtitle + */ + igCategoryChart(optionLiteral: 'option', optionName: "subtitleTextStyle"): string; + + /** + * Sets CSS font property for the chart subtitle + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "subtitleTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for the chart title + */ + igCategoryChart(optionLiteral: 'option', optionName: "titleTextStyle"): string; + + /** + * Sets CSS font property for the chart title + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "titleTextStyle", optionValue: string): void; + + /** + * Gets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + igCategoryChart(optionLiteral: 'option', optionName: "itemsSource"): any; + + /** + * Sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "itemsSource", optionValue: any): void; + + /** + * Gets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + igCategoryChart(optionLiteral: 'option', optionName: "includedProperties"): any; + + /** + * Sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "includedProperties", optionValue: any): void; + + /** + * Gets a set of property paths that should be excluded from consideration by the category chart. + */ + igCategoryChart(optionLiteral: 'option', optionName: "excludedProperties"): any; + + /** + * Sets a set of property paths that should be excluded from consideration by the category chart. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "excludedProperties", optionValue: any): void; + + /** + * Gets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igCategoryChart(optionLiteral: 'option', optionName: "brushes"): any; + + /** + * Sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "brushes", optionValue: any): void; + + /** + * Gets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igCategoryChart(optionLiteral: 'option', optionName: "outlines"): any; + + /** + * Sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "outlines", optionValue: any): void; + + /** + * Gets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + igCategoryChart(optionLiteral: 'option', optionName: "legend"): any; + + /** + * Sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "legend", optionValue: any): void; + + /** + * Gets whether the chart can be horizontally zoomed through user interactions. + */ + igCategoryChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be horizontally zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled", optionValue: boolean): void; + + /** + * Gets whether the chart can be vertically zoomed through user interactions. + */ + igCategoryChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be vertically zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled", optionValue: boolean): void; + + /** + * Gets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + igCategoryChart(optionLiteral: 'option', optionName: "windowRect"): any; + + /** + * Sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "windowRect", optionValue: any): void; + + /** + * Gets text to display above the plot area. + */ + igCategoryChart(optionLiteral: 'option', optionName: "title"): string; + + /** + * Sets text to display above the plot area. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "title", optionValue: string): void; + + /** + * Gets text to display below the Title, above the plot area. + */ + igCategoryChart(optionLiteral: 'option', optionName: "subtitle"): string; + + /** + * Sets text to display below the Title, above the plot area. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "subtitle", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the title position, relative to the left and right edges of the control. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "titleAlignment"): string; + + /** + * Sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "titleAlignment", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "subtitleAlignment"): string; + + /** + * Sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "subtitleAlignment", optionValue: string): void; + + /** + * Gets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + */ + + igCategoryChart(optionLiteral: 'option', optionName: "unknownValuePlotting"): string; + + /** + * Sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "unknownValuePlotting", optionValue: string): void; + + /** + * Gets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + igCategoryChart(optionLiteral: 'option', optionName: "resolution"): number; + + /** + * Sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "resolution", optionValue: number): void; + + /** + * Gets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + igCategoryChart(optionLiteral: 'option', optionName: "thickness"): number; + + /** + * Sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "thickness", optionValue: number): void; + + /** + * Gets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerTypes"): any; + + /** + * Sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerTypes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerBrushes"): any; + + /** + * Sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerBrushes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerOutlines"): any; + + /** + * Sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerOutlines", optionValue: any): void; + + /** + * Gets the maximum number of markers displyed in the plot area of the chart. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerMaxCount"): number; + + /** + * Sets the maximum number of markers displyed in the plot area of the chart. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "markerMaxCount", optionValue: number): void; + + /** + * Gets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igCategoryChart(optionLiteral: 'option', optionName: "trendLineBrushes"): any; + + /** + * Sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "trendLineBrushes", optionValue: any): void; + + /** + * Gets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + */ + + igCategoryChart(optionLiteral: 'option', optionName: "trendLineType"): string; + + /** + * Sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "trendLineType", optionValue: string): void; + + /** + * Gets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + igCategoryChart(optionLiteral: 'option', optionName: "trendLineThickness"): number; + + /** + * Sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "trendLineThickness", optionValue: number): void; + + /** + * Gets a value indicating whether grid and tick lines are aligned to device pixels. + */ + igCategoryChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels"): boolean; + + /** + * Sets a value indicating whether grid and tick lines are aligned to device pixels. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels", optionValue: boolean): void; + igCategoryChart(optionLiteral: 'option', optionName: "trendLinePeriod"): number; + igCategoryChart(optionLiteral: 'option', optionName: "trendLinePeriod", optionValue: number): void; + + /** + * Gets function which takes an context object and returns a formatted label for the X-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisFormatLabel"): any; + + /** + * Sets function which takes an context object and returns a formatted label for the X-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisFormatLabel", optionValue: any): void; + + /** + * Gets function which takes a context object and returns a formatted label for the Y-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisFormatLabel"): any; + + /** + * Sets function which takes a context object and returns a formatted label for the Y-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisFormatLabel", optionValue: any): void; + + /** + * Gets the left margin of labels on the X-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the X-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the X-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the X-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets the left margin of labels on the Y-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the Y-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the Y-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the Y-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets color of labels on the X-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor"): string; + + /** + * Sets color of labels on the X-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor", optionValue: string): void; + + /** + * Gets color of labels on the Y-axis + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor"): string; + + /** + * Sets color of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor", optionValue: string): void; + /** * Gets the margin around a title on the X-axis */ @@ -11796,72 +12893,6 @@ interface JQuery { * @optionValue New value to be set. */ igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleTextColor", optionValue: string): void; - igCategoryChart(optionLiteral: 'option', optionName: "createWrappedTooltip"): any; - igCategoryChart(optionLiteral: 'option', optionName: "createWrappedTooltip", optionValue: any): void; - - /** - * Gets the id of a template element to use for tooltips, or markup representing the tooltip template. - */ - igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplate"): string; - - /** - * Sets the id of a template element to use for tooltips, or markup representing the tooltip template. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplate", optionValue: string): void; - igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplates"): any; - igCategoryChart(optionLiteral: 'option', optionName: "tooltipTemplates", optionValue: any): void; - - /** - * Gets function which takes an context object and returns a formatted label for the X-axis. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisFormatLabel"): any; - - /** - * Sets function which takes an context object and returns a formatted label for the X-axis. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisFormatLabel", optionValue: any): void; - - /** - * Gets function which takes a context object and returns a formatted label for the Y-axis. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisFormatLabel"): any; - - /** - * Sets function which takes a context object and returns a formatted label for the Y-axis. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisFormatLabel", optionValue: any): void; - - /** - * Gets CSS font property for title on X-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle"): string; - - /** - * Sets CSS font property for title on X-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle", optionValue: string): void; - - /** - * Gets CSS font property for title on Y-axis - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle"): string; - - /** - * Sets CSS font property for title on Y-axis - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle", optionValue: string): void; - igCategoryChart(optionLiteral: 'option', optionName: "widget"): any; - igCategoryChart(optionLiteral: 'option', optionName: "widget", optionValue: any): void; /** * Gets CSS font property for labels on X-axis @@ -11888,390 +12919,28 @@ interface JQuery { igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelTextStyle", optionValue: string): void; /** - * Gets CSS font property for the chart subtitle + * Gets CSS font property for title on X-axis */ - igCategoryChart(optionLiteral: 'option', optionName: "subtitleTextStyle"): string; + igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle"): string; /** - * Sets CSS font property for the chart subtitle + * Sets CSS font property for title on X-axis * * @optionValue New value to be set. */ - igCategoryChart(optionLiteral: 'option', optionName: "subtitleTextStyle", optionValue: string): void; + igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle", optionValue: string): void; /** - * Gets CSS font property for the chart title + * Gets CSS font property for title on Y-axis */ - igCategoryChart(optionLiteral: 'option', optionName: "titleTextStyle"): string; + igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle"): string; /** - * Sets CSS font property for the chart title + * Sets CSS font property for title on Y-axis * * @optionValue New value to be set. */ - igCategoryChart(optionLiteral: 'option', optionName: "titleTextStyle", optionValue: string): void; - - /** - * Gets a collection of data items used to generate the chart. - * Value of this property can be a list of objects containing one or more numeric properties. Additionally, if the objects in the list implement the IEnumerable interface, the Category Chart will attempt to delve into the sub-collections when reading through the data source. Databinding can be further configured by attributing the data item classes with the DataSeriesMemberIntentAttribute. - */ - igCategoryChart(optionLiteral: 'option', optionName: "itemsSource"): any; - - /** - * Sets a collection of data items used to generate the chart. - * Value of this property can be a list of objects containing one or more numeric properties. Additionally, if the objects in the list implement the IEnumerable interface, the Category Chart will attempt to delve into the sub-collections when reading through the data source. Databinding can be further configured by attributing the data item classes with the DataSeriesMemberIntentAttribute. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "itemsSource", optionValue: any): void; - - /** - * Gets a set of property paths that should be included for consideration by the category chart, leaving the remaineder excluded. If null, all properties will be considered. - */ - igCategoryChart(optionLiteral: 'option', optionName: "includedProperties"): any; - - /** - * Sets a set of property paths that should be included for consideration by the category chart, leaving the remaineder excluded. If null, all properties will be considered. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "includedProperties", optionValue: any): void; - - /** - * Gets a set of property paths that should be excluded from consideration by the category chart. - */ - igCategoryChart(optionLiteral: 'option', optionName: "excludedProperties"): any; - - /** - * Sets a set of property paths that should be excluded from consideration by the category chart. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "excludedProperties", optionValue: any): void; - - /** - * Gets the type of chart series to generate from the data. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "chartType"): string; - - /** - * Sets the type of chart series to generate from the data. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "chartType", optionValue: string): void; - - /** - * Gets the palette of brushes to use for coloring the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - igCategoryChart(optionLiteral: 'option', optionName: "brushes"): any; - - /** - * Sets the palette of brushes to use for coloring the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "brushes", optionValue: any): void; - - /** - * Gets the palette of brushes to use for outlines on the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - igCategoryChart(optionLiteral: 'option', optionName: "outlines"): any; - - /** - * Sets the palette of brushes to use for outlines on the chart series. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "outlines", optionValue: any): void; - - /** - * Sets the legend to connect this chart to. - * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. - */ - igCategoryChart(optionLiteral: 'option', optionName: "legend"): any; - - /** - * Sets the legend to connect this chart to. - * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "legend", optionValue: any): void; - - /** - * Gets whether the chart can be horizontally zoomed through user interaction. - */ - igCategoryChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled"): boolean; - - /** - * Sets whether the chart can be horizontally zoomed through user interaction. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled", optionValue: boolean): void; - - /** - * Gets whether the chart can be vertically zoomed through user interaction. - */ - igCategoryChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled"): boolean; - - /** - * Sets whether the chart can be vertically zoomed through user interaction. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled", optionValue: boolean): void; - - /** - * Gets the rectangle representing the current scroll and zoom state of the chart. - * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. - * The provided object should have numeric properties called left, top, width and height. - */ - igCategoryChart(optionLiteral: 'option', optionName: "windowRect"): any; - - /** - * Sets the rectangle representing the current scroll and zoom state of the chart. - * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. - * The provided object should have numeric properties called left, top, width and height. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "windowRect", optionValue: any): void; - - /** - * Gets text to display above the plot area. - */ - igCategoryChart(optionLiteral: 'option', optionName: "title"): string; - - /** - * Sets text to display above the plot area. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "title", optionValue: string): void; - - /** - * Gets text to display below the chart Title, above the plot area. - */ - igCategoryChart(optionLiteral: 'option', optionName: "subtitle"): string; - - /** - * Sets text to display below the chart Title, above the plot area. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "subtitle", optionValue: string): void; - - /** - * Gets horizontal alignment which determines the title position, relative to the left and right edges of the chart. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "titleAlignment"): string; - - /** - * Sets horizontal alignment which determines the title position, relative to the left and right edges of the chart. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "titleAlignment", optionValue: string): void; - - /** - * Gets horizontal alignment which determines the subtitle position, relative to the left and right edges of the chart. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "subtitleAlignment"): string; - - /** - * Sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the chart. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "subtitleAlignment", optionValue: string): void; - - /** - * Gets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "unknownValuePlotting"): string; - - /** - * Sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "unknownValuePlotting", optionValue: string): void; - - /** - * Gets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "markerCollisionAvoidance"): string; - - /** - * Sets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "markerCollisionAvoidance", optionValue: string): void; - - /** - * Gets whether animation of series plots is enabled when the chart is loading into view - */ - igCategoryChart(optionLiteral: 'option', optionName: "isTransitionInEnabled"): boolean; - - /** - * Sets whether animation of series plots is enabled when the chart is loading into view - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "isTransitionInEnabled", optionValue: boolean): void; - - /** - * Gets the method that determines how to animate series plots when the chart is loading into view - */ - - igCategoryChart(optionLiteral: 'option', optionName: "transitionInMode"): string; - - /** - * Sets the method that determines how to animate series plots when the chart is loading into view - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "transitionInMode", optionValue: string): void; - - /** - * Gets the arrival speed used for animating series plots when the chart is loading into view - */ - - igCategoryChart(optionLiteral: 'option', optionName: "transitionInSpeedType"): string; - - /** - * Sets the arrival speed used for animating series plots when the chart is loading into view - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "transitionInSpeedType", optionValue: string): void; - - /** - * Gets the frequency of displayed labels along the X-axis. - * Gets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisInterval"): number; - - /** - * Sets the frequency of displayed labels along the X-axis. - * sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisInterval", optionValue: number): void; - - /** - * Gets the frequency of displayed minor lines along the X-axis. - * Gets the set value is a factor that determines how the minor lines will be displayed. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisMinorInterval"): number; - - /** - * Sets the frequency of displayed minor lines along the X-axis. - * sets the set value is a factor that determines how the minor lines will be displayed. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisMinorInterval", optionValue: number): void; - - /** - * Gets the amount of space between adjacent categories for the X-axis. - * The gap is silently clamped to the range [0, 1] when used. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisGap"): number; - - /** - * Sets the amount of space between adjacent categories for the X-axis. - * The gap is silently clamped to the range [0, 1] when used. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisGap", optionValue: number): void; - - /** - * Gets the amount of overlap between adjacent categories for the X-axis. - * Gets the overlap is silently clamped to the range [-1, 1] when used. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisOverlap"): number; - - /** - * Sets the amount of overlap between adjacent categories for the X-axis. - * sets the overlap is silently clamped to the range [-1, 1] when used. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "xAxisOverlap", optionValue: number): void; - - /** - * Gets the distance between each label and grid line along the Y-axis. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisInterval"): number; - - /** - * Sets the distance between each label and grid line along the Y-axis. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisInterval", optionValue: number): void; - - /** - * Gets whether the Y-axis should use a logarithmic scale instead of a linear one. - * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic"): boolean; - - /** - * Sets whether the Y-axis should use a logarithmic scale instead of a linear one. - * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic", optionValue: boolean): void; - - /** - * Gets the base value to use in the log function when mapping the position of data items along the Y-axis. - * This property is effective only when YAxisIsLogarithmic is true. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase"): number; - - /** - * Sets the base value to use in the log function when mapping the position of data items along the Y-axis. - * This property is effective only when YAxisIsLogarithmic is true. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase", optionValue: number): void; - - /** - * Gets the frequency of displayed minor lines along the Y-axis. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinorInterval"): number; - - /** - * Sets the frequency of displayed minor lines along the Y-axis. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinorInterval", optionValue: number): void; + igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle", optionValue: string): void; /** * Gets the format for labels along the X-axis. @@ -12514,24 +13183,24 @@ interface JQuery { igCategoryChart(optionLiteral: 'option', optionName: "yAxisTickStrokeThickness", optionValue: number): void; /** - * Text to display below the X-axis. + * Gets the Text to display below the X-axis. */ igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitle"): string; /** - * Text to display below the X-axis. + * Sets the Text to display below the X-axis. * * @optionValue New value to be set. */ igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitle", optionValue: string): void; /** - * Text to display to the left of the Y-axis. + * Gets the Text to display to the left of the Y-axis. */ igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitle"): string; /** - * Text to display to the left of the Y-axis. + * Sets the Text to display to the left of the Y-axis. * * @optionValue New value to be set. */ @@ -12585,6 +13254,30 @@ interface JQuery { */ igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelAngle", optionValue: number): void; + /** + * Gets the distance between the X-axis and the bottom of the chart. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisExtent"): number; + + /** + * Sets the distance between the X-axis and the bottom of the chart. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisExtent", optionValue: number): void; + + /** + * Gets the distance between the Y-axis and the left edge of the chart. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisExtent"): number; + + /** + * Sets the distance between the Y-axis and the left edge of the chart. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisExtent", optionValue: number): void; + /** * Gets the angle of rotation for the X-axis title. */ @@ -12610,137 +13303,381 @@ interface JQuery { igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleAngle", optionValue: number): void; /** - * Gets the rendering resolution for series in this chart. - * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. - */ - igCategoryChart(optionLiteral: 'option', optionName: "resolution"): number; - - /** - * Sets the rendering resolution for series in this chart. - * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "resolution", optionValue: number): void; - - /** - * Gets the palette of brushes to used for coloring trend lines in this chart. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - igCategoryChart(optionLiteral: 'option', optionName: "trendLineBrushes"): any; - - /** - * Sets the palette of brushes to used for coloring trend lines in this chart. The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "trendLineBrushes", optionValue: any): void; - - /** - * Gets the formula used for calculating trend lines in this chart. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "trendLineType"): string; - - /** - * Sets the formula used for calculating trend lines in this chart. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "trendLineType", optionValue: string): void; - - /** - * Gets the thickness of the chart series. Depending on the ChartType, this can be the main brush used, or just the outline. - */ - igCategoryChart(optionLiteral: 'option', optionName: "thickness"): number; - - /** - * Sets the thickness of the chart series. Depending on the ChartType, this can be the main brush used, or just the outline. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "thickness", optionValue: number): void; - - /** - * Gets the collection of marker shapes used for representing data points of series in this chart. - * When MarkerTypes is null or empty, each series' marker type will be set to none or automatic, depending on the series type. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerTypes"): any; - - /** - * Sets the collection of marker shapes used for representing data points of series in this chart. - * When MarkerTypes is null or empty, each series' marker type will be set to none or automatic, depending on the series type. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerTypes", optionValue: any): void; - - /** - * Gets the palette of brushes used as the fill color for data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerBrushes"): any; - - /** - * Sets the palette of brushes used as the fill color for data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerBrushes", optionValue: any): void; - - /** - * Gets the palette of brushes used for coloring outline of data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerOutlines"): any; - - /** - * Sets the palette of brushes used for coloring outline of data point markers. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "markerOutlines", optionValue: any): void; - - /** - * Gets the thickness of the trend lines in this chart. - */ - igCategoryChart(optionLiteral: 'option', optionName: "trendLineThickness"): number; - - /** - * Sets the thickness of the trend lines in this chart. - * - * @optionValue New value to be set. - */ - igCategoryChart(optionLiteral: 'option', optionName: "trendLineThickness", optionValue: number): void; - - /** - * Gets whether the direction of the X-axis is inverted, placing the first data items on the right side instead of left side + * Gets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. */ igCategoryChart(optionLiteral: 'option', optionName: "xAxisInverted"): boolean; /** - * Sets whether the direction of the X-axis is inverted, placing the first data items on the right side instead of left side + * Sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. * * @optionValue New value to be set. */ igCategoryChart(optionLiteral: 'option', optionName: "xAxisInverted", optionValue: boolean): void; /** - * Gets whether the direction of the Y-axis is inverted, placing minimum numeric value at the top of the axis instead of bottom + * Gets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. */ igCategoryChart(optionLiteral: 'option', optionName: "yAxisInverted"): boolean; /** - * Sets whether the direction of the Y-axis is inverted, placing minimum numeric value at the top of the axis instead of bottom + * Sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. * * @optionValue New value to be set. */ igCategoryChart(optionLiteral: 'option', optionName: "yAxisInverted", optionValue: boolean): void; + /** + * Gets Horizontal alignment of the X-axis title. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment"): string; + + /** + * Sets Horizontal alignment of the X-axis title. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of the Y-axis title. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment"): string; + + /** + * Sets Vertical alignment of the Y-axis title. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of X-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of Y-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of X-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of Y-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Visibility of X-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility"): string; + + /** + * Sets Visibility of X-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility", optionValue: string): void; + + /** + * Gets Visibility of Y-axis labels. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility"): string; + + /** + * Sets Visibility of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility", optionValue: string): void; + + /** + * The location of Y-axis labels, relative to the plot area. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLocation"): string; + + /** + * The location of Y-axis labels, relative to the plot area. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelLocation", optionValue: string): void; + + /** + * Gets the duration used for animating series plots when the chart is loading into view + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionInDuration"): number; + + /** + * Sets the duration used for animating series plots when the chart is loading into view + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionInDuration", optionValue: number): void; + + /** + * Gets the easing function used for animating series plots when the chart is loading into view + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionInEasingFunction"): any; + + /** + * Sets the easing function used for animating series plots when the chart is loading into view + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "transitionInEasingFunction", optionValue: any): void; + + /** + * Gets the type of chart series to generate from the data. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "chartType"): string; + + /** + * Sets the type of chart series to generate from the data. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "chartType", optionValue: string): void; + + /** + * Gets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "markerCollisionAvoidance"): string; + + /** + * Sets the behavior for markers in each series which are placed too close together for the current view, resulting in a collision. + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "markerCollisionAvoidance", optionValue: string): void; + + /** + * Gets whether animation of series plots is enabled when the chart is loading into view + */ + igCategoryChart(optionLiteral: 'option', optionName: "isTransitionInEnabled"): boolean; + + /** + * Sets whether animation of series plots is enabled when the chart is loading into view + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "isTransitionInEnabled", optionValue: boolean): void; + + /** + * Gets the method that determines how to animate series plots when the chart is loading into view + */ + + igCategoryChart(optionLiteral: 'option', optionName: "transitionInMode"): string; + + /** + * Sets the method that determines how to animate series plots when the chart is loading into view + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "transitionInMode", optionValue: string): void; + + /** + * Gets the arrival speed used for animating series plots when the chart is loading into view + */ + + igCategoryChart(optionLiteral: 'option', optionName: "transitionInSpeedType"): string; + + /** + * Sets the arrival speed used for animating series plots when the chart is loading into view + * + * @optionValue New value to be set. + */ + + igCategoryChart(optionLiteral: 'option', optionName: "transitionInSpeedType", optionValue: string): void; + + /** + * Gets the frequency of displayed labels along the X-axis. + * Gets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisInterval"): number; + + /** + * Sets the frequency of displayed labels along the X-axis. + * sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisInterval", optionValue: number): void; + + /** + * Gets the frequency of displayed minor lines along the X-axis. + * Gets the set value is a factor that determines how the minor lines will be displayed. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisMinorInterval"): number; + + /** + * Sets the frequency of displayed minor lines along the X-axis. + * sets the set value is a factor that determines how the minor lines will be displayed. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisMinorInterval", optionValue: number): void; + + /** + * Gets the amount of space between adjacent categories for the X-axis. + * The gap is silently clamped to the range [0, 1] when used. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisGap"): number; + + /** + * Sets the amount of space between adjacent categories for the X-axis. + * The gap is silently clamped to the range [0, 1] when used. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisGap", optionValue: number): void; + + /** + * Gets the amount of overlap between adjacent categories for the X-axis. + * Gets the overlap is silently clamped to the range [-1, 1] when used. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisOverlap"): number; + + /** + * Sets the amount of overlap between adjacent categories for the X-axis. + * sets the overlap is silently clamped to the range [-1, 1] when used. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "xAxisOverlap", optionValue: number): void; + + /** + * Gets the distance between each label and grid line along the Y-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisInterval"): number; + + /** + * Sets the distance between each label and grid line along the Y-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisInterval", optionValue: number): void; + + /** + * Gets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic"): boolean; + + /** + * Sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic", optionValue: boolean): void; + + /** + * Gets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase"): number; + + /** + * Sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase", optionValue: number): void; + + /** + * Gets the data value corresponding to the minimum value of the Y-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinimumValue"): number; + + /** + * Sets the data value corresponding to the minimum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinimumValue", optionValue: number): void; + + /** + * Gets the data value corresponding to the maximum value of the Y-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMaximumValue"): number; + + /** + * Sets the data value corresponding to the maximum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMaximumValue", optionValue: number): void; + + /** + * Gets the frequency of displayed minor lines along the Y-axis. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinorInterval"): number; + + /** + * Sets the frequency of displayed minor lines along the Y-axis. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisMinorInterval", optionValue: number): void; + /** * Gets the palette used for coloring negative items of Waterfall chart type. * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. @@ -12755,118 +13692,6 @@ interface JQuery { */ igCategoryChart(optionLiteral: 'option', optionName: "negativeBrushes", optionValue: any): void; - /** - * Gets the horizontal alignment of the X-axis title. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment"): string; - - /** - * Sets the horizontal alignment of the X-axis title. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment", optionValue: string): void; - - /** - * Gets the vertical alignment of the Y-axis title. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment"): string; - - /** - * Sets the vertical alignment of the Y-axis title. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment", optionValue: string): void; - - /** - * Gets the horizontal alignment of X-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment"): string; - - /** - * Sets the horizontal alignment of X-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment", optionValue: string): void; - - /** - * Gets the horizontal alignment of Y-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment"): string; - - /** - * Sets the horizontal alignment of Y-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment", optionValue: string): void; - - /** - * Gets the vertical alignment of X-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment"): string; - - /** - * Sets the vertical alignment of X-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment", optionValue: string): void; - - /** - * Gets the vertical alignment of Y-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment"): string; - - /** - * Sets the vertical alignment of Y-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment", optionValue: string): void; - - /** - * Gets the visibility of X-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility"): string; - - /** - * Sets the visibility of X-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility", optionValue: string): void; - - /** - * Gets the visibility of Y-axis labels. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility"): string; - - /** - * Sets the visibility of Y-axis labels. - * - * @optionValue New value to be set. - */ - - igCategoryChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility", optionValue: string): void; - /** * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall. * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. @@ -12882,16 +13707,28 @@ interface JQuery { igCategoryChart(optionLiteral: 'option', optionName: "negativeOutlines", optionValue: any): void; /** - * Gets a value indicating whether grid and tick lines are aligned to device pixels. + * Gets whether the series animations should be allowed when a range change has been detected on an axis. */ - igCategoryChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels"): boolean; + igCategoryChart(optionLiteral: 'option', optionName: "animateSeriesWhenAxisRangeChanges"): boolean; /** - * Sets a value indicating whether grid and tick lines are aligned to device pixels. + * Sets whether the series animations should be allowed when a range change has been detected on an axis. * * @optionValue New value to be set. */ - igCategoryChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels", optionValue: boolean): void; + igCategoryChart(optionLiteral: 'option', optionName: "animateSeriesWhenAxisRangeChanges", optionValue: boolean): void; + + /** + * Gets whether the large numbers on the Y-axis labels are abbreviated. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers"): boolean; + + /** + * Sets whether the large numbers on the Y-axis labels are abbreviated. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers", optionValue: boolean): void; /** * The width of the chart. @@ -12994,41 +13831,101 @@ interface JQuery { igCategoryChart(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; /** - * Event raised when a property value is changed. + * Event raised when a property value is changed on this chart */ igCategoryChart(optionLiteral: 'option', optionName: "propertyChanged"): PropertyChangedEvent; /** - * Event raised when a property value is changed. + * Event raised when a property value is changed on this chart * * @optionValue Define event handler function. */ igCategoryChart(optionLiteral: 'option', optionName: "propertyChanged", optionValue: PropertyChangedEvent): void; /** - * Event raised when a series is initialized + * Event raised when a series is initialized and added to this chart. */ igCategoryChart(optionLiteral: 'option', optionName: "seriesAdded"): SeriesAddedEvent; /** - * Event raised when a series is initialized + * Event raised when a series is initialized and added to this chart. * * @optionValue Define event handler function. */ igCategoryChart(optionLiteral: 'option', optionName: "seriesAdded", optionValue: SeriesAddedEvent): void; /** - * Event raised when a series is removed from the CategoryChart + * Event raised when a series is removed from this chart. */ igCategoryChart(optionLiteral: 'option', optionName: "seriesRemoved"): SeriesRemovedEvent; /** - * Event raised when a series is removed from the CategoryChart + * Event raised when a series is removed from this chart. * * @optionValue Define event handler function. */ igCategoryChart(optionLiteral: 'option', optionName: "seriesRemoved", optionValue: SeriesRemovedEvent): void; + /** + * Occurs when the pointer enters a Series. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerEnter"): SeriesPointerEnterEvent; + + /** + * Occurs when the pointer enters a Series. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerEnter", optionValue: SeriesPointerEnterEvent): void; + + /** + * Occurs when the pointer leaves a Series. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerLeave"): SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer leaves a Series. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerLeave", optionValue: SeriesPointerLeaveEvent): void; + + /** + * Occurs when the pointer moves over a Series. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerMove"): SeriesPointerMoveEvent; + + /** + * Occurs when the pointer moves over a Series. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerMove", optionValue: SeriesPointerMoveEvent): void; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerDown"): SeriesPointerDownEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerDown", optionValue: SeriesPointerDownEvent): void; + + /** + * Occurs when the pointer is released over a Series. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerUp"): SeriesPointerUpEvent; + + /** + * Occurs when the pointer is released over a Series. + * + * @optionValue New value to be set. + */ + igCategoryChart(optionLiteral: 'option', optionName: "seriesPointerUp", optionValue: SeriesPointerUpEvent): void; + /** * Event which is raised before data binding. * Return false in order to cancel data binding. @@ -13167,6 +14064,7 @@ interface IgDataChartLegend { /** * The height of the legend.null will stretch vertically to fit data, no other height are defined. * + * * Valid values: * "null" */ @@ -13191,6 +14089,7 @@ interface IgDataChartAxes { * "categoryAngle" Specify the axis as category angle axis. Useful for displaying polar and radial categories. * "numericAngle" Specify the axis as numeric angle axis. Useful for displaying polar and radial series. * "numericRadius" Specify the axis as numeric radius axis. Useful for displaying polar and radial series. + * "time" Specify the axis as time X axis. Useful for displaying date based data with time breaks. */ type?: string; @@ -13375,6 +14274,7 @@ interface IgDataChartAxes { /** * Gets or sets the axis MinimumValue. * + * * Valid values: * "number" The minimum value can be set to be a number when the axis is of numeric type * "date" The minimum value can be set to be a date object when [type](ui.igDataChart#options:axes.type) option is set to "categoryDateTimeX" @@ -13384,6 +14284,7 @@ interface IgDataChartAxes { /** * Gets or sets the axis MaximumValue. * + * * Valid values: * "number" The maximum value can be set to be a number when the axis is of numeric type * "date" The maximum value can be set to be a date object when [type](ui.igDataChart#options:axes.type) option is set to "categoryDateTimeX" @@ -13604,6 +14505,7 @@ interface IgDataChartSeriesLegend { /** * The height of the legend.null will stretch vertically to fit data, no other height are defined * + * * Valid values: * "null" */ @@ -13633,19 +14535,77 @@ interface IgDataChartSeries { * "waterfall" Specify the series as Waterfall series. * "financial" Specify the series as Financial series. * "typicalPriceIndicator" Specify the series as Typical Price Indicator series. + * "point" Specify the series as Point series. + * "polarSplineArea" Specify the series as Polar Spline Area series. + * "polarSpline" Specify the series as Polar Spline series. * "polarArea" Specify the series as Polar Area series. * "polarLine" Specify the series as Polar Line series. * "polarScatter" Specify the series as Polar Scatter series. * "radialColumn" Specify the series as Radial Column series. * "radialLine" Specify the series as Radial Line series. * "radialPie" Specify the series as Radial Pie series. + * "radialArea" Specify the series as Radial Area series. * "scatter" Specify the series as Scatter series. * "scatterLine" Specify the series as Scatter Line series. + * "scatterSpline" Specify the series as Scatter Spline series. + * "scatterArea" Specify the series as Scatter Area series. + * "scatterContour" Specify the series as Scatter Contour series. + * "scatterPolygon" Specify the series as Scatter Polygon series. + * "scatterPolyline" Specify the series as Scatter Polyline series. * "bubble" Specify the series as Bubble series. * "absoluteVolumeOscillatorIndicator" Specify the series as Absolute Volume Oscillator Indicator series. * "averageTrueRangeIndicator" Specify the series as Average True Range Indicator series. * "accumulationDistributionIndicator" Specify the series as Accumulation Distribution Indicator series * "averageDirectionalIndexIndicator" Specify the series as Average Directional Index Indicator series. + * "bollingerBandWidthIndicator" Specify the series as Bollinger Band Width Indicator series. + * "chaikinOscillatorIndicator" Specify the series as Chaikin Oscillator Indicator series. + * "chaikinVolatilityIndicator" Specify the series as Chaikin Volitility Indicator series. + * "commodityChannelIndexIndicator" Specify the series as Commodity Channel Index Indicator series. + * "detrendedPriceOscillatorIndicator" Specify the series as Detrended Price Oscillator Indicator series. + * "easeOfMovementIndicator" Specify the series as Ease Of Movement Indicator series. + * "fastStochasticOscillatorIndicator" Specify the series as Fast Stochastic Oscillator Indicator series. + * "forceIndexIndicator" Specify the series as Force Index Indicator series. + * "fullStochasticOscillatorIndicator" Specify the series as Full Stochastic Oscillator Indicator series. + * "marketFacilitationIndexIndicator" Specify the series as Market Facilitation Index Indicator series. + * "massIndexIndicator" Specify the series as Mass Index Indicator series. + * "medianPriceIndicator" Specify the series as Median Price Indicator series. + * "moneyFlowIndexIndicator" Specify the series as Money Flow Index Indicator series. + * "movingAverageConvergenceDivergenceIndicator" Specify the series as Moving Average Convergence Divergence Indicator series. + * "negativeVolumeIndexIndicator" Specify the series as Negative Volume Index Indicator series. + * "onBalanceVolumeIndicator" Specify the series as On Balance Volume Indicator series. + * "percentagePriceOscillatorIndicator" Specify the series as Percentage Price Oscillator Indicator series. + * "percentageVolumeOscillatorIndicator" Specify the series as Percentage Volume Oscillator Indicator series. + * "positiveVolumeIndexIndicator" Specify the series as Positive Volume Index Indicator series. + * "priceVolumeTrendIndictor" Specify the series as Price Volume Trend Indictor series. + * "rateOfChangeAndMomentumIndicator" Specify the series as Rate Of Change And Momentum Indicator series. + * "relativeStrengthIndexIndicator" Specify the series as Relative Strength Index Indicator series. + * "slowStochasticOscillatorIndicator" Specify the series as Slow Stochastic Oscillator Indicator series. + * "standardDeviationIndicator" Specify the series as Standard Deviation Indicator series. + * "stochRSIIndicator" Specify the series as Stoch RSI Indicator series. + * "trixIndicator" Specify the series as Trix Indicator series. + * "ultimateOscillatorIndicator" Specify the series as Ultimate Oscillator Indicator series. + * "weightedCloseIndicator" Specify the series as Weighted Close Indicator series. + * "williamsPercentRIndicator" Specify the series as Williams Percent R Indicator series. + * "bollingerBandsOverlay" Specify the series as Bollinger Bands Overlay series. + * "priceChannelOverlay" Specify the series as Price Channel Overlay series. + * "customIndicator" Specify the series as Custom Indicator series. + * "stackedBar" Specify the series as Stacked Bar series. + * "stacked100Bar" Specify the series as Stacked 100 Bar series. + * "stackedArea" Specify the series as Stacked Area series. + * "stacked100Area" Specify the series as Stacked 100 Area series. + * "stackedColumn" Specify the series as Stacked Column series. + * "stacked100Column" Specify the series as Stacked 100 Column series. + * "stackedLine" Specify the series as Stacked Line series. + * "stacked100Line" Specify the series as Stacked 100 Line series. + * "stackedSpline" Specify the series as Stacked Spline series. + * "stacked100Spline" Specify the series as Stacked 100 Spline series. + * "stackedSplineArea" Specify the series as Stacked Spline Area series. + * "stacked100SplineArea" Specify the series as Stacked 100 Spline Area series. + * "crosshairLayer" Specify the series as a crosshair layer. + * "categoryHighlightLayer" Specify the series as a category highlight layer. + * "categoryItemHighlightLayer" Specify the series as a category item highlight layer. + * "itemToolTipLayer" Specify the series as an item tooltip layer. + * "categoryToolTipLayer" Specify the series as a category tooltip layer. */ type?: string; @@ -15138,6 +16098,7 @@ interface IgDataChart { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. * + * * Valid values: * "deferred" Defer the view update until after the user action is complete. * "immediate" Update the view immediately while the user action is happening. @@ -15583,6 +16544,24 @@ interface IgDataChart { */ theme?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired when the mouse has hovered on a series and the tooltip is about to show * Function takes arguments evt and ui. @@ -16270,6 +17249,24 @@ interface IgDataChartMethods { * Clears the tile zoom tile cache so that new tiles will be generated. Only applies if the viewer is using a tile based zoom. */ clearTileZoomCache(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igDataChart"): IgDataChartMethods; @@ -16471,6 +17468,7 @@ interface IgPieChart { /** * Gets or sets the position of chart labels. * + * * Valid values: * "none" No labels will be displayed. * "center" Labels will be displayed in the center. @@ -16495,6 +17493,7 @@ interface IgPieChart { /** * Gets or sets the type of selection the pie chart allows. * + * * Valid values: * "single" A single slice is allowed to be selected. * "multiple" Multiple slices are allowed to be selected. @@ -16517,6 +17516,7 @@ interface IgPieChart { /** * Gets or sets whether the leader lines are visible. * + * * Valid values: * "visible" * "collapsed" @@ -16526,6 +17526,7 @@ interface IgPieChart { /** * Gets or sets what type of leader lines will be used for the outside end labels. * + * * Valid values: * "straight" * "arc" @@ -16634,6 +17635,7 @@ interface IgPieChart { /** * Gets or sets the rotational direction of the chart. * + * * Valid values: * "counterclockwise" * "clockwise" @@ -16685,6 +17687,24 @@ interface IgPieChart { */ theme?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired when the mouse has hovered on an element long enough to display a tooltip * Function takes arguments evt and ui. @@ -16859,6 +17879,24 @@ interface IgPieChartMethods { * Forces any pending deferred work to render on the chart before continuing */ flush(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igPieChart"): IgPieChartMethods; @@ -16921,6 +17959,9 @@ interface JQuery { igDataChart(methodName: "startTiledZoomingIfNecessary"): void; igDataChart(methodName: "endTiledZoomingIfRunning"): void; igDataChart(methodName: "clearTileZoomCache"): void; + igDataChart(methodName: "changeLocale", $container: Object): void; + igDataChart(methodName: "changeGlobalLanguage"): void; + igDataChart(methodName: "changeGlobalRegional"): void; /** * Gets whether the series viewer can allow the page to pan if a control pan is not possible in the requested direction. @@ -17052,6 +18093,7 @@ interface JQuery { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. + * */ igDataChart(optionLiteral: 'option', optionName: "windowResponse"): string; @@ -17059,6 +18101,7 @@ interface JQuery { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. * + * * @optionValue New value to be set. */ @@ -18008,6 +19051,50 @@ interface JQuery { */ igDataChart(optionLiteral: 'option', optionName: "theme", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igDataChart(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igDataChart(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igDataChart(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igDataChart(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igDataChart(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igDataChart(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired when the mouse has hovered on a series and the tooltip is about to show * Function takes arguments evt and ui. @@ -18561,6 +19648,9 @@ interface JQuery { igPieChart(methodName: "exportVisualData"): void; igPieChart(methodName: "getData"): Object; igPieChart(methodName: "flush"): void; + igPieChart(methodName: "changeLocale", $container: Object): void; + igPieChart(methodName: "changeGlobalLanguage"): void; + igPieChart(methodName: "changeGlobalRegional"): void; /** * The width of the chart. It can be set as a number in pixels, string (px) or percentage (%). @@ -18700,6 +19790,7 @@ interface JQuery { /** * Gets the position of chart labels. + * */ igPieChart(optionLiteral: 'option', optionName: "labelsPosition"): string; @@ -18707,6 +19798,7 @@ interface JQuery { /** * Sets the position of chart labels. * + * * @optionValue New value to be set. */ @@ -18742,6 +19834,7 @@ interface JQuery { /** * Gets the type of selection the pie chart allows. + * */ igPieChart(optionLiteral: 'option', optionName: "selectionMode"): string; @@ -18749,6 +19842,7 @@ interface JQuery { /** * Sets the type of selection the pie chart allows. * + * * @optionValue New value to be set. */ @@ -18784,6 +19878,7 @@ interface JQuery { /** * Gets whether the leader lines are visible. + * */ igPieChart(optionLiteral: 'option', optionName: "leaderLineVisibility"): string; @@ -18791,6 +19886,7 @@ interface JQuery { /** * Sets whether the leader lines are visible. * + * * @optionValue New value to be set. */ @@ -18798,6 +19894,7 @@ interface JQuery { /** * Gets what type of leader lines will be used for the outside end labels. + * */ igPieChart(optionLiteral: 'option', optionName: "leaderLineType"): string; @@ -18805,6 +19902,7 @@ interface JQuery { /** * Sets what type of leader lines will be used for the outside end labels. * + * * @optionValue New value to be set. */ @@ -19036,6 +20134,7 @@ interface JQuery { /** * Gets the rotational direction of the chart. + * */ igPieChart(optionLiteral: 'option', optionName: "sweepDirection"): string; @@ -19043,6 +20142,7 @@ interface JQuery { /** * Sets the rotational direction of the chart. * + * * @optionValue New value to be set. */ @@ -19152,6 +20252,50 @@ interface JQuery { */ igPieChart(optionLiteral: 'option', optionName: "theme", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igPieChart(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPieChart(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igPieChart(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPieChart(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igPieChart(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igPieChart(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired when the mouse has hovered on an element long enough to display a tooltip * Function takes arguments evt and ui. @@ -19537,6 +20681,24 @@ interface IgChartLegend { */ theme?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Occurs when the left mouse button is pressed while the mouse pointer is over an element of this legend. * Function takes arguments evt and ui. @@ -19607,6 +20769,24 @@ interface IgChartLegendMethods { * Returns the ID of the DOM element holding the legend. */ id(): string; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igChartLegend"): IgChartLegendMethods; @@ -19617,6 +20797,9 @@ interface JQuery { igChartLegend(methodName: "destroy"): void; igChartLegend(methodName: "widget"): void; igChartLegend(methodName: "id"): string; + igChartLegend(methodName: "changeLocale", $container: Object): void; + igChartLegend(methodName: "changeGlobalLanguage"): void; + igChartLegend(methodName: "changeGlobalRegional"): void; /** * Type of the legend. @@ -19672,6 +20855,50 @@ interface JQuery { */ igChartLegend(optionLiteral: 'option', optionName: "theme", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igChartLegend(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igChartLegend(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igChartLegend(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igChartLegend(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igChartLegend(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igChartLegend(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Occurs when the left mouse button is pressed while the mouse pointer is over an element of this legend. * Function takes arguments evt and ui. @@ -19796,12 +21023,14 @@ interface IgColorPicker { /** * Gets/Sets the default colors. Default colors are the ones displayed in the upper table of the color picker. * The array should contain arrays that contain the color values for every next row. + * */ colors?: string; /** * Gets/Sets the standard colors. Standard colors are the ones displayed in the color picker bottom, * visually separated from the default colors. The array should contain the color values. + * */ standardColors?: any[]; @@ -19869,6 +21098,7 @@ interface JQuery { /** * Gets/Sets the default colors. Default colors are the ones displayed in the upper table of the color picker. * The array should contain arrays that contain the color values for every next row. + * */ igColorPicker(optionLiteral: 'option', optionName: "colors"): string; @@ -19876,6 +21106,7 @@ interface JQuery { * /Sets the default colors. Default colors are the ones displayed in the upper table of the color picker. * The array should contain arrays that contain the color values for every next row. * + * * @optionValue New value to be set. */ igColorPicker(optionLiteral: 'option', optionName: "colors", optionValue: string): void; @@ -19883,6 +21114,7 @@ interface JQuery { /** * Gets/Sets the standard colors. Standard colors are the ones displayed in the color picker bottom, * visually separated from the default colors. The array should contain the color values. + * */ igColorPicker(optionLiteral: 'option', optionName: "standardColors"): any[]; @@ -19890,6 +21122,7 @@ interface JQuery { * /Sets the standard colors. Standard colors are the ones displayed in the color picker bottom, * visually separated from the default colors. The array should contain the color values. * + * * @optionValue New value to be set. */ igColorPicker(optionLiteral: 'option', optionName: "standardColors", optionValue: any[]): void; @@ -19975,26 +21208,31 @@ interface CollapsingEventUIParam { interface IgColorPickerSplitButton { /** * Button items. + * */ items?: any[]; /** * Gets/sets the button default color value. + * */ defaultColor?: string; /** * If this option is set to true, the igColorPickerSplitButton will be rendered with an icon. + * */ hasDefaultIcon?: boolean; /** * Default button item name. + * */ defaultItemName?: string; /** * Specifies whether the default button will be switched when another button is selected. + * */ swapDefaultEnabled?: boolean; @@ -20053,11 +21291,15 @@ interface IgColorPickerSplitButtonMethods { /** * Collapse the widget. + * + * @param e */ collapse(e: Object): Object; /** * Expands the widget. + * + * @param e */ expand(e: Object): Object; @@ -20096,60 +21338,70 @@ interface JQuery { /** * Button items. + * */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "items"): any[]; /** * Button items. * + * * @optionValue New value to be set. */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "items", optionValue: any[]): void; /** * Gets/ the button default color value. + * */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "defaultColor"): string; /** * /sets the button default color value. * + * * @optionValue New value to be set. */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "defaultColor", optionValue: string): void; /** * If this option is set to true, the igColorPickerSplitButton will be rendered with an icon. + * */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "hasDefaultIcon"): boolean; /** * If this option is set to true, the igColorPickerSplitButton will be rendered with an icon. * + * * @optionValue New value to be set. */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "hasDefaultIcon", optionValue: boolean): void; /** * Default button item name. + * */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "defaultItemName"): string; /** * Default button item name. * + * * @optionValue New value to be set. */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "defaultItemName", optionValue: string): void; /** * Gets whether the default button will be switched when another button is selected. + * */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "swapDefaultEnabled"): boolean; /** * Sets whether the default button will be switched when another button is selected. * + * * @optionValue New value to be set. */ igColorPickerSplitButton(optionLiteral: 'option', optionName: "swapDefaultEnabled", optionValue: boolean): void; @@ -20252,21 +21504,25 @@ interface JQuery { interface IgComboLocale { /** * Gets/Sets text of list item for condition when [filteringType](ui.igcombo#options:filteringType) option is enabled and no match was found. + * */ noMatchFoundText?: any; /** * Gets/Sets title for html element which represent the drop-down button. + * */ dropDownButtonTitle?: any; /** * Gets/Sets title for html element which represent the clear button. + * */ clearButtonTitle?: any; /** * Gets/Sets value that is displayed when input field is empty. + * */ placeHolder?: any; @@ -20279,11 +21535,13 @@ interface IgComboLocale { interface IgComboLoadOnDemandSettings { /** * Gets/Sets option to enable load on demand. + * */ enabled?: boolean; /** * Gets/Sets number of records loaded on each request. + * */ pageSize?: number; @@ -20296,21 +21554,25 @@ interface IgComboLoadOnDemandSettings { interface IgComboMultiSelection { /** * Set enabled to true to turn multi selection on. Set to true by default when target element for the combo is a select with the multiple attribute set. + * */ enabled?: boolean; /** * Set addWithKeyModifier to true to disable the additive selection, then additive selection can be done by ctrl + mouse click / enter. + * */ addWithKeyModifier?: boolean; /** * Set showCheckboxes to true to render check boxes in front of each drop down item. + * */ showCheckboxes?: boolean; /** * Use itemSeparator to set what string to be rendered between items in field. + * */ itemSeparator?: string; @@ -20323,12 +21585,14 @@ interface IgComboMultiSelection { interface IgComboGrouping { /** * Gets/Sets name of column by which the records will be grouped. Setting this option enables the grouping. + * */ key?: string; /** * Specifies the sort order - ascending or descending. * + * * Valid values: * "asc" * "desc" @@ -20344,11 +21608,13 @@ interface IgComboGrouping { interface IgComboInitialSelectedItem { /** * Optional="true" Index of item in the list. The index should be greater than -1 and less than the count of the [items](ui.igcombo#methods:items) in the list (rows in dataSource). + * */ index?: number; /** * Optional="true" Value matching the [valueKey](ui.igcombo#options:valueKey) property of the item. + * */ value?: any; @@ -20547,17 +21813,20 @@ interface SelectionChangedEventUIParam { interface IgCombo { /** * Gets/Sets the width of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. + * */ width?: string|number; /** * Gets/Sets height of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. + * */ height?: string|number; /** * Gets/Sets the width of drop-down list in pixels. * + * * Valid values: * "string" The default drop-down list width can be set in pixels (px). * "number" The default drop-down list width can be set as a number. @@ -20567,33 +21836,39 @@ interface IgCombo { /** * Gets/Sets a valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. * Note: if it is set to string and [dataSourceType](ui.igcombo#options:dataSourceType) option is not set, then [$.ig.JSONDataSource](ig.jsondatasource) is used. + * */ dataSource?: any; /** * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of [$.ig.DataSource](ig.datasource) and its [type](ig.datasource#options:settings.type) property. + * */ dataSourceType?: string; /** * Sets URL which is used for sending JSON on request for remote filtering (MVC for example). That option is required when [load on demand](ui.igcombo#options:loadOnDemandSettings) is * [enabled](ui.igcombo#options:loadOnDemandSettings.enabled) and its [type](ui.igcombo#options:filteringType) is remote. + * */ dataSourceUrl?: string; /** * See [$.ig.DataSource](ig.datasource) property in the response specifying the total number of records on the server. + * */ responseTotalRecCountKey?: string; /** * See [$.ig.DataSource](ig.datasource) This is basically the property in the response where data records are held, if the response is wrapped. + * */ responseDataKey?: string; /** * Response type when a URL is set as the data source. See http://api.jquery.com/jQuery.ajax/ => dataType. * + * * Valid values: * "json" * "xml" @@ -20606,32 +21881,38 @@ interface IgCombo { /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType. + * */ responseContentType?: string; /** * Specifies the HTTP verb to be used to issue the request. + * */ requestType?: string; /** * Gets/Sets name of column which contains the "value". If it is missing, then the name of first column will be used. + * */ valueKey?: string; /** * Gets/Sets name of column which contains the displayed text. If it is missing, then [valueKey](ui.igcombo#options:valueKey) option will be used. + * */ textKey?: string; /** * Gets/Sets a template used to render an item in list. The igCombo utilizes igTemplating for generating node content templates. * More info on the templating engine can be found here: http://www.igniteui.com/help/infragistics-templating-engine. + * */ itemTemplate?: string; /** * Gets/Sets template used to render a header in the drop-down list. The template is rendered inside of a DIV html element. + * */ headerTemplate?: string; @@ -20644,33 +21925,39 @@ interface IgCombo { * - {1}: Number of records in dataSource * - {2}: Number of (filtered) records on server * - {3}: Number of all records on server + * */ footerTemplate?: string; /** * Gets/Sets the name of a hidden INPUT element, which is used when submitting data. Its value will be set to the values of the selected items valueKeys separated by ',' character on any change in igCombo. If the combo element has 'name' attribute and this option is not set, the 'name' attribute will be used for the input name. + * */ inputName?: string; /** * Gets/Sets show drop-down list animation duration in milliseconds. + * */ animationShowDuration?: number; /** * Gets/Sets hide drop-down list animation duration in milliseconds. + * */ animationHideDuration?: number; /** * If set to true, the container of the drop-down list is appended to the body. * If set to false, it is appended to the parent element of the combo. + * */ dropDownAttachedToBody?: boolean; /** * Gets/Sets type of filtering.Note: option is set to "remote", then the "css.waitFiltering" is applied to combo and its drop-down list. * + * * Valid values: * "remote" filtering is performed by server * "local" filtering is performed by $.ig.DataSource @@ -20680,12 +21967,14 @@ interface IgCombo { /** * Gets/Sets URL key name that specifies how the remote filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ filterExprUrlKey?: string; /** * Gets/Sets condition used for filtering.Note: When [autoComplete](ui.igcombo#options:autoComplete) is enabled, the filtering condition is always "startsWith". * + * * Valid values: * "contains" * "doesNotContain" @@ -20703,6 +21992,7 @@ interface IgCombo { /** * Gets/Sets filtering logic. * + * * Valid values: * "OR" * "AND" @@ -20743,6 +22033,7 @@ interface IgCombo { * Notes: * That option has effect only when data is loaded remotely using [dataSourceUrl](ui.igcombo#options:dataSourceUrl). * Selection is supported only for already loaded items. + * */ loadOnDemandSettings?: IgComboLoadOnDemandSettings; @@ -20750,12 +22041,14 @@ interface IgCombo { * Gets/Sets how many items should be shown at once. * Notes: * This option is used for [virtualization](ui.igcombo#options:virtualization) in order to render initial list items. + * */ visibleItemsCount?: number; /** * Sets gets functionality mode. * + * * Valid values: * "editable" Allows to modify value by edit field and drop-down list. * "dropdown" Allows to modify value by drop-down list only. @@ -20767,28 +22060,33 @@ interface IgCombo { /** * Gets/Sets ability to use virtual rendering for drop-down list. Enable to boost performance when combo has lots of records. * If that option is enabled, then only visible items are created and the top edge of the first visible item in list is aligned to the top edge of list. + * */ virtualization?: boolean; /** * Gets/Sets object specifying multi selection feature options. Note showCheckboxes and itemSeparator has effect only if multi selection is enabled. + * */ multiSelection?: IgComboMultiSelection; /** * Gets/Sets object specifying grouping feature options. The option has key and dir properties. + * */ grouping?: IgComboGrouping; /** * Gets/Sets object which contains options supported by [igValidator](ui.igvalidator). * Notes: in order for validator to work, application should ensure that [igValidator](ui.igvalidator) is loaded (ig.ui.validator.js/css files). + * */ validatorOptions?: any; /** * Gets/Sets condition used for highlighting of matching parts in items of drop-down list. * + * * Valid values: * "multi" multiple matches in a single item are rendered * "contains" match at any position in item is rendered @@ -20800,17 +22098,20 @@ interface IgCombo { /** * If set to true, filtering and auto selection will be case-sensitive. + * */ caseSensitive?: boolean; /** * Gets/Sets whether the first matching item should be auto selected when typing in input. When [multiSelection](ui.igcombo#options:multiSelection) is enabled this option will instead put the active item on the matching element. + * */ autoSelectFirstMatch?: boolean; /** * Gets/Sets ability to autocomplete field from first matching item in list. * Note: When autoComplete option is enabled, then "startsWith" is used for [filteringCondition](ui.igcombo#options:filteringCondition). + * */ autoComplete?: boolean; @@ -20818,47 +22119,56 @@ interface IgCombo { * If set to true: * 1. Allows custom value input only with single selection. * 2. Custom values will be auto completed to the closest value if [autoComplete](ui.igcombo#options:autoComplete) is enabled. + * */ allowCustomValue?: boolean; /** * Gets/Sets ability to close drop-down list when control loses focus. + * */ closeDropDownOnBlur?: boolean; /** * Specifies the delay duration before processing the changes in the input. Useful to boost performance by lowering the count of selection, filtering, auto complete and highlighting operations executed on each input change. + * */ delayInputChangeProcessing?: number; /** * Gets/Sets tabIndex for the field of the combo. + * */ tabIndex?: number; /** * Gets/Sets ability to show the drop-down list when the combo is in focus. This option has effect only if the combo is in editable [mode](ui.igcombo#options:mode). + * */ dropDownOnFocus?: boolean; /** * Gets sets ability to close drop-down list when single item in the list is selected with mouse click or enter press. The default value when [multiSelection](ui.igcombo#options:multiSelection) is enabled will be false. This option will not close the drop down when [multiSelection](ui.igcombo#options:multiSelection) is enabled and additive selection is performed. + * */ closeDropDownOnSelect?: boolean; /** * Gets/Sets ability to select items by space button press. + * */ selectItemBySpaceKey?: boolean; /** * Gets/Sets list of items to be selected when the combo is initialized. It should contain array of objects with index or value property, then on initialization the matching items will be selected. If initialSelectedItems are not set, the combo is with single selection and it is in a dropdown, readonly or readonlylist [mode](ui.igcombo#options:mode), the first item will be automatically selected. * Note: Only items loaded on initialization can be selected. When using [load on demand](ui.igCombo#options:loadOnDemandSettings), selecting an item which is not loaded yet will fail. + * */ initialSelectedItems?: IgComboInitialSelectedItem[]; /** * Gets/Sets ability to prevent submitting form on enter key press. + * */ preventSubmitOnEnter?: boolean; @@ -20871,24 +22181,28 @@ interface IgCombo { * Custom values can be something like "currency", "percent", "dateLong", "time", "MMM-dd-yyyy H:mm tt", etc. * * Custom format strings should match the data type in "textKey" column. + * */ format?: string; /** * Gets/Sets whether the onscreen keyboard should be shown when the dropdown button is clicked (touch devices only). * Note: The keyboard will still show when the combo input is focused in editable mode. + * */ suppressKeyboard?: boolean; /** * Specifies whether the clear button should be rendered. * When the [mode](ui.igcombo#options:mode) is single selection, readonly or readonlylist this option will default to false. It can still be enabled when it is specifically set to true. + * */ enableClearButton?: boolean; /** * Gets/Sets drop-down list orientation when open button is clicked. * + * * Valid values: * "auto" if there is enough space, it positions the drop-down list below the combo input, otherwise - above the combo input * "bottom" below the combo input @@ -20896,6 +22210,18 @@ interface IgCombo { */ dropDownOrientation?: string; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised after rendering of the combo completes. * @@ -21029,7 +22355,16 @@ interface IgCombo { [optionName: string]: any; } interface IgComboMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igcombo#options:language) + * Note that this method is for rare scenarios, see [language](ui.igcombo#options:language) or [locale](ui.igcombo#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.igcombo#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.igcombo#options:regional) option setter + */ changeRegional(): void; /** @@ -21354,6 +22689,16 @@ interface IgComboMethods { * Destroys the igCombo widget. */ destroy(): Object; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igCombo"): IgComboMethods; @@ -21403,9 +22748,12 @@ interface JQuery { igCombo(methodName: "dropDownOpened"): boolean; igCombo(methodName: "positionDropDown"): Object; igCombo(methodName: "destroy"): Object; + igCombo(methodName: "changeGlobalLanguage"): void; + igCombo(methodName: "changeGlobalRegional"): void; /** * Gets/Sets the width of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. + * */ igCombo(optionLiteral: 'option', optionName: "width"): string|number; @@ -21413,6 +22761,7 @@ interface JQuery { /** * /Sets the width of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. * + * * @optionValue New value to be set. */ @@ -21420,6 +22769,7 @@ interface JQuery { /** * Gets/Sets height of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. + * */ igCombo(optionLiteral: 'option', optionName: "height"): string|number; @@ -21427,6 +22777,7 @@ interface JQuery { /** * /Sets height of combo. The numeric and string values (valid html units for size) are supported. It includes %, px, em and other units. * + * * @optionValue New value to be set. */ @@ -21434,6 +22785,7 @@ interface JQuery { /** * Gets/Sets the width of drop-down list in pixels. + * */ igCombo(optionLiteral: 'option', optionName: "dropDownWidth"): string|number; @@ -21441,6 +22793,7 @@ interface JQuery { /** * /Sets the width of drop-down list in pixels. * + * * @optionValue New value to be set. */ @@ -21449,6 +22802,7 @@ interface JQuery { /** * Gets/Sets a valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. * Note: if it is set to string and [dataSourceType](ui.igcombo#options:dataSourceType) option is not set, then [$.ig.JSONDataSource](ig.jsondatasource) is used. + * */ igCombo(optionLiteral: 'option', optionName: "dataSource"): any; @@ -21456,18 +22810,21 @@ interface JQuery { * /Sets a valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. * Note: if it is set to string and [dataSourceType](ui.igcombo#options:dataSourceType) option is not set, then [$.ig.JSONDataSource](ig.jsondatasource) is used. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; /** * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of [$.ig.DataSource](ig.datasource) and its [type](ig.datasource#options:settings.type) property. + * */ igCombo(optionLiteral: 'option', optionName: "dataSourceType"): string; /** * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of [$.ig.DataSource](ig.datasource) and its [type](ig.datasource#options:settings.type) property. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; @@ -21475,6 +22832,7 @@ interface JQuery { /** * Sets URL which is used for sending JSON on request for remote filtering (MVC for example). That option is required when [load on demand](ui.igcombo#options:loadOnDemandSettings) is * [enabled](ui.igcombo#options:loadOnDemandSettings.enabled) and its [type](ui.igcombo#options:filteringType) is remote. + * */ igCombo(optionLiteral: 'option', optionName: "dataSourceUrl"): string; @@ -21482,36 +22840,42 @@ interface JQuery { * Sets URL which is used for sending JSON on request for remote filtering (MVC for example). That option is required when [load on demand](ui.igcombo#options:loadOnDemandSettings) is * [enabled](ui.igcombo#options:loadOnDemandSettings.enabled) and its [type](ui.igcombo#options:filteringType) is remote. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; /** * See [$.ig.DataSource](ig.datasource) property in the response specifying the total number of records on the server. + * */ igCombo(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; /** * See [$.ig.DataSource](ig.datasource) property in the response specifying the total number of records on the server. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "responseTotalRecCountKey", optionValue: string): void; /** * See [$.ig.DataSource](ig.datasource) This is basically the property in the response where data records are held, if the response is wrapped. + * */ igCombo(optionLiteral: 'option', optionName: "responseDataKey"): string; /** * See [$.ig.DataSource](ig.datasource) This is basically the property in the response where data records are held, if the response is wrapped. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; /** * Response type when a URL is set as the data source. See http://api.jquery.com/jQuery.ajax/ => dataType. + * */ igCombo(optionLiteral: 'option', optionName: "responseDataType"): string; @@ -21519,6 +22883,7 @@ interface JQuery { /** * Response type when a URL is set as the data source. See http://api.jquery.com/jQuery.ajax/ => dataType. * + * * @optionValue New value to be set. */ @@ -21526,48 +22891,56 @@ interface JQuery { /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType. + * */ igCombo(optionLiteral: 'option', optionName: "responseContentType"): string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; /** * Specifies the HTTP verb to be used to issue the request. + * */ igCombo(optionLiteral: 'option', optionName: "requestType"): string; /** * Specifies the HTTP verb to be used to issue the request. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Gets/Sets name of column which contains the "value". If it is missing, then the name of first column will be used. + * */ igCombo(optionLiteral: 'option', optionName: "valueKey"): string; /** * /Sets name of column which contains the "value". If it is missing, then the name of first column will be used. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "valueKey", optionValue: string): void; /** * Gets/Sets name of column which contains the displayed text. If it is missing, then [valueKey](ui.igcombo#options:valueKey) option will be used. + * */ igCombo(optionLiteral: 'option', optionName: "textKey"): string; /** * /Sets name of column which contains the displayed text. If it is missing, then [valueKey](ui.igcombo#options:valueKey) option will be used. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "textKey", optionValue: string): void; @@ -21575,6 +22948,7 @@ interface JQuery { /** * Gets/Sets a template used to render an item in list. The igCombo utilizes igTemplating for generating node content templates. * More info on the templating engine can be found here: http://www.igniteui.com/help/infragistics-templating-engine. + * */ igCombo(optionLiteral: 'option', optionName: "itemTemplate"): string; @@ -21582,18 +22956,21 @@ interface JQuery { * /Sets a template used to render an item in list. The igCombo utilizes igTemplating for generating node content templates. * More info on the templating engine can be found here: http://www.igniteui.com/help/infragistics-templating-engine. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "itemTemplate", optionValue: string): void; /** * Gets/Sets template used to render a header in the drop-down list. The template is rendered inside of a DIV html element. + * */ igCombo(optionLiteral: 'option', optionName: "headerTemplate"): string; /** * /Sets template used to render a header in the drop-down list. The template is rendered inside of a DIV html element. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "headerTemplate", optionValue: string): void; @@ -21607,6 +22984,7 @@ interface JQuery { * - {1}: Number of records in dataSource * - {2}: Number of (filtered) records on server * - {3}: Number of all records on server + * */ igCombo(optionLiteral: 'option', optionName: "footerTemplate"): string; @@ -21620,42 +22998,49 @@ interface JQuery { * - {2}: Number of (filtered) records on server * - {3}: Number of all records on server * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "footerTemplate", optionValue: string): void; /** * Gets/Sets the name of a hidden INPUT element, which is used when submitting data. Its value will be set to the values of the selected items valueKeys separated by ',' character on any change in igCombo. If the combo element has 'name' attribute and this option is not set, the 'name' attribute will be used for the input name. + * */ igCombo(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name of a hidden INPUT element, which is used when submitting data. Its value will be set to the values of the selected items valueKeys separated by ',' character on any change in igCombo. If the combo element has 'name' attribute and this option is not set, the 'name' attribute will be used for the input name. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets show drop-down list animation duration in milliseconds. + * */ igCombo(optionLiteral: 'option', optionName: "animationShowDuration"): number; /** * /Sets show drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "animationShowDuration", optionValue: number): void; /** * Gets/Sets hide drop-down list animation duration in milliseconds. + * */ igCombo(optionLiteral: 'option', optionName: "animationHideDuration"): number; /** * /Sets hide drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "animationHideDuration", optionValue: number): void; @@ -21663,6 +23048,7 @@ interface JQuery { /** * If set to true, the container of the drop-down list is appended to the body. * If set to false, it is appended to the parent element of the combo. + * */ igCombo(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; @@ -21670,12 +23056,14 @@ interface JQuery { * If set to true, the container of the drop-down list is appended to the body. * If set to false, it is appended to the parent element of the combo. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; /** * Gets/Sets type of filtering.Note: option is set to "remote", then the "css.waitFiltering" is applied to combo and its drop-down list. + * */ igCombo(optionLiteral: 'option', optionName: "filteringType"): string; @@ -21683,6 +23071,7 @@ interface JQuery { /** * /Sets type of filtering.Note: option is set to "remote", then the "css.waitFiltering" is applied to combo and its drop-down list. * + * * @optionValue New value to be set. */ @@ -21690,18 +23079,21 @@ interface JQuery { /** * Gets/Sets URL key name that specifies how the remote filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ igCombo(optionLiteral: 'option', optionName: "filterExprUrlKey"): string; /** * /Sets URL key name that specifies how the remote filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "filterExprUrlKey", optionValue: string): void; /** * Gets/Sets condition used for filtering.Note: When [autoComplete](ui.igcombo#options:autoComplete) is enabled, the filtering condition is always "startsWith". + * */ igCombo(optionLiteral: 'option', optionName: "filteringCondition"): string; @@ -21709,6 +23101,7 @@ interface JQuery { /** * /Sets condition used for filtering.Note: When [autoComplete](ui.igcombo#options:autoComplete) is enabled, the filtering condition is always "startsWith". * + * * @optionValue New value to be set. */ @@ -21716,6 +23109,7 @@ interface JQuery { /** * Gets/Sets filtering logic. + * */ igCombo(optionLiteral: 'option', optionName: "filteringLogic"): string; @@ -21723,6 +23117,7 @@ interface JQuery { /** * /Sets filtering logic. * + * * @optionValue New value to be set. */ @@ -21799,6 +23194,7 @@ interface JQuery { * Notes: * That option has effect only when data is loaded remotely using [dataSourceUrl](ui.igcombo#options:dataSourceUrl). * Selection is supported only for already loaded items. + * */ igCombo(optionLiteral: 'option', optionName: "loadOnDemandSettings"): IgComboLoadOnDemandSettings; @@ -21808,6 +23204,7 @@ interface JQuery { * That option has effect only when data is loaded remotely using [dataSourceUrl](ui.igcombo#options:dataSourceUrl). * Selection is supported only for already loaded items. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "loadOnDemandSettings", optionValue: IgComboLoadOnDemandSettings): void; @@ -21816,6 +23213,7 @@ interface JQuery { * Gets/Sets how many items should be shown at once. * Notes: * This option is used for [virtualization](ui.igcombo#options:virtualization) in order to render initial list items. + * */ igCombo(optionLiteral: 'option', optionName: "visibleItemsCount"): number; @@ -21824,12 +23222,14 @@ interface JQuery { * Notes: * This option is used for [virtualization](ui.igcombo#options:virtualization) in order to render initial list items. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; /** * Sets gets functionality mode. + * */ igCombo(optionLiteral: 'option', optionName: "mode"): string; @@ -21837,6 +23237,7 @@ interface JQuery { /** * Sets gets functionality mode. * + * * @optionValue New value to be set. */ @@ -21845,6 +23246,7 @@ interface JQuery { /** * Gets/Sets ability to use virtual rendering for drop-down list. Enable to boost performance when combo has lots of records. * If that option is enabled, then only visible items are created and the top edge of the first visible item in list is aligned to the top edge of list. + * */ igCombo(optionLiteral: 'option', optionName: "virtualization"): boolean; @@ -21852,30 +23254,35 @@ interface JQuery { * /Sets ability to use virtual rendering for drop-down list. Enable to boost performance when combo has lots of records. * If that option is enabled, then only visible items are created and the top edge of the first visible item in list is aligned to the top edge of list. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "virtualization", optionValue: boolean): void; /** * Gets/Sets object specifying multi selection feature options. Note showCheckboxes and itemSeparator has effect only if multi selection is enabled. + * */ igCombo(optionLiteral: 'option', optionName: "multiSelection"): IgComboMultiSelection; /** * /Sets object specifying multi selection feature options. Note showCheckboxes and itemSeparator has effect only if multi selection is enabled. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "multiSelection", optionValue: IgComboMultiSelection): void; /** * Gets/Sets object specifying grouping feature options. The option has key and dir properties. + * */ igCombo(optionLiteral: 'option', optionName: "grouping"): IgComboGrouping; /** * /Sets object specifying grouping feature options. The option has key and dir properties. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "grouping", optionValue: IgComboGrouping): void; @@ -21883,6 +23290,7 @@ interface JQuery { /** * Gets/Sets object which contains options supported by [igValidator](ui.igvalidator). * Notes: in order for validator to work, application should ensure that [igValidator](ui.igvalidator) is loaded (ig.ui.validator.js/css files). + * */ igCombo(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -21890,12 +23298,14 @@ interface JQuery { * /Sets object which contains options supported by [igValidator](ui.igvalidator). * Notes: in order for validator to work, application should ensure that [igValidator](ui.igvalidator) is loaded (ig.ui.validator.js/css files). * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Gets/Sets condition used for highlighting of matching parts in items of drop-down list. + * */ igCombo(optionLiteral: 'option', optionName: "highlightMatchesMode"): string; @@ -21903,6 +23313,7 @@ interface JQuery { /** * /Sets condition used for highlighting of matching parts in items of drop-down list. * + * * @optionValue New value to be set. */ @@ -21910,24 +23321,28 @@ interface JQuery { /** * If set to true, filtering and auto selection will be case-sensitive. + * */ igCombo(optionLiteral: 'option', optionName: "caseSensitive"): boolean; /** * If set to true, filtering and auto selection will be case-sensitive. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "caseSensitive", optionValue: boolean): void; /** * Gets/Sets whether the first matching item should be auto selected when typing in input. When [multiSelection](ui.igcombo#options:multiSelection) is enabled this option will instead put the active item on the matching element. + * */ igCombo(optionLiteral: 'option', optionName: "autoSelectFirstMatch"): boolean; /** * /Sets whether the first matching item should be auto selected when typing in input. When [multiSelection](ui.igcombo#options:multiSelection) is enabled this option will instead put the active item on the matching element. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "autoSelectFirstMatch", optionValue: boolean): void; @@ -21935,6 +23350,7 @@ interface JQuery { /** * Gets/Sets ability to autocomplete field from first matching item in list. * Note: When autoComplete option is enabled, then "startsWith" is used for [filteringCondition](ui.igcombo#options:filteringCondition). + * */ igCombo(optionLiteral: 'option', optionName: "autoComplete"): boolean; @@ -21942,6 +23358,7 @@ interface JQuery { * /Sets ability to autocomplete field from first matching item in list. * Note: When autoComplete option is enabled, then "startsWith" is used for [filteringCondition](ui.igcombo#options:filteringCondition). * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "autoComplete", optionValue: boolean): void; @@ -21950,6 +23367,7 @@ interface JQuery { * If set to true: * 1. Allows custom value input only with single selection. * 2. Custom values will be auto completed to the closest value if [autoComplete](ui.igcombo#options:autoComplete) is enabled. + * */ igCombo(optionLiteral: 'option', optionName: "allowCustomValue"): boolean; @@ -21958,78 +23376,91 @@ interface JQuery { * 1. Allows custom value input only with single selection. * 2. Custom values will be auto completed to the closest value if [autoComplete](ui.igcombo#options:autoComplete) is enabled. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "allowCustomValue", optionValue: boolean): void; /** * Gets/Sets ability to close drop-down list when control loses focus. + * */ igCombo(optionLiteral: 'option', optionName: "closeDropDownOnBlur"): boolean; /** * /Sets ability to close drop-down list when control loses focus. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "closeDropDownOnBlur", optionValue: boolean): void; /** * Gets the delay duration before processing the changes in the input. Useful to boost performance by lowering the count of selection, filtering, auto complete and highlighting operations executed on each input change. + * */ igCombo(optionLiteral: 'option', optionName: "delayInputChangeProcessing"): number; /** * Sets the delay duration before processing the changes in the input. Useful to boost performance by lowering the count of selection, filtering, auto complete and highlighting operations executed on each input change. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "delayInputChangeProcessing", optionValue: number): void; /** * Gets/Sets tabIndex for the field of the combo. + * */ igCombo(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex for the field of the combo. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets ability to show the drop-down list when the combo is in focus. This option has effect only if the combo is in editable [mode](ui.igcombo#options:mode). + * */ igCombo(optionLiteral: 'option', optionName: "dropDownOnFocus"): boolean; /** * /Sets ability to show the drop-down list when the combo is in focus. This option has effect only if the combo is in editable [mode](ui.igcombo#options:mode). * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dropDownOnFocus", optionValue: boolean): void; /** * Gets ability to close drop-down list when single item in the list is selected with mouse click or enter press. The default value when [multiSelection](ui.igcombo#options:multiSelection) is enabled will be false. This option will not close the drop down when [multiSelection](ui.igcombo#options:multiSelection) is enabled and additive selection is performed. + * */ igCombo(optionLiteral: 'option', optionName: "closeDropDownOnSelect"): boolean; /** * Sets ability to close drop-down list when single item in the list is selected with mouse click or enter press. The default value when [multiSelection](ui.igcombo#options:multiSelection) is enabled will be false. This option will not close the drop down when [multiSelection](ui.igcombo#options:multiSelection) is enabled and additive selection is performed. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "closeDropDownOnSelect", optionValue: boolean): void; /** * Gets/Sets ability to select items by space button press. + * */ igCombo(optionLiteral: 'option', optionName: "selectItemBySpaceKey"): boolean; /** * /Sets ability to select items by space button press. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "selectItemBySpaceKey", optionValue: boolean): void; @@ -22037,6 +23468,7 @@ interface JQuery { /** * Gets/Sets list of items to be selected when the combo is initialized. It should contain array of objects with index or value property, then on initialization the matching items will be selected. If initialSelectedItems are not set, the combo is with single selection and it is in a dropdown, readonly or readonlylist [mode](ui.igcombo#options:mode), the first item will be automatically selected. * Note: Only items loaded on initialization can be selected. When using [load on demand](ui.igCombo#options:loadOnDemandSettings), selecting an item which is not loaded yet will fail. + * */ igCombo(optionLiteral: 'option', optionName: "initialSelectedItems"): IgComboInitialSelectedItem[]; @@ -22044,18 +23476,21 @@ interface JQuery { * /Sets list of items to be selected when the combo is initialized. It should contain array of objects with index or value property, then on initialization the matching items will be selected. If initialSelectedItems are not set, the combo is with single selection and it is in a dropdown, readonly or readonlylist [mode](ui.igcombo#options:mode), the first item will be automatically selected. * Note: Only items loaded on initialization can be selected. When using [load on demand](ui.igCombo#options:loadOnDemandSettings), selecting an item which is not loaded yet will fail. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "initialSelectedItems", optionValue: IgComboInitialSelectedItem[]): void; /** * Gets/Sets ability to prevent submitting form on enter key press. + * */ igCombo(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets ability to prevent submitting form on enter key press. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; @@ -22069,6 +23504,7 @@ interface JQuery { * Custom values can be something like "currency", "percent", "dateLong", "time", "MMM-dd-yyyy H:mm tt", etc. * * Custom format strings should match the data type in "textKey" column. + * */ igCombo(optionLiteral: 'option', optionName: "format"): string; @@ -22082,6 +23518,7 @@ interface JQuery { * * Custom format strings should match the data type in "textKey" column. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "format", optionValue: string): void; @@ -22089,6 +23526,7 @@ interface JQuery { /** * Gets/Sets whether the onscreen keyboard should be shown when the dropdown button is clicked (touch devices only). * Note: The keyboard will still show when the combo input is focused in editable mode. + * */ igCombo(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -22096,6 +23534,7 @@ interface JQuery { * /Sets whether the onscreen keyboard should be shown when the dropdown button is clicked (touch devices only). * Note: The keyboard will still show when the combo input is focused in editable mode. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; @@ -22103,6 +23542,7 @@ interface JQuery { /** * Gets whether the clear button should be rendered. * When the [mode](ui.igcombo#options:mode) is single selection, readonly or readonlylist this option will default to false. It can still be enabled when it is specifically set to true. + * */ igCombo(optionLiteral: 'option', optionName: "enableClearButton"): boolean; @@ -22110,12 +23550,14 @@ interface JQuery { * Sets whether the clear button should be rendered. * When the [mode](ui.igcombo#options:mode) is single selection, readonly or readonlylist this option will default to false. It can still be enabled when it is specifically set to true. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "enableClearButton", optionValue: boolean): void; /** * Gets/Sets drop-down list orientation when open button is clicked. + * */ igCombo(optionLiteral: 'option', optionName: "dropDownOrientation"): string; @@ -22123,11 +23565,42 @@ interface JQuery { /** * /Sets drop-down list orientation when open button is clicked. * + * * @optionValue New value to be set. */ igCombo(optionLiteral: 'option', optionName: "dropDownOrientation", optionValue: string): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igCombo(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igCombo(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igCombo(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igCombo(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised after rendering of the combo completes. * @@ -22416,31 +23889,37 @@ interface JQuery { interface IgDialogLocale { /** * Gets/Sets the title/tooltip for the close button in the dialog. + * */ closeButtonTitle?: string; /** * Gets/Sets the title/tooltip for the minimize button in the dialog. + * */ minimizeButtonTitle?: string; /** * Gets/Sets the title/tooltip for the maximize button in the dialog. + * */ maximizeButtonTitle?: string; /** * Gets/Sets the title/tooltip for the pin button in the dialog. + * */ pinButtonTitle?: string; /** * Gets/Sets the title/tooltip for the pin button in the dialog. + * */ unpinButtonTitle?: string; /** * Gets/Sets the title/tooltip for the restore button in the dialog. + * */ restoreButtonTitle?: string; @@ -22456,29 +23935,29 @@ interface StateChangingEvent { interface StateChangingEventUIParam { /** - * Used to obtain a reference to the igDialog. + * Gets a reference to the igDialog widget. */ owner?: any; /** - * Used ton to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. + * Gets the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. */ - button?: any; + button?: string; /** - * Used to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". + * Gets the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". */ - oldState?: any; + oldState?: string; /** - * Used to obtain the boolean value of the old pin state of the dialog. + * Gets the boolean value of the old pin state of the dialog. */ - oldPinned?: any; + oldPinned?: boolean; /** - * Used to obtain the name of the action. That can be one of the following: + * Gets the name of the action. That can be one of the following: "open" - request to open the dialog. "close" - request to close the dialog. "minimize" - request to minimize the dialog. "maximize" - request to maximize the dialog. "restore" - request to restore the dialog from minimized or maximized state. "pin" - request to pin the dialog. "unpin" - request to unpin the dialog. */ - action?: any; + action?: string; } interface StateChangedEvent { @@ -22487,29 +23966,29 @@ interface StateChangedEvent { interface StateChangedEventUIParam { /** - * Used to obtain a reference to the igDialog. + * Gets a reference to the igDialog widget. */ owner?: any; /** - * Used ton to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. + * Gets the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. */ - button?: any; + button?: string; /** - * Used to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". + * Gets the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". */ - oldState?: any; + oldState?: string; /** - * Used to obtain the boolean value of the old pin state of the dialog. + * Gets the boolean value of the old pin state of the dialog. */ - oldPinned?: any; + oldPinned?: boolean; /** - * Used to obtain the name of the action. That can be one of the following: + * Gets the name of the action. That can be one of the following: "open" - the dialog was opened. Note: the event is raised before a possible "openAnimation" started. "close" - the dialog was closed. Note: the event is raised before a possible "closeAnimation" started. "minimize" - the dialog was minimized. "maximize" - the dialog was maximized. "restore" - the dialog was restored from minimized or maximized state. "pin" - the dialog was pinned. "unpin" - the dialog was unpinned. */ - action?: any; + action?: string; } interface AnimationEndedEvent { @@ -22518,14 +23997,29 @@ interface AnimationEndedEvent { interface AnimationEndedEventUIParam { /** - * Used to obtain a reference to the igDialog. + * Gets a reference to the igDialog widget. */ owner?: any; /** - * Used to obtain the name of the action, which triggered the animation. + * Gets the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. */ - action?: any; + button?: string; + + /** + * Gets the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". + */ + oldState?: string; + + /** + * Gets the boolean value of the old pin state of the dialog. + */ + oldPinned?: boolean; + + /** + * Gets the name of the action, which triggered the animation. + */ + action?: string; } interface IgFocusEvent { @@ -22534,7 +24028,7 @@ interface IgFocusEvent { interface IgFocusEventUIParam { /** - * Used to obtain a reference to the igDialog. + * Gets a reference to the igDialog widget. */ owner?: any; } @@ -22545,7 +24039,7 @@ interface BlurEvent { interface BlurEventUIParam { /** - * Used to obtain a reference to the igDialog. + * Gets a reference to the igDialog widget. */ owner?: any; } @@ -22558,12 +24052,14 @@ interface IgDialog { * 2. It should not have parent. * 3. It should not contain attributes which might destroy layout or appearance of the dialog. * 4. Change of that option is not supported. + * */ mainElement?: Element; /** * Gets/Sets the state of the dialog.Note: when the dialog is modal, then pinned and minimized states are not supported, because that will trigger misbehavior. * + * * Valid values: * "opened" The dialog is opened. * "minimized" The dialog is minimized. @@ -22579,66 +24075,79 @@ interface IgDialog { * Notes: * 1. If the parent element of the original target-element is invisible, then the pinned dialog becomes invisible as well. * 2. Pinned state is not supported for modal dialog. + * */ pinned?: boolean; /** * Gets/Sets whether the dialog should close when Esc key is pressed. + * */ closeOnEscape?: boolean; /** * Gets/Sets whether the close button in the dialog header should be visible. + * */ showCloseButton?: boolean; /** * Gets/Sets whether the maximize button in the dialog header should be visible. + * */ showMaximizeButton?: boolean; /** * Gets/Sets whether the minimize button in the dialog header should be visible. + * */ showMinimizeButton?: boolean; /** * Gets/Sets whether the pin button in the dialog header should be visible. + * */ showPinButton?: boolean; /** * Gets/Sets whether the dialog will be pinned on minimize. + * */ pinOnMinimized?: boolean; /** * Gets the name of the css class which is applied to the SPAN element located on the left side of the header. + * */ imageClass?: string; /** * Gets/Sets the text which appears in the header of the dialog. + * */ headerText?: string; /** * Gets/Sets whether the dialog header should be visible. + * */ showHeader?: boolean; /** * Gets/Sets whether the dialog footer should be visible. + * */ showFooter?: boolean; /** * Gets/Sets the text which appears in the footer of the dialog. + * */ footerText?: string; /** * Gets the name of the css class which is applied to the main DIV element of the dialog. + * */ dialogClass?: string; @@ -22647,74 +24156,88 @@ interface IgDialog { * That can be reference to html element, jquery selector or jquery object. * By default the parent form of the original target element is used. If a form is not found, then the body is used. * Note: If the "position" of the container is not set or it is "static", then the position is set to "relative". + * */ container?: any; /** * Gets/Sets the initial height of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. + * */ height?: number|string; /** * Gets/Sets the initial width of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. + * */ width?: number|string; /** * Gets/Sets the minimal height of the dialog in normal state. + * */ minHeight?: number; /** * Gets/Sets the minimal width of the dialog in normal state. + * */ minWidth?: number; /** * Gets/Sets the maximal height of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. + * */ maxHeight?: number; /** * Gets/Sets the maximal width of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. + * */ maxWidth?: number; /** * Gets/Sets whether the dialog can be dragged by the user. + * */ draggable?: boolean; /** * Gets/Sets the initial position of the dialog. That should be an object, which contains "top" and "left" members or an object * supported by jquery.position(param) method. Examples: { left: 100, top: 200 }, { my: "left top", at: "left top", offset: "100 200" } + * */ position?: any; /** * Gets/Sets whether the dialog can be resized by the user. + * */ resizable?: boolean; /** * Gets/Sets the value for the tabIndex attribute applied to the main html element of the dialog. + * */ tabIndex?: number; /** * Gets/Sets the animation applied to the dialog when it is opened. That can be any object supported by the jquery show(param) method. + * */ openAnimation?: any; /** * Gets/Sets the animation applied to the dialog when it is closed. That can be any object supported by the jquery hide(param) method. + * */ closeAnimation?: any; /** * Gets/Sets the value of zIndex applied to the main html element of the dialog. If value is not set, then 1000 is used. + * */ zIndex?: number; @@ -22722,6 +24245,7 @@ interface IgDialog { * Gets/Sets the modal state of the dialog. * If there are more than 1 modal igDialog, then the last opened dialog wins and becomes on the top. * Note: the modal functionality is not supported when the dialog is minimized or pinned, because that will trigger misbehavior. + * */ modal?: boolean; @@ -22731,6 +24255,7 @@ interface IgDialog { * If that option is enabled, then focus and blur event handlers are added to all the child elements of the dialog. * If the dialog is modal or it can be maximized, then it is not recommended to disable that option. * If that option is modified after the igDialog was already created, then depending on current state of the dialog, it will be temporary closed-opened or opened-closed. + * */ trackFocus?: boolean; @@ -22773,11 +24298,13 @@ interface IgDialog { /** * Gets/Sets the temporary value for src, which is used while changing the parent of the base element if it is an instance of IFRAME. That allows getting around possible JavaScript exceptions under IE. + * */ temporaryUrl?: string; /** * Gets/Sets the ability to adjust the state of the header depending on focused and not-focused states. Note: the "trackFocus" option should be enabled. + * */ enableHeaderFocus?: boolean; @@ -22785,76 +24312,45 @@ interface IgDialog { * Gets/Sets the processing of the double-click on the dialog-header.If this option is not false and dialog was minimized, then its state will be set to normal. * If this option is set to "auto" and showMaximizeButton is enabled or if this option is set to true, then the dialog will be maximized when it was in normal state, * and dialog-state will be set to normal if it was maximized. + * */ enableDblclick?: any; /** - * Event which is raised before the state of dialog was changed. - * Return false in order to cancel action. + * Set/Get the locale language setting for the widget. * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - request to open the dialog - * "close" - request to close the dialog - * "minimize" - request to minimize the dialog - * "maximize" - request to maximize the dialog - * "restore" - request to restore the dialog from minimized or maximized state - * "pin" - request to pin the dialog - * "unpin" - request to unpin the dialog + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + + /** + * Event which is raised before the state of the dialog was changed. + * Return false in order to cancel the action. */ stateChanging?: StateChangingEvent; /** * Event which is raised after the state of the dialog was changed. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - the dialog was opened. Note: the event is raised before a possible "openAnimation" started. - * "close" - the dialog was closed. Note: the event is raised before a possible "closeAnimation" started. - * "minimize" - the dialog was minimized - * "maximize" - the dialog was maximized - * "restore" - the dialog was restored from minimized or maximized state - * "pin" - the dialog was pinned - * "unpin" - the dialog was unpinned */ stateChanged?: StateChangedEvent; /** - * Event which is raised after the end of the animation when the dialod was closed or opened. - * - * The function takes arguments "evt" and "ui". - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.action to obtain the name of the action, which triggered the animation. - * "open" - the dialog was opened - * "close" - the dialog was closed + * Event which is raised after the end of the animation when the dialog was closed or opened. */ animationEnded?: AnimationEndedEvent; /** * Event which is raised when the dialog or its content gets focus. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. */ focus?: IgFocusEvent; /** * Event which is raised when the dialog or its content loses focus. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. */ blur?: BlurEvent; @@ -22957,7 +24453,22 @@ interface IgDialogMethods { * @param newContent The new html content provided as a string. If the parameter is provided then the method acts as a setter. */ content(newContent?: string): Object; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igdialog#options:language) + * Note that this method is for rare scenarios, see [language](ui.igdialog#options:language) or [locale](ui.igdialog#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igDialog"): IgDialogMethods; @@ -22979,6 +24490,8 @@ interface JQuery { igDialog(methodName: "moveToTop", e?: Object): Object; igDialog(methodName: "content", newContent?: string): Object; igDialog(methodName: "changeLocale"): void; + igDialog(methodName: "changeGlobalLanguage"): void; + igDialog(methodName: "changeGlobalRegional"): void; /** * Gets the jquery DIV object which is used as the main container for the dialog. @@ -22987,6 +24500,7 @@ interface JQuery { * 2. It should not have parent. * 3. It should not contain attributes which might destroy layout or appearance of the dialog. * 4. Change of that option is not supported. + * */ igDialog(optionLiteral: 'option', optionName: "mainElement"): Element; @@ -22998,12 +24512,14 @@ interface JQuery { * 3. It should not contain attributes which might destroy layout or appearance of the dialog. * 4. Change of that option is not supported. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "mainElement", optionValue: Element): void; /** * Gets/Sets the state of the dialog.Note: when the dialog is modal, then pinned and minimized states are not supported, because that will trigger misbehavior. + * */ igDialog(optionLiteral: 'option', optionName: "state"): string; @@ -23011,6 +24527,7 @@ interface JQuery { /** * /Sets the state of the dialog.Note: when the dialog is modal, then pinned and minimized states are not supported, because that will trigger misbehavior. * + * * @optionValue New value to be set. */ @@ -23023,6 +24540,7 @@ interface JQuery { * Notes: * 1. If the parent element of the original target-element is invisible, then the pinned dialog becomes invisible as well. * 2. Pinned state is not supported for modal dialog. + * */ igDialog(optionLiteral: 'option', optionName: "pinned"): boolean; @@ -23034,150 +24552,175 @@ interface JQuery { * 1. If the parent element of the original target-element is invisible, then the pinned dialog becomes invisible as well. * 2. Pinned state is not supported for modal dialog. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "pinned", optionValue: boolean): void; /** * Gets/Sets whether the dialog should close when Esc key is pressed. + * */ igDialog(optionLiteral: 'option', optionName: "closeOnEscape"): boolean; /** * /Sets whether the dialog should close when Esc key is pressed. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "closeOnEscape", optionValue: boolean): void; /** * Gets/Sets whether the close button in the dialog header should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showCloseButton"): boolean; /** * /Sets whether the close button in the dialog header should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showCloseButton", optionValue: boolean): void; /** * Gets/Sets whether the maximize button in the dialog header should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showMaximizeButton"): boolean; /** * /Sets whether the maximize button in the dialog header should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showMaximizeButton", optionValue: boolean): void; /** * Gets/Sets whether the minimize button in the dialog header should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showMinimizeButton"): boolean; /** * /Sets whether the minimize button in the dialog header should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showMinimizeButton", optionValue: boolean): void; /** * Gets/Sets whether the pin button in the dialog header should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showPinButton"): boolean; /** * /Sets whether the pin button in the dialog header should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showPinButton", optionValue: boolean): void; /** * Gets/Sets whether the dialog will be pinned on minimize. + * */ igDialog(optionLiteral: 'option', optionName: "pinOnMinimized"): boolean; /** * /Sets whether the dialog will be pinned on minimize. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "pinOnMinimized", optionValue: boolean): void; /** * Gets the name of the css class which is applied to the SPAN element located on the left side of the header. + * */ igDialog(optionLiteral: 'option', optionName: "imageClass"): string; /** * The name of the css class which is applied to the SPAN element located on the left side of the header. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "imageClass", optionValue: string): void; /** * Gets/Sets the text which appears in the header of the dialog. + * */ igDialog(optionLiteral: 'option', optionName: "headerText"): string; /** * /Sets the text which appears in the header of the dialog. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "headerText", optionValue: string): void; /** * Gets/Sets whether the dialog header should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showHeader"): boolean; /** * /Sets whether the dialog header should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showHeader", optionValue: boolean): void; /** * Gets/Sets whether the dialog footer should be visible. + * */ igDialog(optionLiteral: 'option', optionName: "showFooter"): boolean; /** * /Sets whether the dialog footer should be visible. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "showFooter", optionValue: boolean): void; /** * Gets/Sets the text which appears in the footer of the dialog. + * */ igDialog(optionLiteral: 'option', optionName: "footerText"): string; /** * /Sets the text which appears in the footer of the dialog. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "footerText", optionValue: string): void; /** * Gets the name of the css class which is applied to the main DIV element of the dialog. + * */ igDialog(optionLiteral: 'option', optionName: "dialogClass"): string; /** * The name of the css class which is applied to the main DIV element of the dialog. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "dialogClass", optionValue: string): void; @@ -23187,6 +24730,7 @@ interface JQuery { * That can be reference to html element, jquery selector or jquery object. * By default the parent form of the original target element is used. If a form is not found, then the body is used. * Note: If the "position" of the container is not set or it is "static", then the position is set to "relative". + * */ igDialog(optionLiteral: 'option', optionName: "container"): any; @@ -23196,6 +24740,7 @@ interface JQuery { * By default the parent form of the original target element is used. If a form is not found, then the body is used. * Note: If the "position" of the container is not set or it is "static", then the position is set to "relative". * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "container", optionValue: any): void; @@ -23203,6 +24748,7 @@ interface JQuery { /** * Gets/Sets the initial height of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. + * */ igDialog(optionLiteral: 'option', optionName: "height"): number|string; @@ -23211,6 +24757,7 @@ interface JQuery { * /Sets the initial height of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. * + * * @optionValue New value to be set. */ @@ -23219,6 +24766,7 @@ interface JQuery { /** * Gets/Sets the initial width of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. + * */ igDialog(optionLiteral: 'option', optionName: "width"): number|string; @@ -23227,6 +24775,7 @@ interface JQuery { * /Sets the initial width of the dialog in pixels for normal state.Besides numeric values, following units are supported: "px", "em" and "%". * In case of "%", the size of browser window is used and it has effect only on open action. * + * * @optionValue New value to be set. */ @@ -23234,60 +24783,70 @@ interface JQuery { /** * Gets/Sets the minimal height of the dialog in normal state. + * */ igDialog(optionLiteral: 'option', optionName: "minHeight"): number; /** * /Sets the minimal height of the dialog in normal state. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "minHeight", optionValue: number): void; /** * Gets/Sets the minimal width of the dialog in normal state. + * */ igDialog(optionLiteral: 'option', optionName: "minWidth"): number; /** * /Sets the minimal width of the dialog in normal state. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "minWidth", optionValue: number): void; /** * Gets/Sets the maximal height of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. + * */ igDialog(optionLiteral: 'option', optionName: "maxHeight"): number; /** * /Sets the maximal height of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "maxHeight", optionValue: number): void; /** * Gets/Sets the maximal width of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. + * */ igDialog(optionLiteral: 'option', optionName: "maxWidth"): number; /** * /Sets the maximal width of the dialog in normal state. Note: that option has effect only while resizing the dialog by the end user. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "maxWidth", optionValue: number): void; /** * Gets/Sets whether the dialog can be dragged by the user. + * */ igDialog(optionLiteral: 'option', optionName: "draggable"): boolean; /** * /Sets whether the dialog can be dragged by the user. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "draggable", optionValue: boolean): void; @@ -23295,6 +24854,7 @@ interface JQuery { /** * Gets/Sets the initial position of the dialog. That should be an object, which contains "top" and "left" members or an object * supported by jquery.position(param) method. Examples: { left: 100, top: 200 }, { my: "left top", at: "left top", offset: "100 200" } + * */ igDialog(optionLiteral: 'option', optionName: "position"): any; @@ -23302,66 +24862,77 @@ interface JQuery { * /Sets the initial position of the dialog. That should be an object, which contains "top" and "left" members or an object * supported by jquery.position(param) method. Examples: { left: 100, top: 200 }, { my: "left top", at: "left top", offset: "100 200" } * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "position", optionValue: any): void; /** * Gets/Sets whether the dialog can be resized by the user. + * */ igDialog(optionLiteral: 'option', optionName: "resizable"): boolean; /** * /Sets whether the dialog can be resized by the user. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "resizable", optionValue: boolean): void; /** * Gets/Sets the value for the tabIndex attribute applied to the main html element of the dialog. + * */ igDialog(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets the value for the tabIndex attribute applied to the main html element of the dialog. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets the animation applied to the dialog when it is opened. That can be any object supported by the jquery show(param) method. + * */ igDialog(optionLiteral: 'option', optionName: "openAnimation"): any; /** * /Sets the animation applied to the dialog when it is opened. That can be any object supported by the jquery show(param) method. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "openAnimation", optionValue: any): void; /** * Gets/Sets the animation applied to the dialog when it is closed. That can be any object supported by the jquery hide(param) method. + * */ igDialog(optionLiteral: 'option', optionName: "closeAnimation"): any; /** * /Sets the animation applied to the dialog when it is closed. That can be any object supported by the jquery hide(param) method. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "closeAnimation", optionValue: any): void; /** * Gets/Sets the value of zIndex applied to the main html element of the dialog. If value is not set, then 1000 is used. + * */ igDialog(optionLiteral: 'option', optionName: "zIndex"): number; /** * /Sets the value of zIndex applied to the main html element of the dialog. If value is not set, then 1000 is used. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "zIndex", optionValue: number): void; @@ -23370,6 +24941,7 @@ interface JQuery { * Gets/Sets the modal state of the dialog. * If there are more than 1 modal igDialog, then the last opened dialog wins and becomes on the top. * Note: the modal functionality is not supported when the dialog is minimized or pinned, because that will trigger misbehavior. + * */ igDialog(optionLiteral: 'option', optionName: "modal"): boolean; @@ -23378,6 +24950,7 @@ interface JQuery { * If there are more than 1 modal igDialog, then the last opened dialog wins and becomes on the top. * Note: the modal functionality is not supported when the dialog is minimized or pinned, because that will trigger misbehavior. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "modal", optionValue: boolean): void; @@ -23388,6 +24961,7 @@ interface JQuery { * If that option is enabled, then focus and blur event handlers are added to all the child elements of the dialog. * If the dialog is modal or it can be maximized, then it is not recommended to disable that option. * If that option is modified after the igDialog was already created, then depending on current state of the dialog, it will be temporary closed-opened or opened-closed. + * */ igDialog(optionLiteral: 'option', optionName: "trackFocus"): boolean; @@ -23398,6 +24972,7 @@ interface JQuery { * If the dialog is modal or it can be maximized, then it is not recommended to disable that option. * If that option is modified after the igDialog was already created, then depending on current state of the dialog, it will be temporary closed-opened or opened-closed. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "trackFocus", optionValue: boolean): void; @@ -23490,24 +25065,28 @@ interface JQuery { /** * Gets/Sets the temporary value for src, which is used while changing the parent of the base element if it is an instance of IFRAME. That allows getting around possible JavaScript exceptions under IE. + * */ igDialog(optionLiteral: 'option', optionName: "temporaryUrl"): string; /** * /Sets the temporary value for src, which is used while changing the parent of the base element if it is an instance of IFRAME. That allows getting around possible JavaScript exceptions under IE. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "temporaryUrl", optionValue: string): void; /** * Gets/Sets the ability to adjust the state of the header depending on focused and not-focused states. Note: the "trackFocus" option should be enabled. + * */ igDialog(optionLiteral: 'option', optionName: "enableHeaderFocus"): boolean; /** * /Sets the ability to adjust the state of the header depending on focused and not-focused states. Note: the "trackFocus" option should be enabled. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "enableHeaderFocus", optionValue: boolean): void; @@ -23516,6 +25095,7 @@ interface JQuery { * Gets/Sets the processing of the double-click on the dialog-header.If this option is not false and dialog was minimized, then its state will be set to normal. * If this option is set to "auto" and showMaximizeButton is enabled or if this option is set to true, then the dialog will be maximized when it was in normal state, * and dialog-state will be set to normal if it was maximized. + * */ igDialog(optionLiteral: 'option', optionName: "enableDblclick"): any; @@ -23524,49 +25104,50 @@ interface JQuery { * If this option is set to "auto" and showMaximizeButton is enabled or if this option is set to true, then the dialog will be maximized when it was in normal state, * and dialog-state will be set to normal if it was maximized. * + * * @optionValue New value to be set. */ igDialog(optionLiteral: 'option', optionName: "enableDblclick", optionValue: any): void; /** - * Event which is raised before the state of dialog was changed. - * Return false in order to cancel action. + * Set/Get the locale language setting for the widget. * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - request to open the dialog - * "close" - request to close the dialog - * "minimize" - request to minimize the dialog - * "maximize" - request to maximize the dialog - * "restore" - request to restore the dialog from minimized or maximized state - * "pin" - request to pin the dialog - * "unpin" - request to unpin the dialog + */ + igDialog(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igDialog(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igDialog(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igDialog(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + + /** + * Event which is raised before the state of the dialog was changed. + * Return false in order to cancel the action. */ igDialog(optionLiteral: 'option', optionName: "stateChanging"): StateChangingEvent; /** - * Event which is raised before the state of dialog was changed. - * Return false in order to cancel action. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - request to open the dialog - * "close" - request to close the dialog - * "minimize" - request to minimize the dialog - * "maximize" - request to maximize the dialog - * "restore" - request to restore the dialog from minimized or maximized state - * "pin" - request to pin the dialog - * "unpin" - request to unpin the dialog + * Event which is raised before the state of the dialog was changed. + * Return false in order to cancel the action. * * @optionValue Define event handler function. */ @@ -23574,65 +25155,23 @@ interface JQuery { /** * Event which is raised after the state of the dialog was changed. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - the dialog was opened. Note: the event is raised before a possible "openAnimation" started. - * "close" - the dialog was closed. Note: the event is raised before a possible "closeAnimation" started. - * "minimize" - the dialog was minimized - * "maximize" - the dialog was maximized - * "restore" - the dialog was restored from minimized or maximized state - * "pin" - the dialog was pinned - * "unpin" - the dialog was unpinned */ igDialog(optionLiteral: 'option', optionName: "stateChanged"): StateChangedEvent; /** * Event which is raised after the state of the dialog was changed. * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. That parameter can be null if the state was modified from the code. - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.button to obtain the name of the button, which triggered the event. Note: if the state was modified from the code, then "button" is undefined. - * Use ui.oldState to obtain the old state of the dialog, which can be one of the following: "opened", "minimized", "maximized", "closed". - * Use ui.oldPinned to obtain the boolean value of the old pin state of the dialog. - * Use ui.action to obtain the name of the action. That can be one of the following: - * "open" - the dialog was opened. Note: the event is raised before a possible "openAnimation" started. - * "close" - the dialog was closed. Note: the event is raised before a possible "closeAnimation" started. - * "minimize" - the dialog was minimized - * "maximize" - the dialog was maximized - * "restore" - the dialog was restored from minimized or maximized state - * "pin" - the dialog was pinned - * "unpin" - the dialog was unpinned - * * @optionValue Define event handler function. */ igDialog(optionLiteral: 'option', optionName: "stateChanged", optionValue: StateChangedEvent): void; /** - * Event which is raised after the end of the animation when the dialod was closed or opened. - * - * The function takes arguments "evt" and "ui". - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.action to obtain the name of the action, which triggered the animation. - * "open" - the dialog was opened - * "close" - the dialog was closed + * Event which is raised after the end of the animation when the dialog was closed or opened. */ igDialog(optionLiteral: 'option', optionName: "animationEnded"): AnimationEndedEvent; /** - * Event which is raised after the end of the animation when the dialod was closed or opened. - * - * The function takes arguments "evt" and "ui". - * Use ui.owner to obtain a reference to the igDialog. - * Use ui.action to obtain the name of the action, which triggered the animation. - * "open" - the dialog was opened - * "close" - the dialog was closed + * Event which is raised after the end of the animation when the dialog was closed or opened. * * @optionValue Define event handler function. */ @@ -23640,40 +25179,24 @@ interface JQuery { /** * Event which is raised when the dialog or its content gets focus. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. */ igDialog(optionLiteral: 'option', optionName: "focus"): IgFocusEvent; /** * Event which is raised when the dialog or its content gets focus. * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. - * * @optionValue Define event handler function. */ igDialog(optionLiteral: 'option', optionName: "focus", optionValue: IgFocusEvent): void; /** * Event which is raised when the dialog or its content loses focus. - * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. */ igDialog(optionLiteral: 'option', optionName: "blur"): BlurEvent; /** * Event which is raised when the dialog or its content loses focus. * - * The function takes arguments "evt" and "ui". - * Use evt to obtain the browser event. - * Use ui.owner to obtain a reference to the igDialog. - * * @optionValue Define event handler function. */ igDialog(optionLiteral: 'option', optionName: "blur", optionValue: BlurEvent): void; @@ -23683,968 +25206,18 @@ interface JQuery { igDialog(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; igDialog(methodName: string, ...methodParams: any[]): any; } -interface IgDoughnutChartSeries { - /** - * Gets or sets the current series type. - * - * Valid values: - * "flat" Series has flat 1-dimensional data. - */ - type?: string; - - /** - * Whether the series should render a tooltip. - */ - showTooltip?: boolean; - - /** - * The name of template or the template itself that chart tooltip will use to render. - */ - tooltipTemplate?: string; - - /** - * Gets or sets the data source for the chart. - */ - itemsSource?: any; - - /** - * Gets or Sets the property name that contains the values. - */ - valueMemberPath?: string; - - /** - * Gets or sets the property name that contains the labels. - */ - labelMemberPath?: string; - - /** - * Gets or sets the property name that contains the legend labels. - */ - legendLabelMemberPath?: string; - - /** - * Gets or sets the position of chart labels. - * - * Valid values: - * "none" No labels will be displayed. - * "center" Labels will be displayed in the center. - * "insideEnd" Labels will be displayed inside and by the edge of the container. - * "outsideEnd" Labels will be displayed outside the container. - * "bestFit" Labels will automatically decide their location. - */ - labelsPosition?: string; - - /** - * Gets or sets whether the leader lines are visible. - * - * Valid values: - * "visible" Display the element. - * "collapsed" Do not display the element. - */ - leaderLineVisibility?: string; - - /** - * Gets or sets the style for the leader lines. - */ - leaderLineStyle?: any; - - /** - * Gets or sets what type of leader lines will be used for the outside end labels. - * - * Valid values: - * "straight" A straight line is drawn between the slice and its label. - * "arc" A curved line is drawn between the slice and its label. The line follows makes a natural turn from the slice to the label. - * "spline" A curved line is drawn between the slice and its label. The line starts radially from the slice and then turns to the label. - */ - leaderLineType?: string; - - /** - * Gets or sets the margin between a label and its leader line. The default is 6 pixels. - */ - leaderLineMargin?: number; - - /** - * Gets or sets the threshold value that determines if slices are grouped into the Others slice. - */ - othersCategoryThreshold?: number; - - /** - * Gets or sets whether to use numeric or percent-based threshold value. - * - * Valid values: - * "number" Data value is compared directly to the value of OthersCategoryThreshold. - * "percent" Data value is compared to OthersCategoryThreshold as a percentage of the total. - */ - othersCategoryType?: string; - - /** - * Gets or sets the label of the Others slice. - */ - othersCategoryText?: string; - - /** - * Gets or sets the legend used for the current chart. - */ - legend?: any; - - /** - * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart. - */ - formatLabel?: any; - - /** - * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart's legend. - */ - formatLegendLabel?: any; - - /** - * Gets or sets the pixel amount by which the labels are offset from the edge of the slices. - */ - labelExtent?: number; - - /** - * Gets or sets the starting angle of the chart. - * The default zero value is equivalent to 3 o'clock. - */ - startAngle?: number; - - /** - * Gets or sets the style used when a slice is selected. - */ - selectedStyle?: any; - - /** - * Gets or sets the palette of brushes to use for coloring the slices. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - brushes?: any; - - /** - * Gets or sets the palette of brushes to use for outlines on the slices. - * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. - */ - outlines?: any; - - /** - * Gets or sets whether all surface interactions with the plot area should be disabled. - */ - isSurfaceInteractionDisabled?: any; - - /** - * Gets or sets the scaling factor of the chart's radius. Value between 0 and 1. - */ - radiusFactor?: number; - - /** - * Option for IgDoughnutChartSeries - */ - [optionName: string]: any; -} - -interface HoleDimensionsChangedEvent { - (event: Event, ui: HoleDimensionsChangedEventUIParam): void; -} - -interface HoleDimensionsChangedEventUIParam {} - -interface IgDoughnutChart { - /** - * The width of the chart. It can be set as a number in pixels, string (px) or percentage (%). - */ - width?: string|number; - - /** - * The height of the chart. It can be set as a number in pixels, string (px) or percentage (%). - */ - height?: string|number; - - /** - * An array of series objects. - */ - series?: IgDoughnutChartSeries[]; - - /** - * Gets or sets whether the slices can be selected. - */ - allowSliceSelection?: boolean; - - /** - * Gets or sets whether all surface interactions with the plot area should be disabled. - */ - isSurfaceInteractionDisabled?: any; - - /** - * Gets or sets whether the slices can be exploded. - */ - allowSliceExplosion?: boolean; - - /** - * Gets or sets the inner extent of the doughnut chart. It is percent from the outer ring's radius. - */ - innerExtent?: number; - - /** - * Gets or sets the style used when a slice is selected. - */ - selectedStyle?: any; - - /** - * Gets sets template for tooltip associated with chart item. - * Example: "Value: $(ValueMemberPathInDataSource)" - */ - tooltipTemplate?: string; - - /** - * Gets sets maximum number of displayed records in chart. - */ - maxRecCount?: number; - - /** - * Gets sets a valid data source. - * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. - * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. - */ - dataSource?: any; - - /** - * Gets sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property - */ - dataSourceType?: string; - - /** - * Gets sets url which is used for sending JSON on request for remote data. - */ - dataSourceUrl?: string; - - /** - * See $.ig.DataSource. property in the response specifying the total number of records on the server. - */ - responseTotalRecCountKey?: string; - - /** - * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. - */ - responseDataKey?: string; - - /** - * Event fired when the mouse has hovered on a series and the tooltip is about to show - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - tooltipShowing?: TooltipShowingEvent; - - /** - * Event fired after a tooltip is shown - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - tooltipShown?: TooltipShownEvent; - - /** - * Event fired when the mouse has left a series and the tooltip is about to hide - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - tooltipHiding?: TooltipHidingEvent; - - /** - * Event fired after a tooltip is hidden - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - tooltipHidden?: TooltipHiddenEvent; - - /** - * Event fired when the control is displayed on a non HTML5 compliant browser - */ - browserNotSupported?: BrowserNotSupportedEvent; - - /** - * Raised when the slice is clicked. - */ - sliceClick?: SliceClickEvent; - - /** - * Raised when the dimensions (center point or radius) of the doughnut hole change. - */ - holeDimensionsChanged?: HoleDimensionsChangedEvent; - - /** - * Event which is raised before data binding. - * Return false in order to cancel data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - */ - dataBinding?: DataBindingEvent; - - /** - * Event which is raised after data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.data to obtain reference to array actual data which is displayed by chart. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - */ - dataBound?: DataBoundEvent; - - /** - * Event which is raised before tooltip is updated. - * Return false in order to cancel updating and hide tooltip. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. - * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. - * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. - */ - updateTooltip?: UpdateTooltipEvent; - - /** - * Event which is raised before tooltip is hidden. - * Return false in order to cancel hiding and keep tooltip visible. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.item to obtain reference to item. - * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. - */ - hideTooltip?: HideTooltipEvent; - - /** - * Option for igDoughnutChart - */ - [optionName: string]: any; -} -interface IgDoughnutChartMethods { - /** - * Adds a new series to the doughnut chart. - * - * @param seriesObj The series object to be added. - */ - addSeries(seriesObj: Object): void; - - /** - * Removes the specified series from the doughnut chart. - * - * @param seriesObj The series object identifying the series to be removed. - */ - removeSeries(seriesObj: Object): void; - - /** - * Updates the series with the specified name with the specified new property values. - * - * @param value The series object identifying the series to be updated. - */ - updateSeries(value: Object): void; - - /** - * Returns the center of the doughnut chart. - */ - getCenterCoordinates(): Object; - - /** - * Returns the radius of the chart's hole. - */ - getHoleRadius(): number; - - /** - * Returns information about how the doughnut chart is rendered. - */ - exportVisualData(): Object; - - /** - * Causes all of the series that have pending changes e.g. by changed property values to be rendered immediately. - */ - flush(): void; - - /** - * Destroys the widget. - */ - destroy(): void; - - /** - * Returns data source of the series. - * - * @param series Optional. The series name. If not provided an array of series data sources is returned. - */ - getData(series: string): Object; - - /** - * Find index of item within actual data used by chart. - * - * @param item The reference to item. - */ - findIndexOfItem(item: Object): number; - - /** - * Get item within actual data used by chart. That is similar to this.getData()[ index ]. - * - * @param index Index of data item. - */ - getDataItem(index: Object): Object; - - /** - * Adds a new item to the data source and notifies the chart. - * - * @param item The item that we want to add to the data source. - */ - addItem(item: Object): Object; - - /** - * Inserts a new item to the data source and notifies the chart. - * - * @param item the new item that we want to insert in the data source. - * @param index The index in the data source where the new item will be inserted. - */ - insertItem(item: Object, index: number): Object; - - /** - * Deletes an item from the data source and notifies the chart. - * - * @param index The index in the data source from where the item will be been removed. - */ - removeItem(index: number): Object; - - /** - * Updates an item in the data source and notifies the chart. - * - * @param index The index of the item in the data source that we want to change. - * @param item The new item object that will be set in the data source. - */ - setItem(index: number, item: Object): Object; - - /** - * Notifies the chart that an item has been set in an associated data source. - * - * @param dataSource The data source in which the change happened. - * @param index The index in the items source that has been changed. - * @param newItem the new item that has been set in the collection. - * @param oldItem the old item that has been overwritten in the collection. - */ - notifySetItem(dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; - - /** - * Notifies the chart that the items have been cleared from an associated data source. - * It's not necessary to notify more than one target of a change if they share the same items source. - * - * @param dataSource The data source in which the change happened. - */ - notifyClearItems(dataSource: Object): Object; - - /** - * Notifies the target axis or series that an item has been inserted at the specified index in its data source. - * It's not necessary to notify more than one target of a change if they share the same items source. - * - * @param dataSource The data source in which the change happened. - * @param index The index in the items source where the new item has been inserted. - * @param newItem the new item that has been set in the collection. - */ - notifyInsertItem(dataSource: Object, index: number, newItem: Object): Object; - - /** - * Notifies the target axis or series that an item has been removed from the specified index in its data source. - * It's not necessary to notify more than one target of a change if they share the same items source. - * - * @param dataSource The data source in which the change happened. - * @param index The index in the items source from where the old item has been removed. - * @param oldItem the old item that has been removed from the collection. - */ - notifyRemoveItem(dataSource: Object, index: number, oldItem: Object): Object; - - /** - * Get reference to chart object. - */ - chart(): Object; - - /** - * Binds data to the chart - */ - dataBind(): void; -} -interface JQuery { - data(propertyName: "igDoughnutChart"): IgDoughnutChartMethods; -} - -interface JQuery { - igDoughnutChart(methodName: "addSeries", seriesObj: Object): void; - igDoughnutChart(methodName: "removeSeries", seriesObj: Object): void; - igDoughnutChart(methodName: "updateSeries", value: Object): void; - igDoughnutChart(methodName: "getCenterCoordinates"): Object; - igDoughnutChart(methodName: "getHoleRadius"): number; - igDoughnutChart(methodName: "exportVisualData"): Object; - igDoughnutChart(methodName: "flush"): void; - igDoughnutChart(methodName: "destroy"): void; - igDoughnutChart(methodName: "getData", series: string): Object; - igDoughnutChart(methodName: "findIndexOfItem", item: Object): number; - igDoughnutChart(methodName: "getDataItem", index: Object): Object; - igDoughnutChart(methodName: "addItem", item: Object): Object; - igDoughnutChart(methodName: "insertItem", item: Object, index: number): Object; - igDoughnutChart(methodName: "removeItem", index: number): Object; - igDoughnutChart(methodName: "setItem", index: number, item: Object): Object; - igDoughnutChart(methodName: "notifySetItem", dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; - igDoughnutChart(methodName: "notifyClearItems", dataSource: Object): Object; - igDoughnutChart(methodName: "notifyInsertItem", dataSource: Object, index: number, newItem: Object): Object; - igDoughnutChart(methodName: "notifyRemoveItem", dataSource: Object, index: number, oldItem: Object): Object; - igDoughnutChart(methodName: "chart"): Object; - igDoughnutChart(methodName: "dataBind"): void; - - /** - * The width of the chart. It can be set as a number in pixels, string (px) or percentage (%). - */ - - igDoughnutChart(optionLiteral: 'option', optionName: "width"): string|number; - - /** - * The width of the chart. It can be set as a number in pixels, string (px) or percentage (%). - * - * @optionValue New value to be set. - */ - - igDoughnutChart(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; - - /** - * The height of the chart. It can be set as a number in pixels, string (px) or percentage (%). - */ - - igDoughnutChart(optionLiteral: 'option', optionName: "height"): string|number; - - /** - * The height of the chart. It can be set as a number in pixels, string (px) or percentage (%). - * - * @optionValue New value to be set. - */ - - igDoughnutChart(optionLiteral: 'option', optionName: "height", optionValue: string|number): void; - - /** - * An array of series objects. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "series"): IgDoughnutChartSeries[]; - - /** - * An array of series objects. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "series", optionValue: IgDoughnutChartSeries[]): void; - - /** - * Gets whether the slices can be selected. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "allowSliceSelection"): boolean; - - /** - * Sets whether the slices can be selected. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "allowSliceSelection", optionValue: boolean): void; - - /** - * Gets whether all surface interactions with the plot area should be disabled. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "isSurfaceInteractionDisabled"): any; - - /** - * Sets whether all surface interactions with the plot area should be disabled. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "isSurfaceInteractionDisabled", optionValue: any): void; - - /** - * Gets whether the slices can be exploded. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "allowSliceExplosion"): boolean; - - /** - * Sets whether the slices can be exploded. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "allowSliceExplosion", optionValue: boolean): void; - - /** - * Gets the inner extent of the doughnut chart. It is percent from the outer ring's radius. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "innerExtent"): number; - - /** - * Sets the inner extent of the doughnut chart. It is percent from the outer ring's radius. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "innerExtent", optionValue: number): void; - - /** - * Gets the style used when a slice is selected. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "selectedStyle"): any; - - /** - * Sets the style used when a slice is selected. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "selectedStyle", optionValue: any): void; - - /** - * Gets template for tooltip associated with chart item. - * Example: "Value: $(ValueMemberPathInDataSource)" - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipTemplate"): string; - - /** - * Sets template for tooltip associated with chart item. - * Example: "Value: $(ValueMemberPathInDataSource)" - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipTemplate", optionValue: string): void; - - /** - * Gets maximum number of displayed records in chart. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "maxRecCount"): number; - - /** - * Sets maximum number of displayed records in chart. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "maxRecCount", optionValue: number): void; - - /** - * Gets a valid data source. - * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. - * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSource"): any; - - /** - * Sets a valid data source. - * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. - * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; - - /** - * Gets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSourceType"): string; - - /** - * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; - - /** - * Gets url which is used for sending JSON on request for remote data. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSourceUrl"): string; - - /** - * Sets url which is used for sending JSON on request for remote data. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; - - /** - * See $.ig.DataSource. property in the response specifying the total number of records on the server. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; - - /** - * See $.ig.DataSource. property in the response specifying the total number of records on the server. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey", optionValue: string): void; - - /** - * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "responseDataKey"): string; - - /** - * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; - - /** - * Event fired when the mouse has hovered on a series and the tooltip is about to show - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipShowing"): TooltipShowingEvent; - - /** - * Event fired when the mouse has hovered on a series and the tooltip is about to show - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipShowing", optionValue: TooltipShowingEvent): void; - - /** - * Event fired after a tooltip is shown - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipShown"): TooltipShownEvent; - - /** - * Event fired after a tooltip is shown - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipShown", optionValue: TooltipShownEvent): void; - - /** - * Event fired when the mouse has left a series and the tooltip is about to hide - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipHiding"): TooltipHidingEvent; - - /** - * Event fired when the mouse has left a series and the tooltip is about to hide - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipHiding", optionValue: TooltipHidingEvent): void; - - /** - * Event fired after a tooltip is hidden - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipHidden"): TooltipHiddenEvent; - - /** - * Event fired after a tooltip is hidden - * Function takes arguments evt and ui. - * Use ui.element to get reference to tooltip DOM element. - * Use ui.item to get reference to current series item object. - * Use ui.chart to get reference to chart object. - * Use ui.series to get reference to current series object. - * Use ui.actualItemBrush to get item brush. - * Use ui.actualSeriesBrush to get series brush. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "tooltipHidden", optionValue: TooltipHiddenEvent): void; - - /** - * Event fired when the control is displayed on a non HTML5 compliant browser - */ - igDoughnutChart(optionLiteral: 'option', optionName: "browserNotSupported"): BrowserNotSupportedEvent; - - /** - * Event fired when the control is displayed on a non HTML5 compliant browser - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "browserNotSupported", optionValue: BrowserNotSupportedEvent): void; - - /** - * Raised when the slice is clicked. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "sliceClick"): SliceClickEvent; - - /** - * Raised when the slice is clicked. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "sliceClick", optionValue: SliceClickEvent): void; - - /** - * Raised when the dimensions (center point or radius) of the doughnut hole change. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "holeDimensionsChanged"): HoleDimensionsChangedEvent; - - /** - * Raised when the dimensions (center point or radius) of the doughnut hole change. - * - * @optionValue New value to be set. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "holeDimensionsChanged", optionValue: HoleDimensionsChangedEvent): void; - - /** - * Event which is raised before data binding. - * Return false in order to cancel data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataBinding"): DataBindingEvent; - - /** - * Event which is raised before data binding. - * Return false in order to cancel data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataBinding", optionValue: DataBindingEvent): void; - - /** - * Event which is raised after data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.data to obtain reference to array actual data which is displayed by chart. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataBound"): DataBoundEvent; - - /** - * Event which is raised after data binding. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.data to obtain reference to array actual data which is displayed by chart. - * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "dataBound", optionValue: DataBoundEvent): void; - - /** - * Event which is raised before tooltip is updated. - * Return false in order to cancel updating and hide tooltip. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. - * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. - * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "updateTooltip"): UpdateTooltipEvent; - - /** - * Event which is raised before tooltip is updated. - * Return false in order to cancel updating and hide tooltip. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. - * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. - * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. - * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "updateTooltip", optionValue: UpdateTooltipEvent): void; - - /** - * Event which is raised before tooltip is hidden. - * Return false in order to cancel hiding and keep tooltip visible. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.item to obtain reference to item. - * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "hideTooltip"): HideTooltipEvent; - - /** - * Event which is raised before tooltip is hidden. - * Return false in order to cancel hiding and keep tooltip visible. - * Function takes first argument null and second argument ui. - * Use ui.owner to obtain reference to chart widget. - * Use ui.item to obtain reference to item. - * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. - * - * @optionValue Define event handler function. - */ - igDoughnutChart(optionLiteral: 'option', optionName: "hideTooltip", optionValue: HideTooltipEvent): void; - igDoughnutChart(options: IgDoughnutChart): JQuery; - igDoughnutChart(optionLiteral: 'option', optionName: string): any; - igDoughnutChart(optionLiteral: 'option', options: IgDoughnutChart): JQuery; - igDoughnutChart(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; - igDoughnutChart(methodName: string, ...methodParams: any[]): any; -} interface RenderingEvent { (event: Event, ui: RenderingEventUIParam): void; } interface RenderingEventUIParam { /** - * Used to get a reference to the editor performing rendering. + * Gets a reference to the editor performing rendering. */ owner?: any; /** - * Used to get a reference to the editor element. + * Gets a reference to the editor element. */ element?: any; } @@ -24655,17 +25228,17 @@ interface MousedownEvent { interface MousedownEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain a reference to the event target. + * Gets a reference to the event target. */ element?: any; /** - * Used torInput to get a reference to the editor field. + * Gets a reference to the editor input field. */ editorInput?: any; } @@ -24676,17 +25249,17 @@ interface MouseupEvent { interface MouseupEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain a reference to the event target. + * Gets a reference to the event target. */ element?: any; /** - * Used torInput to get a reference to the editor field. + * Gets a reference to the editor input field. */ editorInput?: any; } @@ -24697,17 +25270,17 @@ interface MousemoveEvent { interface MousemoveEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain a reference to the event target. + * Gets a reference to the event target. */ element?: any; /** - * Used torInput to get a reference to the editor field. + * Gets a reference to the editor input field. */ editorInput?: any; } @@ -24718,19 +25291,24 @@ interface MouseoverEvent { interface MouseoverEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain a reference to the event target. + * Gets a reference to the event target. */ element?: any; /** - * Used torInput to get a reference to the editor field. + * Gets a reference to the editor input field. */ editorInput?: any; + + /** + * Gets a reference to the event object of the browser. + */ + originalEvent?: any; } interface MouseoutEvent { @@ -24739,19 +25317,24 @@ interface MouseoutEvent { interface MouseoutEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain a reference to the event target. + * Gets a reference to the event target. */ element?: any; /** - * Used torInput to get a reference to the editor field. + * Gets a reference to the editor input field. */ editorInput?: any; + + /** + * Gets a reference to the event object of the browser. + */ + originalEvent?: any; } interface KeydownEvent { @@ -24760,12 +25343,22 @@ interface KeydownEvent { interface KeydownEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain value of keyCode. + * Gets a reference to the event target. + */ + element?: any; + + /** + * Gets a reference to the editor input field. + */ + editorInput?: any; + + /** + * Gets the value of the keyCode. */ key?: any; } @@ -24776,14 +25369,29 @@ interface KeypressEvent { interface KeypressEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain value of keyCode. + * Gets a reference to the event target. + */ + element?: any; + + /** + * Gets a reference to the editor input field. + */ + editorInput?: any; + + /** + * Gets the value of the keyCode. */ key?: any; + + /** + * Gets a reference to the event object of the browser. + */ + originalEvent?: any; } interface KeyupEvent { @@ -24792,14 +25400,29 @@ interface KeyupEvent { interface KeyupEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain value of keyCode. + * Gets a reference to the event target. + */ + element?: any; + + /** + * Gets a reference to the editor input field. + */ + editorInput?: any; + + /** + * Gets the value of the keyCode. */ key?: any; + + /** + * Gets a reference to the event object of the browser. + */ + originalEvent?: any; } interface ValueChangingEvent { @@ -24808,24 +25431,24 @@ interface ValueChangingEvent { interface ValueChangingEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain the new value. + * Gets the editor input. + */ + editorInput?: any; + + /** + * Gets the editor's new value. The argument type might differ depending on the editor type. */ newValue?: any; /** - * Used to obtain the old value. + * Gets the editor's old value. The argument type might differ depending on the editor type. */ oldValue?: any; - - /** - * Used torInput to obtain reference to the editor input. - */ - editorInput?: any; } interface ValueChangedEvent { @@ -24834,30 +25457,31 @@ interface ValueChangedEvent { interface ValueChangedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain the value entered from the user after internal formatting. + * Gets the editor input. + */ + editorInput?: any; + + /** + * Gets the value entered from the user after internal formatting. The argument type might differ depending on the editor type. */ newValue?: any; /** - * Used to obtain the value entered from the user before internal formatting. + * Gets the value entered from the user before internal formatting. The argument type might differ depending on the editor type. */ originalValue?: any; - - /** - * Used torInput to obtain reference to the editor input. - */ - editorInput?: any; } interface IgBaseEditor { /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -24866,6 +25490,7 @@ interface IgBaseEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -24873,37 +25498,44 @@ interface IgBaseEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ value?: any; /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ allowNullValue?: boolean; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -24911,151 +25543,99 @@ interface IgBaseEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ rendering?: RenderingEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ rendered?: RenderedEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ mousedown?: MousedownEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ mouseup?: MouseupEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ mousemove?: MousemoveEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ mouseover?: MouseoverEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ mouseout?: MouseoutEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ blur?: BlurEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ focus?: IgFocusEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keydown?: KeydownEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keypress?: KeypressEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ keyup?: KeyupEvent; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. */ valueChanging?: ValueChangingEvent; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. */ valueChanged?: ValueChangedEvent; @@ -25124,8 +25704,23 @@ interface IgBaseEditorMethods { * Destroys the widget */ destroy(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ changeGlobalRegional(): void; } interface JQuery { @@ -25138,17 +25733,22 @@ interface DropDownListOpeningEvent { interface DropDownListOpeningEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editor container. + */ + editor?: any; + + /** + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; } @@ -25159,17 +25759,17 @@ interface DropDownListOpenedEvent { interface DropDownListOpenedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; } @@ -25180,17 +25780,22 @@ interface DropDownListClosingEvent { interface DropDownListClosingEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editor container. + */ + editor?: any; + + /** + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; } @@ -25201,17 +25806,22 @@ interface DropDownListClosedEvent { interface DropDownListClosedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editor container. + */ + editor?: any; + + /** + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; } @@ -25222,22 +25832,27 @@ interface DropDownItemSelectingEvent { interface DropDownItemSelectingEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editor container. + */ + editor?: any; + + /** + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; /** - * Used to obtain reference to the list item which is about to be selected. + * Gets a reference to the list item which is about to be selected. */ item?: any; } @@ -25248,22 +25863,22 @@ interface DropDownItemSelectedEvent { interface DropDownItemSelectedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used torInput to obtain reference to the editable input + * Gets a reference to the editable input. */ editorInput?: any; /** - * Used to obtain reference to the list contaier. + * Gets a reference to the list contaier. */ list?: any; /** - * Used to obtain reference to the list item which is selected. + * Gets a reference to the list item which is selected. */ item?: any; } @@ -25274,25 +25889,26 @@ interface TextChangedEvent { interface TextChangedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain new text + * Gets a reference to the new text. */ - text?: any; + text?: string; /** - * Used to obtain the old text. + * Gets a reference to the old text. */ - oldText?: any; + oldText?: string; } interface IgTextEditor { /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * Valid values: * "dropdown" A button to open/close the list is located on the right side of the editor. * "clear" A button to clear the value is located on the right side of the editor. @@ -25303,16 +25919,19 @@ interface IgTextEditor { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type string. + * */ listItems?: any[]; /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ listWidth?: number; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ listItemHoverDuration?: number; @@ -25321,11 +25940,13 @@ interface IgTextEditor { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ dropDownAttachedToBody?: boolean; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -25334,6 +25955,7 @@ interface IgTextEditor { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ visibleItemsCount?: number; @@ -25342,6 +25964,7 @@ interface IgTextEditor { * Notes: * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. + * */ includeKeys?: string; @@ -25350,12 +25973,14 @@ interface IgTextEditor { * Notes: * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. + * */ excludeKeys?: string; /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -25365,12 +25990,14 @@ interface IgTextEditor { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -25382,6 +26009,7 @@ interface IgTextEditor { /** * Gets the text mode of the editor such as: single-line text editor, password editor or multiline editor. That option has effect only on initialization. If based element (selector) is TEXTAREA, then it is used as input-field. * + * * Valid values: * "text" Single line text editor based on INPUT element is created. * "password" Editor based on INPUT element with type password is created. @@ -25391,27 +26019,32 @@ interface IgTextEditor { /** * Gets/Sets the ability of the editor to automatically move the dropdown list selection item from one end to the opposite side. When the last item is reached and spin down is performed, the first item gets selected and vice versa. This option has no effect there is no drop-down list. + * */ spinWrapAround?: boolean; /** * Gets/Sets if the editor should only allow values from the list of items. Matching is case-insensitive. + * */ isLimitedToListValues?: boolean; /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * Valid values: * "auto" If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * "bottom" The drop-down list is opened at the bottom of the editor. @@ -25422,6 +26055,7 @@ interface IgTextEditor { /** * Gets/Sets the maximum length of a text which can be entered by the user. * Negative values or 0 disables that behavior. If set at runtime the editor doesn't apply the option to the cuurent value. + * */ maxLength?: number; @@ -25429,23 +26063,27 @@ interface IgTextEditor { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ dropDownOnReadOnly?: boolean; /** * Gets/Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ toUpper?: boolean; /** * Gets/Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ toLower?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; @@ -25453,12 +26091,14 @@ interface IgTextEditor { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ suppressKeyboard?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -25467,6 +26107,7 @@ interface IgTextEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -25474,37 +26115,44 @@ interface IgTextEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ value?: any; /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ allowNullValue?: boolean; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -25512,217 +26160,135 @@ interface IgTextEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. */ dropDownListOpening?: DropDownListOpeningEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. */ dropDownListOpened?: DropDownListOpenedEvent; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. */ dropDownListClosing?: DropDownListClosingEvent; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. */ dropDownListClosed?: DropDownListClosedEvent; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. */ dropDownItemSelecting?: DropDownItemSelectingEvent; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. */ dropDownItemSelected?: DropDownItemSelectedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ textChanged?: TextChangedEvent; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ rendering?: RenderingEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ rendered?: RenderedEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ mousedown?: MousedownEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ mouseup?: MouseupEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ mousemove?: MousemoveEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ mouseover?: MouseoverEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ mouseout?: MouseoutEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ blur?: BlurEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ focus?: IgFocusEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keydown?: KeydownEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keypress?: KeypressEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ keyup?: KeyupEvent; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. */ valueChanging?: ValueChangingEvent; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. */ valueChanged?: ValueChangedEvent; @@ -25732,6 +26298,10 @@ interface IgTextEditor { [optionName: string]: any; } interface IgTextEditorMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtexteditor#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtexteditor#options:language) or [locale](ui.igtexteditor#options:locale) option setter + */ changeLocale(): void; /** @@ -25908,6 +26478,7 @@ interface IgNumericEditor { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ listItems?: any[]; @@ -25916,6 +26487,7 @@ interface IgNumericEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ negativeSign?: string; @@ -25923,6 +26495,7 @@ interface IgNumericEditor { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ negativePattern?: string; @@ -25931,6 +26504,7 @@ interface IgNumericEditor { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ decimalSeparator?: string; @@ -25940,6 +26514,7 @@ interface IgNumericEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ groupSeparator?: string; @@ -25952,6 +26527,7 @@ interface IgNumericEditor { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ groups?: any[]; @@ -25961,6 +26537,7 @@ interface IgNumericEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ maxDecimals?: number; @@ -25971,6 +26548,7 @@ interface IgNumericEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ minDecimals?: number; @@ -25978,12 +26556,14 @@ interface IgNumericEditor { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ roundDecimals?: boolean; /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -25996,6 +26576,7 @@ interface IgNumericEditor { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * Valid values: * "double" the Number object is used with the limits of a double and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igNumericEditor#options:allowNullValue). Note: that is used as default. * "float" the Number object is used with the limits of a float and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igNumericEditor#options:allowNullValue). @@ -26012,22 +26593,26 @@ interface IgNumericEditor { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ minValue?: number; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ maxValue?: number; /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ allowNullValue?: boolean; /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ spinDelta?: number; @@ -26036,6 +26621,7 @@ interface IgNumericEditor { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * Valid values: * "null" scientific format is disabled. * "E" scientific format is enabled and the "E" character is used. @@ -26048,11 +26634,13 @@ interface IgNumericEditor { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ spinWrapAround?: boolean; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ isLimitedToListValues?: boolean; @@ -26086,12 +26674,14 @@ interface IgNumericEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ value?: any; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * Valid values: * "dropdown" A button to open/close the list is located on the right side of the editor. * "clear" A button to clear the value is located on the right side of the editor. @@ -26101,11 +26691,13 @@ interface IgNumericEditor { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ listWidth?: number; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ listItemHoverDuration?: number; @@ -26114,11 +26706,13 @@ interface IgNumericEditor { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ dropDownAttachedToBody?: boolean; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -26127,17 +26721,20 @@ interface IgNumericEditor { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ visibleItemsCount?: number; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -26148,17 +26745,20 @@ interface IgNumericEditor { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * Valid values: * "auto" If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * "bottom" The drop-down list is opened at the bottom of the editor. @@ -26170,11 +26770,13 @@ interface IgNumericEditor { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ dropDownOnReadOnly?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; @@ -26182,12 +26784,14 @@ interface IgNumericEditor { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ suppressKeyboard?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -26196,6 +26800,7 @@ interface IgNumericEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -26203,26 +26808,31 @@ interface IgNumericEditor { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -26230,87 +26840,61 @@ interface IgNumericEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. */ dropDownListOpening?: DropDownListOpeningEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. */ dropDownListOpened?: DropDownListOpenedEvent; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. */ dropDownListClosing?: DropDownListClosingEvent; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. */ dropDownListClosed?: DropDownListClosedEvent; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. */ dropDownItemSelecting?: DropDownItemSelectingEvent; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. */ dropDownItemSelected?: DropDownItemSelectedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ textChanged?: TextChangedEvent; @@ -26365,7 +26949,17 @@ interface IgNumericEditorMethods { * Gets current regional. */ getRegionalOption(): string; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.ignumericeditor#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.ignumericeditor#options:regional) option setter + */ changeRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtexteditor#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtexteditor#options:language) or [locale](ui.igtexteditor#options:locale) option setter + */ changeLocale(): void; /** @@ -26450,17 +27044,20 @@ interface IgCurrencyEditor { * Gets/Sets the string, which is used as positive pattern. The "n" flag represents the value of number. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ positivePattern?: string; /** * Gets/Sets a string that is used as the currency symbol that is shown in display mode. + * */ currencySymbol?: string; /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ listItems?: any[]; @@ -26469,6 +27066,7 @@ interface IgCurrencyEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ negativeSign?: string; @@ -26476,6 +27074,7 @@ interface IgCurrencyEditor { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ negativePattern?: string; @@ -26484,6 +27083,7 @@ interface IgCurrencyEditor { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ decimalSeparator?: string; @@ -26493,6 +27093,7 @@ interface IgCurrencyEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ groupSeparator?: string; @@ -26505,6 +27106,7 @@ interface IgCurrencyEditor { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ groups?: any[]; @@ -26514,6 +27116,7 @@ interface IgCurrencyEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ maxDecimals?: number; @@ -26524,6 +27127,7 @@ interface IgCurrencyEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ minDecimals?: number; @@ -26531,12 +27135,14 @@ interface IgCurrencyEditor { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ roundDecimals?: boolean; /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -26549,6 +27155,7 @@ interface IgCurrencyEditor { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * Valid values: * "double" the Number object is used with the limits of a double and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igNumericEditor#options:allowNullValue). Note: that is used as default. * "float" the Number object is used with the limits of a float and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igNumericEditor#options:allowNullValue). @@ -26565,22 +27172,26 @@ interface IgCurrencyEditor { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ minValue?: number; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ maxValue?: number; /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ allowNullValue?: boolean; /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ spinDelta?: number; @@ -26589,6 +27200,7 @@ interface IgCurrencyEditor { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * Valid values: * "null" scientific format is disabled. * "E" scientific format is enabled and the "E" character is used. @@ -26601,11 +27213,13 @@ interface IgCurrencyEditor { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ spinWrapAround?: boolean; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ isLimitedToListValues?: boolean; @@ -26639,12 +27253,14 @@ interface IgCurrencyEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ value?: any; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * Valid values: * "dropdown" A button to open/close the list is located on the right side of the editor. * "clear" A button to clear the value is located on the right side of the editor. @@ -26654,11 +27270,13 @@ interface IgCurrencyEditor { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ listWidth?: number; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ listItemHoverDuration?: number; @@ -26667,11 +27285,13 @@ interface IgCurrencyEditor { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ dropDownAttachedToBody?: boolean; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -26680,17 +27300,20 @@ interface IgCurrencyEditor { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ visibleItemsCount?: number; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -26701,17 +27324,20 @@ interface IgCurrencyEditor { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * Valid values: * "auto" If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * "bottom" The drop-down list is opened at the bottom of the editor. @@ -26723,11 +27349,13 @@ interface IgCurrencyEditor { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ dropDownOnReadOnly?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; @@ -26735,12 +27363,14 @@ interface IgCurrencyEditor { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ suppressKeyboard?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -26749,6 +27379,7 @@ interface IgCurrencyEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -26756,26 +27387,31 @@ interface IgCurrencyEditor { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -26783,21 +27419,25 @@ interface IgCurrencyEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; @@ -26859,6 +27499,11 @@ interface IgCurrencyEditorMethods { * Gets current regional. */ getRegionalOption(): string; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.ignumericeditor#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.ignumericeditor#options:regional) option setter + */ changeRegional(): void; } interface JQuery { @@ -26870,12 +27515,14 @@ interface IgPercentEditor { * Gets/Sets the pattern for positive numeric values, which is used in display (no focus) state. * If you use the "en-US" culture the default value for "positivePattern" will be "n$" where the "$" flag represents the "numericSymbol" and the "n" flag represents the value of the number. * Note: this option has priority over possible regional settings. + * */ positivePattern?: string; /** * Gets/Sets the symbol, which is used in display (no focus) state. * Note: this option has priority over possible regional settings. + * */ percentSymbol?: string; @@ -26885,6 +27532,7 @@ interface IgPercentEditor { * For example, if the factor is 100 and the "value" is set to 0.123, then the editor will show string "12.3". * Possible values: 1 or 100. * Note: this option has priority over possible regional settings. + * */ displayFactor?: number; @@ -26893,6 +27541,7 @@ interface IgPercentEditor { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igPercentEditor#options:minDecimals) and [maxDecimals](ui.igPercentEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * Valid values: * "double" the Number object is used with the limits of a double and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igpercenteditor#options:allowNullValue). Note: that is used as default. * "float" the Number object is used with the limits of a float and if the value is not set, then the null or Number.NaN is used depending on the option [allowNullValue](ui.igpercenteditor#options:allowNullValue). @@ -26909,12 +27558,14 @@ interface IgPercentEditor { /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igpercenteditor#options:buttonType) or [spinUp](ui.igpercenteditor#methods:spinUp) and [spinDown](ui.igpercenteditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ spinDelta?: number; /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ listItems?: any[]; @@ -26923,6 +27574,7 @@ interface IgPercentEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ negativeSign?: string; @@ -26930,6 +27582,7 @@ interface IgPercentEditor { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ negativePattern?: string; @@ -26938,6 +27591,7 @@ interface IgPercentEditor { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ decimalSeparator?: string; @@ -26947,6 +27601,7 @@ interface IgPercentEditor { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ groupSeparator?: string; @@ -26959,6 +27614,7 @@ interface IgPercentEditor { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ groups?: any[]; @@ -26968,6 +27624,7 @@ interface IgPercentEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ maxDecimals?: number; @@ -26978,6 +27635,7 @@ interface IgPercentEditor { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ minDecimals?: number; @@ -26985,12 +27643,14 @@ interface IgPercentEditor { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ roundDecimals?: boolean; /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -27000,17 +27660,20 @@ interface IgPercentEditor { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ minValue?: number; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ maxValue?: number; /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ allowNullValue?: boolean; @@ -27019,6 +27682,7 @@ interface IgPercentEditor { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * Valid values: * "null" scientific format is disabled. * "E" scientific format is enabled and the "E" character is used. @@ -27031,11 +27695,13 @@ interface IgPercentEditor { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ spinWrapAround?: boolean; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ isLimitedToListValues?: boolean; @@ -27069,12 +27735,14 @@ interface IgPercentEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ value?: any; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * Valid values: * "dropdown" A button to open/close the list is located on the right side of the editor. * "clear" A button to clear the value is located on the right side of the editor. @@ -27084,11 +27752,13 @@ interface IgPercentEditor { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ listWidth?: number; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ listItemHoverDuration?: number; @@ -27097,11 +27767,13 @@ interface IgPercentEditor { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ dropDownAttachedToBody?: boolean; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -27110,17 +27782,20 @@ interface IgPercentEditor { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ visibleItemsCount?: number; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -27131,17 +27806,20 @@ interface IgPercentEditor { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * Valid values: * "auto" If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * "bottom" The drop-down list is opened at the bottom of the editor. @@ -27153,11 +27831,13 @@ interface IgPercentEditor { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ dropDownOnReadOnly?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; @@ -27165,12 +27845,14 @@ interface IgPercentEditor { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ suppressKeyboard?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -27179,6 +27861,7 @@ interface IgPercentEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -27186,26 +27869,31 @@ interface IgPercentEditor { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -27213,21 +27901,25 @@ interface IgPercentEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; @@ -27297,6 +27989,11 @@ interface IgPercentEditorMethods { * Gets current regional. */ getRegionalOption(): string; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.ignumericeditor#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.ignumericeditor#options:regional) option setter + */ changeRegional(): void; } interface JQuery { @@ -27307,6 +28004,7 @@ interface IgMaskEditor { /** * Gets visibility of the clear button. That option can be set only on initialization. * + * * Valid values: * "clear" A button to clear the value is located on the right side of the editor. */ @@ -27330,12 +28028,14 @@ interface IgMaskEditor { * >: all letters to the right are converted to the upper case. In order to disable conversion, the ">" flag should be used again. * <: all letters to the right are converted to the lower case. In order to disable conversion, the "<" flag should be used again. * Note! This option can not be set runtime. + * */ inputMask?: string; /** * It affects the value of the control (value method/option and submitted in forms). It defines what the value should contain from text, unfilled prompts and literals. The default is allText and when used value method/option returns the text entered, all prompts (positions) and literals. * + * * Valid values: * "rawText" only entered text. All unfilled prompts (positions) and literals are ignored (removed). * "rawTextWithRequiredPrompts" only entered text and required prompts (positions). All optional unfilled prompts and literals are ignored (removed) @@ -27348,16 +28048,19 @@ interface IgMaskEditor { /** * Gets character which is used as prompt in edit mode for available entry position. + * */ unfilledCharsPrompt?: string; /** * Gets/Sets character which is used as replacement of not-filled required position in mask when editor is in display mode (not focused). + * */ padChar?: string; /** * Gets/Sets character which is used as replacement of not-filled required position in mask when application calls get for the [value](ui.igmaskeditor#methods:value) methods. + * */ emptyChar?: string; @@ -27366,6 +28069,7 @@ interface IgMaskEditor { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ includeKeys?: string; @@ -27374,6 +28078,7 @@ interface IgMaskEditor { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ excludeKeys?: string; @@ -27440,6 +28145,7 @@ interface IgMaskEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ value?: any; suppressKeyboard?: boolean; @@ -27447,6 +28153,7 @@ interface IgMaskEditor { /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -27456,12 +28163,14 @@ interface IgMaskEditor { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -27472,34 +28181,40 @@ interface IgMaskEditor { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Gets/Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ toUpper?: boolean; /** * Gets/Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ toLower?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -27508,6 +28223,7 @@ interface IgMaskEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -27515,32 +28231,38 @@ interface IgMaskEditor { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ allowNullValue?: boolean; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -27548,21 +28270,25 @@ interface IgMaskEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; dropDownListOpening?: DropDownListOpeningEvent; @@ -27573,12 +28299,8 @@ interface IgMaskEditor { dropDownItemSelected?: DropDownItemSelectedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ textChanged?: TextChangedEvent; @@ -27611,6 +28333,11 @@ interface IgMaskEditorMethods { * Checks if the value in the editor is valid. Note: This function will not trigger automatic notifications. */ isValid(): boolean; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtexteditor#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtexteditor#options:language) or [locale](ui.igtexteditor#options:locale) option setter + */ changeLocale(): void; /** @@ -27662,18 +28389,21 @@ interface IgDateEditor { /** * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ value?: Date; /** * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ minValue?: Date; /** * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ maxValue?: Date; @@ -27715,6 +28445,7 @@ interface IgDateEditor { * "f": milliseconds field in hundreds * "ff": milliseconds field in tenths * "fff": milliseconds field + * */ dateDisplayFormat?: string; @@ -27745,6 +28476,7 @@ interface IgDateEditor { * "ff": milliseconds field in tenths * "fff": milliseconds field * Note! This option can not be set runtime. + * */ dateInputFormat?: string; @@ -27754,6 +28486,7 @@ interface IgDateEditor { * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" * + * * Valid values: * "date" The value method returns a Date object. When this mode is set the value sent to the server on submit is serialized as ISO 8061 string with local time and zone values by default. * "displayModeText" The "text" in display mode (no focus) format (pattern) is used to be send to the server and is returned from the value() method (returns a string object). @@ -27765,12 +28498,14 @@ interface IgDateEditor { * Gets/Sets time zone offset from UTC, in minutes. The client date values are displayed with this offset instead of the local one. * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. + * */ displayTimeOffset?: any; /** * Gets visibility of the spin and clear buttons. That option can be set only on initialization. Combinations like 'spin,clear' are supported too. * + * * Valid values: * "clear" A button to clear the value is located on the right side of the editor. * "spin" Spin buttons are located on the right side of the editor @@ -27792,6 +28527,7 @@ interface IgDateEditor { * } * Time periods that don't have values use 1 as default. * + * * Valid values: * "number" Value this value it is applied to all time periods - years, days, minutes, etc. * "object" A configuration object, which defines specific values for each time period. The option can accept the following format: @@ -27802,12 +28538,14 @@ interface IgDateEditor { * Gets/Sets ability to modify only 1 date field on spin events. * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. + * */ limitSpinToCurrentField?: boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * */ enableUTCDates?: boolean; @@ -27815,16 +28553,19 @@ interface IgDateEditor { * Gets/Sets year for auto detection of 20th and 21st centuries. * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * */ centuryThreshold?: number; /** * Gets/Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. + * */ yearShift?: number; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number|Date; @@ -27899,6 +28640,7 @@ interface IgDateEditor { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ includeKeys?: string; @@ -27907,6 +28649,7 @@ interface IgDateEditor { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ excludeKeys?: string; @@ -27938,6 +28681,7 @@ interface IgDateEditor { /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -27947,12 +28691,14 @@ interface IgDateEditor { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -27963,22 +28709,26 @@ interface IgDateEditor { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -27987,6 +28737,7 @@ interface IgDateEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -27994,27 +28745,32 @@ interface IgDateEditor { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ allowNullValue?: boolean; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -28022,21 +28778,25 @@ interface IgDateEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; @@ -28076,6 +28836,10 @@ interface IgDateEditor { [optionName: string]: any; } interface IgDateEditorMethods { + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.igdateeditor#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.igdateeditor#options:regional) option setter + */ changeRegional(): void; /** @@ -28096,6 +28860,8 @@ interface IgDateEditorMethods { /** * Sets selected date. This method can be used when dataMode is set as either displayModeText or editModeText. * In such cases the value() cannot accept a date object as a new value and getSelectedDate() can be used to replace that functionality. + * + * @param date */ selectDate(date: Date): void; @@ -28146,22 +28912,22 @@ interface ItemSelectedEvent { interface ItemSelectedEventUIParam { /** - * Used to obtain reference to igEditor. + * Gets a reference to the editor. */ owner?: any; /** - * Used to obtain reference to the date object which is selected. + * Gets a reference to the selected date object. */ dateFromPicker?: any; /** - * Used to obtain a referece to the selected html element from the calendar. + * Gets a reference to the selected html element from the calendar. */ item?: any; /** - * Used to obtain a reference to jQuery UI date picker, used as a calendar from the igDatePicker. + * Gets a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. */ calendar?: any; } @@ -28170,6 +28936,7 @@ interface IgDatePicker { /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too. * + * * Valid values: * "dropdown" A button to open/close the list is located on the right side of the editor. * "clear" A button to clear the value is located on the right side of the editor. @@ -28179,12 +28946,14 @@ interface IgDatePicker { /** * Gets/Sets the options supported by the [jquery.ui.datepicker](http://api.jqueryui.com/datepicker/). Only options related to the drop-down calendar are supported. + * */ datepickerOptions?: any; /** * Gets the ability to limit igDatePicker to be used only as s calendar. When set to true the editor input is not editable. * Note! This option can not be set runtime. + * */ dropDownOnReadOnly?: boolean; @@ -28216,24 +28985,28 @@ interface IgDatePicker { /** * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. + * */ suppressKeyboard?: boolean; /** * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ value?: Date; /** * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ minValue?: Date; /** * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ maxValue?: Date; @@ -28275,6 +29048,7 @@ interface IgDatePicker { * "f": milliseconds field in hundreds * "ff": milliseconds field in tenths * "fff": milliseconds field + * */ dateDisplayFormat?: string; @@ -28305,6 +29079,7 @@ interface IgDatePicker { * "ff": milliseconds field in tenths * "fff": milliseconds field * Note! This option can not be set runtime. + * */ dateInputFormat?: string; @@ -28314,6 +29089,7 @@ interface IgDatePicker { * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" * + * * Valid values: * "date" The value method returns a Date object. When this mode is set the value sent to the server on submit is serialized as ISO 8061 string with local time and zone values by default. * "displayModeText" The "text" in display mode (no focus) format (pattern) is used to be send to the server and is returned from the value() method (returns a string object). @@ -28325,6 +29101,7 @@ interface IgDatePicker { * Gets/Sets time zone offset from UTC, in minutes. The client date values are displayed with this offset instead of the local one. * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. + * */ displayTimeOffset?: any; @@ -28343,6 +29120,7 @@ interface IgDatePicker { * } * Time periods that don't have values use 1 as default. * + * * Valid values: * "number" Value this value it is applied to all time periods - years, days, minutes, etc. * "object" A configuration object, which defines specific values for each time period. The option can accept the following format: @@ -28353,12 +29131,14 @@ interface IgDatePicker { * Gets/Sets ability to modify only 1 date field on spin events. * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. + * */ limitSpinToCurrentField?: boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * */ enableUTCDates?: boolean; @@ -28366,16 +29146,19 @@ interface IgDatePicker { * Gets/Sets year for auto detection of 20th and 21st centuries. * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * */ centuryThreshold?: number; /** * Gets/Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. + * */ yearShift?: number; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ nullValue?: string|number|Date; @@ -28419,6 +29202,7 @@ interface IgDatePicker { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ includeKeys?: string; @@ -28427,6 +29211,7 @@ interface IgDatePicker { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ excludeKeys?: string; @@ -28458,6 +29243,7 @@ interface IgDatePicker { /** * Gets/Sets the horizontal alignment of the text in the editor. * + * * Valid values: * "left" The text into the input gets aligned to the left. * "right" The text into the input gets aligned to the right. @@ -28467,12 +29253,14 @@ interface IgDatePicker { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ placeHolder?: string; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. * + * * Valid values: * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. @@ -28483,22 +29271,26 @@ interface IgDatePicker { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ revertIfNotValid?: boolean; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ preventSubmitOnEnter?: boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ suppressNotifications?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -28507,6 +29299,7 @@ interface IgDatePicker { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -28514,27 +29307,32 @@ interface IgDatePicker { /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ allowNullValue?: boolean; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ readOnly?: boolean; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -28542,39 +29340,35 @@ interface IgDatePicker { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired when the drop down is opening. */ dropDownListOpening?: DropDownListOpeningEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down is opened. */ dropDownListOpened?: DropDownListOpenedEvent; @@ -28589,11 +29383,7 @@ interface IgDatePicker { dropDownItemSelecting?: DropDownItemSelectingEvent; /** - * Event which is raised after the drop down (calendar) is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down (calendar) is closed. */ dropDownListClosed?: DropDownListClosedEvent; @@ -28603,12 +29393,7 @@ interface IgDatePicker { dropDownItemSelected?: DropDownItemSelectedEvent; /** - * Event which is raised after a date selection in the calendar. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.dateFromPicker to obtain reference to the date object which is selected. - * Use ui.item to obtain a referece to the selected html element from the calendar. - * Use ui.calendar to obtain a reference to jQuery UI date picker, used as a calendar from the igDatePicker. + * Fired after a date selection in the calendar. */ itemSelected?: ItemSelectedEvent; @@ -28618,6 +29403,10 @@ interface IgDatePicker { [optionName: string]: any; } interface IgDatePickerMethods { + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.igdatepicker#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.igdatepicker#options:regional) option setter + */ changeRegional(): void; /** @@ -28672,6 +29461,8 @@ interface IgDatePickerMethods { /** * Sets selected date. This method can be used when dataMode is set as either displayModeText or editModeText. * In such cases the value() cannot accept a date object as a new value and getSelectedDate() can be used to replace that functionality. + * + * @param date */ selectDate(date: Date): void; @@ -28711,12 +29502,14 @@ interface JQuery { interface IgCheckboxEditor { /** * Gets/Sets whether the checkbox is checked. + * */ checked?: boolean; /** * Gets/Sets size of the checkbox based on preset styles.For different sizes, define 'width' and 'height' options instead. * + * * Valid values: * "verysmall" The size of the Checkbox editor is very small. * "small" The size of the Checkbox editor is small. @@ -28728,16 +29521,19 @@ interface IgCheckboxEditor { /** * Gets/Sets a custom class on the checkbox. Custom image can be used this way. * The following jQuery classes can be used in addition http://api.jqueryui.com/theming/icons/ + * */ iconClass?: string; /** * Gets/Sets tabIndex attribute for the editor input. + * */ tabIndex?: number; /** * Gets/Sets the readonly attribute. Does not allow editing. Disables changing the checkbox state as an interaction, but it still can be changed programmatically. On submit the current value is sent into the request. + * */ readOnly?: boolean; allowNullValue?: boolean; @@ -28746,6 +29542,7 @@ interface IgCheckboxEditor { /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -28754,6 +29551,7 @@ interface IgCheckboxEditor { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -28761,16 +29559,19 @@ interface IgCheckboxEditor { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ value?: any; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ inputName?: string; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ disabled?: boolean; @@ -28778,154 +29579,98 @@ interface IgCheckboxEditor { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ validatorOptions?: any; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; /** - * Event which is raised before value in editor was changed. + * Fired before changing the editor's value. * Return false in order to cancel change. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.oldValue to obtain the old value. - * Use ui.oldState to obtain the old state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. */ valueChanging?: ValueChangingEvent; /** - * Event which is raised after value in editor was changed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. + * Fired after the editor's value has been changed. */ valueChanged?: ValueChangedEvent; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ rendering?: RenderingEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ rendered?: RenderedEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ mousedown?: MousedownEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ mouseup?: MouseupEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ mousemove?: MousemoveEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ mouseover?: MouseoverEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ mouseout?: MouseoutEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ blur?: BlurEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ focus?: IgFocusEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keydown?: KeydownEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ keypress?: KeypressEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ keyup?: KeyupEvent; @@ -28946,6 +29691,8 @@ interface IgCheckboxEditorMethods { * This option is used when the checkbox is intended to operate as a Boolean editor. In that case the return type is bool. * 2. If the [value](ui.igcheckboxeditor#options:value) option IS defined, then 'value' method will return the value that will be submitted when the editor is checked and the form is submitted. * To get checked state regardless of the 'value' option, use $(".selector").igCheckboxEditor("option", "checked"); + * + * @param newValue */ value(newValue: Object): string; @@ -29012,6 +29759,553 @@ interface JQuery { data(propertyName: "igCheckboxEditor"): IgCheckboxEditorMethods; } +interface IgTimePickerItemsDelta { + hours?: number; + minutes?: number; + + /** + * Option for IgTimePickerItemsDelta + */ + [optionName: string]: any; +} + +interface IgTimePicker { + /** + * Gets delta-value which is used to generate the drop-down items for the time picker. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * + * object A configuration object, which defines specific values for each time period. The option can accept the following format: + * itemsDelta: { + * hours: 0, + * minutes: 30, + * } + * Time periods that don't have values use 0 as default for hours and 30 for minutes. + */ + itemsDelta?: IgTimePickerItemsDelta; + + /** + * Gets/Sets delta-value which is used to increment or decrement the editor time on spin actions.When not editing (focused) the delta is applied on the day if available in the input mask or the lowest available period. + * When in edit mode the time period, where the cursor is positioned, is incremented or decremented with the defined delta value. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * spinDelta: { + * hours: 12, + * minutes: 15 + * } + * Default value is {hours: 1, minutes: 30}. + * + */ + spinDelta?: any; + + /** + * Gets format of time while timepicker has focus. + * Value of that option can be set to explicit time pattern or to a flag defined by regional settings. + * If value is set to explicit time pattern and pattern besides date-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * If option is not set, then the "time" is used automatically. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "hh": hours field in 12-hours format with leading zero + * "HH": hours field in 24-hours format with leading zero + * "mm": minutes field with leading zero + * Note! This option can not be set runtime. + * + */ + timeInputFormat?: string; + + /** + * Gets/Sets format of time while timepicker has no focus. + * Value of that option can be set to a specific time pattern or to a flag defined by regional settings. + * If value is not set, then the timeInputFormat is used automatically. + * If value is set to explicit time pattern and pattern besides time-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: + * C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "h": hours field in 12-hours format without leading zero + * "hh": hours field in 12-hours format with leading zero + * "H": hours field in 24-hours format without leading zero + * "HH": hours field in 24-hours format with leading zero + * "m": minutes field without leading zero + * "mm": minutes field with leading zero + * + */ + timeDisplayFormat?: string; + + /** + * Gets/Sets if the editor should only allow values from the list of items. Matching is case-insensitive. + * + */ + isLimitedToListValues?: boolean; + + /** + * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. + * Note: The option does not perform device detection so its behavior is always active if enabled. + * Note: When drop down is opened the only way to close it will be using the drop down button. + * + */ + suppressKeyboard?: boolean; + + /** + * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the timepicker has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * + * + * Valid values: + * "auto" If the option is set to auto the timepicker has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * "bottom" The drop-down list is opened at the bottom of the timepicker. + * "top" The drop-down list is opened at the top of the timepicker. + */ + dropDownOrientation?: string; + + /** + * Gets the number of the items to be shown at once when the drop-down list get opened. + * Notes: + * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. + * This option can not be set runtime. + * + */ + visibleItemsCount?: number; + + /** + * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of timepicker is set as a drop-down width. + * + */ + listWidth?: number; + + /** + * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * + */ + listItemHoverDuration?: number; + + /** + * Gets wheather the drop-down list element is attached to the body of the document, or to the timepicker container element. + * If the option is set to false the timepicker will attach the drop-down list element to the timepicker container + * If the option is set to true the timepicker will attach its drop-down list to as a child of the body. + * Note! This option can not be set runtime. + * + */ + dropDownAttachedToBody?: boolean; + + /** + * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * + */ + dropDownAnimationDuration?: number; + + /** + * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown, clear' or 'spin, clear' are supported too.Note! This option can not be set runtime. + * Note! A combination like 'dropdown, spin' is not allowed. + * + * + * Valid values: + * "dropdown" A button to open/close the list is located on the right side of the editor. + * "clear" A button to clear the value is located on the right side of the editor. + * "spin" Spin buttons are located on the right side of the editor. + */ + buttonType?: string; + + /** + * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. + * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * + */ + spinWrapAround?: boolean; + + /** + * Removed from timepicker options + */ + dateDisplayFormat?: any; + + /** + * Removed from timepicker options + */ + dateInputFormat?: any; + + /** + * Removed from timepicker options + */ + yearShift?: any; + + /** + * Removed from timepicker options + */ + displayTimeOffset?: any; + + /** + * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + value?: Date; + + /** + * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + minValue?: Date; + + /** + * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + maxValue?: Date; + + /** + * Gets the value type returned by the get of value() method and option. Also affects how the value is stored for form submit. + * The [enableUTCDates](ui.%%WidgetNameLowered%%#options:enableUTCDates) option can be used to output an UTC ISO string instead. + * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: + * "2016-11-11T10:00:00+05:00" + * + * + * Valid values: + * "date" The value method returns a Date object. When this mode is set the value sent to the server on submit is serialized as ISO 8061 string with local time and zone values by default. + * "displayModeText" The "text" in display mode (no focus) format (pattern) is used to be send to the server and is returned from the value() method (returns a string object). + * "editModeText" The "text" in edit mode (focus) format (pattern) is used to be send to the server and is returned from the value() method (returns a string object). + */ + dataMode?: string; + + /** + * Gets/Sets ability to modify only 1 date field on spin events. + * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. + * Value true modifies only value of one field. + * + */ + limitSpinToCurrentField?: boolean; + + /** + * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * + */ + enableUTCDates?: boolean; + + /** + * Gets/Sets year for auto detection of 20th and 21st centuries. + * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". + * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * + */ + centuryThreshold?: number; + + /** + * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * + */ + nullValue?: string|number|Date; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + listItems?: any; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + dropDownOnReadOnly?: boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + inputMask?: string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + unfilledCharsPrompt?: string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + padChar?: string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + emptyChar?: string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + toUpper?: boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + toLower?: boolean; + + /** + * Gets ability to enter only specific characters in input-field from keyboard and on paste. + * Notes: + * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + */ + includeKeys?: string; + + /** + * Gets ability to prevent entering specific characters from keyboard or on paste. + * Notes: + * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + */ + excludeKeys?: string; + + textMode?: any; + + /** + * This option is inherited from a parent widget and it's not applicable for igMaskEditor + */ + maxLength?: any; + + /** + * Gets/Sets the horizontal alignment of the text in the editor. + * + * + * Valid values: + * "left" The text into the input gets aligned to the left. + * "right" The text into the input gets aligned to the right. + * "center" The text into the input gets aligned to the center. + */ + textAlign?: string; + + /** + * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * + */ + placeHolder?: string; + + /** + * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * + * + * Valid values: + * "selectAll" Setting this option will select all the text into the editor when the edit mode gets enetered. + * "atStart" Setting this option will move the cursor at the begining the text into the editor when the edit mode gets enetered. + * "atEnd" Setting this option will move the cursor at the end the text into the editor when the edit mode gets enetered. + * "browserDefault" Setting this option won't do any extra logic, but proceed with the browser default behavior. + */ + selectionOnFocus?: string; + + /** + * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * + */ + revertIfNotValid?: boolean; + + /** + * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * + */ + preventSubmitOnEnter?: boolean; + + /** + * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * + */ + suppressNotifications?: boolean; + + /** + * Gets/Sets the width of the control. + * + * + * Valid values: + * "null" will stretch to fit data, if no other widths are defined. + */ + width?: string|number; + + /** + * Gets/Sets the height of the control. + * + * + * Valid values: + * "null" will fit the editor inside its parent container, if no other heights are defined. + */ + height?: string|number; + + /** + * Gets/Sets tabIndex attribute for the editor input. + * + */ + tabIndex?: number; + + /** + * Gets/Sets whether the editor value can become null. + * If that option is false, and editor has no value, then value is set to an empty string. + * + */ + allowNullValue?: boolean; + + /** + * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * + */ + inputName?: string; + + /** + * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * + */ + readOnly?: boolean; + + /** + * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * + */ + disabled?: boolean; + + /** + * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. + * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, + * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * + */ + validatorOptions?: any; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + + /** + * Fired when the drop down is opening. + */ + dropDownListOpening?: DropDownListOpeningEvent; + + /** + * Fired after the drop down is opened. + */ + dropDownListOpened?: DropDownListOpenedEvent; + + /** + * Fired when the drop down is closing. + */ + dropDownListClosing?: DropDownListClosingEvent; + + /** + * Fired after the drop down is closed. + */ + dropDownListClosed?: DropDownListClosedEvent; + + /** + * Fired when an item in the drop down list is being selected. + */ + dropDownItemSelecting?: DropDownItemSelectingEvent; + + /** + * Fired after an item in the drop down list is selected. + */ + dropDownItemSelected?: DropDownItemSelectedEvent; + + /** + * Option for igTimePicker + */ + [optionName: string]: any; +} +interface IgTimePickerMethods { + /** + * Gets the selected list item. + */ + getSelectedListItem(): string; + + /** + * Returns the visibility state of the calendar. + */ + dropDownVisible(): boolean; + + /** + * Returns a reference to the drop-down button UI element of the editor. + */ + dropDownButton(): string; + + /** + * Gets reference to jquery object which is used as container of drop-down list. + */ + dropDownContainer(): string; + + /** + * Finds index of list item by text that matches with the search parameters. + * + * @param text The text to search for in the drop down list. + * @param matchType The rule that is applied for searching the text. + */ + findListItemIndex(text: string, matchType?: Object): number; + + /** + * Gets the index of the selected list item. Sets selected item by index. + * + * @param index The index of the item that needs to be selected. + */ + selectedListIndex(index?: number): number; + value(newValue: Object): void; + selectDate(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.igdateeditor#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.igdateeditor#options:regional) option setter + */ + changeRegional(): void; + + /** + * Gets selected date as a date object. This method can be used when dataMode is set as either displayModeText or editModeText. + * In such cases the value() method will not return date object and getSelectedDate() can be used to replace that functionality. + */ + getSelectedDate(): Date; + + /** + * Increases the date or time period, depending on the current cursor position. + * + * @param delta The increase delta. + */ + spinUp(delta?: number): void; + + /** + * Decreases the date or time period, depending on the current cursor position. + * + * @param delta The decrease delta. + */ + spinDown(delta?: number): void; + + /** + * Returns a reference to the spin up UI element of the editor. + */ + spinUpButton(): string; + + /** + * Returns a reference to the spin down UI element of the editor. + */ + spinDownButton(): string; + + /** + * Checks if the value in the editor is valid. Note: This function will not trigger automatic notifications. + */ + isValid(): boolean; +} +interface JQuery { + data(propertyName: "igTimePicker"): IgTimePickerMethods; +} + interface JQuery { igBaseEditor(methodName: "inputName", newValue?: string): string; igBaseEditor(methodName: "value", newValue: Object): void; @@ -29031,6 +30325,7 @@ interface JQuery { /** * Gets/Sets the width of the control. + * */ igBaseEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -29038,6 +30333,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -29045,6 +30341,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igBaseEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -29052,6 +30349,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -29059,24 +30357,28 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ igBaseEditor(optionLiteral: 'option', optionName: "value"): any; /** * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets/Sets tabIndex attribute for the editor input. + * */ igBaseEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; @@ -29084,6 +30386,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ igBaseEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -29091,12 +30394,14 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igBaseEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -29104,6 +30409,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -29111,36 +30417,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igBaseEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igBaseEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igBaseEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -29149,6 +30461,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igBaseEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -29157,36 +30470,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igBaseEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igBaseEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igBaseEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -29194,296 +30513,185 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ igBaseEditor(optionLiteral: 'option', optionName: "rendering"): RenderingEvent; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "rendering", optionValue: RenderingEvent): void; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ igBaseEditor(optionLiteral: 'option', optionName: "rendered"): RenderedEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "rendered", optionValue: RenderedEvent): void; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ igBaseEditor(optionLiteral: 'option', optionName: "mousedown"): MousedownEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "mousedown", optionValue: MousedownEvent): void; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseup"): MouseupEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseup", optionValue: MouseupEvent): void; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ igBaseEditor(optionLiteral: 'option', optionName: "mousemove"): MousemoveEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "mousemove", optionValue: MousemoveEvent): void; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseover"): MouseoverEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseover", optionValue: MouseoverEvent): void; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseout"): MouseoutEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "mouseout", optionValue: MouseoutEvent): void; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ igBaseEditor(optionLiteral: 'option', optionName: "blur"): BlurEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "blur", optionValue: BlurEvent): void; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ igBaseEditor(optionLiteral: 'option', optionName: "focus"): IgFocusEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "focus", optionValue: IgFocusEvent): void; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igBaseEditor(optionLiteral: 'option', optionName: "keydown"): KeydownEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "keydown", optionValue: KeydownEvent): void; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igBaseEditor(optionLiteral: 'option', optionName: "keypress"): KeypressEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "keypress", optionValue: KeypressEvent): void; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ igBaseEditor(optionLiteral: 'option', optionName: "keyup"): KeyupEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "keyup", optionValue: KeyupEvent): void; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. */ igBaseEditor(optionLiteral: 'option', optionName: "valueChanging"): ValueChangingEvent; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "valueChanging", optionValue: ValueChangingEvent): void; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. */ igBaseEditor(optionLiteral: 'option', optionName: "valueChanged"): ValueChangedEvent; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igBaseEditor(optionLiteral: 'option', optionName: "valueChanged", optionValue: ValueChangedEvent): void; igBaseEditor(options: IgBaseEditor): JQuery; @@ -29528,6 +30736,7 @@ interface JQuery { /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. + * */ igTextEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -29535,6 +30744,7 @@ interface JQuery { /** * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ @@ -29543,6 +30753,7 @@ interface JQuery { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type string. + * */ igTextEditor(optionLiteral: 'option', optionName: "listItems"): any[]; @@ -29550,30 +30761,35 @@ interface JQuery { * /Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type string. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "listItems", optionValue: any[]): void; /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ igTextEditor(optionLiteral: 'option', optionName: "listWidth"): number; /** * /Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "listWidth", optionValue: number): void; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ igTextEditor(optionLiteral: 'option', optionName: "listItemHoverDuration"): number; /** * /Sets the hover/unhover animation duration of a drop-down list item. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "listItemHoverDuration", optionValue: number): void; @@ -29583,6 +30799,7 @@ interface JQuery { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ igTextEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; @@ -29592,18 +30809,21 @@ interface JQuery { * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ igTextEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * /Sets show/hide drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -29613,6 +30833,7 @@ interface JQuery { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ igTextEditor(optionLiteral: 'option', optionName: "visibleItemsCount"): number; @@ -29622,6 +30843,7 @@ interface JQuery { * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; @@ -29631,6 +30853,7 @@ interface JQuery { * Notes: * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. + * */ igTextEditor(optionLiteral: 'option', optionName: "includeKeys"): string; @@ -29640,6 +30863,7 @@ interface JQuery { * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "includeKeys", optionValue: string): void; @@ -29649,6 +30873,7 @@ interface JQuery { * Notes: * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. + * */ igTextEditor(optionLiteral: 'option', optionName: "excludeKeys"): string; @@ -29658,12 +30883,14 @@ interface JQuery { * If both "excludeKeys" and "includeKeys" options are used, then "excludeKeys" has priority and includeKeys options is not respected. * The option is case sensitive! If the option is set runtime it's not applied on the current value. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "excludeKeys", optionValue: string): void; /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igTextEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -29671,6 +30898,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -29678,18 +30906,21 @@ interface JQuery { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igTextEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igTextEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -29697,6 +30928,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -29704,6 +30936,7 @@ interface JQuery { /** * Gets the text mode of the editor such as: single-line text editor, password editor or multiline editor. That option has effect only on initialization. If based element (selector) is TEXTAREA, then it is used as input-field. + * */ igTextEditor(optionLiteral: 'option', optionName: "textMode"): string; @@ -29711,6 +30944,7 @@ interface JQuery { /** * The text mode of the editor such as: single-line text editor, password editor or multiline editor. That option has effect only on initialization. If based element (selector) is TEXTAREA, then it is used as input-field. * + * * @optionValue New value to be set. */ @@ -29718,54 +30952,63 @@ interface JQuery { /** * Gets/Sets the ability of the editor to automatically move the dropdown list selection item from one end to the opposite side. When the last item is reached and spin down is performed, the first item gets selected and vice versa. This option has no effect there is no drop-down list. + * */ igTextEditor(optionLiteral: 'option', optionName: "spinWrapAround"): boolean; /** * /Sets the ability of the editor to automatically move the dropdown list selection item from one end to the opposite side. When the last item is reached and spin down is performed, the first item gets selected and vice versa. This option has no effect there is no drop-down list. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "spinWrapAround", optionValue: boolean): void; /** * Gets/Sets if the editor should only allow values from the list of items. Matching is case-insensitive. + * */ igTextEditor(optionLiteral: 'option', optionName: "isLimitedToListValues"): boolean; /** * /Sets if the editor should only allow values from the list of items. Matching is case-insensitive. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "isLimitedToListValues", optionValue: boolean): void; /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igTextEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igTextEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * */ igTextEditor(optionLiteral: 'option', optionName: "dropDownOrientation"): string; @@ -29773,6 +31016,7 @@ interface JQuery { /** * /Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * @optionValue New value to be set. */ @@ -29781,6 +31025,7 @@ interface JQuery { /** * Gets/Sets the maximum length of a text which can be entered by the user. * Negative values or 0 disables that behavior. If set at runtime the editor doesn't apply the option to the cuurent value. + * */ igTextEditor(optionLiteral: 'option', optionName: "maxLength"): number; @@ -29788,6 +31033,7 @@ interface JQuery { * /Sets the maximum length of a text which can be entered by the user. * Negative values or 0 disables that behavior. If set at runtime the editor doesn't apply the option to the cuurent value. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "maxLength", optionValue: number): void; @@ -29796,6 +31042,7 @@ interface JQuery { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ igTextEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; @@ -29804,6 +31051,7 @@ interface JQuery { * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; @@ -29811,6 +31059,7 @@ interface JQuery { /** * Gets/Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ igTextEditor(optionLiteral: 'option', optionName: "toUpper"): boolean; @@ -29818,6 +31067,7 @@ interface JQuery { * /Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "toUpper", optionValue: boolean): void; @@ -29825,6 +31075,7 @@ interface JQuery { /** * Gets/Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ igTextEditor(optionLiteral: 'option', optionName: "toLower"): boolean; @@ -29832,18 +31083,21 @@ interface JQuery { * /Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "toLower", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igTextEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; @@ -29852,6 +31106,7 @@ interface JQuery { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ igTextEditor(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -29860,12 +31115,14 @@ interface JQuery { * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igTextEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -29873,6 +31130,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -29880,6 +31138,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igTextEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -29887,6 +31146,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -29894,24 +31154,28 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ igTextEditor(optionLiteral: 'option', optionName: "value"): any; /** * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets/Sets tabIndex attribute for the editor input. + * */ igTextEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; @@ -29919,6 +31183,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ igTextEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -29926,12 +31191,14 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igTextEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -29939,6 +31206,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -29946,36 +31214,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igTextEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igTextEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igTextEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -29984,6 +31258,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igTextEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -29992,36 +31267,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igTextEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igTextEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igTextEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -30029,442 +31310,271 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListOpening"): DropDownListOpeningEvent; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListOpening", optionValue: DropDownListOpeningEvent): void; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListOpened"): DropDownListOpenedEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListOpened", optionValue: DropDownListOpenedEvent): void; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListClosing"): DropDownListClosingEvent; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListClosing", optionValue: DropDownListClosingEvent): void; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListClosed"): DropDownListClosedEvent; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownListClosed", optionValue: DropDownListClosedEvent): void; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownItemSelecting"): DropDownItemSelectingEvent; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownItemSelecting", optionValue: DropDownItemSelectingEvent): void; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownItemSelected"): DropDownItemSelectedEvent; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "dropDownItemSelected", optionValue: DropDownItemSelectedEvent): void; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ igTextEditor(optionLiteral: 'option', optionName: "textChanged"): TextChangedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "textChanged", optionValue: TextChangedEvent): void; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ igTextEditor(optionLiteral: 'option', optionName: "rendering"): RenderingEvent; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "rendering", optionValue: RenderingEvent): void; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ igTextEditor(optionLiteral: 'option', optionName: "rendered"): RenderedEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "rendered", optionValue: RenderedEvent): void; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ igTextEditor(optionLiteral: 'option', optionName: "mousedown"): MousedownEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "mousedown", optionValue: MousedownEvent): void; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ igTextEditor(optionLiteral: 'option', optionName: "mouseup"): MouseupEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "mouseup", optionValue: MouseupEvent): void; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ igTextEditor(optionLiteral: 'option', optionName: "mousemove"): MousemoveEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "mousemove", optionValue: MousemoveEvent): void; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ igTextEditor(optionLiteral: 'option', optionName: "mouseover"): MouseoverEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "mouseover", optionValue: MouseoverEvent): void; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ igTextEditor(optionLiteral: 'option', optionName: "mouseout"): MouseoutEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "mouseout", optionValue: MouseoutEvent): void; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ igTextEditor(optionLiteral: 'option', optionName: "blur"): BlurEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "blur", optionValue: BlurEvent): void; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ igTextEditor(optionLiteral: 'option', optionName: "focus"): IgFocusEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "focus", optionValue: IgFocusEvent): void; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igTextEditor(optionLiteral: 'option', optionName: "keydown"): KeydownEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "keydown", optionValue: KeydownEvent): void; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igTextEditor(optionLiteral: 'option', optionName: "keypress"): KeypressEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "keypress", optionValue: KeypressEvent): void; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ igTextEditor(optionLiteral: 'option', optionName: "keyup"): KeyupEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "keyup", optionValue: KeyupEvent): void; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. */ igTextEditor(optionLiteral: 'option', optionName: "valueChanging"): ValueChangingEvent; /** - * Event which is raised before the editor value is changed. + * Fired before changing the editor's value. * Return false in order to cancel change. * It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.oldValue to obtain the old value. - * Use ui.editorInput to obtain reference to the editor input. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "valueChanging", optionValue: ValueChangingEvent): void; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. */ igTextEditor(optionLiteral: 'option', optionName: "valueChanged"): ValueChangedEvent; /** - * Event which is raised after the editor value is changed. It can be raised after loosing focus or on spin events. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the value entered from the user after internal formatting. - * Use ui.originalValue to obtain the value entered from the user before internal formatting. - * Use ui.editorInput to obtain reference to the editor input. + * Fired after the editor value is changed. It can be raised after loosing focus or on spin events. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igTextEditor(optionLiteral: 'option', optionName: "valueChanged", optionValue: ValueChangedEvent): void; igTextEditor(options: IgTextEditor): JQuery; @@ -30503,6 +31613,7 @@ interface JQuery { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ igNumericEditor(optionLiteral: 'option', optionName: "listItems"): any[]; @@ -30510,6 +31621,7 @@ interface JQuery { * /Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "listItems", optionValue: any[]): void; @@ -30519,6 +31631,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ igNumericEditor(optionLiteral: 'option', optionName: "negativeSign"): string; @@ -30528,6 +31641,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "negativeSign", optionValue: string): void; @@ -30536,6 +31650,7 @@ interface JQuery { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igNumericEditor(optionLiteral: 'option', optionName: "negativePattern"): string; @@ -30544,6 +31659,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "negativePattern", optionValue: string): void; @@ -30553,6 +31669,7 @@ interface JQuery { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igNumericEditor(optionLiteral: 'option', optionName: "decimalSeparator"): string; @@ -30562,6 +31679,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "decimalSeparator", optionValue: string): void; @@ -30572,6 +31690,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igNumericEditor(optionLiteral: 'option', optionName: "groupSeparator"): string; @@ -30582,6 +31701,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "groupSeparator", optionValue: string): void; @@ -30595,6 +31715,7 @@ interface JQuery { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igNumericEditor(optionLiteral: 'option', optionName: "groups"): any[]; @@ -30608,6 +31729,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "groups", optionValue: any[]): void; @@ -30618,6 +31740,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igNumericEditor(optionLiteral: 'option', optionName: "maxDecimals"): number; @@ -30628,6 +31751,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "maxDecimals", optionValue: number): void; @@ -30639,6 +31763,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igNumericEditor(optionLiteral: 'option', optionName: "minDecimals"): number; @@ -30650,6 +31775,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "minDecimals", optionValue: number): void; @@ -30658,6 +31784,7 @@ interface JQuery { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ igNumericEditor(optionLiteral: 'option', optionName: "roundDecimals"): boolean; @@ -30666,12 +31793,14 @@ interface JQuery { * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "roundDecimals", optionValue: boolean): void; /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igNumericEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -30679,6 +31808,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -30688,6 +31818,7 @@ interface JQuery { * Defines the range that editor's value can accept.This is achieved by setting the [minValue](ui.igNumericEditor#options:minValue) and [maxValue](ui.igNumericEditor#options:maxValue) editor's options, accordingly to the lowest and highest accepted values for the defined numeric mode. * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. + * */ igNumericEditor(optionLiteral: 'option', optionName: "dataMode"): string; @@ -30697,6 +31828,7 @@ interface JQuery { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * @optionValue New value to be set. */ @@ -30704,24 +31836,28 @@ interface JQuery { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ igNumericEditor(optionLiteral: 'option', optionName: "minValue"): number; /** * /Sets the minimum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "minValue", optionValue: number): void; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ igNumericEditor(optionLiteral: 'option', optionName: "maxValue"): number; /** * /Sets the maximum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "maxValue", optionValue: number): void; @@ -30729,6 +31865,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ igNumericEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -30736,18 +31873,21 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ igNumericEditor(optionLiteral: 'option', optionName: "spinDelta"): number; /** * /Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "spinDelta", optionValue: number): void; @@ -30756,6 +31896,7 @@ interface JQuery { * Gets/Sets support for scientific format. * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. + * */ igNumericEditor(optionLiteral: 'option', optionName: "scientificFormat"): string; @@ -30765,6 +31906,7 @@ interface JQuery { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * @optionValue New value to be set. */ @@ -30773,6 +31915,7 @@ interface JQuery { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ igNumericEditor(optionLiteral: 'option', optionName: "spinWrapAround"): boolean; @@ -30780,18 +31923,21 @@ interface JQuery { * /Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "spinWrapAround", optionValue: boolean): void; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ igNumericEditor(optionLiteral: 'option', optionName: "isLimitedToListValues"): boolean; /** * /Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "isLimitedToListValues", optionValue: boolean): void; @@ -30863,6 +32009,7 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ igNumericEditor(optionLiteral: 'option', optionName: "value"): any; @@ -30870,12 +32017,14 @@ interface JQuery { * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. + * */ igNumericEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -30883,6 +32032,7 @@ interface JQuery { /** * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ @@ -30890,24 +32040,28 @@ interface JQuery { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ igNumericEditor(optionLiteral: 'option', optionName: "listWidth"): number; /** * /Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "listWidth", optionValue: number): void; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ igNumericEditor(optionLiteral: 'option', optionName: "listItemHoverDuration"): number; /** * /Sets the hover/unhover animation duration of a drop-down list item. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "listItemHoverDuration", optionValue: number): void; @@ -30917,6 +32071,7 @@ interface JQuery { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; @@ -30926,18 +32081,21 @@ interface JQuery { * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * /Sets show/hide drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -30947,6 +32105,7 @@ interface JQuery { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ igNumericEditor(optionLiteral: 'option', optionName: "visibleItemsCount"): number; @@ -30956,24 +32115,28 @@ interface JQuery { * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igNumericEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igNumericEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -30981,6 +32144,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -30988,30 +32152,35 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igNumericEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igNumericEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownOrientation"): string; @@ -31019,6 +32188,7 @@ interface JQuery { /** * /Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * @optionValue New value to be set. */ @@ -31028,6 +32198,7 @@ interface JQuery { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; @@ -31036,18 +32207,21 @@ interface JQuery { * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igNumericEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; @@ -31056,6 +32230,7 @@ interface JQuery { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ igNumericEditor(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -31064,12 +32239,14 @@ interface JQuery { * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igNumericEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -31077,6 +32254,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -31084,6 +32262,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igNumericEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -31091,6 +32270,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -31098,18 +32278,21 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igNumericEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igNumericEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -31117,6 +32300,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -31124,36 +32308,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igNumericEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igNumericEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igNumericEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -31162,6 +32352,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igNumericEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -31170,36 +32361,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igNumericEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igNumericEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igNumericEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -31207,154 +32404,95 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListOpening"): DropDownListOpeningEvent; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is opening. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListOpening", optionValue: DropDownListOpeningEvent): void; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListOpened"): DropDownListOpenedEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is opened. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListOpened", optionValue: DropDownListOpenedEvent): void; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListClosing"): DropDownListClosingEvent; /** - * Event which is raised when the drop down is closing. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired when the drop down is closing. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListClosing", optionValue: DropDownListClosingEvent): void; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListClosed"): DropDownListClosedEvent; /** - * Event which is raised after the drop down is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. + * Fired after the drop down is closed. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownListClosed", optionValue: DropDownListClosedEvent): void; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownItemSelecting"): DropDownItemSelectingEvent; /** - * Event which is raised when an item in the drop down list is being selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is about to be selected. + * Fired when an item in the drop down list is being selected. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownItemSelecting", optionValue: DropDownItemSelectingEvent): void; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownItemSelected"): DropDownItemSelectedEvent; /** - * Event which is raised after an item in the drop down list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.list to obtain reference to the list contaier. - * Use ui.item to obtain reference to the list item which is selected. + * Fired after an item in the drop down list is selected. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "dropDownItemSelected", optionValue: DropDownItemSelectedEvent): void; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ igNumericEditor(optionLiteral: 'option', optionName: "textChanged"): TextChangedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igNumericEditor(optionLiteral: 'option', optionName: "textChanged", optionValue: TextChangedEvent): void; igNumericEditor(options: IgNumericEditor): JQuery; @@ -31381,6 +32519,7 @@ interface JQuery { * Gets/Sets the string, which is used as positive pattern. The "n" flag represents the value of number. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "positivePattern"): string; @@ -31389,18 +32528,21 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "positivePattern", optionValue: string): void; /** * Gets/Sets a string that is used as the currency symbol that is shown in display mode. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "currencySymbol"): string; /** * /Sets a string that is used as the currency symbol that is shown in display mode. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "currencySymbol", optionValue: string): void; @@ -31408,6 +32550,7 @@ interface JQuery { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "listItems"): any[]; @@ -31415,6 +32558,7 @@ interface JQuery { * /Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "listItems", optionValue: any[]): void; @@ -31424,6 +32568,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "negativeSign"): string; @@ -31433,6 +32578,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "negativeSign", optionValue: string): void; @@ -31441,6 +32587,7 @@ interface JQuery { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "negativePattern"): string; @@ -31449,6 +32596,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "negativePattern", optionValue: string): void; @@ -31458,6 +32606,7 @@ interface JQuery { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "decimalSeparator"): string; @@ -31467,6 +32616,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "decimalSeparator", optionValue: string): void; @@ -31477,6 +32627,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "groupSeparator"): string; @@ -31487,6 +32638,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "groupSeparator", optionValue: string): void; @@ -31500,6 +32652,7 @@ interface JQuery { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "groups"): any[]; @@ -31513,6 +32666,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "groups", optionValue: any[]): void; @@ -31523,6 +32677,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "maxDecimals"): number; @@ -31533,6 +32688,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "maxDecimals", optionValue: number): void; @@ -31544,6 +32700,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "minDecimals"): number; @@ -31555,6 +32712,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "minDecimals", optionValue: number): void; @@ -31563,6 +32721,7 @@ interface JQuery { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "roundDecimals"): boolean; @@ -31571,12 +32730,14 @@ interface JQuery { * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "roundDecimals", optionValue: boolean): void; /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -31584,6 +32745,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -31593,6 +32755,7 @@ interface JQuery { * Defines the range that editor's value can accept.This is achieved by setting the [minValue](ui.igNumericEditor#options:minValue) and [maxValue](ui.igNumericEditor#options:maxValue) editor's options, accordingly to the lowest and highest accepted values for the defined numeric mode. * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "dataMode"): string; @@ -31602,6 +32765,7 @@ interface JQuery { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igNumericEditor#options:minDecimals) and [maxDecimals](ui.igNumericEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * @optionValue New value to be set. */ @@ -31609,24 +32773,28 @@ interface JQuery { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "minValue"): number; /** * /Sets the minimum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "minValue", optionValue: number): void; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "maxValue"): number; /** * /Sets the maximum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "maxValue", optionValue: number): void; @@ -31634,6 +32802,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -31641,18 +32810,21 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "spinDelta"): number; /** * /Sets the default delta-value which is used with "spin" [buttonType](ui.igNumericEditor#options:buttonType) or [spinUp](ui.igNumericEditor#methods:spinUp) and [spinDown](ui.igNumericEditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "spinDelta", optionValue: number): void; @@ -31661,6 +32833,7 @@ interface JQuery { * Gets/Sets support for scientific format. * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "scientificFormat"): string; @@ -31670,6 +32843,7 @@ interface JQuery { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * @optionValue New value to be set. */ @@ -31678,6 +32852,7 @@ interface JQuery { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "spinWrapAround"): boolean; @@ -31685,18 +32860,21 @@ interface JQuery { * /Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "spinWrapAround", optionValue: boolean): void; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "isLimitedToListValues"): boolean; /** * /Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "isLimitedToListValues", optionValue: boolean): void; @@ -31768,6 +32946,7 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "value"): any; @@ -31775,12 +32954,14 @@ interface JQuery { * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -31788,6 +32969,7 @@ interface JQuery { /** * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ @@ -31795,24 +32977,28 @@ interface JQuery { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "listWidth"): number; /** * /Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "listWidth", optionValue: number): void; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "listItemHoverDuration"): number; /** * /Sets the hover/unhover animation duration of a drop-down list item. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "listItemHoverDuration", optionValue: number): void; @@ -31822,6 +33008,7 @@ interface JQuery { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; @@ -31831,18 +33018,21 @@ interface JQuery { * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * /Sets show/hide drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -31852,6 +33042,7 @@ interface JQuery { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "visibleItemsCount"): number; @@ -31861,24 +33052,28 @@ interface JQuery { * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -31886,6 +33081,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -31893,30 +33089,35 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownOrientation"): string; @@ -31924,6 +33125,7 @@ interface JQuery { /** * /Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * @optionValue New value to be set. */ @@ -31933,6 +33135,7 @@ interface JQuery { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; @@ -31941,18 +33144,21 @@ interface JQuery { * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; @@ -31961,6 +33167,7 @@ interface JQuery { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -31969,12 +33176,14 @@ interface JQuery { * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -31982,6 +33191,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -31989,6 +33199,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -31996,6 +33207,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -32003,18 +33215,21 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -32022,6 +33237,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -32029,36 +33245,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -32067,6 +33289,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -32075,36 +33298,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igCurrencyEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igCurrencyEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -32112,6 +33341,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -32141,6 +33371,7 @@ interface JQuery { * Gets/Sets the pattern for positive numeric values, which is used in display (no focus) state. * If you use the "en-US" culture the default value for "positivePattern" will be "n$" where the "$" flag represents the "numericSymbol" and the "n" flag represents the value of the number. * Note: this option has priority over possible regional settings. + * */ igPercentEditor(optionLiteral: 'option', optionName: "positivePattern"): string; @@ -32149,6 +33380,7 @@ interface JQuery { * If you use the "en-US" culture the default value for "positivePattern" will be "n$" where the "$" flag represents the "numericSymbol" and the "n" flag represents the value of the number. * Note: this option has priority over possible regional settings. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "positivePattern", optionValue: string): void; @@ -32156,6 +33388,7 @@ interface JQuery { /** * Gets/Sets the symbol, which is used in display (no focus) state. * Note: this option has priority over possible regional settings. + * */ igPercentEditor(optionLiteral: 'option', optionName: "percentSymbol"): string; @@ -32163,6 +33396,7 @@ interface JQuery { * /Sets the symbol, which is used in display (no focus) state. * Note: this option has priority over possible regional settings. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "percentSymbol", optionValue: string): void; @@ -32173,6 +33407,7 @@ interface JQuery { * For example, if the factor is 100 and the "value" is set to 0.123, then the editor will show string "12.3". * Possible values: 1 or 100. * Note: this option has priority over possible regional settings. + * */ igPercentEditor(optionLiteral: 'option', optionName: "displayFactor"): number; @@ -32183,6 +33418,7 @@ interface JQuery { * Possible values: 1 or 100. * Note: this option has priority over possible regional settings. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "displayFactor", optionValue: number): void; @@ -32191,6 +33427,7 @@ interface JQuery { * Defines the range that editor's value can accept.This is achieved by setting the [minValue](ui.igPercentEditor#options:minValue) and [maxValue](ui.igPercentEditor#options:maxValue) editor's options, accordingly to the lowest and highest accepted values for the defined numeric mode. * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igPercentEditor#options:minDecimals) and [maxDecimals](ui.igPercentEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. + * */ igPercentEditor(optionLiteral: 'option', optionName: "dataMode"): string; @@ -32200,6 +33437,7 @@ interface JQuery { * The range for the specific type follows the numeric type standards, e.g. in .NET Framework [floating-point](https://msdn.microsoft.com/en-us/library/9ahet949.aspx) types and [integral types](https://msdn.microsoft.com/en-us/library/exx3b86w.aspx). * In addition, the maximum value that can be set to [minDecimals](ui.igPercentEditor#options:minDecimals) and [maxDecimals](ui.igPercentEditor#options:maxDecimals) options can be 15, when editor is in 'double' mode and 7, when in 'float' mode. * + * * @optionValue New value to be set. */ @@ -32207,12 +33445,14 @@ interface JQuery { /** * Gets/Sets the default delta-value which is used with "spin" [buttonType](ui.igpercenteditor#options:buttonType) or [spinUp](ui.igpercenteditor#methods:spinUp) and [spinDown](ui.igpercenteditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. + * */ igPercentEditor(optionLiteral: 'option', optionName: "spinDelta"): number; /** * /Sets the default delta-value which is used with "spin" [buttonType](ui.igpercenteditor#options:buttonType) or [spinUp](ui.igpercenteditor#methods:spinUp) and [spinDown](ui.igpercenteditor#methods:spinDown) methods to increment or decrement value in the editor. The value can not be negative. Non integer value is supported only for dataMode double and float. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "spinDelta", optionValue: number): void; @@ -32220,6 +33460,7 @@ interface JQuery { /** * Gets/Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. + * */ igPercentEditor(optionLiteral: 'option', optionName: "listItems"): any[]; @@ -32227,6 +33468,7 @@ interface JQuery { * /Sets list of items which are used as a source for the drop-down list. * Items in the list can be of type number. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "listItems", optionValue: any[]): void; @@ -32236,6 +33478,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. + * */ igPercentEditor(optionLiteral: 'option', optionName: "negativeSign"): string; @@ -32245,6 +33488,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) options. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "negativeSign", optionValue: string): void; @@ -32253,6 +33497,7 @@ interface JQuery { * Gets/Sets the string, which is used as negative pattern. The "n" flag represents the value of number. The "-" and "()" flags are static part of pattern. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igPercentEditor(optionLiteral: 'option', optionName: "negativePattern"): string; @@ -32261,6 +33506,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "negativePattern", optionValue: string): void; @@ -32270,6 +33516,7 @@ interface JQuery { * Note: this option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igPercentEditor(optionLiteral: 'option', optionName: "decimalSeparator"): string; @@ -32279,6 +33526,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [groupSeparator](ui.igNumericEditor#options:groupSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "decimalSeparator", optionValue: string): void; @@ -32289,6 +33537,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. + * */ igPercentEditor(optionLiteral: 'option', optionName: "groupSeparator"): string; @@ -32299,6 +33548,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option's value should not be equal to the value of [decimalSeparator](ui.igNumericEditor#options:decimalSeparator) or [negativeSign](ui.igNumericEditor#options:negativeSign) options. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "groupSeparator", optionValue: string): void; @@ -32312,6 +33562,7 @@ interface JQuery { * Note: The numbers in the array must be positive integers. * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. + * */ igPercentEditor(optionLiteral: 'option', optionName: "groups"): any[]; @@ -32325,6 +33576,7 @@ interface JQuery { * Note: This option has priority over possible regional settings. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "groups", optionValue: any[]): void; @@ -32335,6 +33587,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igPercentEditor(optionLiteral: 'option', optionName: "maxDecimals"): number; @@ -32345,6 +33598,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "maxDecimals", optionValue: number): void; @@ -32356,6 +33610,7 @@ interface JQuery { * Note: In case of min decimals value higher than max decimals - max decimals are equaled to min decimals property. * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. + * */ igPercentEditor(optionLiteral: 'option', optionName: "minDecimals"): number; @@ -32367,6 +33622,7 @@ interface JQuery { * Note: Even if the default value is null - if internationalization file is provided and it contains default values for those properties the values are imlicitly set. * Note: This option supports values between 0 and 15, when dataMode is 'double' (default) and values between 0 and 7 in 'float' mode. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "minDecimals", optionValue: number): void; @@ -32375,6 +33631,7 @@ interface JQuery { * Gets/Sets whether the last decimal place will be rounded, when the maxDecimal option is defined and applied. * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. + * */ igPercentEditor(optionLiteral: 'option', optionName: "roundDecimals"): boolean; @@ -32383,12 +33640,14 @@ interface JQuery { * For example if the initial editor value is set to 123.4567, maxDecimals option is set to 3 and roundDecimals is enabled, * then editor will round the value and will display it as 123.457. If roundDecimals is disabled then editor value will be truncated to 123.456. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "roundDecimals", optionValue: boolean): void; /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igPercentEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -32396,6 +33655,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -32403,24 +33663,28 @@ interface JQuery { /** * Gets/Sets the minimum value which can be entered in the editor by the end user. + * */ igPercentEditor(optionLiteral: 'option', optionName: "minValue"): number; /** * /Sets the minimum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "minValue", optionValue: number): void; /** * Gets/Sets the maximum value which can be entered in the editor by the end user. + * */ igPercentEditor(optionLiteral: 'option', optionName: "maxValue"): number; /** * /Sets the maximum value which can be entered in the editor by the end user. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "maxValue", optionValue: number): void; @@ -32428,6 +33692,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). + * */ igPercentEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -32435,6 +33700,7 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is disabled, and editor has no value, then value is set to 0 (or minValue/maxValue). * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; @@ -32443,6 +33709,7 @@ interface JQuery { * Gets/Sets support for scientific format. * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. + * */ igPercentEditor(optionLiteral: 'option', optionName: "scientificFormat"): string; @@ -32452,6 +33719,7 @@ interface JQuery { * If that option is set, then numeric value appears as a string with possible E-power flag. In edit mode the "E" or "e" character can be entered as well. * Notes: The "+" character is not supported in edit mode. * + * * @optionValue New value to be set. */ @@ -32460,6 +33728,7 @@ interface JQuery { /** * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * */ igPercentEditor(optionLiteral: 'option', optionName: "spinWrapAround"): boolean; @@ -32467,18 +33736,21 @@ interface JQuery { * /Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "spinWrapAround", optionValue: boolean): void; /** * Gets/Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. + * */ igPercentEditor(optionLiteral: 'option', optionName: "isLimitedToListValues"): boolean; /** * /Sets if the editor should only allow values from the list of items. Enabling this also causes spin actions to cycle through list items instead. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "isLimitedToListValues", optionValue: boolean): void; @@ -32550,6 +33822,7 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * */ igPercentEditor(optionLiteral: 'option', optionName: "value"): any; @@ -32557,12 +33830,14 @@ interface JQuery { * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. + * */ igPercentEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -32570,6 +33845,7 @@ interface JQuery { /** * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too.Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ @@ -32577,24 +33853,28 @@ interface JQuery { /** * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. + * */ igPercentEditor(optionLiteral: 'option', optionName: "listWidth"): number; /** * /Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of editor is set as a drop-down width. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "listWidth", optionValue: number): void; /** * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * */ igPercentEditor(optionLiteral: 'option', optionName: "listItemHoverDuration"): number; /** * /Sets the hover/unhover animation duration of a drop-down list item. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "listItemHoverDuration", optionValue: number): void; @@ -32604,6 +33884,7 @@ interface JQuery { * If the option is set to false the editor will attach the drop-down list element to the editor container * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. + * */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; @@ -32613,18 +33894,21 @@ interface JQuery { * If the option is set to true the editor will attach its drop-down list to as a child of the body. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; /** * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * /Sets show/hide drop-down list animation duration in milliseconds. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -32634,6 +33918,7 @@ interface JQuery { * Notes: * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. + * */ igPercentEditor(optionLiteral: 'option', optionName: "visibleItemsCount"): number; @@ -32643,24 +33928,28 @@ interface JQuery { * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. * This option can not be set runtime. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igPercentEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igPercentEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -32668,6 +33957,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -32675,30 +33965,35 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igPercentEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igPercentEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownOrientation"): string; @@ -32706,6 +34001,7 @@ interface JQuery { /** * /Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the editor has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. * + * * @optionValue New value to be set. */ @@ -32715,6 +34011,7 @@ interface JQuery { * Gets the ability to limit the editor to be used only as a dropdown list. When set to true the editor input is not editable. * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. + * */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; @@ -32723,18 +34020,21 @@ interface JQuery { * Note! In case there are no list items - the editor will reamin readonly * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igPercentEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; @@ -32743,6 +34043,7 @@ interface JQuery { * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. + * */ igPercentEditor(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -32751,12 +34052,14 @@ interface JQuery { * Note: The option does not perform device detection so its behavior is always active if enabled. * Note: When drop down is opened the only way to close it will be using the drop down button. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igPercentEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -32764,6 +34067,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -32771,6 +34075,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igPercentEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -32778,6 +34083,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -32785,18 +34091,21 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igPercentEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igPercentEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -32804,6 +34113,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -32811,36 +34121,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igPercentEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igPercentEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igPercentEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -32849,6 +34165,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igPercentEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -32857,36 +34174,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igPercentEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igPercentEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igPercentEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igPercentEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -32894,6 +34217,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -32930,6 +34254,7 @@ interface JQuery { /** * Gets visibility of the clear button. That option can be set only on initialization. + * */ igMaskEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -32937,6 +34262,7 @@ interface JQuery { /** * Visibility of the clear button. That option can be set only on initialization. * + * * @optionValue New value to be set. */ @@ -32960,6 +34286,7 @@ interface JQuery { * >: all letters to the right are converted to the upper case. In order to disable conversion, the ">" flag should be used again. * <: all letters to the right are converted to the lower case. In order to disable conversion, the "<" flag should be used again. * Note! This option can not be set runtime. + * */ igMaskEditor(optionLiteral: 'option', optionName: "inputMask"): string; @@ -32982,12 +34309,14 @@ interface JQuery { * <: all letters to the right are converted to the lower case. In order to disable conversion, the "<" flag should be used again. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "inputMask", optionValue: string): void; /** * It affects the value of the control (value method/option and submitted in forms). It defines what the value should contain from text, unfilled prompts and literals. The default is allText and when used value method/option returns the text entered, all prompts (positions) and literals. + * */ igMaskEditor(optionLiteral: 'option', optionName: "dataMode"): string; @@ -32995,6 +34324,7 @@ interface JQuery { /** * It affects the value of the control (value method/option and submitted in forms). It defines what the value should contain from text, unfilled prompts and literals. The default is allText and when used value method/option returns the text entered, all prompts (positions) and literals. * + * * @optionValue New value to be set. */ @@ -33002,36 +34332,42 @@ interface JQuery { /** * Gets character which is used as prompt in edit mode for available entry position. + * */ igMaskEditor(optionLiteral: 'option', optionName: "unfilledCharsPrompt"): string; /** * Character which is used as prompt in edit mode for available entry position. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "unfilledCharsPrompt", optionValue: string): void; /** * Gets/Sets character which is used as replacement of not-filled required position in mask when editor is in display mode (not focused). + * */ igMaskEditor(optionLiteral: 'option', optionName: "padChar"): string; /** * /Sets character which is used as replacement of not-filled required position in mask when editor is in display mode (not focused). * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "padChar", optionValue: string): void; /** * Gets/Sets character which is used as replacement of not-filled required position in mask when application calls get for the [value](ui.igmaskeditor#methods:value) methods. + * */ igMaskEditor(optionLiteral: 'option', optionName: "emptyChar"): string; /** * /Sets character which is used as replacement of not-filled required position in mask when application calls get for the [value](ui.igmaskeditor#methods:value) methods. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "emptyChar", optionValue: string): void; @@ -33041,6 +34377,7 @@ interface JQuery { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igMaskEditor(optionLiteral: 'option', optionName: "includeKeys"): string; @@ -33050,6 +34387,7 @@ interface JQuery { * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "includeKeys", optionValue: string): void; @@ -33059,6 +34397,7 @@ interface JQuery { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igMaskEditor(optionLiteral: 'option', optionName: "excludeKeys"): string; @@ -33068,6 +34407,7 @@ interface JQuery { * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "excludeKeys", optionValue: string): void; @@ -33218,12 +34558,14 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ igMaskEditor(optionLiteral: 'option', optionName: "value"): any; /** * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; @@ -33232,6 +34574,7 @@ interface JQuery { /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igMaskEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -33239,6 +34582,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -33246,18 +34590,21 @@ interface JQuery { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igMaskEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igMaskEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -33265,6 +34612,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -33272,24 +34620,28 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igMaskEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igMaskEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; @@ -33297,6 +34649,7 @@ interface JQuery { /** * Gets/Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ igMaskEditor(optionLiteral: 'option', optionName: "toUpper"): boolean; @@ -33304,6 +34657,7 @@ interface JQuery { * /Sets the ability to convert the input characters to upper case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "toUpper", optionValue: boolean): void; @@ -33311,6 +34665,7 @@ interface JQuery { /** * Gets/Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. + * */ igMaskEditor(optionLiteral: 'option', optionName: "toLower"): boolean; @@ -33318,24 +34673,28 @@ interface JQuery { * /Sets the ability to convert the input characters to lower case (true) or keeps the characters as they are (false). The option has effect only while keyboard entries and paste. * Note! When the option is set at runtime the editor is not changing the current value. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "toLower", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igMaskEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igMaskEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -33343,6 +34702,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -33350,6 +34710,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igMaskEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -33357,6 +34718,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -33364,12 +34726,14 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igMaskEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; @@ -33377,6 +34741,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ igMaskEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -33384,12 +34749,14 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igMaskEditor(optionLiteral: 'option', optionName: "nullValue"): string|number; @@ -33397,6 +34764,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -33404,36 +34772,42 @@ interface JQuery { /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igMaskEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igMaskEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igMaskEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -33442,6 +34816,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igMaskEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -33450,36 +34825,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igMaskEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igMaskEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igMaskEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -33487,6 +34868,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -33505,24 +34887,16 @@ interface JQuery { igMaskEditor(optionLiteral: 'option', optionName: "dropDownItemSelected", optionValue: DropDownItemSelectedEvent): void; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. */ igMaskEditor(optionLiteral: 'option', optionName: "textChanged"): TextChangedEvent; /** - * Event which is raised after text in the editor was changed. It can be raised when keyUp event occurs, + * Fired after the editor's text has been changed. It can be raised when keyUp event occurs, * when the clear button is clicked or when an item from a list is selected. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.text to obtain new text - * Use ui.oldText to obtain the old text. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igMaskEditor(optionLiteral: 'option', optionName: "textChanged", optionValue: TextChangedEvent): void; igMaskEditor(options: IgMaskEditor): JQuery; @@ -33553,6 +34927,7 @@ interface JQuery { /** * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDateEditor(optionLiteral: 'option', optionName: "value"): Date; @@ -33560,6 +34935,7 @@ interface JQuery { * /Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "value", optionValue: Date): void; @@ -33567,6 +34943,7 @@ interface JQuery { /** * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDateEditor(optionLiteral: 'option', optionName: "minValue"): Date; @@ -33574,6 +34951,7 @@ interface JQuery { * The minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "minValue", optionValue: Date): void; @@ -33581,6 +34959,7 @@ interface JQuery { /** * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDateEditor(optionLiteral: 'option', optionName: "maxValue"): Date; @@ -33588,6 +34967,7 @@ interface JQuery { * The maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "maxValue", optionValue: Date): void; @@ -33630,6 +35010,7 @@ interface JQuery { * "f": milliseconds field in hundreds * "ff": milliseconds field in tenths * "fff": milliseconds field + * */ igDateEditor(optionLiteral: 'option', optionName: "dateDisplayFormat"): string; @@ -33672,6 +35053,7 @@ interface JQuery { * "ff": milliseconds field in tenths * "fff": milliseconds field * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "dateDisplayFormat", optionValue: string): void; @@ -33703,6 +35085,7 @@ interface JQuery { * "ff": milliseconds field in tenths * "fff": milliseconds field * Note! This option can not be set runtime. + * */ igDateEditor(optionLiteral: 'option', optionName: "dateInputFormat"): string; @@ -33734,6 +35117,7 @@ interface JQuery { * "fff": milliseconds field * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "dateInputFormat", optionValue: string): void; @@ -33743,6 +35127,7 @@ interface JQuery { * The [enableUTCDates](ui.%%WidgetNameLowered%%#options:enableUTCDates) option can be used to output an UTC ISO string instead. * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" + * */ igDateEditor(optionLiteral: 'option', optionName: "dataMode"): string; @@ -33753,6 +35138,7 @@ interface JQuery { * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" * + * * @optionValue New value to be set. */ @@ -33762,6 +35148,7 @@ interface JQuery { * Gets/Sets time zone offset from UTC, in minutes. The client date values are displayed with this offset instead of the local one. * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. + * */ igDateEditor(optionLiteral: 'option', optionName: "displayTimeOffset"): any; @@ -33770,12 +35157,14 @@ interface JQuery { * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "displayTimeOffset", optionValue: any): void; /** * Gets visibility of the spin and clear buttons. That option can be set only on initialization. Combinations like 'spin,clear' are supported too. + * */ igDateEditor(optionLiteral: 'option', optionName: "buttonType"): string; @@ -33783,6 +35172,7 @@ interface JQuery { /** * Visibility of the spin and clear buttons. That option can be set only on initialization. Combinations like 'spin,clear' are supported too. * + * * @optionValue New value to be set. */ @@ -33802,6 +35192,7 @@ interface JQuery { * milliseconds: 100 * } * Time periods that don't have values use 1 as default. + * */ igDateEditor(optionLiteral: 'option', optionName: "spinDelta"): number|Object; @@ -33821,6 +35212,7 @@ interface JQuery { * } * Time periods that don't have values use 1 as default. * + * * @optionValue New value to be set. */ @@ -33830,6 +35222,7 @@ interface JQuery { * Gets/Sets ability to modify only 1 date field on spin events. * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. + * */ igDateEditor(optionLiteral: 'option', optionName: "limitSpinToCurrentField"): boolean; @@ -33838,6 +35231,7 @@ interface JQuery { * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "limitSpinToCurrentField", optionValue: boolean): void; @@ -33845,6 +35239,7 @@ interface JQuery { /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * */ igDateEditor(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; @@ -33852,6 +35247,7 @@ interface JQuery { * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; @@ -33860,6 +35256,7 @@ interface JQuery { * Gets/Sets year for auto detection of 20th and 21st centuries. * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * */ igDateEditor(optionLiteral: 'option', optionName: "centuryThreshold"): number; @@ -33868,24 +35265,28 @@ interface JQuery { * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "centuryThreshold", optionValue: number): void; /** * Gets/Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. + * */ igDateEditor(optionLiteral: 'option', optionName: "yearShift"): number; /** * /Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "yearShift", optionValue: number): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igDateEditor(optionLiteral: 'option', optionName: "nullValue"): string|number|Date; @@ -33893,6 +35294,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -34061,6 +35463,7 @@ interface JQuery { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igDateEditor(optionLiteral: 'option', optionName: "includeKeys"): string; @@ -34070,6 +35473,7 @@ interface JQuery { * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "includeKeys", optionValue: string): void; @@ -34079,6 +35483,7 @@ interface JQuery { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igDateEditor(optionLiteral: 'option', optionName: "excludeKeys"): string; @@ -34088,6 +35493,7 @@ interface JQuery { * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "excludeKeys", optionValue: string): void; @@ -34152,6 +35558,7 @@ interface JQuery { /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igDateEditor(optionLiteral: 'option', optionName: "textAlign"): string; @@ -34159,6 +35566,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -34166,18 +35574,21 @@ interface JQuery { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igDateEditor(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igDateEditor(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -34185,6 +35596,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -34192,42 +35604,49 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igDateEditor(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igDateEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igDateEditor(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igDateEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -34235,6 +35654,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -34242,6 +35662,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igDateEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -34249,6 +35670,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -34256,12 +35678,14 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igDateEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; @@ -34269,6 +35693,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ igDateEditor(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -34276,42 +35701,49 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igDateEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igDateEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igDateEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -34320,6 +35752,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igDateEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -34328,36 +35761,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igDateEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igDateEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igDateEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igDateEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -34365,6 +35804,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -34470,6 +35910,7 @@ interface JQuery { /** * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too. + * */ igDatePicker(optionLiteral: 'option', optionName: "buttonType"): string; @@ -34477,6 +35918,7 @@ interface JQuery { /** * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown,spin' or 'spin,clear' are supported too. * + * * @optionValue New value to be set. */ @@ -34484,12 +35926,14 @@ interface JQuery { /** * Gets/Sets the options supported by the [jquery.ui.datepicker](http://api.jqueryui.com/datepicker/). Only options related to the drop-down calendar are supported. + * */ igDatePicker(optionLiteral: 'option', optionName: "datepickerOptions"): any; /** * /Sets the options supported by the [jquery.ui.datepicker](http://api.jqueryui.com/datepicker/). Only options related to the drop-down calendar are supported. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "datepickerOptions", optionValue: any): void; @@ -34497,6 +35941,7 @@ interface JQuery { /** * Gets the ability to limit igDatePicker to be used only as s calendar. When set to true the editor input is not editable. * Note! This option can not be set runtime. + * */ igDatePicker(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; @@ -34504,6 +35949,7 @@ interface JQuery { * The ability to limit igDatePicker to be used only as s calendar. When set to true the editor input is not editable. * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; @@ -34571,6 +36017,7 @@ interface JQuery { /** * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. + * */ igDatePicker(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; @@ -34578,6 +36025,7 @@ interface JQuery { * /Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. * Note: The option does not perform device detection so its behavior is always active if enabled. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; @@ -34585,6 +36033,7 @@ interface JQuery { /** * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDatePicker(optionLiteral: 'option', optionName: "value"): Date; @@ -34592,6 +36041,7 @@ interface JQuery { * /Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "value", optionValue: Date): void; @@ -34599,6 +36049,7 @@ interface JQuery { /** * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDatePicker(optionLiteral: 'option', optionName: "minValue"): Date; @@ -34606,6 +36057,7 @@ interface JQuery { * The minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "minValue", optionValue: Date): void; @@ -34613,6 +36065,7 @@ interface JQuery { /** * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. + * */ igDatePicker(optionLiteral: 'option', optionName: "maxValue"): Date; @@ -34620,6 +36073,7 @@ interface JQuery { * The maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. * Note! This option doesn't use the dateInputFormat to extract the date. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "maxValue", optionValue: Date): void; @@ -34662,6 +36116,7 @@ interface JQuery { * "f": milliseconds field in hundreds * "ff": milliseconds field in tenths * "fff": milliseconds field + * */ igDatePicker(optionLiteral: 'option', optionName: "dateDisplayFormat"): string; @@ -34704,6 +36159,7 @@ interface JQuery { * "ff": milliseconds field in tenths * "fff": milliseconds field * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dateDisplayFormat", optionValue: string): void; @@ -34735,6 +36191,7 @@ interface JQuery { * "ff": milliseconds field in tenths * "fff": milliseconds field * Note! This option can not be set runtime. + * */ igDatePicker(optionLiteral: 'option', optionName: "dateInputFormat"): string; @@ -34766,6 +36223,7 @@ interface JQuery { * "fff": milliseconds field * Note! This option can not be set runtime. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dateInputFormat", optionValue: string): void; @@ -34775,6 +36233,7 @@ interface JQuery { * The [enableUTCDates](ui.%%WidgetNameLowered%%#options:enableUTCDates) option can be used to output an UTC ISO string instead. * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" + * */ igDatePicker(optionLiteral: 'option', optionName: "dataMode"): string; @@ -34785,6 +36244,7 @@ interface JQuery { * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: * "2016-11-11T10:00:00+05:00" * + * * @optionValue New value to be set. */ @@ -34794,6 +36254,7 @@ interface JQuery { * Gets/Sets time zone offset from UTC, in minutes. The client date values are displayed with this offset instead of the local one. * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. + * */ igDatePicker(optionLiteral: 'option', optionName: "displayTimeOffset"): any; @@ -34802,6 +36263,7 @@ interface JQuery { * Note: It is recommended that this option is used with an UTC value (e.g. "2016-11-03T14:08:08.504Z") so the outcome is consistent. * Values with ambiguous time zone could map to unpredictable times depending on the user agent local zone. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "displayTimeOffset", optionValue: any): void; @@ -34820,6 +36282,7 @@ interface JQuery { * milliseconds: 100 * } * Time periods that don't have values use 1 as default. + * */ igDatePicker(optionLiteral: 'option', optionName: "spinDelta"): number|Object; @@ -34839,6 +36302,7 @@ interface JQuery { * } * Time periods that don't have values use 1 as default. * + * * @optionValue New value to be set. */ @@ -34848,6 +36312,7 @@ interface JQuery { * Gets/Sets ability to modify only 1 date field on spin events. * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. + * */ igDatePicker(optionLiteral: 'option', optionName: "limitSpinToCurrentField"): boolean; @@ -34856,6 +36321,7 @@ interface JQuery { * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. * Value true modifies only value of one field. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "limitSpinToCurrentField", optionValue: boolean): void; @@ -34863,6 +36329,7 @@ interface JQuery { /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * */ igDatePicker(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; @@ -34870,6 +36337,7 @@ interface JQuery { * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; @@ -34878,6 +36346,7 @@ interface JQuery { * Gets/Sets year for auto detection of 20th and 21st centuries. * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * */ igDatePicker(optionLiteral: 'option', optionName: "centuryThreshold"): number; @@ -34886,24 +36355,28 @@ interface JQuery { * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "centuryThreshold", optionValue: number): void; /** * Gets/Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. + * */ igDatePicker(optionLiteral: 'option', optionName: "yearShift"): number; /** * /Set value used to increase/decrease year part of the date, in order to set difference between year in Gregorian calendar and displayed year. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "yearShift", optionValue: number): void; /** * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * */ igDatePicker(optionLiteral: 'option', optionName: "nullValue"): string|number|Date; @@ -34911,6 +36384,7 @@ interface JQuery { /** * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string * + * * @optionValue New value to be set. */ @@ -35005,6 +36479,7 @@ interface JQuery { * Notes: * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igDatePicker(optionLiteral: 'option', optionName: "includeKeys"): string; @@ -35014,6 +36489,7 @@ interface JQuery { * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "includeKeys", optionValue: string): void; @@ -35023,6 +36499,7 @@ interface JQuery { * Notes: * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. + * */ igDatePicker(optionLiteral: 'option', optionName: "excludeKeys"): string; @@ -35032,6 +36509,7 @@ interface JQuery { * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. * Note! This option can not be se runtime. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "excludeKeys", optionValue: string): void; @@ -35096,6 +36574,7 @@ interface JQuery { /** * Gets/Sets the horizontal alignment of the text in the editor. + * */ igDatePicker(optionLiteral: 'option', optionName: "textAlign"): string; @@ -35103,6 +36582,7 @@ interface JQuery { /** * /Sets the horizontal alignment of the text in the editor. * + * * @optionValue New value to be set. */ @@ -35110,18 +36590,21 @@ interface JQuery { /** * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * */ igDatePicker(optionLiteral: 'option', optionName: "placeHolder"): string; /** * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; /** * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * */ igDatePicker(optionLiteral: 'option', optionName: "selectionOnFocus"): string; @@ -35129,6 +36612,7 @@ interface JQuery { /** * /Sets the action when the editor gets focused. The default value is selectAll. * + * * @optionValue New value to be set. */ @@ -35136,42 +36620,49 @@ interface JQuery { /** * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * */ igDatePicker(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; /** * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; /** * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * */ igDatePicker(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; /** * /Sets if the editor should prevent form submition when enter key is pressed. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * */ igDatePicker(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; /** * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igDatePicker(optionLiteral: 'option', optionName: "width"): string|number; @@ -35179,6 +36670,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -35186,6 +36678,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igDatePicker(optionLiteral: 'option', optionName: "height"): string|number; @@ -35193,6 +36686,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -35200,12 +36694,14 @@ interface JQuery { /** * Gets/Sets tabIndex attribute for the editor input. + * */ igDatePicker(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; @@ -35213,6 +36709,7 @@ interface JQuery { /** * Gets/Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. + * */ igDatePicker(optionLiteral: 'option', optionName: "allowNullValue"): boolean; @@ -35220,42 +36717,49 @@ interface JQuery { * /Sets whether the editor value can become null. * If that option is false, and editor has no value, then value is set to an empty string. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igDatePicker(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * */ igDatePicker(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igDatePicker(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -35264,6 +36768,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igDatePicker(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -35272,36 +36777,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igDatePicker(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igDatePicker(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igDatePicker(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -35309,48 +36820,33 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired when the drop down is opening. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListOpening"): DropDownListOpeningEvent; /** - * Event which is raised when the drop down is opening. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired when the drop down is opening. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListOpening", optionValue: DropDownListOpeningEvent): void; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down is opened. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListOpened"): DropDownListOpenedEvent; /** - * Event which is raised after the drop down is opened. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down is opened. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListOpened", optionValue: DropDownListOpenedEvent): void; @@ -35379,22 +36875,14 @@ interface JQuery { igDatePicker(optionLiteral: 'option', optionName: "dropDownItemSelecting", optionValue: DropDownItemSelectingEvent): void; /** - * Event which is raised after the drop down (calendar) is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down (calendar) is closed. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListClosed"): DropDownListClosedEvent; /** - * Event which is raised after the drop down (calendar) is closed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.editorInput to obtain reference to the editable input - * Use ui.calendar to obtain a reference to jQuery UI date picker widget, used as a calendar from the igDatePicker. + * Fired after the drop down (calendar) is closed. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "dropDownListClosed", optionValue: DropDownListClosedEvent): void; @@ -35411,24 +36899,14 @@ interface JQuery { igDatePicker(optionLiteral: 'option', optionName: "dropDownItemSelected", optionValue: DropDownItemSelectedEvent): void; /** - * Event which is raised after a date selection in the calendar. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.dateFromPicker to obtain reference to the date object which is selected. - * Use ui.item to obtain a referece to the selected html element from the calendar. - * Use ui.calendar to obtain a reference to jQuery UI date picker, used as a calendar from the igDatePicker. + * Fired after a date selection in the calendar. */ igDatePicker(optionLiteral: 'option', optionName: "itemSelected"): ItemSelectedEvent; /** - * Event which is raised after a date selection in the calendar. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.dateFromPicker to obtain reference to the date object which is selected. - * Use ui.item to obtain a referece to the selected html element from the calendar. - * Use ui.calendar to obtain a reference to jQuery UI date picker, used as a calendar from the igDatePicker. + * Fired after a date selection in the calendar. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igDatePicker(optionLiteral: 'option', optionName: "itemSelected", optionValue: ItemSelectedEvent): void; igDatePicker(options: IgDatePicker): JQuery; @@ -35454,18 +36932,21 @@ interface JQuery { /** * Gets/Sets whether the checkbox is checked. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "checked"): boolean; /** * /Sets whether the checkbox is checked. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "checked", optionValue: boolean): void; /** * Gets/Sets size of the checkbox based on preset styles.For different sizes, define 'width' and 'height' options instead. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "size"): string; @@ -35473,6 +36954,7 @@ interface JQuery { /** * /Sets size of the checkbox based on preset styles.For different sizes, define 'width' and 'height' options instead. * + * * @optionValue New value to be set. */ @@ -35481,6 +36963,7 @@ interface JQuery { /** * Gets/Sets a custom class on the checkbox. Custom image can be used this way. * The following jQuery classes can be used in addition http://api.jqueryui.com/theming/icons/ + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "iconClass"): string; @@ -35488,30 +36971,35 @@ interface JQuery { * /Sets a custom class on the checkbox. Custom image can be used this way. * The following jQuery classes can be used in addition http://api.jqueryui.com/theming/icons/ * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "iconClass", optionValue: string): void; /** * Gets/Sets tabIndex attribute for the editor input. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "tabIndex"): number; /** * /Sets tabIndex attribute for the editor input. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * Gets/Sets the readonly attribute. Does not allow editing. Disables changing the checkbox state as an interaction, but it still can be changed programmatically. On submit the current value is sent into the request. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "readOnly"): boolean; /** * /Sets the readonly attribute. Does not allow editing. Disables changing the checkbox state as an interaction, but it still can be changed programmatically. On submit the current value is sent into the request. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; @@ -35522,6 +37010,7 @@ interface JQuery { /** * Gets/Sets the width of the control. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -35529,6 +37018,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -35536,6 +37026,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -35543,6 +37034,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -35550,36 +37042,42 @@ interface JQuery { /** * Gets/Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "value"): any; /** * /Sets value in editor. The effect of setting/getting that option depends on type of editor and on dataMode options for every type of editor. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "value", optionValue: any): void; /** * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "disabled"): boolean; /** * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; @@ -35588,6 +37086,7 @@ interface JQuery { * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -35596,36 +37095,42 @@ interface JQuery { * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, * while the corresponding options of the editor prevent values violating the defined rules from being entered. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; /** * Set/Get the locale setting for the widget. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igCheckboxEditor(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -35633,302 +37138,183 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; /** - * Event which is raised before value in editor was changed. + * Fired before changing the editor's value. * Return false in order to cancel change. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.oldValue to obtain the old value. - * Use ui.oldState to obtain the old state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. */ igCheckboxEditor(optionLiteral: 'option', optionName: "valueChanging"): ValueChangingEvent; /** - * Event which is raised before value in editor was changed. + * Fired before changing the editor's value. * Return false in order to cancel change. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.oldValue to obtain the old value. - * Use ui.oldState to obtain the old state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "valueChanging", optionValue: ValueChangingEvent): void; /** - * Event which is raised after value in editor was changed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. + * Fired after the editor's value has been changed. */ igCheckboxEditor(optionLiteral: 'option', optionName: "valueChanged"): ValueChangedEvent; /** - * Event which is raised after value in editor was changed. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.newValue to obtain the new value. - * Use ui.newState to obtain the new state. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput obtain reference to the editor element. + * Fired after the editor's value has been changed. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "valueChanged", optionValue: ValueChangedEvent): void; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. */ igCheckboxEditor(optionLiteral: 'option', optionName: "rendering"): RenderingEvent; /** - * Event which is raised before rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired before rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "rendering", optionValue: RenderingEvent): void; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. */ igCheckboxEditor(optionLiteral: 'option', optionName: "rendered"): RenderedEvent; /** - * Event which is raised after rendering of the editor completes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the editor performing rendering. - * Use ui.element to get a reference to the editor element. + * Fired after rendering of the editor has finished. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "rendered", optionValue: RenderedEvent): void; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mousedown"): MousedownEvent; /** - * Event which is raised on mousedown event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousedown event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mousedown", optionValue: MousedownEvent): void; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseup"): MouseupEvent; /** - * Event which is raised on mouseup event. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseup", optionValue: MouseupEvent): void; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mousemove"): MousemoveEvent; /** - * Event which is raised on mousemove at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mousemove at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mousemove", optionValue: MousemoveEvent): void; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseover"): MouseoverEvent; /** - * Event which is raised on mouseover at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseover at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseover", optionValue: MouseoverEvent): void; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseout"): MouseoutEvent; /** - * Event which is raised on mouseleave at any part of editor including drop-down list. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired on mouseleave at any part of editor including the drop-down list. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "mouseout", optionValue: MouseoutEvent): void; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. */ igCheckboxEditor(optionLiteral: 'option', optionName: "blur"): BlurEvent; /** - * Event which is raised when input field of editor loses focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor loses focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "blur", optionValue: BlurEvent): void; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. */ igCheckboxEditor(optionLiteral: 'option', optionName: "focus"): IgFocusEvent; /** - * Event which is raised when input field of editor gets focus. - * Function takes arguments evt and ui. - * Use ui.owner to obtain reference to igEditor. - * Use ui.element to obtain a reference to the event target. - * Use ui.editorInput to get a reference to the editor field. + * Fired when the input field of the editor gets focus. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "focus", optionValue: IgFocusEvent): void; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keydown"): KeydownEvent; /** - * Event which is raised on keydown event. + * Fired on keydown event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keydown", optionValue: KeydownEvent): void; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keypress"): KeypressEvent; /** - * Event which is raised on keypress event. + * Fired on keypress event. * Return false in order to cancel key action. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keypress", optionValue: KeypressEvent): void; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keyup"): KeyupEvent; /** - * Event which is raised on keyup event. - * Function takes arguments evt and ui. - * Use evt.originalEvent to obtain reference to event of browser. - * Use ui.owner to obtain reference to igEditor. - * Use ui.key to obtain value of keyCode. + * Fired on keyup event. * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igCheckboxEditor(optionLiteral: 'option', optionName: "keyup", optionValue: KeyupEvent): void; igCheckboxEditor(options: IgCheckboxEditor): JQuery; @@ -35937,6 +37323,4447 @@ interface JQuery { igCheckboxEditor(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; igCheckboxEditor(methodName: string, ...methodParams: any[]): any; } +interface JQuery { + igTimePicker(methodName: "getSelectedListItem"): string; + igTimePicker(methodName: "dropDownVisible"): boolean; + igTimePicker(methodName: "dropDownButton"): string; + igTimePicker(methodName: "dropDownContainer"): string; + igTimePicker(methodName: "findListItemIndex", text: string, matchType?: Object): number; + igTimePicker(methodName: "selectedListIndex", index?: number): number; + igTimePicker(methodName: "value", newValue: Object): void; + igTimePicker(methodName: "selectDate"): void; + igTimePicker(methodName: "changeRegional"): void; + igTimePicker(methodName: "getSelectedDate"): Date; + igTimePicker(methodName: "spinUp", delta?: number): void; + igTimePicker(methodName: "spinDown", delta?: number): void; + igTimePicker(methodName: "spinUpButton"): string; + igTimePicker(methodName: "spinDownButton"): string; + igTimePicker(methodName: "isValid"): boolean; + + /** + * Gets delta-value which is used to generate the drop-down items for the time picker. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * + * object A configuration object, which defines specific values for each time period. The option can accept the following format: + * itemsDelta: { + * hours: 0, + * minutes: 30, + * } + * Time periods that don't have values use 0 as default for hours and 30 for minutes. + */ + igTimePicker(optionLiteral: 'option', optionName: "itemsDelta"): IgTimePickerItemsDelta; + + /** + * Delta-value which is used to generate the drop-down items for the time picker. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * + * object A configuration object, which defines specific values for each time period. The option can accept the following format: + * itemsDelta: { + * hours: 0, + * minutes: 30, + * } + * Time periods that don't have values use 0 as default for hours and 30 for minutes. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "itemsDelta", optionValue: IgTimePickerItemsDelta): void; + + /** + * Gets/Sets delta-value which is used to increment or decrement the editor time on spin actions.When not editing (focused) the delta is applied on the day if available in the input mask or the lowest available period. + * When in edit mode the time period, where the cursor is positioned, is incremented or decremented with the defined delta value. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * spinDelta: { + * hours: 12, + * minutes: 15 + * } + * Default value is {hours: 1, minutes: 30}. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "spinDelta"): any; + + /** + * /Sets delta-value which is used to increment or decrement the editor time on spin actions.When not editing (focused) the delta is applied on the day if available in the input mask or the lowest available period. + * When in edit mode the time period, where the cursor is positioned, is incremented or decremented with the defined delta value. + * Accepted values for deltas are positive integer numbers, and the fractional portion of floating point numbers is ignored. + * spinDelta: { + * hours: 12, + * minutes: 15 + * } + * Default value is {hours: 1, minutes: 30}. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "spinDelta", optionValue: any): void; + + /** + * Gets format of time while timepicker has focus. + * Value of that option can be set to explicit time pattern or to a flag defined by regional settings. + * If value is set to explicit time pattern and pattern besides date-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * If option is not set, then the "time" is used automatically. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "hh": hours field in 12-hours format with leading zero + * "HH": hours field in 24-hours format with leading zero + * "mm": minutes field with leading zero + * Note! This option can not be set runtime. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "timeInputFormat"): string; + + /** + * Format of time while timepicker has focus. + * Value of that option can be set to explicit time pattern or to a flag defined by regional settings. + * If value is set to explicit time pattern and pattern besides date-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * If option is not set, then the "time" is used automatically. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "hh": hours field in 12-hours format with leading zero + * "HH": hours field in 24-hours format with leading zero + * "mm": minutes field with leading zero + * Note! This option can not be set runtime. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "timeInputFormat", optionValue: string): void; + + /** + * Gets/Sets format of time while timepicker has no focus. + * Value of that option can be set to a specific time pattern or to a flag defined by regional settings. + * If value is not set, then the timeInputFormat is used automatically. + * If value is set to explicit time pattern and pattern besides time-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: + * C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "h": hours field in 12-hours format without leading zero + * "hh": hours field in 12-hours format with leading zero + * "H": hours field in 24-hours format without leading zero + * "HH": hours field in 24-hours format with leading zero + * "m": minutes field without leading zero + * "mm": minutes field with leading zero + * + */ + igTimePicker(optionLiteral: 'option', optionName: "timeDisplayFormat"): string; + + /** + * /Sets format of time while timepicker has no focus. + * Value of that option can be set to a specific time pattern or to a flag defined by regional settings. + * If value is not set, then the timeInputFormat is used automatically. + * If value is set to explicit time pattern and pattern besides time-flags has explicit characters which match with time-flags or mask-flags, then the "escape" character should be used in front of them. + * List of predefined regional flags: + * "time": the timePattern member of regional option is used + * List of explicit characters, which should have escape \\ character in front of them: + * C, &, a, A, ?, L, 9, 0, #, >, <, y, M, d, h, H, m, s, t, f. + * List of time-flags when explicit time pattern is used: + * "t": first character of string which represents AM/PM field + * "tt": 2 characters of string which represents AM/PM field + * "h": hours field in 12-hours format without leading zero + * "hh": hours field in 12-hours format with leading zero + * "H": hours field in 24-hours format without leading zero + * "HH": hours field in 24-hours format with leading zero + * "m": minutes field without leading zero + * "mm": minutes field with leading zero + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "timeDisplayFormat", optionValue: string): void; + + /** + * Gets/Sets if the editor should only allow values from the list of items. Matching is case-insensitive. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "isLimitedToListValues"): boolean; + + /** + * /Sets if the editor should only allow values from the list of items. Matching is case-insensitive. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "isLimitedToListValues", optionValue: boolean): void; + + /** + * Gets/Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. + * Note: The option does not perform device detection so its behavior is always active if enabled. + * Note: When drop down is opened the only way to close it will be using the drop down button. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "suppressKeyboard"): boolean; + + /** + * /Sets whether the onscreen keyboard (if available on device) should be shown when the dropdown button is clicked/tapped. This option prevents initial focus or removes it when the drop button is clicked/tapped. + * Note: The option does not perform device detection so its behavior is always active if enabled. + * Note: When drop down is opened the only way to close it will be using the drop down button. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "suppressKeyboard", optionValue: boolean): void; + + /** + * Gets/Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the timepicker has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "dropDownOrientation"): string; + + /** + * /Sets the drop-down list opening orientation when the list gets open. If the option is set to auto the timepicker has priority to open the drop-down list bottom. If the space is not enough it tries to open the list top. If the space is not enough in both directions then the list gets opened at the bottom of the editor. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "dropDownOrientation", optionValue: string): void; + + /** + * Gets the number of the items to be shown at once when the drop-down list get opened. + * Notes: + * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. + * This option can not be set runtime. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "visibleItemsCount"): number; + + /** + * The number of the items to be shown at once when the drop-down list get opened. + * Notes: + * This option is overwritten if the number of list items is less than the set value. In that case the drop-down list displays all the items. + * This option can not be set runtime. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "visibleItemsCount", optionValue: number): void; + + /** + * Gets/Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of timepicker is set as a drop-down width. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "listWidth"): number; + + /** + * /Sets custom width of the drop-down list in pixels. If the value is equal to 0 or negative, then the width of timepicker is set as a drop-down width. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "listWidth", optionValue: number): void; + + /** + * Gets/Sets the hover/unhover animation duration of a drop-down list item. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "listItemHoverDuration"): number; + + /** + * /Sets the hover/unhover animation duration of a drop-down list item. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "listItemHoverDuration", optionValue: number): void; + + /** + * Gets wheather the drop-down list element is attached to the body of the document, or to the timepicker container element. + * If the option is set to false the timepicker will attach the drop-down list element to the timepicker container + * If the option is set to true the timepicker will attach its drop-down list to as a child of the body. + * Note! This option can not be set runtime. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownAttachedToBody"): boolean; + + /** + * Wheather the drop-down list element is attached to the body of the document, or to the timepicker container element. + * If the option is set to false the timepicker will attach the drop-down list element to the timepicker container + * If the option is set to true the timepicker will attach its drop-down list to as a child of the body. + * Note! This option can not be set runtime. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownAttachedToBody", optionValue: boolean): void; + + /** + * Gets/Sets show/hide drop-down list animation duration in milliseconds. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; + + /** + * /Sets show/hide drop-down list animation duration in milliseconds. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; + + /** + * Gets visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown, clear' or 'spin, clear' are supported too.Note! This option can not be set runtime. + * Note! A combination like 'dropdown, spin' is not allowed. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "buttonType"): string; + + /** + * Visibility of the spin, clear and drop-down button. That option can be set only on initialization. Combinations like 'dropdown, clear' or 'spin, clear' are supported too.Note! This option can not be set runtime. + * Note! A combination like 'dropdown, spin' is not allowed. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "buttonType", optionValue: string): void; + + /** + * Gets/Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. + * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "spinWrapAround"): boolean; + + /** + * /Set the ability of the editor to automatically set value in the editor to the opposite side of the limit, when the spin action reaches minimum or maximum limit. + * This applies to [minValue](ui.%%WidgetNameLowered%%#options:minValue) and [maxValue](ui.%%WidgetNameLowered%%#options:maxValue) or cycling through list items if [isLimitedToListValues](ui.%%WidgetNameLowered%%#options:isLimitedToListValues) is enabled. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "spinWrapAround", optionValue: boolean): void; + + /** + * Removed from timepicker options + */ + igTimePicker(optionLiteral: 'option', optionName: "dateDisplayFormat"): any; + + /** + * Removed from timepicker options + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dateDisplayFormat", optionValue: any): void; + + /** + * Removed from timepicker options + */ + igTimePicker(optionLiteral: 'option', optionName: "dateInputFormat"): any; + + /** + * Removed from timepicker options + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dateInputFormat", optionValue: any): void; + + /** + * Removed from timepicker options + */ + igTimePicker(optionLiteral: 'option', optionName: "yearShift"): any; + + /** + * Removed from timepicker options + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "yearShift", optionValue: any): void; + + /** + * Removed from timepicker options + */ + igTimePicker(optionLiteral: 'option', optionName: "displayTimeOffset"): any; + + /** + * Removed from timepicker options + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "displayTimeOffset", optionValue: any): void; + + /** + * Gets/Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "value"): Date; + + /** + * /Sets the value of the editor. Date object can be set as value. String can be set and the editor will pass it to the Date object constructor and use the corresponding Date object as the value. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "value", optionValue: Date): void; + + /** + * Gets the minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "minValue"): Date; + + /** + * The minimum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "minValue", optionValue: Date): void; + + /** + * Gets the maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "maxValue"): Date; + + /** + * The maximum value which can be entered in editor by user. Date object can be set as value. String value can be passed and the editor will use the javascript Date object constructor to create date object and will use it for the comparison. MVC date format can be used too. + * Note! This option doesn't use the dateInputFormat to extract the date. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "maxValue", optionValue: Date): void; + + /** + * Gets the value type returned by the get of value() method and option. Also affects how the value is stored for form submit. + * The [enableUTCDates](ui.%%WidgetNameLowered%%#options:enableUTCDates) option can be used to output an UTC ISO string instead. + * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: + * "2016-11-11T10:00:00+05:00" + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "dataMode"): string; + + /** + * The value type returned by the get of value() method and option. Also affects how the value is stored for form submit. + * The [enableUTCDates](ui.%%WidgetNameLowered%%#options:enableUTCDates) option can be used to output an UTC ISO string instead. + * For example 10:00 AM from a client with local offset of 5 hours ahead of GMT will be serialized as: + * "2016-11-11T10:00:00+05:00" + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "dataMode", optionValue: string): void; + + /** + * Gets/Sets ability to modify only 1 date field on spin events. + * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. + * Value true modifies only value of one field. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "limitSpinToCurrentField"): boolean; + + /** + * /Sets ability to modify only 1 date field on spin events. + * Value false enables changes of other date fields when incremented or decremented date-field reaches its limits. + * Value true modifies only value of one field. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "limitSpinToCurrentField", optionValue: boolean): void; + + /** + * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * + */ + igTimePicker(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; + + /** + * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * The option is only applied in "date" [dataMode](ui.%%WidgetNameLowered%%#options:dataMode). + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; + + /** + * Gets/Sets year for auto detection of 20th and 21st centuries. + * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". + * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "centuryThreshold"): number; + + /** + * /Sets year for auto detection of 20th and 21st centuries. + * That option is used to automatically fill century when the user entered only 1 or 2 digits into the year field or when the date pattern contains only 1 or 2 year positions, e.g. "yy" or "y". + * If user entered value larger than value of this option, then 20th century is used, otherwise the 21st. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "centuryThreshold", optionValue: number): void; + + /** + * Gets/Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "nullValue"): string|number|Date; + + /** + * /Sets the representation of null value. In case of default the value for the input is set to null, which makes the input to hold an empty string + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "nullValue", optionValue: string|number|Date): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "listItems"): any; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "listItems", optionValue: any): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownOnReadOnly"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownOnReadOnly", optionValue: boolean): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "inputMask"): string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "inputMask", optionValue: string): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "unfilledCharsPrompt"): string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "unfilledCharsPrompt", optionValue: string): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "padChar"): string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "padChar", optionValue: string): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "emptyChar"): string; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "emptyChar", optionValue: string): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "toUpper"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "toUpper", optionValue: boolean): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "toLower"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for igDateEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "toLower", optionValue: boolean): void; + + /** + * Gets ability to enter only specific characters in input-field from keyboard and on paste. + * Notes: + * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "includeKeys"): string; + + /** + * Ability to enter only specific characters in input-field from keyboard and on paste. + * Notes: + * If "excludeKeys" option contains same characters as this option, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "includeKeys", optionValue: string): void; + + /** + * Gets ability to prevent entering specific characters from keyboard or on paste. + * Notes: + * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "excludeKeys"): string; + + /** + * Ability to prevent entering specific characters from keyboard or on paste. + * Notes: + * If a character is specified in "includeKeys" option also, then "excludeKeys" has priority. + * Note! This option can not be se runtime. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "excludeKeys", optionValue: string): void; + + igTimePicker(optionLiteral: 'option', optionName: "textMode"): any; + + igTimePicker(optionLiteral: 'option', optionName: "textMode", optionValue: any): void; + + /** + * This option is inherited from a parent widget and it's not applicable for igMaskEditor + */ + igTimePicker(optionLiteral: 'option', optionName: "maxLength"): any; + + /** + * This option is inherited from a parent widget and it's not applicable for igMaskEditor + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "maxLength", optionValue: any): void; + + /** + * Gets/Sets the horizontal alignment of the text in the editor. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "textAlign"): string; + + /** + * /Sets the horizontal alignment of the text in the editor. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "textAlign", optionValue: string): void; + + /** + * Gets/Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "placeHolder"): string; + + /** + * /Sets the text which appears in the editor when it has no focus and the "value" is null or empty string. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "placeHolder", optionValue: string): void; + + /** + * Gets/Sets the action when the editor gets focused. The default value is selectAll. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "selectionOnFocus"): string; + + /** + * /Sets the action when the editor gets focused. The default value is selectAll. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "selectionOnFocus", optionValue: string): void; + + /** + * Gets/Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "revertIfNotValid"): boolean; + + /** + * /Sets if the editor should revert it's value to the previously valid value in case the value on blur, or enter key is not valid. If the opiton is set to false, editor calls clear functionality. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "revertIfNotValid", optionValue: boolean): void; + + /** + * Gets/Sets if the editor should prevent form submition when enter key is pressed. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "preventSubmitOnEnter"): boolean; + + /** + * /Sets if the editor should prevent form submition when enter key is pressed. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "preventSubmitOnEnter", optionValue: boolean): void; + + /** + * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "suppressNotifications"): boolean; + + /** + * Disables/Enables default notifications for basic validation scenarios built in the editors such as required list selection, value wrapping around or spin limits. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "suppressNotifications", optionValue: boolean): void; + + /** + * Gets/Sets the width of the control. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "width"): string|number; + + /** + * /Sets the width of the control. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; + + /** + * Gets/Sets the height of the control. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "height"): string|number; + + /** + * /Sets the height of the control. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "height", optionValue: string|number): void; + + /** + * Gets/Sets tabIndex attribute for the editor input. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "tabIndex"): number; + + /** + * /Sets tabIndex attribute for the editor input. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; + + /** + * Gets/Sets whether the editor value can become null. + * If that option is false, and editor has no value, then value is set to an empty string. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "allowNullValue"): boolean; + + /** + * /Sets whether the editor value can become null. + * If that option is false, and editor has no value, then value is set to an empty string. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "allowNullValue", optionValue: boolean): void; + + /** + * Gets/Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "inputName"): string; + + /** + * /Sets the name attribute of the value input. This input is used to sent the value to the server. In case the target element is input and it has name attribute, but the developer has set the inputName option, so this option overwrites the value input and removes the attribute from the element. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; + + /** + * Gets/Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "readOnly"): boolean; + + /** + * /Sets the readonly attribute for the input. If set to true the input is readonly, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is submitted. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "readOnly", optionValue: boolean): void; + + /** + * Gets/Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "disabled"): boolean; + + /** + * /Sets the disabled attribute for the input. If set to true the input is disabled, and all buttons and interactions are disabled. On submitting the form the editor belongs to, the value is not submitted. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "disabled", optionValue: boolean): void; + + /** + * Gets/Sets options supported by the [igValidator](ui.igvalidator#options) widget. + * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, + * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "validatorOptions"): any; + + /** + * /Sets options supported by the [igValidator](ui.igvalidator#options) widget. + * Note: Validation rules of [igValidator](ui.igvalidator#options), such as min and max value/length are applied separately triggering errors, + * while the corresponding options of the editor prevent values violating the defined rules from being entered. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igTimePicker(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igTimePicker(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igTimePicker(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + + /** + * Fired when the drop down is opening. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListOpening"): DropDownListOpeningEvent; + + /** + * Fired when the drop down is opening. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListOpening", optionValue: DropDownListOpeningEvent): void; + + /** + * Fired after the drop down is opened. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListOpened"): DropDownListOpenedEvent; + + /** + * Fired after the drop down is opened. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListOpened", optionValue: DropDownListOpenedEvent): void; + + /** + * Fired when the drop down is closing. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListClosing"): DropDownListClosingEvent; + + /** + * Fired when the drop down is closing. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListClosing", optionValue: DropDownListClosingEvent): void; + + /** + * Fired after the drop down is closed. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListClosed"): DropDownListClosedEvent; + + /** + * Fired after the drop down is closed. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownListClosed", optionValue: DropDownListClosedEvent): void; + + /** + * Fired when an item in the drop down list is being selected. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownItemSelecting"): DropDownItemSelectingEvent; + + /** + * Fired when an item in the drop down list is being selected. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownItemSelecting", optionValue: DropDownItemSelectingEvent): void; + + /** + * Fired after an item in the drop down list is selected. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownItemSelected"): DropDownItemSelectedEvent; + + /** + * Fired after an item in the drop down list is selected. + * + * @optionValue New value to be set. + */ + igTimePicker(optionLiteral: 'option', optionName: "dropDownItemSelected", optionValue: DropDownItemSelectedEvent): void; + igTimePicker(options: IgTimePicker): JQuery; + igTimePicker(optionLiteral: 'option', optionName: string): any; + igTimePicker(optionLiteral: 'option', options: IgTimePicker): JQuery; + igTimePicker(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; + igTimePicker(methodName: string, ...methodParams: any[]): any; +} +interface ApplyCustomIndicatorsEvent { + (event: Event, ui: ApplyCustomIndicatorsEventUIParam): void; +} + +interface ApplyCustomIndicatorsEventUIParam {} + +interface IgFinancialChart { + /** + * Gets or sets the id of a template element to use for tooltips, or markup representing the tooltip template. + */ + tooltipTemplate?: any; + + /** + * Gets or sets the names of tooltip templates + */ + tooltipTemplates?: any; + + /** + * Gets or sets the left margin of chart title + */ + titleLeftMargin?: number; + + /** + * Gets or sets the right margin of chart title + */ + titleRightMargin?: number; + + /** + * Gets or sets the top margin of chart title + */ + titleTopMargin?: number; + + /** + * Gets or sets the bottom margin of chart title + */ + titleBottomMargin?: number; + + /** + * Gets or sets the left margin of chart subtitle + */ + subtitleLeftMargin?: number; + + /** + * Gets or sets the top margin of chart subtitle + */ + subtitleTopMargin?: number; + + /** + * Gets or sets the right margin of chart subtitle + */ + subtitleRightMargin?: number; + + /** + * Gets or sets the bottom margin of chart subtitle + */ + subtitleBottomMargin?: number; + + /** + * Gets or sets color of chart subtitle + */ + subtitleTextColor?: string; + + /** + * Gets or sets color of chart title + */ + titleTextColor?: string; + + /** + * Gets or sets the left margin of the chart content. + */ + leftMargin?: number; + + /** + * Gets or sets the top margin of the chart content. + */ + topMargin?: number; + + /** + * Gets or sets the right margin of the chart content. + */ + rightMargin?: number; + + /** + * Gets or sets the bottom margin around the chart content. + */ + bottomMargin?: number; + + /** + * Gets or sets the duration used for animating series plots when the data is changing + */ + transitionDuration?: number; + + /** + * Gets or sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + transitionEasingFunction?: any; + + /** + * Gets or sets a function for creating wrapped tooltip + */ + createWrappedTooltip?: any; + + /** + * Gets or sets the widget of this control + */ + widget?: any; + + /** + * Gets or sets CSS font property for the chart subtitle + */ + subtitleTextStyle?: string; + + /** + * Gets or sets CSS font property for the chart title + */ + titleTextStyle?: string; + + /** + * Gets or sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + itemsSource?: any; + + /** + * Gets or sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + includedProperties?: any; + + /** + * Gets or sets a set of property paths that should be excluded from consideration by the category chart. + */ + excludedProperties?: any; + + /** + * Gets or sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + brushes?: any; + + /** + * Gets or sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + outlines?: any; + + /** + * Gets or sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + legend?: any; + + /** + * Gets or sets whether the chart can be horizontally zoomed through user interactions. + */ + isHorizontalZoomEnabled?: boolean; + + /** + * Gets or sets whether the chart can be vertically zoomed through user interactions. + */ + isVerticalZoomEnabled?: boolean; + + /** + * Gets or sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + windowRect?: any; + + /** + * Gets or sets text to display above the plot area. + */ + title?: string; + + /** + * Gets or sets text to display below the Title, above the plot area. + */ + subtitle?: string; + + /** + * Gets or sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + titleAlignment?: string; + + /** + * Gets or sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + subtitleAlignment?: string; + + /** + * Gets or sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * Valid values: + * "linearInterpolate" Plot the unknown value as the midpoint between surrounding known values using linear interpolation. + * "dontPlot" Do not plot the unknown value on the chart. + */ + unknownValuePlotting?: string; + + /** + * Gets or sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + resolution?: number; + + /** + * Gets or sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + thickness?: number; + + /** + * Gets or sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + markerTypes?: any; + + /** + * Gets or sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerBrushes?: any; + + /** + * Gets or sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerOutlines?: any; + + /** + * Gets or sets the maximum number of markers displyed in the plot area of the chart. + */ + markerMaxCount?: number; + + /** + * Gets or sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + trendLineBrushes?: any; + + /** + * Gets or sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * Valid values: + * "none" No trend line will be displayed. + * "linearFit" Linear fit. + * "quadraticFit" Quadratic polynomial fit. + * "cubicFit" Cubic polynomial fit. + * "quarticFit" Quartic polynomial fit. + * "quinticFit" Quintic polynomial fit. + * "logarithmicFit" Logarithmic fit. + * "exponentialFit" Exponential fit. + * "powerLawFit" Powerlaw fit. + * "simpleAverage" Simple moving average. + * "exponentialAverage" Exponential moving average. + * "modifiedAverage" Modified moving average. + * "cumulativeAverage" Cumulative moving average. + * "weightedAverage" Weighted moving average. + */ + trendLineType?: string; + + /** + * Gets or sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + trendLineThickness?: number; + + /** + * Gets or sets a value indicating whether grid and tick lines are aligned to device pixels. + */ + alignsGridLinesToPixels?: boolean; + trendLinePeriod?: number; + + /** + * Gets or sets function which takes an context object and returns a formatted label for the X-axis. + */ + xAxisFormatLabel?: any; + + /** + * Gets or sets function which takes a context object and returns a formatted label for the Y-axis. + */ + yAxisFormatLabel?: any; + + /** + * Gets or sets the left margin of labels on the X-axis + */ + xAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the X-axis + */ + xAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the X-axis + */ + xAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the X-axis + */ + xAxisLabelBottomMargin?: number; + + /** + * Gets or sets the left margin of labels on the Y-axis + */ + yAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the Y-axis + */ + yAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the Y-axis + */ + yAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the Y-axis + */ + yAxisLabelBottomMargin?: number; + + /** + * Gets or sets color of labels on the X-axis + */ + xAxisLabelTextColor?: string; + + /** + * Gets or sets color of labels on the Y-axis + */ + yAxisLabelTextColor?: string; + + /** + * Gets or sets the margin around a title on the X-axis + */ + xAxisTitleMargin?: number; + + /** + * Gets or sets the margin around a title on the Y-axis + */ + yAxisTitleMargin?: number; + + /** + * Gets or sets the left margin of a title on the X-axis + */ + xAxisTitleLeftMargin?: number; + + /** + * Gets or sets the left margin of a title on the Y-axis + */ + yAxisTitleLeftMargin?: number; + + /** + * Gets or sets the top margin of a title on the X-axis + */ + xAxisTitleTopMargin?: number; + + /** + * Gets or sets the top margin of a title on the Y-axis + */ + yAxisTitleTopMargin?: number; + + /** + * Gets or sets the right margin of a title on the X-axis + */ + xAxisTitleRightMargin?: number; + + /** + * Gets or sets the right margin of a title on the Y-axis + */ + yAxisTitleRightMargin?: number; + + /** + * Gets or sets the bottom margin of a title on the X-axis + */ + xAxisTitleBottomMargin?: number; + + /** + * Gets or sets the bottom margin of a title on the Y-axis + */ + yAxisTitleBottomMargin?: number; + + /** + * Gets or sets color of title on the X-axis + */ + xAxisTitleTextColor?: string; + + /** + * Gets or sets color of title on the Y-axis + */ + yAxisTitleTextColor?: string; + + /** + * Gets or sets CSS font property for labels on X-axis + */ + xAxisLabelTextStyle?: string; + + /** + * Gets or sets CSS font property for labels on Y-axis + */ + yAxisLabelTextStyle?: string; + + /** + * Gets or sets CSS font property for title on X-axis + */ + xAxisTitleTextStyle?: string; + + /** + * Gets or sets CSS font property for title on Y-axis + */ + yAxisTitleTextStyle?: string; + + /** + * Gets or sets the format for labels along the X-axis. + */ + xAxisLabel?: any; + + /** + * Gets or sets the format for labels along the Y-axis. + */ + yAxisLabel?: any; + + /** + * Gets or sets the color to apply to major gridlines along the X-axis. + */ + xAxisMajorStroke?: string; + + /** + * Gets or sets the color to apply to major gridlines along the Y-axis. + */ + yAxisMajorStroke?: string; + + /** + * Gets or sets the thickness to apply to major gridlines along the X-axis. + */ + xAxisMajorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to major gridlines along the Y-axis. + */ + yAxisMajorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to minor gridlines along the X-axis. + */ + xAxisMinorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to minor gridlines along the Y-axis. + */ + yAxisMinorStrokeThickness?: number; + + /** + * Gets or sets the color to apply to stripes along the X-axis. + */ + xAxisStrip?: string; + + /** + * Gets or sets the color to apply to stripes along the Y-axis. + */ + yAxisStrip?: string; + + /** + * Gets or sets the color to apply to the X-axis line. + */ + xAxisStroke?: string; + + /** + * Gets or sets the color to apply to the Y-axis line. + */ + yAxisStroke?: string; + + /** + * Gets or sets the thickness to apply to the X-axis line. + */ + xAxisStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to the Y-axis line. + */ + yAxisStrokeThickness?: number; + + /** + * Gets or sets the length of tickmarks along the X-axis. + */ + xAxisTickLength?: number; + + /** + * Gets or sets the length of tickmarks along the Y-axis. + */ + yAxisTickLength?: number; + + /** + * Gets or sets the color to apply to tickmarks along the X-axis. + */ + xAxisTickStroke?: string; + + /** + * Gets or sets the color to apply to tickmarks along the Y-axis. + */ + yAxisTickStroke?: string; + + /** + * Gets or sets the thickness to apply to tickmarks along the X-axis. + */ + xAxisTickStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to tickmarks along the Y-axis. + */ + yAxisTickStrokeThickness?: number; + + /** + * Gets or sets the Text to display below the X-axis. + */ + xAxisTitle?: string; + + /** + * Gets or sets the Text to display to the left of the Y-axis. + */ + yAxisTitle?: string; + + /** + * Gets or sets the color to apply to minor gridlines along the X-axis. + */ + xAxisMinorStroke?: string; + + /** + * Gets or sets the color to apply to minor gridlines along the Y-axis. + */ + yAxisMinorStroke?: string; + + /** + * Gets or sets the angle of rotation for labels along the X-axis. + */ + xAxisLabelAngle?: number; + + /** + * Gets or sets the angle of rotation for labels along the Y-axis. + */ + yAxisLabelAngle?: number; + + /** + * Gets or sets the distance between the X-axis and the bottom of the chart. + */ + xAxisExtent?: number; + + /** + * Gets or sets the distance between the Y-axis and the left edge of the chart. + */ + yAxisExtent?: number; + + /** + * Gets or sets the angle of rotation for the X-axis title. + */ + xAxisTitleAngle?: number; + + /** + * Gets or sets the angle of rotation for the Y-axis title. + */ + yAxisTitleAngle?: number; + + /** + * Gets or sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + */ + xAxisInverted?: boolean; + + /** + * Gets or sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + */ + yAxisInverted?: boolean; + + /** + * Gets or sets Horizontal alignment of the X-axis title. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + xAxisTitleAlignment?: string; + + /** + * Gets or sets Vertical alignment of the Y-axis title. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + yAxisTitleAlignment?: string; + + /** + * Gets or sets Horizontal alignment of X-axis labels. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + xAxisLabelHorizontalAlignment?: string; + + /** + * Gets or sets Horizontal alignment of Y-axis labels. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + yAxisLabelHorizontalAlignment?: string; + + /** + * Gets or sets Vertical alignment of X-axis labels. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + xAxisLabelVerticalAlignment?: string; + + /** + * Gets or sets Vertical alignment of Y-axis labels. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + yAxisLabelVerticalAlignment?: string; + + /** + * Gets or sets Visibility of X-axis labels. + * + * Valid values: + * "visible" Display the element. + * "collapsed" Do not display the element. + */ + xAxisLabelVisibility?: string; + + /** + * Gets or sets Visibility of Y-axis labels. + * + * Valid values: + * "visible" Display the element. + * "collapsed" Do not display the element. + */ + yAxisLabelVisibility?: string; + + /** + * The location of Y-axis labels, relative to the plot area. + * + * Valid values: + * "outsideTop" Places the axis labels at the top, outside of the plotting area. + * "outsideBottom" Places the axis labels at the bottom, outside of the plotting area + * "outsideLeft" Places the axis labels to the left, outside of the plotting area. + * "outsideRight" Places the axis labels to the right, outside of the plotting area. + * "insideTop" Places the axis labels inside the plotting area above the axis line. + * "insideBottom" Places the axis labels inside the plotting area below the axis line. + * "insideLeft" Places the axis labels inside the plotting area and to the left of the axis line. + * "insideRight" Places the axis labels inside the plotting area and to the right of the axis line. + */ + yAxisLabelLocation?: string; + rangeSelectorTemplate?: any; + toolbarTemplate?: any; + chartTypePickerTemplate?: any; + trendLineTypePickerTemplate?: any; + volumeTypePickerTemplate?: any; + indicatorPickerTemplate?: any; + overlayPickerTemplate?: any; + toolbarHeight?: number; + + /** + * Gets or sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + yAxisIsLogarithmic?: boolean; + + /** + * Gets or sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + yAxisLogarithmBase?: number; + + /** + * Gets or sets the distance between each label and grid line along the Y-axis. + */ + yAxisInterval?: number; + + /** + * Gets or sets the data value corresponding to the minimum value of the Y-axis. + */ + yAxisMinimumValue?: number; + + /** + * Gets or sets the data value corresponding to the maximum value of the Y-axis. + */ + yAxisMaximumValue?: number; + + /** + * Gets or sets the frequency of displayed minor lines along the Y-axis. + */ + yAxisMinorInterval?: number; + + /** + * The type of series to display in the volume pane. + * + * Valid values: + * "none" Do not display the volume pane. + * "column" Display column series in the volume pane. + * "line" Display line series in the volume pane. + * "area" Display area series in the volume pane. + */ + volumeType?: string; + + /** + * The scaling mode of the X-axis. + * + * Valid values: + * "ordinal" An ordinal scale with time labels. + * "time" A time scale. + */ + xAxisMode?: string; + + /** + * The scaling mode of the Y-axis. + * + * Valid values: + * "numeric" A linear or logarithmic numeric scale. + * "percentChange" A numeric scale where all values are scaled proportionally to a reference value. + */ + yAxisMode?: string; + + /** + * A boolean property controlling the visibility of the toolbar. + */ + isToolbarVisible?: boolean; + + /** + * The type of price series to display in the main chart. + * + * Valid values: + * "auto" Automatically determine the price series type to display in the main chart. + * "bar" Display financial bar series in the main chart. + * "candle" Display candlestick series in the main chart. + * "column" Display column series in the main chart. + * "line" Display line series in the main chart. + */ + chartType?: string; + + /** + * A boolean indicating whether the chart should automatically zoom in vertically on the currently visible range of data. + * When this property is set to true, panning and zooming along the X-axis will result in a corresponding zoom on the Y-axis, so that the visible range of data fills the zoom window as fully as possible. + */ + isWindowSyncedToVisibleRange?: boolean; + + /** + * A collection indicating what financial indicator types to display on the Financial Chart. + */ + indicatorTypes?: any; + + /** + * A collection indicating what financial overlay types to display on the Financial Chart. + */ + overlayTypes?: any; + + /** + * Gets or sets whether the large numbers on the Y-axis labels are abbreviated. + */ + yAxisAbbreviateLargeNumbers?: boolean; + + /** + * The type of series to display in the zoom slider pane. + * + * Valid values: + * "none" Do not display the zoom slider pane. + * "bar" Display financial bar series in the zoom slider pane. + * "candle" Display candle series in the zoom slider pane. + * "column" Display column series in the zoom slider pane. + * "line" Display line series in the zoom slider pane. + * "area" Display an area series in the zoom slider pane. + */ + zoomSliderType?: string; + + /** + * Gets or sets the palette used for coloring negative items of Waterfall chart type. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + negativeBrushes?: any; + + /** + * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + negativeOutlines?: any; + + /** + * Brushes to use for filling financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + overlayBrushes?: any; + + /** + * Brushes to use for outlining financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + overlayOutlines?: any; + + /** + * Brushes to use for outlining volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + volumeOutlines?: any; + + /** + * Brushes to use for filling volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + volumeBrushes?: any; + + /** + * Brushes to use for negative elements in financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + indicatorNegativeBrushes?: any; + + /** + * Brushes to use for financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + indicatorBrushes?: any; + + /** + * The outline thickness of volume series in the volume pane. + */ + volumeThickness?: number; + + /** + * The outline thickness of financial overlays. + */ + overlayThickness?: number; + + /** + * The outline or stroke thickness of financial indicators. + */ + indicatorThickness?: number; + + /** + * The display types of financial indicators. + */ + indicatorDisplayTypes?: any; + + /** + * The period of financial indicators, where applicable. + */ + indicatorPeriod?: number; + + /** + * The multiplier of financial indicators, where applicable. + */ + indicatorMultiplier?: number; + + /** + * The smoothing period of financial indicators, where applicable. + */ + indicatorSmoothingPeriod?: number; + + /** + * The short period of financial indicators, where applicable. + */ + indicatorShortPeriod?: number; + + /** + * The long period of financial indicators, where applicable. + */ + indicatorLongPeriod?: number; + + /** + * The signal period of financial indicators, where applicable. + */ + indicatorSignalPeriod?: number; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + */ + rangeSelectorOptions?: any; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + * This will be the intersection of the user-defined range selector options, if any, and the range selector options which are automatically determined based on the range of data. + */ + actualRangeSelectorOptions?: any; + + /** + * The names of custom indicators to add to the chart. + * When CustomIndicatorNames is set, the ApplyCustomIndicators event will be raised for each custom indicator name. + */ + customIndicatorNames?: any; + + /** + * The width of the chart. + */ + width?: number; + + /** + * The height of the chart. + */ + height?: number; + + /** + * Gets sets maximum number of displayed records in chart. + */ + maxRecCount?: number; + + /** + * Gets sets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + */ + dataSource?: any; + + /** + * Gets sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + */ + dataSourceType?: string; + + /** + * Gets sets url which is used for sending JSON on request for remote data. + */ + dataSourceUrl?: string; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + */ + responseTotalRecCountKey?: string; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + */ + responseDataKey?: string; + + /** + * Event raised when a property value is changed on this chart + */ + propertyChanged?: PropertyChangedEvent; + + /** + * Event raised when a series is initialized and added to this chart. + */ + seriesAdded?: SeriesAddedEvent; + + /** + * Event raised when a series is removed from this chart. + */ + seriesRemoved?: SeriesRemovedEvent; + + /** + * Occurs when the pointer enters a Series. + */ + seriesPointerEnter?: SeriesPointerEnterEvent; + + /** + * Occurs when the pointer leaves a Series. + */ + seriesPointerLeave?: SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer moves over a Series. + */ + seriesPointerMove?: SeriesPointerMoveEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + seriesPointerDown?: SeriesPointerDownEvent; + + /** + * Occurs when the pointer is released over a Series. + */ + seriesPointerUp?: SeriesPointerUpEvent; + + /** + * Event raised by the chart when custom indicator data is needed from the application. + * During series rendering, event will be raised once for each value in the CustomIndicatorNames collection. + */ + applyCustomIndicators?: ApplyCustomIndicatorsEvent; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + dataBinding?: DataBindingEvent; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + dataBound?: DataBoundEvent; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + */ + updateTooltip?: UpdateTooltipEvent; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + */ + hideTooltip?: HideTooltipEvent; + + /** + * Option for igFinancialChart + */ + [optionName: string]: any; +} +interface IgFinancialChartMethods { + destroy(): void; + id(): void; + exportVisualData(): void; + + /** + * Find index of item within actual data used by chart. + * + * @param item The reference to item. + */ + findIndexOfItem(item: Object): number; + + /** + * Get item within actual data used by chart. That is similar to this.getData()[ index ]. + * + * @param index Index of data item. + */ + getDataItem(index: Object): Object; + + /** + * Get reference of actual data used by chart. + */ + getData(): any[]; + + /** + * Adds a new item to the data source and notifies the chart. + * + * @param item The item that we want to add to the data source. + */ + addItem(item: Object): Object; + + /** + * Inserts a new item to the data source and notifies the chart. + * + * @param item the new item that we want to insert in the data source. + * @param index The index in the data source where the new item will be inserted. + */ + insertItem(item: Object, index: number): Object; + + /** + * Deletes an item from the data source and notifies the chart. + * + * @param index The index in the data source from where the item will be been removed. + */ + removeItem(index: number): Object; + + /** + * Updates an item in the data source and notifies the chart. + * + * @param index The index of the item in the data source that we want to change. + * @param item The new item object that will be set in the data source. + */ + setItem(index: number, item: Object): Object; + + /** + * Notifies the chart that an item has been set in an associated data source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source that has been changed. + * @param newItem the new item that has been set in the collection. + * @param oldItem the old item that has been overwritten in the collection. + */ + notifySetItem(dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; + + /** + * Notifies the chart that the items have been cleared from an associated data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + */ + notifyClearItems(dataSource: Object): Object; + + /** + * Notifies the target axis or series that an item has been inserted at the specified index in its data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source where the new item has been inserted. + * @param newItem the new item that has been set in the collection. + */ + notifyInsertItem(dataSource: Object, index: number, newItem: Object): Object; + + /** + * Notifies the target axis or series that an item has been removed from the specified index in its data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source from where the old item has been removed. + * @param oldItem the old item that has been removed from the collection. + */ + notifyRemoveItem(dataSource: Object, index: number, oldItem: Object): Object; + + /** + * Get reference to chart object. + */ + chart(): Object; + + /** + * Binds data to the chart + */ + dataBind(): void; + + /** + * Forces any pending deferred work to render on the chart before continuing + */ + flush(): void; +} +interface JQuery { + data(propertyName: "igFinancialChart"): IgFinancialChartMethods; +} + +interface JQuery { + igFinancialChart(methodName: "destroy"): void; + igFinancialChart(methodName: "id"): void; + igFinancialChart(methodName: "exportVisualData"): void; + igFinancialChart(methodName: "findIndexOfItem", item: Object): number; + igFinancialChart(methodName: "getDataItem", index: Object): Object; + igFinancialChart(methodName: "getData"): any[]; + igFinancialChart(methodName: "addItem", item: Object): Object; + igFinancialChart(methodName: "insertItem", item: Object, index: number): Object; + igFinancialChart(methodName: "removeItem", index: number): Object; + igFinancialChart(methodName: "setItem", index: number, item: Object): Object; + igFinancialChart(methodName: "notifySetItem", dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; + igFinancialChart(methodName: "notifyClearItems", dataSource: Object): Object; + igFinancialChart(methodName: "notifyInsertItem", dataSource: Object, index: number, newItem: Object): Object; + igFinancialChart(methodName: "notifyRemoveItem", dataSource: Object, index: number, oldItem: Object): Object; + igFinancialChart(methodName: "chart"): Object; + igFinancialChart(methodName: "dataBind"): void; + igFinancialChart(methodName: "flush"): void; + + /** + * Gets the id of a template element to use for tooltips, or markup representing the tooltip template. + */ + igFinancialChart(optionLiteral: 'option', optionName: "tooltipTemplate"): any; + + /** + * Sets the id of a template element to use for tooltips, or markup representing the tooltip template. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "tooltipTemplate", optionValue: any): void; + + /** + * Gets the names of tooltip templates + */ + igFinancialChart(optionLiteral: 'option', optionName: "tooltipTemplates"): any; + + /** + * Sets the names of tooltip templates + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "tooltipTemplates", optionValue: any): void; + + /** + * Gets the left margin of chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleLeftMargin"): number; + + /** + * Sets the left margin of chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleLeftMargin", optionValue: number): void; + + /** + * Gets the right margin of chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleRightMargin"): number; + + /** + * Sets the right margin of chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleRightMargin", optionValue: number): void; + + /** + * Gets the top margin of chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTopMargin"): number; + + /** + * Sets the top margin of chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTopMargin", optionValue: number): void; + + /** + * Gets the bottom margin of chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleBottomMargin"): number; + + /** + * Sets the bottom margin of chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleBottomMargin", optionValue: number): void; + + /** + * Gets the left margin of chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleLeftMargin"): number; + + /** + * Sets the left margin of chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTopMargin"): number; + + /** + * Sets the top margin of chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTopMargin", optionValue: number): void; + + /** + * Gets the right margin of chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleRightMargin"): number; + + /** + * Sets the right margin of chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleBottomMargin"): number; + + /** + * Sets the bottom margin of chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleBottomMargin", optionValue: number): void; + + /** + * Gets color of chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTextColor"): string; + + /** + * Sets color of chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTextColor", optionValue: string): void; + + /** + * Gets color of chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTextColor"): string; + + /** + * Sets color of chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTextColor", optionValue: string): void; + + /** + * Gets the left margin of the chart content. + */ + igFinancialChart(optionLiteral: 'option', optionName: "leftMargin"): number; + + /** + * Sets the left margin of the chart content. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "leftMargin", optionValue: number): void; + + /** + * Gets the top margin of the chart content. + */ + igFinancialChart(optionLiteral: 'option', optionName: "topMargin"): number; + + /** + * Sets the top margin of the chart content. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "topMargin", optionValue: number): void; + + /** + * Gets the right margin of the chart content. + */ + igFinancialChart(optionLiteral: 'option', optionName: "rightMargin"): number; + + /** + * Sets the right margin of the chart content. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "rightMargin", optionValue: number): void; + + /** + * Gets the bottom margin around the chart content. + */ + igFinancialChart(optionLiteral: 'option', optionName: "bottomMargin"): number; + + /** + * Sets the bottom margin around the chart content. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "bottomMargin", optionValue: number): void; + + /** + * Gets the duration used for animating series plots when the data is changing + */ + igFinancialChart(optionLiteral: 'option', optionName: "transitionDuration"): number; + + /** + * Sets the duration used for animating series plots when the data is changing + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "transitionDuration", optionValue: number): void; + + /** + * Gets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + igFinancialChart(optionLiteral: 'option', optionName: "transitionEasingFunction"): any; + + /** + * Sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "transitionEasingFunction", optionValue: any): void; + + /** + * Gets a function for creating wrapped tooltip + */ + igFinancialChart(optionLiteral: 'option', optionName: "createWrappedTooltip"): any; + + /** + * Sets a function for creating wrapped tooltip + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "createWrappedTooltip", optionValue: any): void; + + /** + * Gets the widget of this control + */ + igFinancialChart(optionLiteral: 'option', optionName: "widget"): any; + + /** + * Sets the widget of this control + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "widget", optionValue: any): void; + + /** + * Gets CSS font property for the chart subtitle + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTextStyle"): string; + + /** + * Sets CSS font property for the chart subtitle + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitleTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for the chart title + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTextStyle"): string; + + /** + * Sets CSS font property for the chart title + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "titleTextStyle", optionValue: string): void; + + /** + * Gets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + igFinancialChart(optionLiteral: 'option', optionName: "itemsSource"): any; + + /** + * Sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "itemsSource", optionValue: any): void; + + /** + * Gets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + igFinancialChart(optionLiteral: 'option', optionName: "includedProperties"): any; + + /** + * Sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "includedProperties", optionValue: any): void; + + /** + * Gets a set of property paths that should be excluded from consideration by the category chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "excludedProperties"): any; + + /** + * Sets a set of property paths that should be excluded from consideration by the category chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "excludedProperties", optionValue: any): void; + + /** + * Gets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "brushes"): any; + + /** + * Sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "brushes", optionValue: any): void; + + /** + * Gets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "outlines"): any; + + /** + * Sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "outlines", optionValue: any): void; + + /** + * Gets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + igFinancialChart(optionLiteral: 'option', optionName: "legend"): any; + + /** + * Sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "legend", optionValue: any): void; + + /** + * Gets whether the chart can be horizontally zoomed through user interactions. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be horizontally zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled", optionValue: boolean): void; + + /** + * Gets whether the chart can be vertically zoomed through user interactions. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be vertically zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled", optionValue: boolean): void; + + /** + * Gets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + igFinancialChart(optionLiteral: 'option', optionName: "windowRect"): any; + + /** + * Sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "windowRect", optionValue: any): void; + + /** + * Gets text to display above the plot area. + */ + igFinancialChart(optionLiteral: 'option', optionName: "title"): string; + + /** + * Sets text to display above the plot area. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "title", optionValue: string): void; + + /** + * Gets text to display below the Title, above the plot area. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitle"): string; + + /** + * Sets text to display below the Title, above the plot area. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "subtitle", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the title position, relative to the left and right edges of the control. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "titleAlignment"): string; + + /** + * Sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "titleAlignment", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "subtitleAlignment"): string; + + /** + * Sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "subtitleAlignment", optionValue: string): void; + + /** + * Gets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + */ + + igFinancialChart(optionLiteral: 'option', optionName: "unknownValuePlotting"): string; + + /** + * Sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "unknownValuePlotting", optionValue: string): void; + + /** + * Gets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + igFinancialChart(optionLiteral: 'option', optionName: "resolution"): number; + + /** + * Sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "resolution", optionValue: number): void; + + /** + * Gets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + igFinancialChart(optionLiteral: 'option', optionName: "thickness"): number; + + /** + * Sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "thickness", optionValue: number): void; + + /** + * Gets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerTypes"): any; + + /** + * Sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerTypes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerBrushes"): any; + + /** + * Sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerBrushes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerOutlines"): any; + + /** + * Sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerOutlines", optionValue: any): void; + + /** + * Gets the maximum number of markers displyed in the plot area of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerMaxCount"): number; + + /** + * Sets the maximum number of markers displyed in the plot area of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "markerMaxCount", optionValue: number): void; + + /** + * Gets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "trendLineBrushes"): any; + + /** + * Sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "trendLineBrushes", optionValue: any): void; + + /** + * Gets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + */ + + igFinancialChart(optionLiteral: 'option', optionName: "trendLineType"): string; + + /** + * Sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "trendLineType", optionValue: string): void; + + /** + * Gets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + igFinancialChart(optionLiteral: 'option', optionName: "trendLineThickness"): number; + + /** + * Sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "trendLineThickness", optionValue: number): void; + + /** + * Gets a value indicating whether grid and tick lines are aligned to device pixels. + */ + igFinancialChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels"): boolean; + + /** + * Sets a value indicating whether grid and tick lines are aligned to device pixels. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels", optionValue: boolean): void; + igFinancialChart(optionLiteral: 'option', optionName: "trendLinePeriod"): number; + igFinancialChart(optionLiteral: 'option', optionName: "trendLinePeriod", optionValue: number): void; + + /** + * Gets function which takes an context object and returns a formatted label for the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisFormatLabel"): any; + + /** + * Sets function which takes an context object and returns a formatted label for the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisFormatLabel", optionValue: any): void; + + /** + * Gets function which takes a context object and returns a formatted label for the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisFormatLabel"): any; + + /** + * Sets function which takes a context object and returns a formatted label for the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisFormatLabel", optionValue: any): void; + + /** + * Gets the left margin of labels on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets the left margin of labels on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets color of labels on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor"): string; + + /** + * Sets color of labels on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor", optionValue: string): void; + + /** + * Gets color of labels on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor"): string; + + /** + * Sets color of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor", optionValue: string): void; + + /** + * Gets the margin around a title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleMargin"): number; + + /** + * Sets the margin around a title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleMargin", optionValue: number): void; + + /** + * Gets the margin around a title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleMargin"): number; + + /** + * Sets the margin around a title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleMargin", optionValue: number): void; + + /** + * Gets the left margin of a title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleLeftMargin"): number; + + /** + * Sets the left margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleLeftMargin", optionValue: number): void; + + /** + * Gets the left margin of a title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleLeftMargin"): number; + + /** + * Sets the left margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of a title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTopMargin"): number; + + /** + * Sets the top margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTopMargin", optionValue: number): void; + + /** + * Gets the top margin of a title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTopMargin"): number; + + /** + * Sets the top margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTopMargin", optionValue: number): void; + + /** + * Gets the right margin of a title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleRightMargin"): number; + + /** + * Sets the right margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleRightMargin", optionValue: number): void; + + /** + * Gets the right margin of a title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleRightMargin"): number; + + /** + * Sets the right margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of a title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleBottomMargin"): number; + + /** + * Sets the bottom margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleBottomMargin", optionValue: number): void; + + /** + * Gets the bottom margin of a title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleBottomMargin"): number; + + /** + * Sets the bottom margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleBottomMargin", optionValue: number): void; + + /** + * Gets color of title on the X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTextColor"): string; + + /** + * Sets color of title on the X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTextColor", optionValue: string): void; + + /** + * Gets color of title on the Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTextColor"): string; + + /** + * Sets color of title on the Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTextColor", optionValue: string): void; + + /** + * Gets CSS font property for labels on X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTextStyle"): string; + + /** + * Sets CSS font property for labels on X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for labels on Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTextStyle"): string; + + /** + * Sets CSS font property for labels on Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for title on X-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle"): string; + + /** + * Sets CSS font property for title on X-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for title on Y-axis + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle"): string; + + /** + * Sets CSS font property for title on Y-axis + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle", optionValue: string): void; + + /** + * Gets the format for labels along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabel"): any; + + /** + * Sets the format for labels along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabel", optionValue: any): void; + + /** + * Gets the format for labels along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabel"): any; + + /** + * Sets the format for labels along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabel", optionValue: any): void; + + /** + * Gets the color to apply to major gridlines along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMajorStroke"): string; + + /** + * Sets the color to apply to major gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMajorStroke", optionValue: string): void; + + /** + * Gets the color to apply to major gridlines along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMajorStroke"): string; + + /** + * Sets the color to apply to major gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMajorStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to major gridlines along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMajorStrokeThickness"): number; + + /** + * Sets the thickness to apply to major gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMajorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to major gridlines along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMajorStrokeThickness"): number; + + /** + * Sets the thickness to apply to major gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMajorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to minor gridlines along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMinorStrokeThickness"): number; + + /** + * Sets the thickness to apply to minor gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMinorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to minor gridlines along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorStrokeThickness"): number; + + /** + * Sets the thickness to apply to minor gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorStrokeThickness", optionValue: number): void; + + /** + * Gets the color to apply to stripes along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStrip"): string; + + /** + * Sets the color to apply to stripes along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStrip", optionValue: string): void; + + /** + * Gets the color to apply to stripes along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStrip"): string; + + /** + * Sets the color to apply to stripes along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStrip", optionValue: string): void; + + /** + * Gets the color to apply to the X-axis line. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStroke"): string; + + /** + * Sets the color to apply to the X-axis line. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStroke", optionValue: string): void; + + /** + * Gets the color to apply to the Y-axis line. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStroke"): string; + + /** + * Sets the color to apply to the Y-axis line. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to the X-axis line. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStrokeThickness"): number; + + /** + * Sets the thickness to apply to the X-axis line. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to the Y-axis line. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStrokeThickness"): number; + + /** + * Sets the thickness to apply to the Y-axis line. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisStrokeThickness", optionValue: number): void; + + /** + * Gets the length of tickmarks along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickLength"): number; + + /** + * Sets the length of tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickLength", optionValue: number): void; + + /** + * Gets the length of tickmarks along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickLength"): number; + + /** + * Sets the length of tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickLength", optionValue: number): void; + + /** + * Gets the color to apply to tickmarks along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickStroke"): string; + + /** + * Sets the color to apply to tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickStroke", optionValue: string): void; + + /** + * Gets the color to apply to tickmarks along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickStroke"): string; + + /** + * Sets the color to apply to tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to tickmarks along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickStrokeThickness"): number; + + /** + * Sets the thickness to apply to tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTickStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to tickmarks along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickStrokeThickness"): number; + + /** + * Sets the thickness to apply to tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTickStrokeThickness", optionValue: number): void; + + /** + * Gets the Text to display below the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitle"): string; + + /** + * Sets the Text to display below the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitle", optionValue: string): void; + + /** + * Gets the Text to display to the left of the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitle"): string; + + /** + * Sets the Text to display to the left of the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitle", optionValue: string): void; + + /** + * Gets the color to apply to minor gridlines along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMinorStroke"): string; + + /** + * Sets the color to apply to minor gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMinorStroke", optionValue: string): void; + + /** + * Gets the color to apply to minor gridlines along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorStroke"): string; + + /** + * Sets the color to apply to minor gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorStroke", optionValue: string): void; + + /** + * Gets the angle of rotation for labels along the X-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelAngle"): number; + + /** + * Sets the angle of rotation for labels along the X-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelAngle", optionValue: number): void; + + /** + * Gets the angle of rotation for labels along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelAngle"): number; + + /** + * Sets the angle of rotation for labels along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelAngle", optionValue: number): void; + + /** + * Gets the distance between the X-axis and the bottom of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisExtent"): number; + + /** + * Sets the distance between the X-axis and the bottom of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisExtent", optionValue: number): void; + + /** + * Gets the distance between the Y-axis and the left edge of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisExtent"): number; + + /** + * Sets the distance between the Y-axis and the left edge of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisExtent", optionValue: number): void; + + /** + * Gets the angle of rotation for the X-axis title. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleAngle"): number; + + /** + * Sets the angle of rotation for the X-axis title. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleAngle", optionValue: number): void; + + /** + * Gets the angle of rotation for the Y-axis title. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleAngle"): number; + + /** + * Sets the angle of rotation for the Y-axis title. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleAngle", optionValue: number): void; + + /** + * Gets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisInverted"): boolean; + + /** + * Sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "xAxisInverted", optionValue: boolean): void; + + /** + * Gets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisInverted"): boolean; + + /** + * Sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisInverted", optionValue: boolean): void; + + /** + * Gets Horizontal alignment of the X-axis title. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment"): string; + + /** + * Sets Horizontal alignment of the X-axis title. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of the Y-axis title. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment"): string; + + /** + * Sets Vertical alignment of the Y-axis title. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of X-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of Y-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of X-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of Y-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Visibility of X-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility"): string; + + /** + * Sets Visibility of X-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility", optionValue: string): void; + + /** + * Gets Visibility of Y-axis labels. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility"): string; + + /** + * Sets Visibility of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility", optionValue: string): void; + + /** + * The location of Y-axis labels, relative to the plot area. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelLocation"): string; + + /** + * The location of Y-axis labels, relative to the plot area. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLabelLocation", optionValue: string): void; + igFinancialChart(optionLiteral: 'option', optionName: "rangeSelectorTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "rangeSelectorTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "toolbarTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "toolbarTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "chartTypePickerTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "chartTypePickerTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "trendLineTypePickerTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "trendLineTypePickerTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "volumeTypePickerTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "volumeTypePickerTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "indicatorPickerTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "indicatorPickerTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "overlayPickerTemplate"): any; + igFinancialChart(optionLiteral: 'option', optionName: "overlayPickerTemplate", optionValue: any): void; + igFinancialChart(optionLiteral: 'option', optionName: "toolbarHeight"): number; + igFinancialChart(optionLiteral: 'option', optionName: "toolbarHeight", optionValue: number): void; + + /** + * Gets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic"): boolean; + + /** + * Sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic", optionValue: boolean): void; + + /** + * Gets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase"): number; + + /** + * Sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase", optionValue: number): void; + + /** + * Gets the distance between each label and grid line along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisInterval"): number; + + /** + * Sets the distance between each label and grid line along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisInterval", optionValue: number): void; + + /** + * Gets the data value corresponding to the minimum value of the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinimumValue"): number; + + /** + * Sets the data value corresponding to the minimum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinimumValue", optionValue: number): void; + + /** + * Gets the data value corresponding to the maximum value of the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMaximumValue"): number; + + /** + * Sets the data value corresponding to the maximum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMaximumValue", optionValue: number): void; + + /** + * Gets the frequency of displayed minor lines along the Y-axis. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorInterval"): number; + + /** + * Sets the frequency of displayed minor lines along the Y-axis. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMinorInterval", optionValue: number): void; + + /** + * The type of series to display in the volume pane. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "volumeType"): string; + + /** + * The type of series to display in the volume pane. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "volumeType", optionValue: string): void; + + /** + * The scaling mode of the X-axis. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMode"): string; + + /** + * The scaling mode of the X-axis. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "xAxisMode", optionValue: string): void; + + /** + * The scaling mode of the Y-axis. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMode"): string; + + /** + * The scaling mode of the Y-axis. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "yAxisMode", optionValue: string): void; + + /** + * A boolean property controlling the visibility of the toolbar. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isToolbarVisible"): boolean; + + /** + * A boolean property controlling the visibility of the toolbar. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isToolbarVisible", optionValue: boolean): void; + + /** + * The type of price series to display in the main chart. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "chartType"): string; + + /** + * The type of price series to display in the main chart. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "chartType", optionValue: string): void; + + /** + * A boolean indicating whether the chart should automatically zoom in vertically on the currently visible range of data. + * When this property is set to true, panning and zooming along the X-axis will result in a corresponding zoom on the Y-axis, so that the visible range of data fills the zoom window as fully as possible. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isWindowSyncedToVisibleRange"): boolean; + + /** + * A boolean indicating whether the chart should automatically zoom in vertically on the currently visible range of data. + * When this property is set to true, panning and zooming along the X-axis will result in a corresponding zoom on the Y-axis, so that the visible range of data fills the zoom window as fully as possible. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "isWindowSyncedToVisibleRange", optionValue: boolean): void; + + /** + * A collection indicating what financial indicator types to display on the Financial Chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorTypes"): any; + + /** + * A collection indicating what financial indicator types to display on the Financial Chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorTypes", optionValue: any): void; + + /** + * A collection indicating what financial overlay types to display on the Financial Chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayTypes"): any; + + /** + * A collection indicating what financial overlay types to display on the Financial Chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayTypes", optionValue: any): void; + + /** + * Gets whether the large numbers on the Y-axis labels are abbreviated. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers"): boolean; + + /** + * Sets whether the large numbers on the Y-axis labels are abbreviated. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers", optionValue: boolean): void; + + /** + * The type of series to display in the zoom slider pane. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "zoomSliderType"): string; + + /** + * The type of series to display in the zoom slider pane. + * + * @optionValue New value to be set. + */ + + igFinancialChart(optionLiteral: 'option', optionName: "zoomSliderType", optionValue: string): void; + + /** + * Gets the palette used for coloring negative items of Waterfall chart type. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "negativeBrushes"): any; + + /** + * Sets the palette used for coloring negative items of Waterfall chart type. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "negativeBrushes", optionValue: any): void; + + /** + * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "negativeOutlines"): any; + + /** + * Brushes to use for drawing negative elements, when using a chart type with contextual coloring, such as Waterfall. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "negativeOutlines", optionValue: any): void; + + /** + * Brushes to use for filling financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayBrushes"): any; + + /** + * Brushes to use for filling financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayBrushes", optionValue: any): void; + + /** + * Brushes to use for outlining financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayOutlines"): any; + + /** + * Brushes to use for outlining financial overlays. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayOutlines", optionValue: any): void; + + /** + * Brushes to use for outlining volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeOutlines"): any; + + /** + * Brushes to use for outlining volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeOutlines", optionValue: any): void; + + /** + * Brushes to use for filling volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeBrushes"): any; + + /** + * Brushes to use for filling volume series in the volume pane. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeBrushes", optionValue: any): void; + + /** + * Brushes to use for negative elements in financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorNegativeBrushes"): any; + + /** + * Brushes to use for negative elements in financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorNegativeBrushes", optionValue: any): void; + + /** + * Brushes to use for financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorBrushes"): any; + + /** + * Brushes to use for financial indicators. + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorBrushes", optionValue: any): void; + + /** + * The outline thickness of volume series in the volume pane. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeThickness"): number; + + /** + * The outline thickness of volume series in the volume pane. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "volumeThickness", optionValue: number): void; + + /** + * The outline thickness of financial overlays. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayThickness"): number; + + /** + * The outline thickness of financial overlays. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "overlayThickness", optionValue: number): void; + + /** + * The outline or stroke thickness of financial indicators. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorThickness"): number; + + /** + * The outline or stroke thickness of financial indicators. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorThickness", optionValue: number): void; + + /** + * The display types of financial indicators. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorDisplayTypes"): any; + + /** + * The display types of financial indicators. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorDisplayTypes", optionValue: any): void; + + /** + * The period of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorPeriod"): number; + + /** + * The period of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorPeriod", optionValue: number): void; + + /** + * The multiplier of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorMultiplier"): number; + + /** + * The multiplier of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorMultiplier", optionValue: number): void; + + /** + * The smoothing period of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorSmoothingPeriod"): number; + + /** + * The smoothing period of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorSmoothingPeriod", optionValue: number): void; + + /** + * The short period of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorShortPeriod"): number; + + /** + * The short period of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorShortPeriod", optionValue: number): void; + + /** + * The long period of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorLongPeriod"): number; + + /** + * The long period of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorLongPeriod", optionValue: number): void; + + /** + * The signal period of financial indicators, where applicable. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorSignalPeriod"): number; + + /** + * The signal period of financial indicators, where applicable. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "indicatorSignalPeriod", optionValue: number): void; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + */ + igFinancialChart(optionLiteral: 'option', optionName: "rangeSelectorOptions"): any; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "rangeSelectorOptions", optionValue: any): void; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + * This will be the intersection of the user-defined range selector options, if any, and the range selector options which are automatically determined based on the range of data. + */ + igFinancialChart(optionLiteral: 'option', optionName: "actualRangeSelectorOptions"): any; + + /** + * A FinancialChartRangeSelectorOptionCollection containing the available range selector options on the toolbar. + * This will be the intersection of the user-defined range selector options, if any, and the range selector options which are automatically determined based on the range of data. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "actualRangeSelectorOptions", optionValue: any): void; + + /** + * The names of custom indicators to add to the chart. + * When CustomIndicatorNames is set, the ApplyCustomIndicators event will be raised for each custom indicator name. + */ + igFinancialChart(optionLiteral: 'option', optionName: "customIndicatorNames"): any; + + /** + * The names of custom indicators to add to the chart. + * When CustomIndicatorNames is set, the ApplyCustomIndicators event will be raised for each custom indicator name. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "customIndicatorNames", optionValue: any): void; + + /** + * The width of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "width"): number; + + /** + * The width of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "width", optionValue: number): void; + + /** + * The height of the chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "height"): number; + + /** + * The height of the chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "height", optionValue: number): void; + + /** + * Gets maximum number of displayed records in chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "maxRecCount"): number; + + /** + * Sets maximum number of displayed records in chart. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "maxRecCount", optionValue: number): void; + + /** + * Gets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSource"): any; + + /** + * Sets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; + + /** + * Gets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSourceType"): string; + + /** + * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; + + /** + * Gets url which is used for sending JSON on request for remote data. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSourceUrl"): string; + + /** + * Sets url which is used for sending JSON on request for remote data. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + */ + igFinancialChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey", optionValue: string): void; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + */ + igFinancialChart(optionLiteral: 'option', optionName: "responseDataKey"): string; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; + + /** + * Event raised when a property value is changed on this chart + */ + igFinancialChart(optionLiteral: 'option', optionName: "propertyChanged"): PropertyChangedEvent; + + /** + * Event raised when a property value is changed on this chart + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "propertyChanged", optionValue: PropertyChangedEvent): void; + + /** + * Event raised when a series is initialized and added to this chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesAdded"): SeriesAddedEvent; + + /** + * Event raised when a series is initialized and added to this chart. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesAdded", optionValue: SeriesAddedEvent): void; + + /** + * Event raised when a series is removed from this chart. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesRemoved"): SeriesRemovedEvent; + + /** + * Event raised when a series is removed from this chart. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesRemoved", optionValue: SeriesRemovedEvent): void; + + /** + * Occurs when the pointer enters a Series. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerEnter"): SeriesPointerEnterEvent; + + /** + * Occurs when the pointer enters a Series. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerEnter", optionValue: SeriesPointerEnterEvent): void; + + /** + * Occurs when the pointer leaves a Series. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerLeave"): SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer leaves a Series. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerLeave", optionValue: SeriesPointerLeaveEvent): void; + + /** + * Occurs when the pointer moves over a Series. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerMove"): SeriesPointerMoveEvent; + + /** + * Occurs when the pointer moves over a Series. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerMove", optionValue: SeriesPointerMoveEvent): void; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerDown"): SeriesPointerDownEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerDown", optionValue: SeriesPointerDownEvent): void; + + /** + * Occurs when the pointer is released over a Series. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerUp"): SeriesPointerUpEvent; + + /** + * Occurs when the pointer is released over a Series. + * + * @optionValue New value to be set. + */ + igFinancialChart(optionLiteral: 'option', optionName: "seriesPointerUp", optionValue: SeriesPointerUpEvent): void; + + /** + * Event raised by the chart when custom indicator data is needed from the application. + * During series rendering, event will be raised once for each value in the CustomIndicatorNames collection. + */ + igFinancialChart(optionLiteral: 'option', optionName: "applyCustomIndicators"): ApplyCustomIndicatorsEvent; + + /** + * Event raised by the chart when custom indicator data is needed from the application. + * During series rendering, event will be raised once for each value in the CustomIndicatorNames collection. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "applyCustomIndicators", optionValue: ApplyCustomIndicatorsEvent): void; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataBinding"): DataBindingEvent; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataBinding", optionValue: DataBindingEvent): void; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataBound"): DataBoundEvent; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "dataBound", optionValue: DataBoundEvent): void; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + */ + igFinancialChart(optionLiteral: 'option', optionName: "updateTooltip"): UpdateTooltipEvent; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "updateTooltip", optionValue: UpdateTooltipEvent): void; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + */ + igFinancialChart(optionLiteral: 'option', optionName: "hideTooltip"): HideTooltipEvent; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + * + * @optionValue Define event handler function. + */ + igFinancialChart(optionLiteral: 'option', optionName: "hideTooltip", optionValue: HideTooltipEvent): void; + igFinancialChart(options: IgFinancialChart): JQuery; + igFinancialChart(optionLiteral: 'option', optionName: string): any; + igFinancialChart(optionLiteral: 'option', options: IgFinancialChart): JQuery; + igFinancialChart(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; + igFinancialChart(methodName: string, ...methodParams: any[]): any; +} interface SliceClickedEvent { (event: Event, ui: SliceClickedEventUIParam): void; } @@ -37104,6 +42931,7 @@ interface JQuery { interface IgGridAppendRowsOnDemandLocale { /** * Specifies caption text for the "load more data" button. + * */ loadMoreDataButtonText?: string; @@ -37164,6 +42992,7 @@ interface IgGridAppendRowsOnDemand { /** * Defines local or remote type of appending rows on demand in igGrid * + * * Valid values: * "remote" request data from the remote endpoint * "local" loading data on the client-side @@ -37172,37 +43001,44 @@ interface IgGridAppendRowsOnDemand { /** * Default number of records per chunk + * */ chunkSize?: number; /** * The property in the response that will hold the total number of records in the data source + * */ recordCountKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk size + * */ chunkSizeUrlKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk index + * */ chunkIndexUrlKey?: string; /** * Initial chunk index position + * */ defaultChunkIndex?: number; /** * Current chunk index position + * */ currentChunkIndex?: number; /** * denotes the append rows on demand request method * + * * Valid values: * "auto" new record will be appended to the grid while the user scrolls the scrollbar * "button" a button will be rendered at the bottom of the grid. The user should press it to load more rows @@ -37253,6 +43089,7 @@ interface JQuery { /** * Defines local or remote type of appending rows on demand in igGrid + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "type"): string; @@ -37260,6 +43097,7 @@ interface JQuery { /** * Defines local or remote type of appending rows on demand in igGrid * + * * @optionValue New value to be set. */ @@ -37267,78 +43105,91 @@ interface JQuery { /** * Default number of records per chunk + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkSize"): number; /** * Default number of records per chunk * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkSize", optionValue: number): void; /** * The property in the response that will hold the total number of records in the data source + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "recordCountKey"): string; /** * The property in the response that will hold the total number of records in the data source * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "recordCountKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk size + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkSizeUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk size * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkSizeUrlKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk index + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkIndexUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested chunk index * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "chunkIndexUrlKey", optionValue: string): void; /** * Initial chunk index position + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "defaultChunkIndex"): number; /** * Initial chunk index position * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "defaultChunkIndex", optionValue: number): void; /** * Current chunk index position + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "currentChunkIndex"): number; /** * Current chunk index position * + * * @optionValue New value to be set. */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "currentChunkIndex", optionValue: number): void; /** * Denotes the append rows on demand request method + * */ igGridAppendRowsOnDemand(optionLiteral: 'option', optionName: "loadTrigger"): string; @@ -37346,6 +43197,7 @@ interface JQuery { /** * Denotes the append rows on demand request method * + * * @optionValue New value to be set. */ @@ -37401,17 +43253,20 @@ interface JQuery { interface IgGridCellMergingColumnSetting { /** * Column index. This is a required property in every column setting if columnKey is not set. + * */ columnIndex?: number; /** * Column key. This is a required property in every column setting if columnIndex is not set. + * */ columnKey?: string; /** * Defines when merging should be applied. * + * * Valid values: * "sorting" The column will only be merged when sorted * "always" The column will always be merged @@ -37422,6 +43277,7 @@ interface IgGridCellMergingColumnSetting { /** * Defines the rules merging is based on. * + * * Valid values: * "duplicate" Duplicate values in the column will be merged together. * "null" Merging will be applied for each subsequent null value after a non-null value. @@ -37525,6 +43381,7 @@ interface IgGridCellMerging { /** * Defines the type of merging. * + * * Valid values: * "visual" the grid cells will be merged only visually * "physical" the grid cell will be merged physically throughout rowspan @@ -37534,6 +43391,7 @@ interface IgGridCellMerging { /** * Defines when merging should be applied. * + * * Valid values: * "sorting" Only sorted columns will have merging applied * "always" Merging will be applied to all columns always @@ -37544,6 +43402,7 @@ interface IgGridCellMerging { /** * Defines the rules merging is based on. * + * * Valid values: * "duplicate" Duplicate values in the column will be merged together. * "null" Merging will be applied for each subsequent null value after a non-null value. @@ -37552,6 +43411,7 @@ interface IgGridCellMerging { /** * A list of column settings that specifies hiding options on a per column basis. + * */ columnSettings?: IgGridCellMergingColumnSetting[]; @@ -37560,6 +43420,24 @@ interface IgGridCellMerging { */ inherit?: boolean; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before a new merged cells group is created. */ @@ -37572,6 +43450,9 @@ interface IgGridCellMerging { [optionName: string]: any; } interface IgGridCellMergingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + /** * Removes all igGridCellMerging UI changes and destroys the widget */ @@ -37598,19 +43479,31 @@ interface IgGridCellMergingMethods { * @param column The column index or column key to get the state for. */ isMerged(column: Object): boolean; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; } interface JQuery { data(propertyName: "igGridCellMerging"): IgGridCellMergingMethods; } interface JQuery { + igGridCellMerging(methodName: "changeGlobalLanguage"): void; + igGridCellMerging(methodName: "changeGlobalRegional"): void; igGridCellMerging(methodName: "destroy"): void; igGridCellMerging(methodName: "mergeColumn", column: Object, raiseEvents: boolean): string; igGridCellMerging(methodName: "unmergeColumn", column: Object): string; igGridCellMerging(methodName: "isMerged", column: Object): boolean; + igGridCellMerging(methodName: "changeLocale", $container: Object): void; /** * Defines the type of merging. + * */ igGridCellMerging(optionLiteral: 'option', optionName: "mergeType"): string; @@ -37618,6 +43511,7 @@ interface JQuery { /** * Defines the type of merging. * + * * @optionValue New value to be set. */ @@ -37625,6 +43519,7 @@ interface JQuery { /** * Defines when merging should be applied. + * */ igGridCellMerging(optionLiteral: 'option', optionName: "mergeOn"): string; @@ -37632,6 +43527,7 @@ interface JQuery { /** * Defines when merging should be applied. * + * * @optionValue New value to be set. */ @@ -37639,6 +43535,7 @@ interface JQuery { /** * Defines the rules merging is based on. + * */ igGridCellMerging(optionLiteral: 'option', optionName: "mergeStrategy"): string|Function; @@ -37646,6 +43543,7 @@ interface JQuery { /** * Defines the rules merging is based on. * + * * @optionValue New value to be set. */ @@ -37653,12 +43551,14 @@ interface JQuery { /** * A list of column settings that specifies hiding options on a per column basis. + * */ igGridCellMerging(optionLiteral: 'option', optionName: "columnSettings"): IgGridCellMergingColumnSetting[]; /** * A list of column settings that specifies hiding options on a per column basis. * + * * @optionValue New value to be set. */ igGridCellMerging(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridCellMergingColumnSetting[]): void; @@ -37675,6 +43575,50 @@ interface JQuery { */ igGridCellMerging(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igGridCellMerging(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridCellMerging(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridCellMerging(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridCellMerging(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridCellMerging(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridCellMerging(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before a new merged cells group is created. */ @@ -37697,53 +43641,25 @@ interface JQuery { interface IgGridColumnFixingLocale { /** * Specifies the tooltip text on the column fixing header icon when column is not fixed. - * ``` - * //Initialize - * $(".selector").%%ParentWidgetName%%({ - * features: [ - * { - * name : "ColumnFixing", - * locale: { headerFixButtonText : "Click to fix this column"} - * } - * ] - * }); * - * //Get - * var headerFixButtonText = $(".selector").%%WidgetName%%("option", "locale").headerFixButtonText; - * - * //Set - * $(".selector").%%WidgetName%%("option", "locale", { headerFixButtonText : "Click to fix this column"}); */ headerFixButtonText?: string; /** * Specifies the tooltip text on the column fixing header icon when column is not fixed. - * ``` - * //Initialize - * $(".selector").%%ParentWidgetName%%({ - * features: [ - * { - * name : "ColumnFixing", - * locale: { headerUnfixButtonText : "Click to unfix this column"} - * } - * ] - * }); * - * //Get - * var headerUnfixButtonText = $(".selector").%%WidgetName%%("option", "locale").headerUnfixButtonText; - * - * //Set - * $(".selector").%%WidgetName%%("option", "locale", { headerUnfixButtonText : "Click to unfix this column"}); */ headerUnfixButtonText?: string; /** * Text of the feature chooser button for fixing a currently unfixed column. + * */ featureChooserTextFixedColumn?: string; /** * Text of the feature chooser button for unfixing a currently fixed column. + * */ featureChooserTextUnfixedColumn?: string; @@ -37756,21 +43672,25 @@ interface IgGridColumnFixingLocale { interface IgGridColumnFixingColumnSetting { /** * Identifies the grid column by key. Either key or index must be set in every column setting. + * */ columnKey?: string; /** * Identifies the grid column by index. Either key or index must be set in every column setting. + * */ columnIndex?: number; /** * Specifies whether the column can be fixed or not. If allow fixing is false, then the fixing pin will not be rendered for the column. + * */ allowFixing?: boolean; /** * Specifies whether the column is initially fixed or not. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#initial-state) out for more information. + * */ isFixed?: boolean; @@ -37944,22 +43864,26 @@ interface IgGridColumnFixing { /** * Specifies whether to show the column fixing buttons in header cells/feature chooser. + * */ showFixButtons?: boolean; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). + * */ syncRowHeights?: boolean; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. + * */ scrollDelta?: number; /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. * + * * Valid values: * "left" Fixed columns are rendered on the left side of the main grid. * "right" Fixed columns are rendered on the right side of the main grid. @@ -37968,12 +43892,14 @@ interface IgGridColumnFixing { /** * List of column settings that specifies custom column fixing options on a per column basis. + * */ columnSettings?: IgGridColumnFixingColumnSetting[]; /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. * + * * Valid values: * "string" The width can be set in pixels (px) and percentage (%). * "number" The width can be set in pixels as a number. @@ -37982,6 +43908,7 @@ interface IgGridColumnFixing { /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). + * */ fixNondataColumns?: boolean; @@ -37990,6 +43917,18 @@ interface IgGridColumnFixing { */ populateDataRowsAttributes?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is fired when column fixing operation is initiated. */ @@ -38026,6 +43965,9 @@ interface IgGridColumnFixing { [optionName: string]: any; } interface IgGridColumnFixingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + /** * Unfixes a column by specified column identifier - column key or column index. * @@ -38047,6 +43989,11 @@ interface IgGridColumnFixingMethods { * @param clearRowsHeights Clears row heigths for all visible rows. */ syncHeights(check?: boolean, clearRowsHeights?: boolean): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridcolumnfixing#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridcolumnfixing#options:language) or [locale](ui.iggridcolumnfixing#options:locale) option setter + */ changeLocale(): void; /** @@ -38131,6 +44078,8 @@ interface JQuery { } interface JQuery { + igGridColumnFixing(methodName: "changeGlobalLanguage"): void; + igGridColumnFixing(methodName: "changeGlobalRegional"): void; igGridColumnFixing(methodName: "unfixColumn", colIdentifier: Object, target?: string, after?: boolean): Object; igGridColumnFixing(methodName: "checkAndSyncHeights"): void; igGridColumnFixing(methodName: "syncHeights", check?: boolean, clearRowsHeights?: boolean): void; @@ -38208,42 +44157,49 @@ interface JQuery { /** * Gets whether to show the column fixing buttons in header cells/feature chooser. + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "showFixButtons"): boolean; /** * Sets whether to show the column fixing buttons in header cells/feature chooser. * + * * @optionValue New value to be set. */ igGridColumnFixing(optionLiteral: 'option', optionName: "showFixButtons", optionValue: boolean): void; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "syncRowHeights"): boolean; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). * + * * @optionValue New value to be set. */ igGridColumnFixing(optionLiteral: 'option', optionName: "syncRowHeights", optionValue: boolean): void; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "scrollDelta"): number; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. * + * * @optionValue New value to be set. */ igGridColumnFixing(optionLiteral: 'option', optionName: "scrollDelta", optionValue: number): void; /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "fixingDirection"): string; @@ -38251,6 +44207,7 @@ interface JQuery { /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. * + * * @optionValue New value to be set. */ @@ -38258,18 +44215,21 @@ interface JQuery { /** * List of column settings that specifies custom column fixing options on a per column basis. + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "columnSettings"): IgGridColumnFixingColumnSetting[]; /** * List of column settings that specifies custom column fixing options on a per column basis. * + * * @optionValue New value to be set. */ igGridColumnFixing(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridColumnFixingColumnSetting[]): void; /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "minimalVisibleAreaWidth"): string|number; @@ -38277,6 +44237,7 @@ interface JQuery { /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. * + * * @optionValue New value to be set. */ @@ -38284,12 +44245,14 @@ interface JQuery { /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). + * */ igGridColumnFixing(optionLiteral: 'option', optionName: "fixNondataColumns"): boolean; /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). * + * * @optionValue New value to be set. */ igGridColumnFixing(optionLiteral: 'option', optionName: "fixNondataColumns", optionValue: boolean): void; @@ -38306,6 +44269,36 @@ interface JQuery { */ igGridColumnFixing(optionLiteral: 'option', optionName: "populateDataRowsAttributes", optionValue: boolean): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridColumnFixing(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridColumnFixing(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridColumnFixing(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridColumnFixing(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is fired when column fixing operation is initiated. */ @@ -38386,16 +44379,19 @@ interface JQuery { interface IgGridColumnMovingColumnSetting { /** * Column key. This is a required property in every column setting if columnIndex is not set. + * */ columnKey?: string; /** * Column index. Can be used in place of column key. The preferred way of populating a column setting is to always use the column keys as identifiers. + * */ columnIndex?: number; /** * Allows the column to be moved. + * */ allowMoving?: boolean; @@ -38408,71 +44404,85 @@ interface IgGridColumnMovingColumnSetting { interface IgGridColumnMovingLocale { /** * Specifies the apply button text. + * */ movingDialogButtonApplyText?: string; /** * Specifies the cancel button text. + * */ movingDialogButtonCancelText?: string; /** * Specifies caption for each move down button in the column moving dialog. + * */ movingDialogCaptionButtonDesc?: string; /** * Specifies caption for each move up button in the column moving dialog. + * */ movingDialogCaptionButtonAsc?: string; /** * Specifies caption text for the column moving dialog. + * */ movingDialogCaptionText?: string; /** * Specifies caption text for the feature chooser entry. + * */ movingDialogDisplayText?: string; /** * Specifies text for drop tooltip in column moving dialog. + * */ movingDialogDropTooltipText?: string; /** * Specifies title for close dialog button. + * */ movingDialogCloseButtonTitle?: string; /** * Specifies caption for the move left dropdown button. + * */ dropDownMoveLeftText?: string; /** * Specifies caption for the move right dropdown button. + * */ dropDownMoveRightText?: string; /** * Specifies caption for the move first dropdown button. + * */ dropDownMoveFirstText?: string; /** * Specifies caption for the move last dropdown button. + * */ dropDownMoveLastText?: string; /** * Specifies tooltip text for the move indicator. + * */ movingToolTipMove?: string; /** * Specifies caption text for the feature chooser submenu button. + * */ featureChooserSubmenuText?: string; @@ -38751,12 +44761,14 @@ interface MovingDialogDragColumnMovedEventUIParam { interface IgGridColumnMoving { /** * A list of column settings that specifies moving options on a per column basis. + * */ columnSettings?: IgGridColumnMovingColumnSetting[]; /** * Specify the drag-and-drop mode for the feature * + * * Valid values: * "immediate" Column headers will rearange as you drag with a space opening under the cursor for the header to be dropped on * "deferred" A clone of the header dragged will be created and indicators will be shown between columns to help navigate the drop. @@ -38766,6 +44778,7 @@ interface IgGridColumnMoving { /** * Specify the way columns will be rearranged * + * * Valid values: * "dom" Columns will be rearranged through dom manipulation * "render" Columns will not be rearranged but the grid will be rendered again with the new column order. Please note this option is incompatible with immediate move mode. @@ -38774,47 +44787,56 @@ interface IgGridColumnMoving { /** * Specifies if header cells should include an additional button that opens a moving helper dropdown. + * */ addMovingDropdown?: boolean; /** * Specifies width of column moving dialog + * */ movingDialogWidth?: number; /** * Specifies height of column moving dialog + * */ movingDialogHeight?: number; /** * Specifies time in milliseconds for animation duration to show/hide modal dialog + * */ movingDialogAnimationDuration?: number; /** * Specifies the length (in pixels) between the dragged column and the column edges below which the move operation is accepted + * */ movingAcceptanceTolerance?: number; /** * Specifies the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs + * */ movingScrollTolerance?: number; /** * Specifies a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. + * */ scrollSpeedMultiplier?: number; /** * Specifies the length (in pixels) of each individual scroll operation + * */ scrollDelta?: number; /** * Specifies whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. + * */ hideHeaderContentsDuringDrag?: boolean; @@ -38822,6 +44844,7 @@ interface IgGridColumnMoving { * Specifies the opacity of the drag markup, while a column header is being dragged. * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. + * */ dragHelperOpacity?: number; @@ -38894,6 +44917,7 @@ interface IgGridColumnMoving { /** * Specifies markup for drop tooltip in column moving dialog + * */ movingDialogDropTooltipMarkup?: string; @@ -38907,6 +44931,7 @@ interface IgGridColumnMoving { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; @@ -38915,6 +44940,18 @@ interface IgGridColumnMoving { */ inherit?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is fired when a drag operation begins on a column header */ @@ -39001,6 +45038,13 @@ interface IgGridColumnMoving { [optionName: string]: any; } interface IgGridColumnMovingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridcolumnmoving#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridcolumnmoving#options:language) or [locale](ui.iggridcolumnmoving#options:locale) option setter + */ changeLocale(): void; /** @@ -39025,24 +45069,29 @@ interface JQuery { } interface JQuery { + igGridColumnMoving(methodName: "changeGlobalLanguage"): void; + igGridColumnMoving(methodName: "changeGlobalRegional"): void; igGridColumnMoving(methodName: "changeLocale"): void; igGridColumnMoving(methodName: "destroy"): void; igGridColumnMoving(methodName: "moveColumn", column: Object, target: Object, after?: boolean, inDom?: boolean, callback?: Function): void; /** * A list of column settings that specifies moving options on a per column basis. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "columnSettings"): IgGridColumnMovingColumnSetting[]; /** * A list of column settings that specifies moving options on a per column basis. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridColumnMovingColumnSetting[]): void; /** * Specify the drag-and-drop mode for the feature + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "mode"): string; @@ -39050,6 +45099,7 @@ interface JQuery { /** * Specify the drag-and-drop mode for the feature * + * * @optionValue New value to be set. */ @@ -39057,6 +45107,7 @@ interface JQuery { /** * Specify the way columns will be rearranged + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "moveType"): string; @@ -39064,6 +45115,7 @@ interface JQuery { /** * Specify the way columns will be rearranged * + * * @optionValue New value to be set. */ @@ -39071,96 +45123,112 @@ interface JQuery { /** * Gets if header cells should include an additional button that opens a moving helper dropdown. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "addMovingDropdown"): boolean; /** * Sets if header cells should include an additional button that opens a moving helper dropdown. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "addMovingDropdown", optionValue: boolean): void; /** * Gets width of column moving dialog + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogWidth"): number; /** * Sets width of column moving dialog * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogWidth", optionValue: number): void; /** * Gets height of column moving dialog + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogHeight"): number; /** * Sets height of column moving dialog * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogHeight", optionValue: number): void; /** * Gets time in milliseconds for animation duration to show/hide modal dialog + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogAnimationDuration"): number; /** * Sets time in milliseconds for animation duration to show/hide modal dialog * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogAnimationDuration", optionValue: number): void; /** * Gets the length (in pixels) between the dragged column and the column edges below which the move operation is accepted + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingAcceptanceTolerance"): number; /** * Sets the length (in pixels) between the dragged column and the column edges below which the move operation is accepted * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingAcceptanceTolerance", optionValue: number): void; /** * Gets the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingScrollTolerance"): number; /** * Sets the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingScrollTolerance", optionValue: number): void; /** * Gets a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "scrollSpeedMultiplier"): number; /** * Sets a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "scrollSpeedMultiplier", optionValue: number): void; /** * Gets the length (in pixels) of each individual scroll operation + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "scrollDelta"): number; /** * Sets the length (in pixels) of each individual scroll operation * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "scrollDelta", optionValue: number): void; @@ -39168,6 +45236,7 @@ interface JQuery { /** * Gets whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "hideHeaderContentsDuringDrag"): boolean; @@ -39175,6 +45244,7 @@ interface JQuery { * Sets whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "hideHeaderContentsDuringDrag", optionValue: boolean): void; @@ -39183,6 +45253,7 @@ interface JQuery { * Gets the opacity of the drag markup, while a column header is being dragged. * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "dragHelperOpacity"): number; @@ -39191,6 +45262,7 @@ interface JQuery { * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "dragHelperOpacity", optionValue: number): void; @@ -39353,12 +45425,14 @@ interface JQuery { /** * Gets markup for drop tooltip in column moving dialog + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogDropTooltipMarkup"): string; /** * Sets markup for drop tooltip in column moving dialog * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogDropTooltipMarkup", optionValue: string): void; @@ -39383,12 +45457,14 @@ interface JQuery { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igGridColumnMoving(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * + * * @optionValue New value to be set. */ igGridColumnMoving(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; @@ -39405,6 +45481,36 @@ interface JQuery { */ igGridColumnMoving(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridColumnMoving(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridColumnMoving(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridColumnMoving(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridColumnMoving(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is fired when a drag operation begins on a column header */ @@ -39732,6 +45838,7 @@ interface IgGridFeatureChooserPopover { /** * controls the direction in which the control shows relative to the target element * + * * Valid values: * "auto" lets the control show on the side where enough space is available with the priority specified by the [directionPriority](ui.%%WidgetNameLowered%%#options:directionPriority) property * "left" shows popover on the left side of the target element @@ -39744,12 +45851,14 @@ interface IgGridFeatureChooserPopover { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ directionPriority?: any[]; /** * controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * Valid values: * "auto" lets the control choose a position depending on available space with the following priority balanced > end > start * "balanced" the popover is positioned at the middle of the target element @@ -39760,37 +45869,44 @@ interface IgGridFeatureChooserPopover { /** * defines width for the popover. leave null for auto. + * */ width?: number|string; /** * defines height for the popover. leave null for auto + * */ height?: number|string; /** * defines width the popover won't go under the value even if no specific one is set. + * */ minWidth?: number|string; /** * defines width the popover won't exceed even if no specific one is set. + * */ maxWidth?: number|string; /** * defines height the popover won't exceed even if no specific one is set. + * */ maxHeight?: number|string; /** * Sets the time popover fades in and out when showing/hiding + * */ animationDuration?: number; /** * sets the content for the popover container. If left null the content will be get from the target. * + * * Valid values: * "string" String content of the popover container * "function" Function which is a callback that should return the content. Use the 'this' value to access the target DOM element. @@ -39799,17 +45915,20 @@ interface IgGridFeatureChooserPopover { /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option + * */ selectors?: string; /** * Sets the content for the popover header + * */ headerTemplate?: IgPopoverHeaderTemplate; /** * sets the event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * Valid values: * "mouseenter" the popover is shown on mouse enter in the target element * "click" the popover is shown on click on the target element @@ -39820,6 +45939,7 @@ interface IgGridFeatureChooserPopover { /** * Controls where the popover DOM should be attached to. * + * * Valid values: * "string" A valid jQuery selector for the element * "object" A reference to the parent jQuery object @@ -39957,6 +46077,24 @@ interface FeatureToggledEventUIParam {} interface IgGridFeatureChooser { dropDownWidth?: any; animationDuration?: number; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; featureChooserRendering?: FeatureChooserRenderingEvent; featureChooserRendered?: FeatureChooserRenderedEvent; featureChooserDropDownOpening?: FeatureChooserDropDownOpeningEvent; @@ -39972,6 +46110,11 @@ interface IgGridFeatureChooser { } interface IgGridFeatureChooserMethods { shouldShowFeatureIcon(key: Object): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridfeaturechooser#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridfeaturechooser#options:language) or [locale](ui.iggridfeaturechooser#options:locale) option setter + */ changeLocale(): void; /** @@ -40002,6 +46145,16 @@ interface IgGridFeatureChooserMethods { */ toggleDropDown(columnKey: string): void; destroy(e: Object, args: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igGridFeatureChooser"): IgGridFeatureChooserMethods; @@ -40031,6 +46184,7 @@ interface JQuery { /** * Controls the direction in which the control shows relative to the target element + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "direction"): string; @@ -40038,6 +46192,7 @@ interface JQuery { /** * Controls the direction in which the control shows relative to the target element * + * * @optionValue New value to be set. */ @@ -40046,6 +46201,7 @@ interface JQuery { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "directionPriority"): any[]; @@ -40053,12 +46209,14 @@ interface JQuery { * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. * + * * @optionValue New value to be set. */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "directionPriority", optionValue: any[]): void; /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "position"): string; @@ -40066,6 +46224,7 @@ interface JQuery { /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * @optionValue New value to be set. */ @@ -40073,6 +46232,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "width"): number|string; @@ -40080,6 +46240,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. * + * * @optionValue New value to be set. */ @@ -40087,6 +46248,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "height"): number|string; @@ -40094,6 +46256,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto * + * * @optionValue New value to be set. */ @@ -40101,6 +46264,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "minWidth"): number|string; @@ -40108,6 +46272,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -40115,6 +46280,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "maxWidth"): number|string; @@ -40122,6 +46288,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -40129,6 +46296,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "maxHeight"): number|string; @@ -40136,6 +46304,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -40143,18 +46312,21 @@ interface JQuery { /** * The time popover fades in and out when showing/hiding + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "animationDuration"): number; /** * Sets the time popover fades in and out when showing/hiding * + * * @optionValue New value to be set. */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; /** * The content for the popover container. If left null the content will be get from the target. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "contentTemplate"): string|Function; @@ -40162,6 +46334,7 @@ interface JQuery { /** * Sets the content for the popover container. If left null the content will be get from the target. * + * * @optionValue New value to be set. */ @@ -40169,30 +46342,35 @@ interface JQuery { /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "selectors"): string; /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option * + * * @optionValue New value to be set. */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "selectors", optionValue: string): void; /** * The content for the popover header + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "headerTemplate"): IgPopoverHeaderTemplate; /** * Sets the content for the popover header * + * * @optionValue New value to be set. */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "headerTemplate", optionValue: IgPopoverHeaderTemplate): void; /** * The event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "showOn"): string; @@ -40200,6 +46378,7 @@ interface JQuery { /** * Sets the event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * @optionValue New value to be set. */ @@ -40207,6 +46386,7 @@ interface JQuery { /** * Controls where the popover DOM should be attached to. + * */ igGridFeatureChooserPopover(optionLiteral: 'option', optionName: "appendTo"): string|Object; @@ -40214,6 +46394,7 @@ interface JQuery { /** * Controls where the popover DOM should be attached to. * + * * @optionValue New value to be set. */ @@ -40280,10 +46461,56 @@ interface JQuery { igGridFeatureChooser(methodName: "getDropDownByColumnKey", columnKey: string): void; igGridFeatureChooser(methodName: "toggleDropDown", columnKey: string): void; igGridFeatureChooser(methodName: "destroy", e: Object, args: Object): void; + igGridFeatureChooser(methodName: "changeGlobalLanguage"): void; + igGridFeatureChooser(methodName: "changeGlobalRegional"): void; igGridFeatureChooser(optionLiteral: 'option', optionName: "dropDownWidth"): any; igGridFeatureChooser(optionLiteral: 'option', optionName: "dropDownWidth", optionValue: any): void; igGridFeatureChooser(optionLiteral: 'option', optionName: "animationDuration"): number; igGridFeatureChooser(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igGridFeatureChooser(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridFeatureChooser(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridFeatureChooser(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridFeatureChooser(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridFeatureChooser(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridFeatureChooser(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igGridFeatureChooser(optionLiteral: 'option', optionName: "featureChooserRendering"): FeatureChooserRenderingEvent; igGridFeatureChooser(optionLiteral: 'option', optionName: "featureChooserRendering", optionValue: FeatureChooserRenderingEvent): void; igGridFeatureChooser(optionLiteral: 'option', optionName: "featureChooserRendered"): FeatureChooserRenderedEvent; @@ -40314,22 +46541,26 @@ interface IgGridFilteringColumnSettingDefaultExpressions { interface IgGridFilteringColumnSetting { /** * Identifies the grid column by key. Either key or index must be set in every column setting. + * */ columnKey?: string; /** * Identifies the grid column by index. Either key or index must be set in every column setting. + * */ columnIndex?: number; /** * Enables/disables filtering for the column. + * */ allowFiltering?: boolean; /** * Initial filtering condition for the column. * + * * Valid values: * "empty" * "notEmpty" @@ -40364,11 +46595,13 @@ interface IgGridFilteringColumnSetting { /** * An array of strings that determine which [conditions](ui.iggridfiltering#options:columnSettings.condition) to display for this column. + * */ conditionList?: any[]; /** * Initial filtering expressions - if set they will be applied on initialization together with the preset [condition](ui.iggridfiltering#options:columnSettings.condition). + * */ defaultExpressions?: IgGridFilteringColumnSettingDefaultExpressions; @@ -40392,316 +46625,379 @@ interface IgGridFilteringColumnSetting { interface IgGridFilteringLocale { /** * StartsWith null text that will be used for the filter editors. + * */ startsWithNullText?: string; /** * EndsWith null text that will be used for the filter editors. + * */ endsWithNullText?: string; /** * Contains null text that will be used for the filter editors. + * */ containsNullText?: string; /** * Does not contain null text that will be used for the filter editors. + * */ doesNotContainNullText?: string; /** * Equals null text that will be used for the filter editors. + * */ equalsNullText?: string; /** * Does not equal null text that will be used for the filter editors. + * */ doesNotEqualNullText?: string; /** * Greater than null text that will be used for the filter editors. + * */ greaterThanNullText?: string; /** * Less than null text that will be used for the filter editors. + * */ lessThanNullText?: string; /** * Greater than or equal to null text that will be used for the filter editors. + * */ greaterThanOrEqualToNullText?: string; /** * Less than or equal to null text that will be used for the filter editors. + * */ lessThanOrEqualToNullText?: string; /** * On null text that will be used for the filter editors. + * */ onNullText?: string; /** * Not on null text that will be used for the filter editors. + * */ notOnNullText?: string; /** * After null text that will be used for the filter editors. + * */ afterNullText?: string; /** * Before null text that will be used for the filter editors. + * */ beforeNullText?: string; /** * Empty null text that will be used for the filter editors. + * */ emptyNullText?: string; /** * Not empty null text that will be used for the filter editors. + * */ notEmptyNullText?: string; /** * Not empty null text that will be used for the filter editors. + * */ nullNullText?: string; /** * Not empty null text that will be used for the filter editors. + * */ notNullNullText?: string; /** * 'Starts with' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ startsWithLabel?: string; /** * 'Starts with' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ endsWithLabel?: string; /** * 'Contains' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ containsLabel?: string; /** * 'Does not contain' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ doesNotContainLabel?: string; /** * 'Equals' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ equalsLabel?: string; /** * 'Does not Equal' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ doesNotEqualLabel?: string; /** * 'Greater Than' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ greaterThanLabel?: string; /** * 'Less Than' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ lessThanLabel?: string; /** * 'Greater Than or Equal' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ greaterThanOrEqualToLabel?: string; /** * 'Less Than or Equal' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ lessThanOrEqualToLabel?: string; /** * 'True' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ trueLabel?: string; /** * 'False' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ falseLabel?: string; /** * 'After' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ afterLabel?: string; /** * 'Before' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ beforeLabel?: string; /** * 'Today' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ todayLabel?: string; /** * 'Yesterday' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ yesterdayLabel?: string; /** * 'This Month' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ thisMonthLabel?: string; /** * 'Last Month' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ lastMonthLabel?: string; /** * 'Next Month' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ nextMonthLabel?: string; /** * 'This Year' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ thisYearLabel?: string; /** * 'Last Year' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ lastYearLabel?: string; /** * 'Next Year' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ nextYearLabel?: string; /** * 'Clear' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ clearLabel?: string; /** * 'No Filter' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ noFilterLabel?: string; /** * 'On' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ onLabel?: string; /** * 'Not On' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ notOnLabel?: string; /** * 'Advance Button' label that is used for the predefined filtering conditions in the filter dropdowns. + * */ advancedButtonLabel?: string; /** * Specifies the filter dialog caption label. + * */ filterDialogCaptionLabel?: string; /** * Specifies the filter condition label. + * */ filterDialogConditionLabel1?: string; /** * Specifies the filter condition label. + * */ filterDialogConditionLabel2?: string; /** * Specifies the filter condition drop-down label. + * */ filterDialogConditionDropDownLabel?: string; /** * Specifies the dialog's Ok button label. + * */ filterDialogOkLabel?: string; /** * Specifies the dialog's Cancel button label. + * */ filterDialogCancelLabel?: string; /** * Specifies the Any label for the filtering dialog. + * */ filterDialogAnyLabel?: string; /** * Specifies the All label for the filtering dialog. + * */ filterDialogAllLabel?: string; /** * Specifies the Add button label for the filtering dialog. + * */ filterDialogAddLabel?: string; /** * Specifies the Error label for the filtering dialog. + * */ filterDialogErrorLabel?: string; /** * Specifies the Close label for the filtering dialog. + * */ filterDialogCloseLabel?: string; /** * Specifies the Filtering summary title. + * */ filterSummaryTitleLabel?: string; /** * Specifies the summary template for the matching records. + * */ filterSummaryTemplate?: string; /** * Specifies clear all label in the filter dialog. + * */ filterDialogClearAllLabel?: string; /** * Custom tooltip template for the filter button, when a filter is applied. + * */ tooltipTemplate?: string; /** * Feature chooser text when filter is shown and filter [mode](ui.iggridfiltering#options:mode) is simple. + * */ featureChooserText?: string; /** * Feature chooser text when filter is hidden and filter [mode](ui.iggridfiltering#options:mode) is simple. + * */ featureChooserTextHide?: string; /** * Feature chooser text when filter [mode](ui.iggridfiltering#options:mode) is advanced. + * */ featureChooserTextAdvancedFilter?: string; @@ -40711,9 +47007,222 @@ interface IgGridFilteringLocale { [optionName: string]: any; } +interface DataFilteringEvent { + (event: Event, ui: DataFilteringEventUIParam): void; +} + +interface DataFilteringEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets the column index. Applicable only when filtering mode is "simple". + */ + columnIndex?: number; + + /** + * Gets the column key. Applicable only when filtering mode is "simple". + */ + columnKey?: string; + + /** + * Gets the filtering expressions. Filtering expressions could be changed in this event handler and after that data binding is applied. In this way the user could control filtering more easily before applying data-binding. + */ + newExpressions?: any[]; +} + +interface DataFilteredEvent { + (event: Event, ui: DataFilteredEventUIParam): void; +} + +interface DataFilteredEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets the column index. Applicable only when filtering mode is "simple". + */ + columnIndex?: number; + + /** + * Gets the column key. Applicable only when filtering mode is "simple". + */ + columnKey?: string; + + /** + * Gets the filtered expressions. + */ + expressions?: any[]; +} + +interface FilterDialogOpeningEvent { + (event: Event, ui: FilterDialogOpeningEventUIParam): void; +} + +interface FilterDialogOpeningEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to the filtering dialog DOM element. + */ + dialog?: string; +} + +interface FilterDialogOpenedEvent { + (event: Event, ui: FilterDialogOpenedEventUIParam): void; +} + +interface FilterDialogOpenedEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to the filtering dialog DOM element. + */ + dialog?: string; +} + +interface FilterDialogMovingEvent { + (event: Event, ui: FilterDialogMovingEventUIParam): void; +} + +interface FilterDialogMovingEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to filtering dialog DOM element. + */ + dialog?: string; + + /** + * Gets the original position of the groupby dialog div as { top, left } object, relative to the page. + */ + originalPosition?: any; + + /** + * Gets the current position of the groupby dialog div as { top, left } object, relative to the page. + */ + position?: any; +} + +interface FilterDialogFilterAddingEvent { + (event: Event, ui: FilterDialogFilterAddingEventUIParam): void; +} + +interface FilterDialogFilterAddingEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to filters table body DOM element. + */ + filtersTableBody?: string; +} + +interface FilterDialogFilterAddedEvent { + (event: Event, ui: FilterDialogFilterAddedEventUIParam): void; +} + +interface FilterDialogFilterAddedEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to the filters table row DOM element. + */ + filter?: string; +} + +interface FilterDialogClosingEvent { + (event: Event, ui: FilterDialogClosingEventUIParam): void; +} + +interface FilterDialogClosingEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; +} + +interface FilterDialogClosedEvent { + (event: Event, ui: FilterDialogClosedEventUIParam): void; +} + +interface FilterDialogClosedEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; +} + +interface FilterDialogContentsRenderingEvent { + (event: Event, ui: FilterDialogContentsRenderingEventUIParam): void; +} + +interface FilterDialogContentsRenderingEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to the filtering dialog DOM element. + */ + dialogElement?: string; +} + +interface FilterDialogContentsRenderedEvent { + (event: Event, ui: FilterDialogContentsRenderedEventUIParam): void; +} + +interface FilterDialogContentsRenderedEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to the filtering dialog DOM element. + */ + dialogElement?: string; +} + +interface FilterDialogFilteringEvent { + (event: Event, ui: FilterDialogFilteringEventUIParam): void; +} + +interface FilterDialogFilteringEventUIParam { + /** + * Gets reference to GridFiltering. + */ + owner?: any; + + /** + * Gets reference to filtering dialog DOM element. + */ + dialog?: string; +} + interface IgGridFiltering { /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. + * */ caseSensitive?: boolean; @@ -40721,11 +47230,13 @@ interface IgGridFiltering { * Enable/disable footer visibility with summary info about the filter. * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. + * */ filterSummaryAlwaysVisible?: boolean; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) + * */ renderFC?: boolean; @@ -40738,6 +47249,7 @@ interface IgGridFiltering { /** * Type of animations for the column filter dropdowns. * + * * Valid values: * "linear" The column filtering drop downs are shown with a linear animation. * "none" No animation is used when showing the filtering drop downs. @@ -40746,12 +47258,14 @@ interface IgGridFiltering { /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). + * */ filterDropDownAnimationDuration?: number; /** * Width of the column filter dropdowns. * + * * Valid values: * "string" The width in pixels (0px) * "number" The width in pixels as a number (0) @@ -40768,12 +47282,14 @@ interface IgGridFiltering { /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ filterExprUrlKey?: string; /** * Enable/disable filter icons visibility. * + * * Valid values: * "true" All predefined filters in the filter dropdowns will have icons rendered in front of the text. * "false" No icons will be rendered. @@ -40782,12 +47298,14 @@ interface IgGridFiltering { /** * A list of column settings that specifies custom filtering options on a per column basis. + * */ columnSettings?: IgGridFilteringColumnSetting[]; /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). * + * * Valid values: * "remote" Filtering is performed by a remote end-point. * "local" Filtering is performed locally by the [$.ig.DataSource](ig.datasource). @@ -40796,12 +47314,14 @@ interface IgGridFiltering { /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. + * */ filterDelay?: number; /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. * + * * Valid values: * "simple" Renders just a filter row. * "advanced" Allows to configure multiple filters from a dialog - Excel style. @@ -40810,12 +47330,14 @@ interface IgGridFiltering { /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). + * */ advancedModeEditorsVisible?: boolean; /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). * + * * Valid values: * "left" * "right" @@ -40825,6 +47347,7 @@ interface IgGridFiltering { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * Valid values: * "string" The dialog window width in pixels (370px). * "number" The dialog window width in pixels as a number (370). @@ -40834,6 +47357,7 @@ interface IgGridFiltering { /** * default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * Valid values: * "string" The dialog window height in pixels (350px). * "number" The dialog window height in pixels as a number (350). @@ -40843,6 +47367,7 @@ interface IgGridFiltering { /** * Width of the filtering condition dropdowns in the advanced filter dialog. * + * * Valid values: * "string" The filtering condition dropdowns width in pixels (80px). * "number" The filtering condition dropdowns width in pixels as a number (80). @@ -40852,6 +47377,7 @@ interface IgGridFiltering { /** * Width of the filtering expression input boxes in the advanced filter dialog. * + * * Valid values: * "string" The filtering expression input boxes width in pixels (80px). * "number" The filtering expression input boxes width in pixels as a number (80). @@ -40861,6 +47387,7 @@ interface IgGridFiltering { /** * Width of the column chooser dropdowns in the advanced filter dialog. * + * * Valid values: * "string" The column chooser dropdowns width in pixels (80px). * "number" The column chooser dropdowns width in pixels as a number (80). @@ -40869,12 +47396,14 @@ interface IgGridFiltering { /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. + * */ renderFilterButton?: boolean; /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. * + * * Valid values: * "left" The button is rendered on the left. * "right" The button is rendered on the right. @@ -40920,11 +47449,13 @@ interface IgGridFiltering { /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". + * */ filterDialogAddConditionTemplate?: string; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". + * */ filterDialogAddConditionDropDownTemplate?: string; @@ -40934,17 +47465,20 @@ interface IgGridFiltering { * E.g.: DOM element used for selecting column has attribute "data-af-col", for selecting filter condition - "data-af-cond", for filter expression- "data-af-expr". * NOTE: The template is supported only with . * The default template is " ". + * */ filterDialogFilterTemplate?: string; /** * Custom template for options in condition list in filter dialog. The default template is "". + * */ filterDialogFilterConditionTemplate?: string; /** * Add button width - in the advanced filter dialog. * + * * Valid values: * "string" The dialog Add button width in pixels (100px). * "number" The dialog Add button width in pixels as a number (100). @@ -40954,6 +47488,7 @@ interface IgGridFiltering { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. * + * * Valid values: * "string" The advanced filter dialog Ok and Cancel buttons width in pixels (120px). * "number" The advanced filter dialog Ok and Cancel buttons width in pixels as a number (120). @@ -40962,6 +47497,7 @@ interface IgGridFiltering { /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. + * */ filterDialogMaxFilterCount?: number; @@ -40975,44 +47511,212 @@ interface IgGridFiltering { /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. + * */ showEmptyConditions?: boolean; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. + * */ showNullConditions?: boolean; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; /** * Enables/disables filtering persistence between states. + * */ persist?: boolean; /** * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). + * */ inherit?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + + /** + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. + */ + dataFiltering?: DataFilteringEvent; + + /** + * Event fired after the filtering has been executed and results are rendered. + */ + dataFiltered?: DataFilteredEvent; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + */ + dropDownOpening?: DropDownOpeningEvent; + + /** + * Event fired after the filter dropdown is opened for a specific column. + */ + dropDownOpened?: DropDownOpenedEvent; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + */ + dropDownClosing?: DropDownClosingEvent; + + /** + * Event fired after a filter column dropdown is completely closed. + */ + dropDownClosed?: DropDownClosedEvent; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + */ + filterDialogOpening?: FilterDialogOpeningEvent; + + /** + * Event fired after the advanced filter dialog is already opened. + */ + filterDialogOpened?: FilterDialogOpenedEvent; + + /** + * Event fired every time the advanced filter dialog changes its position. + */ + filterDialogMoving?: FilterDialogMovingEvent; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + */ + filterDialogFilterAdding?: FilterDialogFilterAddingEvent; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + */ + filterDialogFilterAdded?: FilterDialogFilterAddedEvent; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + */ + filterDialogClosing?: FilterDialogClosingEvent; + + /** + * Event fired after the advanced filter dialog has been closed. + */ + filterDialogClosed?: FilterDialogClosedEvent; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + */ + filterDialogContentsRendering?: FilterDialogContentsRenderingEvent; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + */ + filterDialogContentsRendered?: FilterDialogContentsRenderedEvent; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + */ + filterDialogFiltering?: FilterDialogFilteringEvent; + /** * Option for igGridFiltering */ [optionName: string]: any; } +interface IgGridFilteringMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridfiltering#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridfiltering#options:language) or [locale](ui.iggridfiltering#options:locale) option setter + */ + changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridfiltering#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridfiltering#options:regional) option setter + */ + changeRegional(): void; + + /** + * Destroys the filtering widget - remove fitler row, unbinds events, returns the grid to its previous state. + */ + destroy(): void; + + /** + * Returns the count of data records that match filtering conditions + */ + getFilteringMatchesCount(): number; + + /** + * Toggle filter row when mode is simple or [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is true. Otherwise show/hide advanced dialog. + * + * @param event Column key + */ + toggleFilterRowByFeatureChooser(event: string): void; + + /** + * Applies filtering programmatically and updates the UI by default. + * + * @param expressions An array of filtering expressions, each one having the format {fieldName: , expr: , cond: , logic: } where fieldName is the key of the column, expr is the actual expression string with which we would like to filter, logic is 'AND' or 'OR', and cond is one of the following strings: "equals", "doesNotEqual", "contains", "doesNotContain", "greaterThan", "lessThan", "greaterThanOrEqualTo", "lessThanOrEqualTo", "true", "false", "null", "notNull", "empty", "notEmpty", "startsWith", "endsWith", "today", "yesterday", "on", "notOn", "thisMonth", "lastMonth", "nextMonth", "before", "after", "thisYear", "lastYear", "nextYear". The difference between the empty and null filtering conditions is that empty includes null, NaN, and undefined, as well as the empty string. + * @param updateUI specifies whether the filter row should be also updated once the grid is filtered + * @param addedFromAdvanced + */ + filter(expressions: any[], updateUI?: boolean, addedFromAdvanced?: boolean): void; + + /** + * Check whether filterCondition requires or not filtering expression - e.g. if filterCondition is "lastMonth", "thisMonth", "null", "notNull", "true", "false", etc. then filtering expression is NOT required + * + * @param filterCondition filtering condition - e.g. "true", "false", "yesterday", "empty", "null", etc. + */ + requiresFilteringExpression(filterCondition: string): boolean; +} +interface JQuery { + data(propertyName: "igGridFiltering"): IgGridFilteringMethods; +} interface JQuery { + igGridFiltering(methodName: "changeGlobalLanguage"): void; + igGridFiltering(methodName: "changeGlobalRegional"): void; + igGridFiltering(methodName: "changeLocale"): void; + igGridFiltering(methodName: "changeRegional"): void; + igGridFiltering(methodName: "destroy"): void; + igGridFiltering(methodName: "getFilteringMatchesCount"): number; + igGridFiltering(methodName: "toggleFilterRowByFeatureChooser", event: string): void; + igGridFiltering(methodName: "filter", expressions: any[], updateUI?: boolean, addedFromAdvanced?: boolean): void; + igGridFiltering(methodName: "requiresFilteringExpression", filterCondition: string): boolean; + /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. + * */ igGridFiltering(optionLiteral: 'option', optionName: "caseSensitive"): boolean; /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "caseSensitive", optionValue: boolean): void; @@ -41021,6 +47725,7 @@ interface JQuery { * Enable/disable footer visibility with summary info about the filter. * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterSummaryAlwaysVisible"): boolean; @@ -41029,18 +47734,21 @@ interface JQuery { * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterSummaryAlwaysVisible", optionValue: boolean): void; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) + * */ igGridFiltering(optionLiteral: 'option', optionName: "renderFC"): boolean; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "renderFC", optionValue: boolean): void; @@ -41061,6 +47769,7 @@ interface JQuery { /** * Type of animations for the column filter dropdowns. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimations"): string; @@ -41068,6 +47777,7 @@ interface JQuery { /** * Type of animations for the column filter dropdowns. * + * * @optionValue New value to be set. */ @@ -41075,18 +47785,21 @@ interface JQuery { /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimationDuration"): number; /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimationDuration", optionValue: number): void; /** * Width of the column filter dropdowns. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDropDownWidth"): string|number; @@ -41094,6 +47807,7 @@ interface JQuery { /** * Width of the column filter dropdowns. * + * * @optionValue New value to be set. */ @@ -41119,18 +47833,21 @@ interface JQuery { /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterExprUrlKey"): string; /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterExprUrlKey", optionValue: string): void; /** * Enable/disable filter icons visibility. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDropDownItemIcons"): boolean; @@ -41138,6 +47855,7 @@ interface JQuery { /** * Enable/disable filter icons visibility. * + * * @optionValue New value to be set. */ @@ -41145,18 +47863,21 @@ interface JQuery { /** * A list of column settings that specifies custom filtering options on a per column basis. + * */ igGridFiltering(optionLiteral: 'option', optionName: "columnSettings"): IgGridFilteringColumnSetting[]; /** * A list of column settings that specifies custom filtering options on a per column basis. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridFilteringColumnSetting[]): void; /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). + * */ igGridFiltering(optionLiteral: 'option', optionName: "type"): string; @@ -41164,6 +47885,7 @@ interface JQuery { /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ @@ -41171,18 +47893,21 @@ interface JQuery { /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDelay"): number; /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDelay", optionValue: number): void; /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. + * */ igGridFiltering(optionLiteral: 'option', optionName: "mode"): string; @@ -41190,6 +47915,7 @@ interface JQuery { /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. * + * * @optionValue New value to be set. */ @@ -41197,18 +47923,21 @@ interface JQuery { /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). + * */ igGridFiltering(optionLiteral: 'option', optionName: "advancedModeEditorsVisible"): boolean; /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "advancedModeEditorsVisible", optionValue: boolean): void; /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). + * */ igGridFiltering(optionLiteral: 'option', optionName: "advancedModeHeaderButtonLocation"): string; @@ -41216,6 +47945,7 @@ interface JQuery { /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). * + * * @optionValue New value to be set. */ @@ -41223,6 +47953,7 @@ interface JQuery { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogWidth"): string|number; @@ -41230,6 +47961,7 @@ interface JQuery { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * @optionValue New value to be set. */ @@ -41237,6 +47969,7 @@ interface JQuery { /** * Default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogHeight"): string|number; @@ -41244,6 +47977,7 @@ interface JQuery { /** * Default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * @optionValue New value to be set. */ @@ -41251,6 +47985,7 @@ interface JQuery { /** * Width of the filtering condition dropdowns in the advanced filter dialog. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterDropDownDefaultWidth"): string|number; @@ -41258,6 +47993,7 @@ interface JQuery { /** * Width of the filtering condition dropdowns in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -41265,6 +48001,7 @@ interface JQuery { /** * Width of the filtering expression input boxes in the advanced filter dialog. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogExprInputDefaultWidth"): string|number; @@ -41272,6 +48009,7 @@ interface JQuery { /** * Width of the filtering expression input boxes in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -41279,6 +48017,7 @@ interface JQuery { /** * Width of the column chooser dropdowns in the advanced filter dialog. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogColumnDropDownDefaultWidth"): string|number; @@ -41286,6 +48025,7 @@ interface JQuery { /** * Width of the column chooser dropdowns in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -41293,18 +48033,21 @@ interface JQuery { /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. + * */ igGridFiltering(optionLiteral: 'option', optionName: "renderFilterButton"): boolean; /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "renderFilterButton", optionValue: boolean): void; /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterButtonLocation"): string; @@ -41312,6 +48055,7 @@ interface JQuery { /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. * + * * @optionValue New value to be set. */ @@ -41405,24 +48149,28 @@ interface JQuery { /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionTemplate"): string; /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionTemplate", optionValue: string): void; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionDropDownTemplate"): string; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionDropDownTemplate", optionValue: string): void; @@ -41433,6 +48181,7 @@ interface JQuery { * E.g.: DOM element used for selecting column has attribute "data-af-col", for selecting filter condition - "data-af-cond", for filter expression- "data-af-expr". * NOTE: The template is supported only with . * The default template is " ". + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterTemplate"): string; @@ -41443,24 +48192,28 @@ interface JQuery { * NOTE: The template is supported only with . * The default template is " ". * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterTemplate", optionValue: string): void; /** * Custom template for options in condition list in filter dialog. The default template is "". + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterConditionTemplate"): string; /** * Custom template for options in condition list in filter dialog. The default template is "". * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterConditionTemplate", optionValue: string): void; /** * Add button width - in the advanced filter dialog. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddButtonWidth"): string|number; @@ -41468,6 +48221,7 @@ interface JQuery { /** * Add button width - in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -41475,6 +48229,7 @@ interface JQuery { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogOkCancelButtonWidth"): string|number; @@ -41482,6 +48237,7 @@ interface JQuery { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. * + * * @optionValue New value to be set. */ @@ -41489,12 +48245,14 @@ interface JQuery { /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. + * */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogMaxFilterCount"): number; /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "filterDialogMaxFilterCount", optionValue: number): void; @@ -41519,63 +48277,309 @@ interface JQuery { /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. + * */ igGridFiltering(optionLiteral: 'option', optionName: "showEmptyConditions"): boolean; /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "showEmptyConditions", optionValue: boolean): void; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. + * */ igGridFiltering(optionLiteral: 'option', optionName: "showNullConditions"): boolean; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "showNullConditions", optionValue: boolean): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igGridFiltering(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Enables/disables filtering persistence between states. + * */ igGridFiltering(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables filtering persistence between states. * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). + * */ igGridFiltering(optionLiteral: 'option', optionName: "inherit"): boolean; /** * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). * + * * @optionValue New value to be set. */ igGridFiltering(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridFiltering(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridFiltering(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridFiltering(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridFiltering(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + + /** + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dataFiltering"): DataFilteringEvent; + + /** + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dataFiltering", optionValue: DataFilteringEvent): void; + + /** + * Event fired after the filtering has been executed and results are rendered. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dataFiltered"): DataFilteredEvent; + + /** + * Event fired after the filtering has been executed and results are rendered. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dataFiltered", optionValue: DataFilteredEvent): void; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownOpening"): DropDownOpeningEvent; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownOpening", optionValue: DropDownOpeningEvent): void; + + /** + * Event fired after the filter dropdown is opened for a specific column. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownOpened"): DropDownOpenedEvent; + + /** + * Event fired after the filter dropdown is opened for a specific column. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownOpened", optionValue: DropDownOpenedEvent): void; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownClosing"): DropDownClosingEvent; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownClosing", optionValue: DropDownClosingEvent): void; + + /** + * Event fired after a filter column dropdown is completely closed. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownClosed"): DropDownClosedEvent; + + /** + * Event fired after a filter column dropdown is completely closed. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "dropDownClosed", optionValue: DropDownClosedEvent): void; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpening"): FilterDialogOpeningEvent; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpening", optionValue: FilterDialogOpeningEvent): void; + + /** + * Event fired after the advanced filter dialog is already opened. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpened"): FilterDialogOpenedEvent; + + /** + * Event fired after the advanced filter dialog is already opened. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpened", optionValue: FilterDialogOpenedEvent): void; + + /** + * Event fired every time the advanced filter dialog changes its position. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogMoving"): FilterDialogMovingEvent; + + /** + * Event fired every time the advanced filter dialog changes its position. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogMoving", optionValue: FilterDialogMovingEvent): void; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdding"): FilterDialogFilterAddingEvent; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdding", optionValue: FilterDialogFilterAddingEvent): void; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdded"): FilterDialogFilterAddedEvent; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdded", optionValue: FilterDialogFilterAddedEvent): void; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosing"): FilterDialogClosingEvent; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosing", optionValue: FilterDialogClosingEvent): void; + + /** + * Event fired after the advanced filter dialog has been closed. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosed"): FilterDialogClosedEvent; + + /** + * Event fired after the advanced filter dialog has been closed. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosed", optionValue: FilterDialogClosedEvent): void; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendering"): FilterDialogContentsRenderingEvent; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendering", optionValue: FilterDialogContentsRenderingEvent): void; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendered"): FilterDialogContentsRenderedEvent; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendered", optionValue: FilterDialogContentsRenderedEvent): void; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFiltering"): FilterDialogFilteringEvent; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + * + * @optionValue Define event handler function. + */ + igGridFiltering(optionLiteral: 'option', optionName: "filterDialogFiltering", optionValue: FilterDialogFilteringEvent): void; igGridFiltering(options: IgGridFiltering): JQuery; igGridFiltering(optionLiteral: 'option', optionName: string): any; igGridFiltering(optionLiteral: 'option', options: IgGridFiltering): JQuery; @@ -41585,17 +48589,20 @@ interface JQuery { interface IgGridColumnGroupOptions { /** * Sets whether the group is expanded or collapsed. Applied only if the allowGroupCollapsing is set to true. + * */ expanded?: boolean; /** * Sets whether expansion indicators are visible in the group header. + * */ allowGroupCollapsing?: boolean; /** * Sets when should the group be hidden. Applied only if the allowGroupCollapsing is set to true. * + * * Valid values: * "never" never hide the group * "always" always hide the group @@ -41613,17 +48620,20 @@ interface IgGridColumnGroupOptions { interface IgGridColumn { /** * Header text for the specified column. + * */ headerText?: string; /** * The property in the data source to which the column is bound. Also used to identify the column by, and find specific columns with API methods such as [columnByKey](ui.iggrid#methods:columnByKey). + * */ key?: string; /** * Reference to a function (string or function) which will be used for formatting the cell values. The function should accept a value and return the new formatted value. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * Valid values: * "string" The name of the function which will be used for formatting the cell values. * "function" Function which will be used for formatting the cell values. The function should accept a value and return the new formatted value. @@ -41644,12 +48654,21 @@ interface IgGridColumn { /** * Data type of the column cell values: string, number, bool, date, object. + * + * + * Valid values: + * "string" Used when the data for the column is of type string + * "number" Used when the data for the column is of type number + * "boolean" Used when the data for the column is of type boolean + * "date" Used when the data for the column is of type date + * "object" Used when the data for the column is of type object */ - dataType?: string|number|boolean|Date|Object; + dataType?: string; /** * Width of the column in pixels or percentage. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text).If width is not defined and [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) is set, it is assumed for all columns. * + * * Valid values: * "string" The column width can be set in pixels (px), percentage (%) or as '*' in order to auto-size based on the cells and header content. * "number" The column width can be set as a number @@ -41658,32 +48677,38 @@ interface IgGridColumn { /** * Initial visibility of the column. A column can be hidden without the Hiding feature being enabled but there will be no UI for unhiding it. Columns can be defined as hidden in the options of the Hiding feature as well and those definitions take precedence. + * */ hidden?: boolean; /** * Sets a template for an individual column. the contents of the template should be the HTML markup that goes inside the table cell, or the entire table cell markup. [Here's an example of creating a basic column template](http://www.igniteui.com/help/creating-a-basic-column-template-in-the-iggrid) + * */ template?: string; /** * Sets whether column data is derived from the datasource. If set to true, then the cells in this column are not bound to the data source. The data in this column is populated using [formula](ui.iggrid#options:columns.formula), or using [unboundValues](ui.iggrid#options:columns.unboundValues), or through the [setUnboundValues](ui.iggrid#methods:setUnboundValues) API method. [Here's an overview of the unbound columns feature](http://www.igniteui.com/help/iggrid-unboundcolumns-overview) + * */ unbound?: boolean; /** * Options used to configure collapsible column [groups](ui.iggrid#options:columns.group). + * */ groupOptions?: IgGridColumnGroupOptions; /** * Array of child column definitions. If the column has the property group than the grid has multi column headers. + * */ group?: any[]; /** * Determines the way in which dates will be displayed in the grid for this column. * + * * Valid values: * "local" The dates for this column will be rendered in the client's local timezone. * "utc" The dates for this column will be rendered in their UTC representation. @@ -41699,6 +48724,7 @@ interface IgGridColumn { /** * A reference to or the name of a JavaScript function, which will calculate the value of the current cell based on other cell values in the same row. Used with [unbound columns](ui.iggrid#options:columns.unbound). * + * * Valid values: * "string" The name of the JavaScript function. * "function" Reference to the JavaScript function. @@ -41707,22 +48733,26 @@ interface IgGridColumn { /** * Array of values which will be populated in the column cells at initialization, if the column is [unbound](ui.iggrid#options:columns.unbound). + * */ unboundValues?: any[]; /** * Space-separated list of CSS classes to be applied on the header cell of this column. + * */ headerCssClass?: string; /** * Space-separated list of CSS classes to be applied on the data cells of this column. The class is not applied if the column has a column [template](ui.iggrid#options:columns.template) defined, which contains full definition in the template. + * */ columnCssClass?: string; /** * This option is applicable only for columns with [dataType](ui.iggrid#options:columns.dataType) of object. Reference to a function, or the name of the function, that will be used for complex data extraction from the data records, whose return value will be used for all data operations associated with this column and will be displayed as cell value. [Here you can find more examples of how to setup a column mapper](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-mapper) * + * * Valid values: * "string" The name of the mapper function. * "function" Reference to the mapper function. @@ -41731,26 +48761,31 @@ interface IgGridColumn { /** * Specifies the row index of the cell in a Multi-Row Layout configuration. All columns must have this property set for the multi-row-layout mode to be enabled. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ rowIndex?: number; /** * Specifies the column index of the cell in a Multi-Row Layout configuration. All columns must have this property set for the multi-row-layout mode to be enabled. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ columnIndex?: number; /** * Specifies the navigation index of the cell for the TAB sequence when the cells are in edit mode in a Multi-Row Layout grid. Has no effect otherwise. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ navigationIndex?: number; /** * Specifies the colSpan of the cell in a Multi-Row Layout configuration. colSpan 0 is not supported and will be changed to 1 by the grid. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ colSpan?: number; /** * Specifies the rowSpan of the cell in a Multi-Row Layout configuration. rowSpan 0 is not supported and will be changed to 1 by the grid. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout). If multi-row-layout is not used but multi-column-header is set then this option is used to adjust span of header cell. + * */ rowSpan?: number; @@ -41775,16 +48810,19 @@ interface IgGridFeature { interface IgGridRestSettingsCreate { /** * Specifies a remote URL to which create requests will be sent. This will be used for both batch and non-batch, however if template is also set, this URL will only be used for batch requests. + * */ url?: string; /** * Specifies a remote URL template. Use ${id} in place of the resource id. + * */ template?: string; /** * Specifies whether create requests will be sent in batches + * */ batch?: boolean; @@ -41841,6 +48879,7 @@ interface IgGridRestSettingsRemove { interface IgGridRestSettings { /** * Settings for create requests + * */ create?: IgGridRestSettingsCreate; @@ -41861,11 +48900,13 @@ interface IgGridRestSettings { /** * Specifies a custom function to serialize content sent to the server. It should accept a single object or an array of objects and return a string. If not specified, JSON.stringify() will be used. + * */ contentSerializer?: Function; /** * Specifies the content type of the request. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ contentType?: string; @@ -41878,41 +48919,49 @@ interface IgGridRestSettings { interface IgGridScrollSettings { /** * Sets gets current vertical position. + * */ scrollTop?: number; /** * Sets gets current horizontal position. + * */ scrollLeft?: number; /** * Sets gets the step of the default scrolling behavior when using the mouse wheel. + * */ wheelStep?: number; /** * Sets gets if smoother scrolling with small intertia should be used when using the mouse wheel. + * */ smoothing?: boolean; /** * Sets or gets the modifier for how many pixels will be scrolled when using the mouse wheel once. This is used only for the [smooth scrolling behavior](ui.iggrid#options:scrollSettings.smoothing). + * */ smoothingStep?: number; /** * Sets or gets the modifier for how long the scroll ‘animation’ lasts when using the mouse wheel once. This is used only for the [smooth scrolling behavior](ui.iggrid#options:scrollSettings.smoothing). + * */ smoothingDuration?: number; /** * Sets gets the modifier for how much the inertia scrolls on touch devices. Note: Value set to 0 would disable touch movements. Value set to -1 would invert them. + * */ inertiaStep?: number; /** * Sets gets the modifier for how long the inertia last on touch devices. + * */ inertiaDuration?: number; @@ -42231,9 +49280,16 @@ interface DestroyedEventUIParam { } interface IgGrid { + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget width can be set in pixels (px) or percentage (%). Example values: "800px", "800" (defaults to pixels), "100%". * "number" The widget width can be set in pixels as a number. Example values: 800, 700. @@ -42244,6 +49300,7 @@ interface IgGrid { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number @@ -42253,12 +49310,14 @@ interface IgGrid { /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ autoAdjustHeight?: boolean; /** * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. * + * * Valid values: * "string" The avarage row height can be set in pixels ("25px"). * "number" The avarage row height can be set in pixels as a number (25). @@ -42268,6 +49327,7 @@ interface IgGrid { /** * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. * + * * Valid values: * "string" The avarage column width can be set in pixels ("25px"). * "number" The avarage column width can be set in pixels as a number (25). @@ -42275,10 +49335,11 @@ interface IgGrid { avgColumnWidth?: string|number; /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). + * * * Valid values: - * "string" The default column width can be set in pixels ("100px"). + * "string" The default column width can be set in pixels ("100px") or as '*' in order to auto-size based on the cells and header content. * "number" The default column width can be set in pixels as a number (100). */ defaultColumnWidth?: string|number; @@ -42287,17 +49348,20 @@ interface IgGrid { * If no [columns](ui.iggrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.iggrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.iggrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.iggrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. + * */ autoGenerateColumns?: boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ virtualization?: boolean; /** * Determines row virtualization mode. * + * * Valid values: * "fixed" Renders only the visible rows and/or columns in the grid. On scrolling the same rows and/or columns are updated with new data from the data source. Only fixed virtualization can work with column virtualization at the same time. Fixed virtualization is not supported by some grid features: Resizing, Group By, Responsive. * "continuous" renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. @@ -42306,27 +49370,32 @@ interface IgGrid { /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ rowVirtualization?: boolean; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". + * */ columnVirtualization?: boolean; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). + * */ virtualizationMouseWheelStep?: number; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ adjustVirtualHeights?: boolean; /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * Valid values: * "infragistics" The grid will use the Infragistics Templating engine to render its [column templates](ui.iggrid#options:columns.template) and specific parts of the UI. * "jsRender" The grid will use jsRender to render its [column templates](ui.iggrid#options:columns.template) and specific parts of the UI. @@ -42335,12 +49404,14 @@ interface IgGrid { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ columns?: IgGridColumn[]; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself * + * * Valid values: * "array" dataSource as an array * "object" ddataSource as an object @@ -42350,86 +49421,102 @@ interface IgGrid { /** * Specifies a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ dataSourceUrl?: string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ dataSourceType?: string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ responseDataKey?: string; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. */ responseTotalRecCountKey?: string; /** * Specifies the HTTP verb to be used to issue the requests to a remote data source. + * */ requestType?: string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ responseContentType?: string; /** * Controls the visibility of the grid header. + * */ showHeader?: boolean; /** * Controls the visibility of the grid footer. + * */ showFooter?: boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ fixedHeaders?: boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ fixedFooters?: boolean; /** * Caption text that will be shown above the grid header. + * */ caption?: string; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ features?: IgGridFeature[]; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ tabIndex?: number; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. + * */ localSchemaTransform?: boolean; /** * Key of the column containing unique identifiers for the data records. + * */ primaryKey?: string; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ serializeTransactionLog?: boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ autoCommit?: boolean; @@ -42439,12 +49526,14 @@ interface IgGrid { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. + * */ aggregateTransactions?: boolean; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * Valid values: * "date" formats only Date columns * "number" formats only number columns @@ -42456,58 +49545,69 @@ interface IgGrid { /** * Gets sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). + * */ renderCheckboxes?: boolean; /** * URL to which updating requests will be made. + * */ updateUrl?: string; /** * Settings related to REST compliant update routines. + * */ restSettings?: IgGridRestSettings; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ alternateRowStyles?: boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ autofitLastColumn?: boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ enableHoverStyles?: boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ enableUTCDates?: boolean; /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ mergeUnboundColumns?: boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ jsonpRequest?: boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ enableResizeContainerCheck?: boolean; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * Valid values: * "none" Always hide the feature chooser icon; The feature chooser is shown on tapping/clicking the column header. * "desktopOnly" Always show the icon on desktop but hide when touch device detected. @@ -42517,9 +49617,22 @@ interface IgGrid { /** * Settings related to content scrolling. + * */ scrollSettings?: IgGridScrollSettings; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired when a cell is clicked. */ @@ -42658,6 +49771,11 @@ interface IgGridMethods { * Returns the element holding the data records */ widget(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggrid#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggrid#options:regional) option setter + */ changeRegional(): void; /** @@ -43001,6 +50119,8 @@ interface IgGridMethods { /** * Causes the grid to data bind to the data source (local or remote) , and re-render all of the data as well + * + * @param internal */ dataBind(internal: Object): void; @@ -43119,8 +50239,28 @@ interface IgGridMethods { * 1. Remove custom CSS classes that were added. * 2. Unwrap any wrapping elements such as scrolling divs and other containers. * 3. Unbind all events that were bound. + * + * @param notToCallDestroy */ destroy(notToCallDestroy: Object): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igGrid"): IgGridMethods; @@ -43199,9 +50339,27 @@ interface JQuery { igGrid(methodName: "virtualScrollTo", scrollerPosition: Object): void; igGrid(methodName: "getColumnByTD", $td: Object): Object; igGrid(methodName: "destroy", notToCallDestroy: Object): void; + igGrid(methodName: "changeLocale", $container: Object): void; + igGrid(methodName: "changeGlobalLanguage"): void; + igGrid(methodName: "changeGlobalRegional"): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igGrid(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGrid(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igGrid(optionLiteral: 'option', optionName: "width"): string|number; @@ -43209,6 +50367,7 @@ interface JQuery { /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -43216,6 +50375,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igGrid(optionLiteral: 'option', optionName: "height"): string|number; @@ -43223,6 +50383,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -43230,18 +50391,21 @@ interface JQuery { /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ igGrid(optionLiteral: 'option', optionName: "autoAdjustHeight"): boolean; /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "autoAdjustHeight", optionValue: boolean): void; /** * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. + * */ igGrid(optionLiteral: 'option', optionName: "avgRowHeight"): string|number; @@ -43249,6 +50413,7 @@ interface JQuery { /** * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. * + * * @optionValue New value to be set. */ @@ -43256,6 +50421,7 @@ interface JQuery { /** * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. + * */ igGrid(optionLiteral: 'option', optionName: "avgColumnWidth"): string|number; @@ -43263,19 +50429,22 @@ interface JQuery { /** * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "avgColumnWidth", optionValue: string|number): void; /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). + * */ igGrid(optionLiteral: 'option', optionName: "defaultColumnWidth"): string|number; /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). + * * * @optionValue New value to be set. */ @@ -43286,6 +50455,7 @@ interface JQuery { * If no [columns](ui.iggrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.iggrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.iggrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.iggrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. + * */ igGrid(optionLiteral: 'option', optionName: "autoGenerateColumns"): boolean; @@ -43294,24 +50464,28 @@ interface JQuery { * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "autoGenerateColumns", optionValue: boolean): void; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ igGrid(optionLiteral: 'option', optionName: "virtualization"): boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "virtualization", optionValue: boolean): void; /** * Determines row virtualization mode. + * */ igGrid(optionLiteral: 'option', optionName: "virtualizationMode"): string; @@ -43319,6 +50493,7 @@ interface JQuery { /** * Determines row virtualization mode. * + * * @optionValue New value to be set. */ @@ -43326,54 +50501,63 @@ interface JQuery { /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ igGrid(optionLiteral: 'option', optionName: "rowVirtualization"): boolean; /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "rowVirtualization", optionValue: boolean): void; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". + * */ igGrid(optionLiteral: 'option', optionName: "columnVirtualization"): boolean; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "columnVirtualization", optionValue: boolean): void; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). + * */ igGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep"): number; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep", optionValue: number): void; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ igGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights"): boolean; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights", optionValue: boolean): void; /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. + * */ igGrid(optionLiteral: 'option', optionName: "templatingEngine"): string; @@ -43381,6 +50565,7 @@ interface JQuery { /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * @optionValue New value to be set. */ @@ -43388,18 +50573,21 @@ interface JQuery { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ igGrid(optionLiteral: 'option', optionName: "columns"): IgGridColumn[]; /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "columns", optionValue: IgGridColumn[]): void; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself + * */ igGrid(optionLiteral: 'option', optionName: "dataSource"): Array|Object|string; @@ -43407,6 +50595,7 @@ interface JQuery { /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself * + * * @optionValue New value to be set. */ @@ -43414,47 +50603,53 @@ interface JQuery { /** * Gets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ igGrid(optionLiteral: 'option', optionName: "dataSourceUrl"): string; /** * Sets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ igGrid(optionLiteral: 'option', optionName: "dataSourceType"): string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ igGrid(optionLiteral: 'option', optionName: "responseDataKey"): string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. */ igGrid(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. * * @optionValue New value to be set. */ @@ -43462,156 +50657,182 @@ interface JQuery { /** * Gets the HTTP verb to be used to issue the requests to a remote data source. + * */ igGrid(optionLiteral: 'option', optionName: "requestType"): string; /** * Sets the HTTP verb to be used to issue the requests to a remote data source. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ igGrid(optionLiteral: 'option', optionName: "responseContentType"): string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; /** * Controls the visibility of the grid header. + * */ igGrid(optionLiteral: 'option', optionName: "showHeader"): boolean; /** * Controls the visibility of the grid header. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "showHeader", optionValue: boolean): void; /** * Controls the visibility of the grid footer. + * */ igGrid(optionLiteral: 'option', optionName: "showFooter"): boolean; /** * Controls the visibility of the grid footer. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "showFooter", optionValue: boolean): void; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ igGrid(optionLiteral: 'option', optionName: "fixedHeaders"): boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "fixedHeaders", optionValue: boolean): void; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ igGrid(optionLiteral: 'option', optionName: "fixedFooters"): boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "fixedFooters", optionValue: boolean): void; /** * Caption text that will be shown above the grid header. + * */ igGrid(optionLiteral: 'option', optionName: "caption"): string; /** * Caption text that will be shown above the grid header. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "caption", optionValue: string): void; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ igGrid(optionLiteral: 'option', optionName: "features"): IgGridFeature[]; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "features", optionValue: IgGridFeature[]): void; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ igGrid(optionLiteral: 'option', optionName: "tabIndex"): number; /** * Initial tabIndex attribute that will be set on all focusable elements. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. + * */ igGrid(optionLiteral: 'option', optionName: "localSchemaTransform"): boolean; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "localSchemaTransform", optionValue: boolean): void; /** * Key of the column containing unique identifiers for the data records. + * */ igGrid(optionLiteral: 'option', optionName: "primaryKey"): string; /** * Key of the column containing unique identifiers for the data records. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "primaryKey", optionValue: string): void; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ igGrid(optionLiteral: 'option', optionName: "serializeTransactionLog"): boolean; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "serializeTransactionLog", optionValue: boolean): void; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ igGrid(optionLiteral: 'option', optionName: "autoCommit"): boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "autoCommit", optionValue: boolean): void; @@ -43622,6 +50843,7 @@ interface JQuery { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. + * */ igGrid(optionLiteral: 'option', optionName: "aggregateTransactions"): boolean; @@ -43632,12 +50854,14 @@ interface JQuery { * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "aggregateTransactions", optionValue: boolean): void; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) + * */ igGrid(optionLiteral: 'option', optionName: "autoFormat"): string|boolean; @@ -43645,6 +50869,7 @@ interface JQuery { /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * @optionValue New value to be set. */ @@ -43652,84 +50877,98 @@ interface JQuery { /** * Gets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). + * */ igGrid(optionLiteral: 'option', optionName: "renderCheckboxes"): boolean; /** * Sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "renderCheckboxes", optionValue: boolean): void; /** * URL to which updating requests will be made. + * */ igGrid(optionLiteral: 'option', optionName: "updateUrl"): string; /** * URL to which updating requests will be made. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "updateUrl", optionValue: string): void; /** * Settings related to REST compliant update routines. + * */ igGrid(optionLiteral: 'option', optionName: "restSettings"): IgGridRestSettings; /** * Settings related to REST compliant update routines. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "restSettings", optionValue: IgGridRestSettings): void; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ igGrid(optionLiteral: 'option', optionName: "alternateRowStyles"): boolean; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "alternateRowStyles", optionValue: boolean): void; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ igGrid(optionLiteral: 'option', optionName: "autofitLastColumn"): boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "autofitLastColumn", optionValue: boolean): void; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ igGrid(optionLiteral: 'option', optionName: "enableHoverStyles"): boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "enableHoverStyles", optionValue: boolean): void; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ igGrid(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; @@ -43737,6 +50976,7 @@ interface JQuery { /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ igGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns"): boolean; @@ -43744,36 +50984,42 @@ interface JQuery { * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns", optionValue: boolean): void; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ igGrid(optionLiteral: 'option', optionName: "jsonpRequest"): boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "jsonpRequest", optionValue: boolean): void; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ igGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck"): boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck", optionValue: boolean): void; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. + * */ igGrid(optionLiteral: 'option', optionName: "featureChooserIconDisplay"): string; @@ -43781,6 +51027,7 @@ interface JQuery { /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * @optionValue New value to be set. */ @@ -43788,16 +51035,48 @@ interface JQuery { /** * Settings related to content scrolling. + * */ igGrid(optionLiteral: 'option', optionName: "scrollSettings"): IgGridScrollSettings; /** * Settings related to content scrolling. * + * * @optionValue New value to be set. */ igGrid(optionLiteral: 'option', optionName: "scrollSettings", optionValue: IgGridScrollSettings): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGrid(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGrid(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGrid(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGrid(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired when a cell is clicked. */ @@ -44111,16 +51390,19 @@ interface IgGridGroupByGroupedColumn { /** * sort order - ascending or descending + * */ dir?: any; /** * Key of the columnLayout, if the grid is hierarchical + * */ layout?: string; /** * [column](ui.iggrid#options:columns) object for the column that is grouped + * */ col?: any; @@ -44133,11 +51415,13 @@ interface IgGridGroupByGroupedColumn { interface IgGridGroupBySummarySettings { /** * Specifies the delimiter for multiple summaries. + * */ multiSummaryDelimiter?: string; /** * Format of the summary value. By default, two digits are shown after the decimal place. Checkout [Formatting Dates, Numbers and Strings](http://www.igniteui.com/help/formatting-dates-numbers-and-strings) for details on the valid formatting specifiers. + * */ summaryFormat?: string; @@ -44151,6 +51435,7 @@ interface IgGridGroupByColumnSettingsSummaries { /** * the summary function key * + * * Valid values: * "avg" average summary function * "min" minimum summary function @@ -44163,6 +51448,7 @@ interface IgGridGroupByColumnSettingsSummaries { /** * Specifies the summary text that will be shown before the value + * */ text?: string; @@ -44173,6 +51459,7 @@ interface IgGridGroupByColumnSettingsSummaries { * key - key of the grouped column, * allGroupData - array of data records for the group(for the whole data source - not only for the data view) * + * * Valid values: * "string" the name of the function as a string located in the global window object. * "function" which will be used for calculating the summary value. @@ -44188,11 +51475,13 @@ interface IgGridGroupByColumnSettingsSummaries { interface IgGridGroupByColumnSettings { /** * Enables/disables grouping a column from the UI. By default all columns can be grouped. + * */ allowGrouping?: boolean; /** * Specifies the initial column grouped state. + * */ isGroupBy?: boolean; @@ -44207,6 +51496,7 @@ interface IgGridGroupByColumnSettings { * 1 - indicating that val1 > val2 * -1 - indicating that val1 < val2 * + * * Valid values: * "string" the name of the function as a string located in the global window object. * "function" function which will be used for custom comparison. @@ -44221,6 +51511,7 @@ interface IgGridGroupByColumnSettings { /** * Reference/name of a function (string or function) which will be used for formatting the cell values. The function should accept a value from the grouped column and return the new formatted value in the label of the row. * + * * Valid values: * "string" the name of the function as a string located in the global window object. * "function" which will be used for formatting the cell values. @@ -44229,16 +51520,19 @@ interface IgGridGroupByColumnSettings { /** * Specifies the sort order - ascending or descending when the column is initially grouped ([isGroupBy](ui.iggridgroupby#options:columnSettings.isGroupBy) = true). + * */ dir?: any; /** * A list of aggregation functions to calculate on the column values for each group. When not specified the default aggregate function is "count". + * */ summaries?: IgGridGroupByColumnSettingsSummaries; /** * Enables/disables default summaries per group data island or specifies summaries that are applied to specific column no matter the group. + * */ groupSummaries?: any; @@ -44251,96 +51545,115 @@ interface IgGridGroupByColumnSettings { interface IgGridGroupByLocale { /** * Specifies the group by area text. + * */ emptyGroupByAreaContent?: string; /** * Specifies the text for the hyperlink which opens the GroupBy Dialog. + * */ emptyGroupByAreaContentSelectColumns?: string; /** * Specifies the caption for the hyperlink which opens the GroupBy Dialog. + * */ emptyGroupByAreaContentSelectColumnsCaption?: string; /** * Specifies the expand groups button tooltip. + * */ expandTooltip?: string; /** * Specifies the collapse groups button tooltip. + * */ collapseTooltip?: string; /** * Specifies the remove group button tooltip. + * */ removeButtonTooltip?: string; /** * Specifies caption for each descending sorted column in GroupBy Dialog. + * */ modalDialogCaptionButtonDesc?: string; /** * Specifies caption for each descending sorted column in GroupBy Dialog. + * */ modalDialogCaptionButtonAsc?: string; /** * Specifies caption for ungroup button in GroupBy Dialog. + * */ modalDialogCaptionButtonUngroup?: string; /** * Specifies text for group button in GroupBy Dialog. + * */ modalDialogGroupByButtonText?: string; /** * Specifies caption text for the GroupBy Dialog. + * */ modalDialogCaptionText?: string; /** * Specifies label for layouts dropdown in the GroupBy Dialog. + * */ modalDialogDropDownLabel?: string; /** * Specifies label for "Clear all" button in the GroupBy Dialog. + * */ modalDialogClearAllButtonLabel?: string; /** * Specifies name of the root layout which is shown for the layouts in the modal dialog tree. + * */ modalDialogRootLevelHierarchicalGrid?: string; /** * Specifies caption of layouts dropdown button in the GroupBy Dialog. + * */ modalDialogDropDownButtonCaption?: string; /** * Specifies text of button which apply changes in modal dialog. + * */ modalDialogButtonApplyText?: string; /** * Specifies text of button which cancel changes in modal dialog. + * */ modalDialogButtonCancelText?: string; /** * Specifies the summary row title. + * */ summaryRowTitle?: string; /** * Specifies the summary icon title. + * */ summaryIconTitle?: string; @@ -44720,6 +52033,7 @@ interface IgGridGroupBy { /** * Sets the place in the grid where the GroupBy area will be * + * * Valid values: * "top" the GroupBy area will be rendered above the grid headers * "hidden" the GroupBy area will not be rendered @@ -44729,12 +52043,14 @@ interface IgGridGroupBy { /** * Specifies if after grouping, the grouped rows will be initially expanded or collapsed. + * */ initialExpand?: boolean; /** * Specifies when paging is applied and there is at least one grouped column which records should be included in page processing. * + * * Valid values: * "allRecords" All records are included in page processing - data records and group-by metadata records * "dataRecordsOnly" Only data records are included in page processing(metadata group-by records are ignored) @@ -44743,27 +52059,32 @@ interface IgGridGroupBy { /** * Specifies if grouped rows will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. + * */ expansionIndicatorVisibility?: boolean; /** * By default, the column width for the header is taken. If this is specified it's used for all headers. + * */ groupByLabelWidth?: number; /** * Specifies the opacity of the drag markup, while a column header is being dragged. The value must be between 0 and 1. + * */ labelDragHelperOpacity?: number; /** * Specifies the indentation for a grouped row. If several columns are grouped, the total indentation will grow + * */ indentation?: number; /** * default sort order - ascending or descending * + * * Valid values: * "asc" The group is sorted in ascending order. * "desc" The group is sorted in descending order. @@ -44772,22 +52093,26 @@ interface IgGridGroupBy { /** * Returns the list of currently grouped columns. The option is read-only and cannot be set at initialization or at runtime. + * */ groupedColumns?: IgGridGroupByGroupedColumn[]; /** * Specifies a key to get group by data from the remote response. + * */ resultResponseKey?: string; /** * Template for the grouped row's text. Variables available for the template are ${key}, ${val} and ${count}. + * */ groupedRowTextTemplate?: string; /** * Specifies whether the GroupBy operation takes place locally on client-side or remotely on server-side. * + * * Valid values: * "local" Execute the GroupBy operation locally on client-side. * "remote" Execute the GroupBy operation by a request to the server. @@ -44796,26 +52121,31 @@ interface IgGridGroupBy { /** * URL param name which specifies a GroupBy [expression](ig.datasource#options:settings.sorting.expressions). When groupByUrlKey, [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ groupByUrlKey?: string; /** * URL param value denoting ascending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), groupByUrlKeyAscValue and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ groupByUrlKeyAscValue?: string; /** * URL param value denoting descending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and groupByUrlKeyDescValue are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ groupByUrlKeyDescValue?: string; /** * Specifies the settings for GroupBy summaries. + * */ summarySettings?: IgGridGroupBySummarySettings; /** * Configures individual column settings. + * */ columnSettings?: IgGridGroupByColumnSettings; @@ -44912,27 +52242,32 @@ interface IgGridGroupBy { /** * Enables/disables immediate column grouping/ungrouping. When false operation is delayed until after "Apply" button is clicked by the user. + * */ modalDialogGroupByOnClick?: boolean; /** * Specifies width of layouts dropdown in the GroupBy Dialog + * */ modalDialogDropDownWidth?: number; /** * Specifies width of layouts dropdown in the GroupBy Dialog + * */ modalDialogDropDownAreaWidth?: number; /** * Specifies time in milliseconds for animation duration to show/hide modal dialog + * */ modalDialogAnimationDuration?: number; /** * Specifies width of the GroupBy Dialog * + * * Valid values: * "string" The dialog width can be set in pixels (px) or percentage (%). Example values: "800px", "800" (defaults to pixels), "100%". * "number" The dialog width can be set in pixels as a number. Example values: 800, 700. @@ -44942,6 +52277,7 @@ interface IgGridGroupBy { /** * Specifies height of the GroupBy Dialog * + * * Valid values: * "string" The dialog height can be set in pixels (px) or percentage (%). Example values: "800px", "800" (defaults to pixels), "100%". * "number" The dialog height can be set in pixels as a number. Example values: 800, 700. @@ -44950,17 +52286,20 @@ interface IgGridGroupBy { /** * Format grouped column using the formatter set in [igGrid.columns.formatter](ui.iggrid#options:columns.formatter) or [igGrid.columns.format](ui.iggrid#options:columns.format). + * */ useGridColumnFormatter?: boolean; /** * Enables / disables GroupBy persistence between states. Checkout the [GroupBy Persistence](http://www.igniteui.com/help/iggrid-groupby-overview#groupBy-persistence) topic for details. + * */ persist?: boolean; /** * Controls containment behavior for the GroupBy Dialog. * + * * Valid values: * "owner" The GroupBy Dialog will be draggable only in the grid area * "window" The GroupBy Dialog will be draggable in the whole window area @@ -44969,6 +52308,7 @@ interface IgGridGroupBy { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. Checkout the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic for details. + * */ dialogWidget?: string; @@ -44980,12 +52320,14 @@ interface IgGridGroupBy { /** * Specifies default summaries that will appear when grouping by a column on the bottom of each group as a row.This option has a lower priority than the groupSummaries defined under columnSettings for each column. * All default summaries are defined under $.ig.util.defaultSummaryMethods + * */ groupSummaries?: any; /** * Specifies the groupSummaries postion inside each group. * + * * Valid values: * "top" One summary row will be displayed at the top for each group * "bottom" One summary row will be displayed at the bottom for each group @@ -44993,6 +52335,18 @@ interface IgGridGroupBy { */ groupSummariesPosition?: string; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is fired when the grouped columns collection is about to change. This event is fired even when button OK is clicked from the modal dialog(after event modalDialogButtonApplyClick is fired) */ @@ -45079,7 +52433,19 @@ interface IgGridGroupBy { [optionName: string]: any; } interface IgGridGroupByMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridgroupby#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridgroupby#options:language) or [locale](ui.iggridgroupby#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridgroupby#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridgroupby#options:regional) option setter + */ changeRegional(): void; /** @@ -45175,6 +52541,8 @@ interface JQuery { } interface JQuery { + igGridGroupBy(methodName: "changeGlobalLanguage"): void; + igGridGroupBy(methodName: "changeGlobalRegional"): void; igGridGroupBy(methodName: "changeLocale"): void; igGridGroupBy(methodName: "changeRegional"): void; igGridGroupBy(methodName: "openGroupByDialog"): void; @@ -45194,6 +52562,7 @@ interface JQuery { /** * Sets the place in the grid where the GroupBy area will be + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByAreaVisibility"): string; @@ -45201,6 +52570,7 @@ interface JQuery { /** * Sets the place in the grid where the GroupBy area will be * + * * @optionValue New value to be set. */ @@ -45208,18 +52578,21 @@ interface JQuery { /** * Gets if after grouping, the grouped rows will be initially expanded or collapsed. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "initialExpand"): boolean; /** * Sets if after grouping, the grouped rows will be initially expanded or collapsed. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "initialExpand", optionValue: boolean): void; /** * Gets when paging is applied and there is at least one grouped column which records should be included in page processing. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "pagingMode"): string; @@ -45227,6 +52600,7 @@ interface JQuery { /** * Sets when paging is applied and there is at least one grouped column which records should be included in page processing. * + * * @optionValue New value to be set. */ @@ -45234,54 +52608,63 @@ interface JQuery { /** * Gets if grouped rows will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "expansionIndicatorVisibility"): boolean; /** * Sets if grouped rows will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "expansionIndicatorVisibility", optionValue: boolean): void; /** * By default, the column width for the header is taken. If this is specified it's used for all headers. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByLabelWidth"): number; /** * By default, the column width for the header is taken. If this is specified it's used for all headers. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByLabelWidth", optionValue: number): void; /** * Gets the opacity of the drag markup, while a column header is being dragged. The value must be between 0 and 1. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "labelDragHelperOpacity"): number; /** * Sets the opacity of the drag markup, while a column header is being dragged. The value must be between 0 and 1. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "labelDragHelperOpacity", optionValue: number): void; /** * Specifies the indentation for a grouped row. If several columns are grouped, the total indentation will grow + * */ igGridGroupBy(optionLiteral: 'option', optionName: "indentation"): number; /** * Specifies the indentation for a grouped row. If several columns are grouped, the total indentation will grow * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "indentation", optionValue: number): void; /** * Default sort order - ascending or descending + * */ igGridGroupBy(optionLiteral: 'option', optionName: "defaultSortingDirection"): string; @@ -45289,6 +52672,7 @@ interface JQuery { /** * Default sort order - ascending or descending * + * * @optionValue New value to be set. */ @@ -45296,42 +52680,49 @@ interface JQuery { /** * Returns the list of currently grouped columns. The option is read-only and cannot be set at initialization or at runtime. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupedColumns"): IgGridGroupByGroupedColumn[]; /** * Returns the list of currently grouped columns. The option is read-only and cannot be set at initialization or at runtime. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupedColumns", optionValue: IgGridGroupByGroupedColumn[]): void; /** * Gets a key to get group by data from the remote response. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "resultResponseKey"): string; /** * Sets a key to get group by data from the remote response. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "resultResponseKey", optionValue: string): void; /** * Template for the grouped row's text. Variables available for the template are ${key}, ${val} and ${count}. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupedRowTextTemplate"): string; /** * Template for the grouped row's text. Variables available for the template are ${key}, ${val} and ${count}. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupedRowTextTemplate", optionValue: string): void; /** * Gets whether the GroupBy operation takes place locally on client-side or remotely on server-side. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "type"): string; @@ -45339,6 +52730,7 @@ interface JQuery { /** * Sets whether the GroupBy operation takes place locally on client-side or remotely on server-side. * + * * @optionValue New value to be set. */ @@ -45346,60 +52738,70 @@ interface JQuery { /** * URL param name which specifies a GroupBy [expression](ig.datasource#options:settings.sorting.expressions). When groupByUrlKey, [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKey"): string; /** * URL param name which specifies a GroupBy [expression](ig.datasource#options:settings.sorting.expressions). When groupByUrlKey, [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKey", optionValue: string): void; /** * URL param value denoting ascending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), groupByUrlKeyAscValue and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKeyAscValue"): string; /** * URL param value denoting ascending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), groupByUrlKeyAscValue and [groupByUrlKeyDescValue](ui.iggridgroupby#options:groupByUrlKeyDescValue) are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKeyAscValue", optionValue: string): void; /** * URL param value denoting descending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and groupByUrlKeyDescValue are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKeyDescValue"): string; /** * URL param value denoting descending grouping. When [groupByUrlKey](ui.iggridgroupby#options:groupByUrlKey), [groupByUrlKeyAscValue](ui.iggridgroupby#options:groupByUrlKeyAscValue) and groupByUrlKeyDescValue are set the request looks like: ?()= (Example: ?groupby(col1)=asc). Otherwise the OData conventions for sorting params are used. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByUrlKeyDescValue", optionValue: string): void; /** * Gets the settings for GroupBy summaries. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "summarySettings"): IgGridGroupBySummarySettings; /** * Sets the settings for GroupBy summaries. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "summarySettings", optionValue: IgGridGroupBySummarySettings): void; /** * Configures individual column settings. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "columnSettings"): IgGridGroupByColumnSettings; /** * Configures individual column settings. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridGroupByColumnSettings): void; @@ -45618,54 +53020,63 @@ interface JQuery { /** * Enables/disables immediate column grouping/ungrouping. When false operation is delayed until after "Apply" button is clicked by the user. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogGroupByOnClick"): boolean; /** * Enables/disables immediate column grouping/ungrouping. When false operation is delayed until after "Apply" button is clicked by the user. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogGroupByOnClick", optionValue: boolean): void; /** * Gets width of layouts dropdown in the GroupBy Dialog + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogDropDownWidth"): number; /** * Sets width of layouts dropdown in the GroupBy Dialog * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogDropDownWidth", optionValue: number): void; /** * Gets width of layouts dropdown in the GroupBy Dialog + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogDropDownAreaWidth"): number; /** * Sets width of layouts dropdown in the GroupBy Dialog * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogDropDownAreaWidth", optionValue: number): void; /** * Gets time in milliseconds for animation duration to show/hide modal dialog + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogAnimationDuration"): number; /** * Sets time in milliseconds for animation duration to show/hide modal dialog * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogAnimationDuration", optionValue: number): void; /** * Gets width of the GroupBy Dialog + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogWidth"): string|number; @@ -45673,6 +53084,7 @@ interface JQuery { /** * Sets width of the GroupBy Dialog * + * * @optionValue New value to be set. */ @@ -45680,6 +53092,7 @@ interface JQuery { /** * Gets height of the GroupBy Dialog + * */ igGridGroupBy(optionLiteral: 'option', optionName: "modalDialogHeight"): string|number; @@ -45687,6 +53100,7 @@ interface JQuery { /** * Sets height of the GroupBy Dialog * + * * @optionValue New value to be set. */ @@ -45694,30 +53108,35 @@ interface JQuery { /** * Format grouped column using the formatter set in [igGrid.columns.formatter](ui.iggrid#options:columns.formatter) or [igGrid.columns.format](ui.iggrid#options:columns.format). + * */ igGridGroupBy(optionLiteral: 'option', optionName: "useGridColumnFormatter"): boolean; /** * Format grouped column using the formatter set in [igGrid.columns.formatter](ui.iggrid#options:columns.formatter) or [igGrid.columns.format](ui.iggrid#options:columns.format). * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "useGridColumnFormatter", optionValue: boolean): void; /** * Enables / disables GroupBy persistence between states. Checkout the [GroupBy Persistence](http://www.igniteui.com/help/iggrid-groupby-overview#groupBy-persistence) topic for details. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables / disables GroupBy persistence between states. Checkout the [GroupBy Persistence](http://www.igniteui.com/help/iggrid-groupby-overview#groupBy-persistence) topic for details. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Controls containment behavior for the GroupBy Dialog. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupByDialogContainment"): string; @@ -45725,6 +53144,7 @@ interface JQuery { /** * Controls containment behavior for the GroupBy Dialog. * + * * @optionValue New value to be set. */ @@ -45732,12 +53152,14 @@ interface JQuery { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. Checkout the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic for details. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. Checkout the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic for details. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; @@ -45757,6 +53179,7 @@ interface JQuery { /** * Gets default summaries that will appear when grouping by a column on the bottom of each group as a row.This option has a lower priority than the groupSummaries defined under columnSettings for each column. * All default summaries are defined under $.ig.util.defaultSummaryMethods + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupSummaries"): any; @@ -45764,12 +53187,14 @@ interface JQuery { * Sets default summaries that will appear when grouping by a column on the bottom of each group as a row.This option has a lower priority than the groupSummaries defined under columnSettings for each column. * All default summaries are defined under $.ig.util.defaultSummaryMethods * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupSummaries", optionValue: any): void; /** * Gets the groupSummaries postion inside each group. + * */ igGridGroupBy(optionLiteral: 'option', optionName: "groupSummariesPosition"): string; @@ -45777,11 +53202,42 @@ interface JQuery { /** * Sets the groupSummaries postion inside each group. * + * * @optionValue New value to be set. */ igGridGroupBy(optionLiteral: 'option', optionName: "groupSummariesPosition", optionValue: string): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridGroupBy(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridGroupBy(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridGroupBy(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridGroupBy(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is fired when the grouped columns collection is about to change. This event is fired even when button OK is clicked from the modal dialog(after event modalDialogButtonApplyClick is fired) */ @@ -45982,21 +53438,25 @@ interface JQuery { interface IgGridHidingColumnSetting { /** * Column key. this is a required property in every column setting if columnIndex is not set. + * */ columnKey?: string; /** * Column index. Can be used in place of column key. the preferred way of populating a column setting is to always use the column keys as identifiers. + * */ columnIndex?: number; /** * Allows the column to be hidden. + * */ allowHiding?: boolean; /** * Sets the initial visibility of the column. + * */ hidden?: boolean; @@ -46009,56 +53469,67 @@ interface IgGridHidingColumnSetting { interface IgGridHidingLocale { /** * The text used in the drop down tools menu(Feature Chooser) to launch the column chooser dialog. + * */ columnChooserDisplayText?: string; /** * The text displayed in the tooltip of the hidden column indicator. + * */ hiddenColumnIndicatorTooltipText?: string; /** * The text used in the drop down tools menu(Feature Chooser) to hide a column. + * */ columnHideText?: string; /** * The caption of the column chooser dialog. + * */ columnChooserCaptionLabel?: string; /** * The close button tooltip of the column chooser dialog. + * */ columnChooserCloseButtonTooltip?: string; /** * Specifies the hiding column icon tooltip. + * */ hideColumnIconTooltip?: string; /** * The text used in the column chooser to show column. + * */ columnChooserShowText?: string; /** * The text used in the column chooser to hide column. + * */ columnChooserHideText?: string; /** * Text label for reset button. + * */ columnChooserResetButtonLabel?: string; /** * Specifies the text of the button which applies changes in the modal dialog. + * */ columnChooserButtonApplyText?: string; /** * Specifies the text of the button which cancels changes in the modal dialog. + * */ columnChooserButtonCancelText?: string; @@ -46367,11 +53838,13 @@ interface ColumnChooserButtonResetClickEventUIParam { interface IgGridHiding { /** * A list of column settings that specifies hiding options on a per column basis. + * */ columnSettings?: IgGridHidingColumnSetting[]; /** * The width in pixels of the hidden column indicator in the header. + * */ hiddenColumnIndicatorHeaderWidth?: number; @@ -46385,16 +53858,19 @@ interface IgGridHiding { /** * The default column chooser width. + * */ columnChooserWidth?: string; /** * The default column chooser height. + * */ columnChooserHeight?: string; /** * The duration of the dropdown animation in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -46455,24 +53931,40 @@ interface IgGridHiding { /** * Specifies on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked + * */ columnChooserHideOnClick?: boolean; /** * Specifies time of milliseconds for animation duration to show/hide modal dialog + * */ columnChooserAnimationDuration?: number; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ inherit?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before a hiding operation is executed. */ @@ -46559,7 +54051,13 @@ interface IgGridHiding { [optionName: string]: any; } interface IgGridHidingMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridhiding#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridhiding#options:language) or [locale](ui.iggridhiding#options:locale) option setter + */ changeLocale(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Destroys the hiding widget @@ -46638,6 +54136,8 @@ interface JQuery { interface JQuery { igGridHiding(methodName: "changeLocale"): void; + igGridHiding(methodName: "changeGlobalLanguage"): void; + igGridHiding(methodName: "changeGlobalRegional"): void; igGridHiding(methodName: "destroy"): void; igGridHiding(methodName: "showColumnChooser"): void; igGridHiding(methodName: "hideColumnChooser"): void; @@ -46652,24 +54152,28 @@ interface JQuery { /** * A list of column settings that specifies hiding options on a per column basis. + * */ igGridHiding(optionLiteral: 'option', optionName: "columnSettings"): IgGridHidingColumnSetting[]; /** * A list of column settings that specifies hiding options on a per column basis. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridHidingColumnSetting[]): void; /** * The width in pixels of the hidden column indicator in the header. + * */ igGridHiding(optionLiteral: 'option', optionName: "hiddenColumnIndicatorHeaderWidth"): number; /** * The width in pixels of the hidden column indicator in the header. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "hiddenColumnIndicatorHeaderWidth", optionValue: number): void; @@ -46694,36 +54198,42 @@ interface JQuery { /** * The default column chooser width. + * */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserWidth"): string; /** * The default column chooser width. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserWidth", optionValue: string): void; /** * The default column chooser height. + * */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserHeight"): string; /** * The default column chooser height. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserHeight", optionValue: string): void; /** * The duration of the dropdown animation in milliseconds. + * */ igGridHiding(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * The duration of the dropdown animation in milliseconds. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -46858,52 +54368,90 @@ interface JQuery { /** * Gets on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked + * */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserHideOnClick"): boolean; /** * Sets on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserHideOnClick", optionValue: boolean): void; /** * Gets time of milliseconds for animation duration to show/hide modal dialog + * */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserAnimationDuration"): number; /** * Sets time of milliseconds for animation duration to show/hide modal dialog * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "columnChooserAnimationDuration", optionValue: number): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igGridHiding(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ igGridHiding(optionLiteral: 'option', optionName: "inherit"): boolean; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * + * * @optionValue New value to be set. */ igGridHiding(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridHiding(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridHiding(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridHiding(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridHiding(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before a hiding operation is executed. */ @@ -47104,11 +54652,13 @@ interface JQuery { interface IgHierarchicalGridLocale { /** * Specifies the default tooltip applied to an expand column cell, that is currently collapsed. + * */ expandTooltip?: string; /** * Specifies the default tooltip applied to an expand column cell, that is currently expanded. + * */ collapseTooltip?: string; @@ -47143,17 +54693,20 @@ interface IgHierarchicalGridColumnLayout { interface IgHierarchicalGridColumnGroupOptions { /** * Sets whether the group is expanded or collapsed. Applied only if the allowGroupCollapsing is set to true. + * */ expanded?: boolean; /** * Sets whether expansion indicators are visible in the group header. + * */ allowGroupCollapsing?: boolean; /** * Sets when should the group be hidden. Applied only if the allowGroupCollapsing is set to true. * + * * Valid values: * "never" never hide the group * "always" always hide the group @@ -47171,17 +54724,20 @@ interface IgHierarchicalGridColumnGroupOptions { interface IgHierarchicalGridColumn { /** * Header text for the specified column. + * */ headerText?: string; /** * The property in the data source to which the column is bound. Also used to identify the column by, and find specific columns with API methods such as [columnByKey](ui.ighierarchicalgrid#methods:columnByKey). + * */ key?: string; /** * Reference to a function (string or function) which will be used for formatting the cell values. The function should accept a value and return the new formatted value. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * Valid values: * "string" The name of the function which will be used for formatting the cell values. * "function" Function which will be used for formatting the cell values. The function should accept a value and return the new formatted value. @@ -47202,12 +54758,21 @@ interface IgHierarchicalGridColumn { /** * Data type of the column cell values: string, number, bool, date, object. + * + * + * Valid values: + * "string" The data inside the column is of type string + * "number" The data inside the column is of type number + * "boolean" The data inside the column is of type boolean + * "date" The data inside the column is of type date + * "object" The data inside the column is of type object */ - dataType?: string|number|boolean|Date|Object; + dataType?: string; /** * Width of the column in pixels or percentage. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text).If width is not defined and [defaultColumnWidth](ui.ighierarchicalgrid#options:defaultColumnWidth) is set, it is assumed for all columns. * + * * Valid values: * "string" The column width can be set in pixels (px), percentage (%) or as '*' in order to auto-size based on the cells and header content. * "number" The column width can be set as a number @@ -47216,32 +54781,38 @@ interface IgHierarchicalGridColumn { /** * Initial visibility of the column. A column can be hidden without the Hiding feature being enabled but there will be no UI for unhiding it. Columns can be defined as hidden in the options of the Hiding feature as well and those definitions take precedence. + * */ hidden?: boolean; /** * Sets a template for an individual column. the contents of the template should be the HTML markup that goes inside the table cell, or the entire table cell markup. [Here's an example of creating a basic column template](http://www.igniteui.com/help/creating-a-basic-column-template-in-the-iggrid) + * */ template?: string; /** * Sets whether column data is derived from the datasource. If set to true, then the cells in this column are not bound to the data source. The data in this column is populated using [formula](ui.ighierarchicalgrid#options:columns.formula), or using [unboundValues](ui.ighierarchicalgrid#options:columns.unboundValues), or through the [setUnboundValues](ui.ighierarchicalgrid#methods:setUnboundValues) API method. [Here's an overview of the unbound columns feature](http://www.igniteui.com/help/iggrid-unboundcolumns-overview) + * */ unbound?: boolean; /** * Options used to configure collapsible column [groups](ui.ighierarchicalgrid#options:columns.group). + * */ groupOptions?: IgHierarchicalGridColumnGroupOptions; /** * Array of child column definitions. If the column has the property group than the grid has multi column headers. + * */ group?: any[]; /** * Determines the way in which dates will be displayed in the grid for this column. * + * * Valid values: * "local" The dates for this column will be rendered in the client's local timezone. * "utc" The dates for this column will be rendered in their UTC representation. @@ -47257,6 +54828,7 @@ interface IgHierarchicalGridColumn { /** * A reference to or the name of a JavaScript function, which will calculate the value of the current cell based on other cell values in the same row. Used with [unbound columns](ui.ighierarchicalgrid#options:columns.unbound). * + * * Valid values: * "string" The name of the JavaScript function. * "function" Reference to the JavaScript function. @@ -47265,22 +54837,26 @@ interface IgHierarchicalGridColumn { /** * Array of values which will be populated in the column cells at initialization, if the column is [unbound](ui.ighierarchicalgrid#options:columns.unbound). + * */ unboundValues?: any[]; /** * Space-separated list of CSS classes to be applied on the header cell of this column. + * */ headerCssClass?: string; /** * Space-separated list of CSS classes to be applied on the data cells of this column. The class is not applied if the column has a column [template](ui.ighierarchicalgrid#options:columns.template) defined, which contains full definition in the template. + * */ columnCssClass?: string; /** * This option is applicable only for columns with [dataType](ui.ighierarchicalgrid#options:columns.dataType) of object. Reference to a function, or the name of the function, that will be used for complex data extraction from the data records, whose return value will be used for all data operations associated with this column and will be displayed as cell value. [Here you can find more examples of how to setup a column mapper](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-mapper) * + * * Valid values: * "string" The name of the mapper function. * "function" Reference to the mapper function. @@ -47289,26 +54865,31 @@ interface IgHierarchicalGridColumn { /** * Specifies the row index of the cell in a Multi-Row Layout configuration. All columns must have this property set for the multi-row-layout mode to be enabled. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ rowIndex?: number; /** * Specifies the column index of the cell in a Multi-Row Layout configuration. All columns must have this property set for the multi-row-layout mode to be enabled. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ columnIndex?: number; /** * Specifies the navigation index of the cell for the TAB sequence when the cells are in edit mode in a Multi-Row Layout grid. Has no effect otherwise. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ navigationIndex?: number; /** * Specifies the colSpan of the cell in a Multi-Row Layout configuration. colSpan 0 is not supported and will be changed to 1 by the grid. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout) + * */ colSpan?: number; /** * Specifies the rowSpan of the cell in a Multi-Row Layout configuration. rowSpan 0 is not supported and will be changed to 1 by the grid. [Here you can find more about the Multi-Row Layout feature](http://www.igniteui.com/help/iggrid-multirowlayout). If multi-row-layout is not used but multi-column-header is set then this option is used to adjust span of header cell. + * */ rowSpan?: number; @@ -47333,16 +54914,19 @@ interface IgHierarchicalGridFeature { interface IgHierarchicalGridRestSettingsCreate { /** * Specifies a remote URL to which create requests will be sent. This will be used for both batch and non-batch, however if template is also set, this URL will only be used for batch requests. + * */ url?: string; /** * Specifies a remote URL template. Use ${id} in place of the resource id. + * */ template?: string; /** * Specifies whether create requests will be sent in batches + * */ batch?: boolean; @@ -47399,6 +54983,7 @@ interface IgHierarchicalGridRestSettingsRemove { interface IgHierarchicalGridRestSettings { /** * Settings for create requests + * */ create?: IgHierarchicalGridRestSettingsCreate; @@ -47419,11 +55004,13 @@ interface IgHierarchicalGridRestSettings { /** * Specifies a custom function to serialize content sent to the server. It should accept a single object or an array of objects and return a string. If not specified, JSON.stringify() will be used. + * */ contentSerializer?: Function; /** * Specifies the content type of the request. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ contentType?: string; @@ -47436,41 +55023,49 @@ interface IgHierarchicalGridRestSettings { interface IgHierarchicalGridScrollSettings { /** * Sets gets current vertical position. + * */ scrollTop?: number; /** * Sets gets current horizontal position. + * */ scrollLeft?: number; /** * Sets gets the step of the default scrolling behavior when using the mouse wheel. + * */ wheelStep?: number; /** * Sets gets if smoother scrolling with small intertia should be used when using the mouse wheel. + * */ smoothing?: boolean; /** * Sets or gets the modifier for how many pixels will be scrolled when using the mouse wheel once. This is used only for the [smooth scrolling behavior](ui.ighierarchicalgrid#options:scrollSettings.smoothing). + * */ smoothingStep?: number; /** * Sets or gets the modifier for how long the scroll ‘animation’ lasts when using the mouse wheel once. This is used only for the [smooth scrolling behavior](ui.ighierarchicalgrid#options:scrollSettings.smoothing). + * */ smoothingDuration?: number; /** * Sets gets the modifier for how much the inertia scrolls on touch devices. Note: Value set to 0 would disable touch movements. Value set to -1 would invert them. + * */ inertiaStep?: number; /** * Sets gets the modifier for how long the inertia last on touch devices. + * */ inertiaDuration?: number; @@ -47621,59 +55216,70 @@ interface ChildGridCreatedEventUIParam {} interface IgHierarchicalGrid { /** - * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will + * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will render the child grids up to the specified level. + * */ initialDataBindDepth?: number; /** * No levels will be automatically expanded when the widget is instantiated for the first time + * */ initialExpandDepth?: number; /** * If true, encodes all requests using OData conventions and the $expand syntax + * */ odata?: boolean; /** * If true, load on demand will be achieved using REST compliant resource access with appropriate url-s for * the ajax GET calls. + * */ rest?: boolean; /** * Specifies the limit on the number of levels to bind to + * */ maxDataBindDepth?: number; /** * Specifies the default property in the response where children will be located + * */ defaultChildrenDataProperty?: string; /** * If true, will autogenerate all layouts assuming default values for "childrenDataProperty" * When autoGenerateLayouts is enabled, it will automatically generate all columns recursively. (all columns on all levels) + * */ autoGenerateLayouts?: boolean; /** * Applies a linear animation - either expanding or collapsing depending on the parent row state + * */ expandCollapseAnimations?: boolean; /** * Specifies the expand column width + * */ expandColWidth?: number; /** * Specifies the delimiter for constructing paths , for hierarchical lookup of data + * */ pathSeparator?: string; /** * The row expanding/collapsing animation duration in ms. + * */ animationDuration?: number; @@ -47692,12 +55298,14 @@ interface IgHierarchicalGrid { /** * List of columnLayout objects that specify the structure of the child grids. All options that are applicable to a flat grid are also applicable here + * */ columnLayouts?: IgHierarchicalGridColumnLayout[]; /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget width can be set in pixels (px) or percentage (%). Example values: "800px", "800" (defaults to pixels), "100%". * "number" The widget width can be set in pixels as a number. Example values: 800, 700. @@ -47708,6 +55316,7 @@ interface IgHierarchicalGrid { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number @@ -47717,12 +55326,14 @@ interface IgHierarchicalGrid { /** * If autoAdjustHeight is set to false, the [height](ui.ighierarchicalgrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.ighierarchicalgrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ autoAdjustHeight?: boolean; /** * Used for [row virtualization](ui.ighierarchicalgrid#options:rowVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. * + * * Valid values: * "string" The avarage row height can be set in pixels ("25px"). * "number" The avarage row height can be set in pixels as a number (25). @@ -47732,6 +55343,7 @@ interface IgHierarchicalGrid { /** * Used for [column virtualization](ui.ighierarchicalgrid#options:columnVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels for a column width. * + * * Valid values: * "string" The avarage column width can be set in pixels ("25px"). * "number" The avarage column width can be set in pixels as a number (25). @@ -47741,6 +55353,7 @@ interface IgHierarchicalGrid { /** * Default column width that will be set for all columns, that don't have [column width](ui.ighierarchicalgrid#options:columns.width) defined. * + * * Valid values: * "string" The default column width can be set in pixels ("100px"). * "number" The default column width can be set in pixels as a number (100). @@ -47751,17 +55364,20 @@ interface IgHierarchicalGrid { * If no [columns](ui.ighierarchicalgrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.ighierarchicalgrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.ighierarchicalgrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.ighierarchicalgrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.ighierarchicalgrid#options:defaultColumnWidth) as well. + * */ autoGenerateColumns?: boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ virtualization?: boolean; /** * Determines row virtualization mode. * + * * Valid values: * "fixed" Renders only the visible rows and/or columns in the grid. On scrolling the same rows and/or columns are updated with new data from the data source. Only fixed virtualization can work with column virtualization at the same time. Fixed virtualization is not supported by some grid features: Resizing, Group By, Responsive. * "continuous" renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. @@ -47770,27 +55386,32 @@ interface IgHierarchicalGrid { /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ rowVirtualization?: boolean; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.ighierarchicalgrid#options:virtualization) to true and [virtualizationMode](ui.ighierarchicalgrid#options:virtualizationMode) to "fixed". + * */ columnVirtualization?: boolean; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight). + * */ virtualizationMouseWheelStep?: number; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ adjustVirtualHeights?: boolean; /** * The templating engine that will be used to render the grid [column templates](ui.ighierarchicalgrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * Valid values: * "infragistics" The grid will use the Infragistics Templating engine to render its [column templates](ui.ighierarchicalgrid#options:columns.template) and specific parts of the UI. * "jsRender" The grid will use jsRender to render its [column templates](ui.ighierarchicalgrid#options:columns.template) and specific parts of the UI. @@ -47799,96 +55420,120 @@ interface IgHierarchicalGrid { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ columns?: IgHierarchicalGridColumn[]; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself + * + * + * Valid values: + * "string" DataSource as a string. For example a Url. + * "array" DataSource as an array. + * "object" DataSource as an object. For example a JSON object */ - dataSource?: any; + dataSource?: string|Array|Object; /** * Specifies a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ dataSourceUrl?: string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ dataSourceType?: string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ responseDataKey?: string; /** * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * */ responseTotalRecCountKey?: string; /** * Specifies the HTTP verb to be used to issue the requests to a remote data source. + * */ requestType?: string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ responseContentType?: string; /** * Controls the visibility of the grid header. + * */ showHeader?: boolean; /** * Controls the visibility of the grid footer. + * */ showFooter?: boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ fixedHeaders?: boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ fixedFooters?: boolean; /** * Caption text that will be shown above the grid header. + * */ caption?: string; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ features?: IgHierarchicalGridFeature[]; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ tabIndex?: number; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.ighierarchicalgrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.ighierarchicalgrid#options:columns) defined will be extracted in a new object and used. + * */ localSchemaTransform?: boolean; /** * Key of the column containing unique identifiers for the data records. + * */ primaryKey?: string; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ serializeTransactionLog?: boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.ighierarchicalgrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ autoCommit?: boolean; @@ -47898,12 +55543,14 @@ interface IgHierarchicalGrid { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.ighierarchicalgrid#options:autoCommit) is set to false. + * */ aggregateTransactions?: boolean; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * Valid values: * "date" formats only Date columns * "number" formats only number columns @@ -47915,58 +55562,69 @@ interface IgHierarchicalGrid { /** * Gets sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.ighierarchicalgrid#options:columns.template). + * */ renderCheckboxes?: boolean; /** * URL to which updating requests will be made. + * */ updateUrl?: string; /** * Settings related to REST compliant update routines. + * */ restSettings?: IgHierarchicalGridRestSettings; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ alternateRowStyles?: boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ autofitLastColumn?: boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ enableHoverStyles?: boolean; /** * Nables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ enableUTCDates?: boolean; /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ mergeUnboundColumns?: boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ jsonpRequest?: boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.ighierarchicalgrid#options:width) and/or [height](ui.ighierarchicalgrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ enableResizeContainerCheck?: boolean; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * Valid values: * "none" Always hide the feature chooser icon; The feature chooser is shown on tapping/clicking the column header. * "desktopOnly" Always show the icon on desktop but hide when touch device detected. @@ -47976,9 +55634,22 @@ interface IgHierarchicalGrid { /** * Settings related to content scrolling. + * */ scrollSettings?: IgHierarchicalGridScrollSettings; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is fired when a hierarchical row is about to be expanded */ @@ -48158,7 +55829,16 @@ interface IgHierarchicalGrid { [optionName: string]: any; } interface IgHierarchicalGridMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.ighierarchicalgrid#options:language) + * Note that this method is for rare scenarios, see [language](ui.ighierarchicalgrid#options:language) or [locale](ui.ighierarchicalgrid#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.ighierarchicalgrid#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.ighierarchicalgrid#options:regional) option setter + */ changeRegional(): void; /** @@ -48258,6 +55938,16 @@ interface IgHierarchicalGridMethods { * Destroys the hierarchical grid by recursively destroying all child grids */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igHierarchicalGrid"): IgHierarchicalGridMethods; @@ -48281,14 +55971,18 @@ interface JQuery { igHierarchicalGrid(methodName: "rollback", rebind?: boolean): void; igHierarchicalGrid(methodName: "saveChanges", success: Function, error: Function): void; igHierarchicalGrid(methodName: "destroy"): void; + igHierarchicalGrid(methodName: "changeGlobalLanguage"): void; + igHierarchicalGrid(methodName: "changeGlobalRegional"): void; /** - * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will + * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will render the child grids up to the specified level. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "initialDataBindDepth"): number; /** - * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will + * Only the first level will be data-bound initially. Also serves as "render" depth, meaning that depending on this prop, the grid will render the child grids up to the specified level. + * * * @optionValue New value to be set. */ @@ -48296,24 +55990,28 @@ interface JQuery { /** * No levels will be automatically expanded when the widget is instantiated for the first time + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "initialExpandDepth"): number; /** * No levels will be automatically expanded when the widget is instantiated for the first time * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "initialExpandDepth", optionValue: number): void; /** * If true, encodes all requests using OData conventions and the $expand syntax + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "odata"): boolean; /** * If true, encodes all requests using OData conventions and the $expand syntax * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "odata", optionValue: boolean): void; @@ -48321,6 +56019,7 @@ interface JQuery { /** * If true, load on demand will be achieved using REST compliant resource access with appropriate url-s for * the ajax GET calls. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "rest"): boolean; @@ -48328,30 +56027,35 @@ interface JQuery { * If true, load on demand will be achieved using REST compliant resource access with appropriate url-s for * the ajax GET calls. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "rest", optionValue: boolean): void; /** * Gets the limit on the number of levels to bind to + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "maxDataBindDepth"): number; /** * Sets the limit on the number of levels to bind to * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "maxDataBindDepth", optionValue: number): void; /** * Gets the default property in the response where children will be located + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "defaultChildrenDataProperty"): string; /** * Sets the default property in the response where children will be located * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "defaultChildrenDataProperty", optionValue: string): void; @@ -48359,6 +56063,7 @@ interface JQuery { /** * If true, will autogenerate all layouts assuming default values for "childrenDataProperty" * When autoGenerateLayouts is enabled, it will automatically generate all columns recursively. (all columns on all levels) + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoGenerateLayouts"): boolean; @@ -48366,54 +56071,63 @@ interface JQuery { * If true, will autogenerate all layouts assuming default values for "childrenDataProperty" * When autoGenerateLayouts is enabled, it will automatically generate all columns recursively. (all columns on all levels) * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoGenerateLayouts", optionValue: boolean): void; /** * Applies a linear animation - either expanding or collapsing depending on the parent row state + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "expandCollapseAnimations"): boolean; /** * Applies a linear animation - either expanding or collapsing depending on the parent row state * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "expandCollapseAnimations", optionValue: boolean): void; /** * Gets the expand column width + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "expandColWidth"): number; /** * Sets the expand column width * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "expandColWidth", optionValue: number): void; /** * Gets the delimiter for constructing paths , for hierarchical lookup of data + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "pathSeparator"): string; /** * Sets the delimiter for constructing paths , for hierarchical lookup of data * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "pathSeparator", optionValue: string): void; /** * The row expanding/collapsing animation duration in ms. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "animationDuration"): number; /** * The row expanding/collapsing animation duration in ms. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; @@ -48450,18 +56164,21 @@ interface JQuery { /** * List of columnLayout objects that specify the structure of the child grids. All options that are applicable to a flat grid are also applicable here + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columnLayouts"): IgHierarchicalGridColumnLayout[]; /** * List of columnLayout objects that specify the structure of the child grids. All options that are applicable to a flat grid are also applicable here * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columnLayouts", optionValue: IgHierarchicalGridColumnLayout[]): void; /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "width"): string|number; @@ -48469,6 +56186,7 @@ interface JQuery { /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -48476,6 +56194,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "height"): string|number; @@ -48483,6 +56202,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -48490,18 +56210,21 @@ interface JQuery { /** * If autoAdjustHeight is set to false, the [height](ui.ighierarchicalgrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data ( > 1000 rows rendered at once, no [virtualization](ui.ighierarchicalgrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoAdjustHeight"): boolean; /** * If autoAdjustHeight is set to false, the [height](ui.ighierarchicalgrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.ighierarchicalgrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoAdjustHeight", optionValue: boolean): void; /** * Used for [row virtualization](ui.ighierarchicalgrid#options:rowVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "avgRowHeight"): string|number; @@ -48509,6 +56232,7 @@ interface JQuery { /** * Used for [row virtualization](ui.ighierarchicalgrid#options:rowVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. * + * * @optionValue New value to be set. */ @@ -48516,6 +56240,7 @@ interface JQuery { /** * Used for [column virtualization](ui.ighierarchicalgrid#options:columnVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels for a column width. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "avgColumnWidth"): string|number; @@ -48523,6 +56248,7 @@ interface JQuery { /** * Used for [column virtualization](ui.ighierarchicalgrid#options:columnVirtualization) in [fixed mode](ui.ighierarchicalgrid#options:virtualizationMode). This is the average value in pixels for a column width. * + * * @optionValue New value to be set. */ @@ -48530,6 +56256,7 @@ interface JQuery { /** * Default column width that will be set for all columns, that don't have [column width](ui.ighierarchicalgrid#options:columns.width) defined. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "defaultColumnWidth"): string|number; @@ -48537,6 +56264,7 @@ interface JQuery { /** * Default column width that will be set for all columns, that don't have [column width](ui.ighierarchicalgrid#options:columns.width) defined. * + * * @optionValue New value to be set. */ @@ -48546,6 +56274,7 @@ interface JQuery { * If no [columns](ui.ighierarchicalgrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.ighierarchicalgrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.ighierarchicalgrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.ighierarchicalgrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.ighierarchicalgrid#options:defaultColumnWidth) as well. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoGenerateColumns"): boolean; @@ -48554,24 +56283,28 @@ interface JQuery { * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.ighierarchicalgrid#options:defaultColumnWidth) as well. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoGenerateColumns", optionValue: boolean): void; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "virtualization"): boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "virtualization", optionValue: boolean): void; /** * Determines row virtualization mode. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "virtualizationMode"): string; @@ -48579,6 +56312,7 @@ interface JQuery { /** * Determines row virtualization mode. * + * * @optionValue New value to be set. */ @@ -48586,54 +56320,63 @@ interface JQuery { /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "rowVirtualization"): boolean; /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "rowVirtualization", optionValue: boolean): void; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.ighierarchicalgrid#options:virtualization) to true and [virtualizationMode](ui.ighierarchicalgrid#options:virtualizationMode) to "fixed". + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columnVirtualization"): boolean; /** * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.ighierarchicalgrid#options:virtualization) to true and [virtualizationMode](ui.ighierarchicalgrid#options:virtualizationMode) to "fixed". * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columnVirtualization", optionValue: boolean): void; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep"): number; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight). * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep", optionValue: number): void; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights"): boolean; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.ighierarchicalgrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights", optionValue: boolean): void; /** * The templating engine that will be used to render the grid [column templates](ui.ighierarchicalgrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "templatingEngine"): string; @@ -48641,6 +56384,7 @@ interface JQuery { /** * The templating engine that will be used to render the grid [column templates](ui.ighierarchicalgrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * @optionValue New value to be set. */ @@ -48648,228 +56392,268 @@ interface JQuery { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columns"): IgHierarchicalGridColumn[]; /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "columns", optionValue: IgHierarchicalGridColumn[]): void; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself + * */ - igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSource"): any; + + igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSource"): string|Array|Object; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself * + * * @optionValue New value to be set. */ - igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; + + igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSource", optionValue: string|Array|Object): void; /** * Gets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSourceUrl"): string; /** * Sets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSourceType"): string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseDataKey"): string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; /** * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; /** * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseTotalRecCountKey", optionValue: string): void; /** * Gets the HTTP verb to be used to issue the requests to a remote data source. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "requestType"): string; /** * Sets the HTTP verb to be used to issue the requests to a remote data source. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseContentType"): string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; /** * Controls the visibility of the grid header. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "showHeader"): boolean; /** * Controls the visibility of the grid header. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "showHeader", optionValue: boolean): void; /** * Controls the visibility of the grid footer. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "showFooter"): boolean; /** * Controls the visibility of the grid footer. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "showFooter", optionValue: boolean): void; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "fixedHeaders"): boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "fixedHeaders", optionValue: boolean): void; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "fixedFooters"): boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.ighierarchicalgrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "fixedFooters", optionValue: boolean): void; /** * Caption text that will be shown above the grid header. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "caption"): string; /** * Caption text that will be shown above the grid header. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "caption", optionValue: string): void; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "features"): IgHierarchicalGridFeature[]; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "features", optionValue: IgHierarchicalGridFeature[]): void; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "tabIndex"): number; /** * Initial tabIndex attribute that will be set on all focusable elements. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.ighierarchicalgrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.ighierarchicalgrid#options:columns) defined will be extracted in a new object and used. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "localSchemaTransform"): boolean; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.ighierarchicalgrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.ighierarchicalgrid#options:columns) defined will be extracted in a new object and used. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "localSchemaTransform", optionValue: boolean): void; /** * Key of the column containing unique identifiers for the data records. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "primaryKey"): string; /** * Key of the column containing unique identifiers for the data records. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "primaryKey", optionValue: string): void; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "serializeTransactionLog"): boolean; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "serializeTransactionLog", optionValue: boolean): void; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.ighierarchicalgrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoCommit"): boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.ighierarchicalgrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoCommit", optionValue: boolean): void; @@ -48880,6 +56664,7 @@ interface JQuery { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.ighierarchicalgrid#options:autoCommit) is set to false. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "aggregateTransactions"): boolean; @@ -48890,12 +56675,14 @@ interface JQuery { * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.ighierarchicalgrid#options:autoCommit) is set to false. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "aggregateTransactions", optionValue: boolean): void; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autoFormat"): string|boolean; @@ -48903,6 +56690,7 @@ interface JQuery { /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * @optionValue New value to be set. */ @@ -48910,84 +56698,98 @@ interface JQuery { /** * Gets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.ighierarchicalgrid#options:columns.template). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "renderCheckboxes"): boolean; /** * Sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.ighierarchicalgrid#options:columns.template). * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "renderCheckboxes", optionValue: boolean): void; /** * URL to which updating requests will be made. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "updateUrl"): string; /** * URL to which updating requests will be made. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "updateUrl", optionValue: string): void; /** * Settings related to REST compliant update routines. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "restSettings"): IgHierarchicalGridRestSettings; /** * Settings related to REST compliant update routines. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "restSettings", optionValue: IgHierarchicalGridRestSettings): void; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "alternateRowStyles"): boolean; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "alternateRowStyles", optionValue: boolean): void; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autofitLastColumn"): boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "autofitLastColumn", optionValue: boolean): void; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableHoverStyles"): boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableHoverStyles", optionValue: boolean): void; /** * Nables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; /** * Nables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; @@ -48995,6 +56797,7 @@ interface JQuery { /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns"): boolean; @@ -49002,36 +56805,42 @@ interface JQuery { * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns", optionValue: boolean): void; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "jsonpRequest"): boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "jsonpRequest", optionValue: boolean): void; /** * Enables/disables grid adjusting its dimensions when its [width](ui.ighierarchicalgrid#options:width) and/or [height](ui.ighierarchicalgrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck"): boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.ighierarchicalgrid#options:width) and/or [height](ui.ighierarchicalgrid#options:height) is set in percent (%) and grid parent DOM container is resized. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck", optionValue: boolean): void; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "featureChooserIconDisplay"): string; @@ -49039,6 +56848,7 @@ interface JQuery { /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * @optionValue New value to be set. */ @@ -49046,16 +56856,48 @@ interface JQuery { /** * Settings related to content scrolling. + * */ igHierarchicalGrid(optionLiteral: 'option', optionName: "scrollSettings"): IgHierarchicalGridScrollSettings; /** * Settings related to content scrolling. * + * * @optionValue New value to be set. */ igHierarchicalGrid(optionLiteral: 'option', optionName: "scrollSettings", optionValue: IgHierarchicalGridScrollSettings): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igHierarchicalGrid(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igHierarchicalGrid(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igHierarchicalGrid(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igHierarchicalGrid(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is fired when a hierarchical row is about to be expanded */ @@ -49580,6 +57422,10 @@ interface IgGridMultiColumnHeaders { [optionName: string]: any; } interface IgGridMultiColumnHeadersMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridmulticolumnheader#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridmulticolumnheader#options:language) or [locale](ui.iggridmulticolumnheader#options:locale) option setter + */ changeLocale(): void; /** @@ -49699,87 +57545,104 @@ interface JQuery { interface IgGridPagingLocale { /** * Text rendered in front of the page size dropdown, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. + * */ pageSizeDropDownLabel?: string; /** * Trailing text for the page size dropdown, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. + * */ pageSizeDropDownTrailingLabel?: string; /** * Text for the next page label. + * */ nextPageLabelText?: string; /** * Text for the previous page label. + * */ prevPageLabelText?: string; /** * Text for the first page label. + * */ firstPageLabelText?: string; /** * Text for the last page label. + * */ lastPageLabelText?: string; /** * Leading label text for the drop down from where the page index can be switched. + * */ currentPageDropDownLeadingLabel?: string; /** * Trailing label text for the drop down from where the page index can be switched. + * */ currentPageDropDownTrailingLabel?: string; /** * Tooltip text for the page index drop down. + * */ currentPageDropDownTooltip?: string; /** * Tooltip text for the page size drop down. + * */ pageSizeDropDownTooltip?: string; /** * Tooltip text for the pager records label. + * */ pagerRecordsLabelTooltip?: string; /** * Tooltip text for the previous page button. + * */ prevPageTooltip?: string; /** * Tooltip text for the next page button. + * */ nextPageTooltip?: string; /** * Tooltip text for the first page button. + * */ firstPageTooltip?: string; /** * Tooltip text for the last page button. + * */ lastPageTooltip?: string; /** * Tooltip text templates of buttons that navigate to a particular page. The format string follows the [igTemplating](http://www.igniteui.com/help/igtemplating-overview) style and syntax. * See also the [pageCountLimit](ui.iggridpaging#options:pageCountLimit) option. + * */ pageTooltipFormat?: string; /** * Custom pager records label template - in [igTemplating](http://www.igniteui.com/help/igtemplating-overview) style and syntax. + * */ pagerRecordsLabelTemplate?: string; @@ -49840,6 +57703,11 @@ interface PageSizeChangingEventUIParam { * Gets the current page size. */ currentPageSize?: number; + + /** + * Gets the new page size. + */ + newPageSize?: number; } interface PageSizeChangedEvent { @@ -49855,7 +57723,7 @@ interface PageSizeChangedEventUIParam { /** * Gets the current page size. */ - currentPageSize?: number; + pageSize?: number; } interface PagerRenderingEvent { @@ -49893,32 +57761,38 @@ interface PagerRenderedEventUIParam { interface IgGridPaging { /** * Number of records loaded and displayed per page. + * */ pageSize?: number; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. + * */ recordCountKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. + * */ pageSizeUrlKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. + * */ pageIndexUrlKey?: string; /** * Current page index that's bound in the data source and rendered in the UI. + * */ currentPageIndex?: number; /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). * + * * Valid values: * "remote" Paging is performed by a remote end-point. * "local" Paging is performed locally by the [$.ig.DataSource](ig.datasource). @@ -49927,6 +57801,7 @@ interface IgGridPaging { /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. + * */ showPageSizeDropDown?: boolean; @@ -50040,6 +57915,7 @@ interface IgGridPaging { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. * + * * Valid values: * "above" The page size drop down will be rendered above the grid header. * "inpager" The page size drop down will be rendered next to page links. @@ -50048,54 +57924,76 @@ interface IgGridPaging { /** * Option specifying whether to show summary label for the currently rendered records or not. + * */ showPagerRecordsLabel?: boolean; /** * Option specifying whether to render the first and last page navigation buttons. + * */ showFirstLastPages?: boolean; /** * Option specifying whether to render the previous and next page navigation buttons. + * */ showPrevNextPages?: boolean; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. + * */ pageSizeList?: any; /** * Sets/Gets the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. + * */ pageCountLimit?: number; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. + * */ visiblePageCount?: number; /** * Drop down width for the page size and page index drop downs. + * */ defaultDropDownWidth?: number; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. + * */ delayOnPageChanged?: number; /** * Enables/disables paging persistence between states. + * */ persist?: boolean; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ inherit?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before the page index is changed. * Return false in order to cancel page index changing. @@ -50110,7 +58008,6 @@ interface IgGridPaging { /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. */ pageSizeChanging?: PageSizeChangingEvent; @@ -50136,6 +58033,13 @@ interface IgGridPaging { [optionName: string]: any; } interface IgGridPagingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridpaging#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridpaging#options:language) or [locale](ui.iggridpaging#options:locale) option setter + */ changeLocale(): void; /** @@ -50162,6 +58066,8 @@ interface JQuery { } interface JQuery { + igGridPaging(methodName: "changeGlobalLanguage"): void; + igGridPaging(methodName: "changeGlobalRegional"): void; igGridPaging(methodName: "changeLocale"): void; igGridPaging(methodName: "pageIndex", index?: number): number; igGridPaging(methodName: "pageSize", size?: number): number; @@ -50169,66 +58075,77 @@ interface JQuery { /** * Number of records loaded and displayed per page. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageSize"): number; /** * Number of records loaded and displayed per page. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "pageSize", optionValue: number): void; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. + * */ igGridPaging(optionLiteral: 'option', optionName: "recordCountKey"): string; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "recordCountKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeUrlKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageIndexUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "pageIndexUrlKey", optionValue: string): void; /** * Current page index that's bound in the data source and rendered in the UI. + * */ igGridPaging(optionLiteral: 'option', optionName: "currentPageIndex"): number; /** * Current page index that's bound in the data source and rendered in the UI. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "currentPageIndex", optionValue: number): void; /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). + * */ igGridPaging(optionLiteral: 'option', optionName: "type"): string; @@ -50236,6 +58153,7 @@ interface JQuery { /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ @@ -50243,12 +58161,14 @@ interface JQuery { /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. + * */ igGridPaging(optionLiteral: 'option', optionName: "showPageSizeDropDown"): boolean; /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "showPageSizeDropDown", optionValue: boolean): void; @@ -50503,6 +58423,7 @@ interface JQuery { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeDropDownLocation"): string; @@ -50510,6 +58431,7 @@ interface JQuery { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. * + * * @optionValue New value to be set. */ @@ -50517,124 +58439,174 @@ interface JQuery { /** * Option specifying whether to show summary label for the currently rendered records or not. + * */ igGridPaging(optionLiteral: 'option', optionName: "showPagerRecordsLabel"): boolean; /** * Option specifying whether to show summary label for the currently rendered records or not. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "showPagerRecordsLabel", optionValue: boolean): void; /** * Option specifying whether to render the first and last page navigation buttons. + * */ igGridPaging(optionLiteral: 'option', optionName: "showFirstLastPages"): boolean; /** * Option specifying whether to render the first and last page navigation buttons. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "showFirstLastPages", optionValue: boolean): void; /** * Option specifying whether to render the previous and next page navigation buttons. + * */ igGridPaging(optionLiteral: 'option', optionName: "showPrevNextPages"): boolean; /** * Option specifying whether to render the previous and next page navigation buttons. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "showPrevNextPages", optionValue: boolean): void; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeList"): any; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeList", optionValue: any): void; /** * Sets/Gets the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. + * */ igGridPaging(optionLiteral: 'option', optionName: "pageCountLimit"): number; /** * Sets/ the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "pageCountLimit", optionValue: number): void; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. + * */ igGridPaging(optionLiteral: 'option', optionName: "visiblePageCount"): number; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "visiblePageCount", optionValue: number): void; /** * Drop down width for the page size and page index drop downs. + * */ igGridPaging(optionLiteral: 'option', optionName: "defaultDropDownWidth"): number; /** * Drop down width for the page size and page index drop downs. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "defaultDropDownWidth", optionValue: number): void; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. + * */ igGridPaging(optionLiteral: 'option', optionName: "delayOnPageChanged"): number; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "delayOnPageChanged", optionValue: number): void; /** * Enables/disables paging persistence between states. + * */ igGridPaging(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables paging persistence between states. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ igGridPaging(optionLiteral: 'option', optionName: "inherit"): boolean; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * + * * @optionValue New value to be set. */ igGridPaging(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridPaging(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridPaging(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridPaging(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridPaging(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before the page index is changed. * Return false in order to cancel page index changing. @@ -50664,14 +58636,12 @@ interface JQuery { /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. */ igGridPaging(optionLiteral: 'option', optionName: "pageSizeChanging"): PageSizeChangingEvent; /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. * * @optionValue Define event handler function. */ @@ -50723,26 +58693,31 @@ interface JQuery { interface IgGridResizingColumnSetting { /** * Column key. this is a required property in every column setting if columnIndex is not set. + * */ columnKey?: string; /** * Column index. Can be used in place of column key. the preferred way of populating a column setting is to always use the column keys as identifiers. + * */ columnIndex?: number; /** * Enables disables resizing for the column. + * */ allowResizing?: boolean; /** * Minimum column width in pixels or percents. + * */ minimumWidth?: string|number; /** * Maximum column width in pixels or percents. + * */ maximumWidth?: string|number; @@ -50838,21 +58813,25 @@ interface ColumnResizedEventUIParam { interface IgGridResizing { /** * Resize the column to the size of the longest currently visible cell value. + * */ allowDoubleClickToResize?: boolean; /** * Specifies whether the resizing should be deferred until the user finishes resizing or applied immediately. + * */ deferredResizing?: boolean; /** * A list of column settings that specifies resizing options on a per column basis. + * */ columnSettings?: IgGridResizingColumnSetting[]; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. + * */ handleThreshold?: number; @@ -50861,6 +58840,24 @@ interface IgGridResizing { */ inherit?: boolean; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before a resizing operation is executed. */ @@ -50882,6 +58879,9 @@ interface IgGridResizing { [optionName: string]: any; } interface IgGridResizingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + /** * Destroys the resizing widget */ @@ -50894,59 +58894,78 @@ interface IgGridResizingMethods { * @param width Width of the column in pixels or percents. If no width or "*" is specified the column will be auto-sized to the width of the data in it (including header and footer cells). */ resize(column: Object, width?: Object): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; } interface JQuery { data(propertyName: "igGridResizing"): IgGridResizingMethods; } interface JQuery { + igGridResizing(methodName: "changeGlobalLanguage"): void; + igGridResizing(methodName: "changeGlobalRegional"): void; igGridResizing(methodName: "destroy"): void; igGridResizing(methodName: "resize", column: Object, width?: Object): void; + igGridResizing(methodName: "changeLocale", $container: Object): void; /** * Resize the column to the size of the longest currently visible cell value. + * */ igGridResizing(optionLiteral: 'option', optionName: "allowDoubleClickToResize"): boolean; /** * Resize the column to the size of the longest currently visible cell value. * + * * @optionValue New value to be set. */ igGridResizing(optionLiteral: 'option', optionName: "allowDoubleClickToResize", optionValue: boolean): void; /** * Gets whether the resizing should be deferred until the user finishes resizing or applied immediately. + * */ igGridResizing(optionLiteral: 'option', optionName: "deferredResizing"): boolean; /** * Sets whether the resizing should be deferred until the user finishes resizing or applied immediately. * + * * @optionValue New value to be set. */ igGridResizing(optionLiteral: 'option', optionName: "deferredResizing", optionValue: boolean): void; /** * A list of column settings that specifies resizing options on a per column basis. + * */ igGridResizing(optionLiteral: 'option', optionName: "columnSettings"): IgGridResizingColumnSetting[]; /** * A list of column settings that specifies resizing options on a per column basis. * + * * @optionValue New value to be set. */ igGridResizing(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridResizingColumnSetting[]): void; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. + * */ igGridResizing(optionLiteral: 'option', optionName: "handleThreshold"): number; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. * + * * @optionValue New value to be set. */ igGridResizing(optionLiteral: 'option', optionName: "handleThreshold", optionValue: number): void; @@ -50963,6 +58982,50 @@ interface JQuery { */ igGridResizing(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igGridResizing(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridResizing(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridResizing(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridResizing(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridResizing(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridResizing(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before a resizing operation is executed. */ @@ -51007,21 +59070,25 @@ interface JQuery { interface IgGridResponsiveColumnSetting { /** * Column key. This is a required property in every column setting if columnIndex is not set. + * */ columnKey?: string; /** * Column index. Can be used in place of column key. The preferred way of populating a column setting is to always use the column keys as identifiers. + * */ columnIndex?: number; /** * A list of predefined classes to decide element's visibility on. + * */ classes?: string; /** * A configuration object to use for the responsive functionality. Uses the keys defined in the widget's responsiveModes object. The classes property is not used if this one is set. + * */ configuration?: any; @@ -51034,26 +59101,31 @@ interface IgGridResponsiveColumnSetting { interface IgGridResponsiveAllowedColumnWidthPerType { /** * Minimal width in pixels string columns can take before forcing vertical rendering + * */ string?: number; /** * Minimal width in pixels number columns can take before forcing vertical rendering + * */ number?: number; /** * Minimal width in pixels bool columns can take before forcing vertical rendering + * */ bool?: number; /** * Minimal width in pixels date columns can take before forcing vertical rendering + * */ date?: number; /** * Minimal width in pixels object columns can take before forcing vertical rendering + * */ object?: number; @@ -51171,37 +59243,44 @@ interface ResponsiveModeChangedEventUIParam { interface IgGridResponsive { /** * A list of column settings that specifies how columns will react based on the environment the grid is run on. + * */ columnSettings?: IgGridResponsiveColumnSetting[]; /** * If this option is set to true an igResponsiveContainer widget will be attached to the igGrid control which will notify the feature when changes in the width of the container occur. + * */ reactOnContainerWidthChanges?: boolean; /** * If this option is set to true the widget will ensure the grid's width is always set to 100%. + * */ forceResponsiveGridWidth?: boolean; /** * The amount of pixels the window needs to resize with for the grid to respond. + * */ responsiveSensitivity?: number; /** * The recognized types of environments and their configuration. + * */ responsiveModes?: any; /** * Enable or disable the responsive vertical rendering for the grid. + * */ enableVerticalRendering?: boolean; /** * The window's width under which the grid will render its contents vertically. * + * * Valid values: * "string" The width in a (px) string * "number" The width as a number @@ -51212,6 +59291,7 @@ interface IgGridResponsive { /** * The width of the properties column when vertical rendering is enabled * + * * Valid values: * "string" The width in a (%) string * "number" The width as a number in percents @@ -51221,6 +59301,7 @@ interface IgGridResponsive { /** * The width of the values column when vertical rendering is enabled * + * * Valid values: * "string" The width in a (%) string * "number" The width as a number in percents @@ -51230,11 +59311,13 @@ interface IgGridResponsive { /** * When windowWidthToRenderVertically is null, determine minimal widths columns can take before * forcing vertical rendering for the grid + * */ allowedColumnWidthPerType?: IgGridResponsiveAllowedColumnWidthPerType; /** * Specifies a template to render a record with in a list-view style layout per mode. + * */ singleColumnTemplate?: any; @@ -51356,78 +59439,91 @@ interface JQuery { /** * A list of column settings that specifies how columns will react based on the environment the grid is run on. + * */ igGridResponsive(optionLiteral: 'option', optionName: "columnSettings"): IgGridResponsiveColumnSetting[]; /** * A list of column settings that specifies how columns will react based on the environment the grid is run on. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridResponsiveColumnSetting[]): void; /** * If this option is set to true an igResponsiveContainer widget will be attached to the igGrid control which will notify the feature when changes in the width of the container occur. + * */ igGridResponsive(optionLiteral: 'option', optionName: "reactOnContainerWidthChanges"): boolean; /** * If this option is set to true an igResponsiveContainer widget will be attached to the igGrid control which will notify the feature when changes in the width of the container occur. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "reactOnContainerWidthChanges", optionValue: boolean): void; /** * If this option is set to true the widget will ensure the grid's width is always set to 100%. + * */ igGridResponsive(optionLiteral: 'option', optionName: "forceResponsiveGridWidth"): boolean; /** * If this option is set to true the widget will ensure the grid's width is always set to 100%. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "forceResponsiveGridWidth", optionValue: boolean): void; /** * The amount of pixels the window needs to resize with for the grid to respond. + * */ igGridResponsive(optionLiteral: 'option', optionName: "responsiveSensitivity"): number; /** * The amount of pixels the window needs to resize with for the grid to respond. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "responsiveSensitivity", optionValue: number): void; /** * The recognized types of environments and their configuration. + * */ igGridResponsive(optionLiteral: 'option', optionName: "responsiveModes"): any; /** * The recognized types of environments and their configuration. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "responsiveModes", optionValue: any): void; /** * Enable or disable the responsive vertical rendering for the grid. + * */ igGridResponsive(optionLiteral: 'option', optionName: "enableVerticalRendering"): boolean; /** * Enable or disable the responsive vertical rendering for the grid. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "enableVerticalRendering", optionValue: boolean): void; /** * The window's width under which the grid will render its contents vertically. + * */ igGridResponsive(optionLiteral: 'option', optionName: "windowWidthToRenderVertically"): string|number; @@ -51435,6 +59531,7 @@ interface JQuery { /** * The window's width under which the grid will render its contents vertically. * + * * @optionValue New value to be set. */ @@ -51442,6 +59539,7 @@ interface JQuery { /** * The width of the properties column when vertical rendering is enabled + * */ igGridResponsive(optionLiteral: 'option', optionName: "propertiesColumnWidth"): string|number; @@ -51449,6 +59547,7 @@ interface JQuery { /** * The width of the properties column when vertical rendering is enabled * + * * @optionValue New value to be set. */ @@ -51456,6 +59555,7 @@ interface JQuery { /** * The width of the values column when vertical rendering is enabled + * */ igGridResponsive(optionLiteral: 'option', optionName: "valuesColumnWidth"): string|number; @@ -51463,6 +59563,7 @@ interface JQuery { /** * The width of the values column when vertical rendering is enabled * + * * @optionValue New value to be set. */ @@ -51471,6 +59572,7 @@ interface JQuery { /** * When windowWidthToRenderVertically is null, determine minimal widths columns can take before * forcing vertical rendering for the grid + * */ igGridResponsive(optionLiteral: 'option', optionName: "allowedColumnWidthPerType"): IgGridResponsiveAllowedColumnWidthPerType; @@ -51478,18 +59580,21 @@ interface JQuery { * When windowWidthToRenderVertically is null, determine minimal widths columns can take before * forcing vertical rendering for the grid * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "allowedColumnWidthPerType", optionValue: IgGridResponsiveAllowedColumnWidthPerType): void; /** * Gets a template to render a record with in a list-view style layout per mode. + * */ igGridResponsive(optionLiteral: 'option', optionName: "singleColumnTemplate"): any; /** * Sets a template to render a record with in a list-view style layout per mode. * + * * @optionValue New value to be set. */ igGridResponsive(optionLiteral: 'option', optionName: "singleColumnTemplate", optionValue: any): void; @@ -51574,21 +59679,25 @@ interface JQuery { interface IgGridRowSelectorsLocale { /** * Selected records text for the select/deselect all overlay. + * */ selectedRecordsText?: string; /** * Deselected records text for the select/deselect all overlay. + * */ deselectedRecordsText?: string; /** * Select all text for the select/deselect all overlay. + * */ selectAllText?: string; /** * Deselect all text for the select/deselect all overlay. + * */ deselectAllText?: string; @@ -51739,22 +59848,26 @@ interface CheckBoxStateChangedEventUIParam { interface IgGridRowSelectors { /** * Determines whether the row selectors column should contain row numbering + * */ enableRowNumbering?: boolean; /** * Determines whether the row selectors column should contain checkboxes + * */ enableCheckBoxes?: boolean; /** * The seed to be added to the default numbering + * */ rowNumberingSeed?: number; /** * defines width of the row selector`s column in pixels or percentage. * + * * Valid values: * "string" The row selector column width can be set in pixels (px) and percentage (%) * "number" The row selector width can be set as a number @@ -51766,11 +59879,13 @@ interface IgGridRowSelectors { * Determines whether the selection feature is required for the row selectors. If set to "false" * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. + * */ requireSelection?: boolean; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. + * */ showCheckBoxesOnFocus?: boolean; @@ -51781,6 +59896,7 @@ interface IgGridRowSelectors { /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. + * */ enableSelectAllForPaging?: boolean; @@ -51790,6 +59906,7 @@ interface IgGridRowSelectors { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ selectAllForPagingTemplate?: string; @@ -51799,6 +59916,7 @@ interface IgGridRowSelectors { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ deselectAllForPagingTemplate?: string; locale?: IgGridRowSelectorsLocale; @@ -51825,6 +59943,11 @@ interface IgGridRowSelectors { } interface IgGridRowSelectorsMethods { destroy(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridrowselectors#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridrowselectors#options:language) or [locale](ui.iggridrowselectors#options:locale) option setter + */ changeLocale(): void; } interface JQuery { @@ -51837,42 +59960,49 @@ interface JQuery { /** * Determines whether the row selectors column should contain row numbering + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableRowNumbering"): boolean; /** * Determines whether the row selectors column should contain row numbering * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableRowNumbering", optionValue: boolean): void; /** * Determines whether the row selectors column should contain checkboxes + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableCheckBoxes"): boolean; /** * Determines whether the row selectors column should contain checkboxes * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableCheckBoxes", optionValue: boolean): void; /** * The seed to be added to the default numbering + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "rowNumberingSeed"): number; /** * The seed to be added to the default numbering * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "rowNumberingSeed", optionValue: number): void; /** * Defines width of the row selector`s column in pixels or percentage. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "rowSelectorColumnWidth"): string|number; @@ -51880,6 +60010,7 @@ interface JQuery { /** * Defines width of the row selector`s column in pixels or percentage. * + * * @optionValue New value to be set. */ @@ -51889,6 +60020,7 @@ interface JQuery { * Determines whether the selection feature is required for the row selectors. If set to "false" * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "requireSelection"): boolean; @@ -51897,18 +60029,21 @@ interface JQuery { * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "requireSelection", optionValue: boolean): void; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "showCheckBoxesOnFocus"): boolean; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "showCheckBoxesOnFocus", optionValue: boolean): void; @@ -51927,12 +60062,14 @@ interface JQuery { /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableSelectAllForPaging"): boolean; /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "enableSelectAllForPaging", optionValue: boolean): void; @@ -51943,6 +60080,7 @@ interface JQuery { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have selected ${checked} records. Select all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "selectAllForPagingTemplate"): string; @@ -51953,6 +60091,7 @@ interface JQuery { * The default template is "
You have selected ${checked} records. Select all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "selectAllForPagingTemplate", optionValue: string): void; @@ -51963,6 +60102,7 @@ interface JQuery { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ igGridRowSelectors(optionLiteral: 'option', optionName: "deselectAllForPagingTemplate"): string; @@ -51973,6 +60113,7 @@ interface JQuery { * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. * + * * @optionValue New value to be set. */ igGridRowSelectors(optionLiteral: 'option', optionName: "deselectAllForPagingTemplate", optionValue: string): void; @@ -52201,17 +60342,20 @@ interface ActiveRowChangedEventUIParam { interface IgGridSelection { /** * Enables / Disables multiple selection of cells and rows - depending on the mode + * */ multipleSelection?: boolean; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection + * */ mouseDragSelect?: boolean; /** * Defines type of the selection. * + * * Valid values: * "row" Defines row selection mode. * "cell" Defines cell selection mode. @@ -52220,36 +60364,43 @@ interface IgGridSelection { /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel + * */ activation?: boolean; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected + * */ wrapAround?: boolean; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid + * */ skipChildren?: boolean; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. + * */ multipleCellSelectOnClick?: boolean; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * */ touchDragSelect?: boolean; /** * Enables / disables selection persistance between states. + * */ persist?: boolean; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' + * */ allowMultipleRangeSelection?: boolean; @@ -52548,30 +60699,35 @@ interface JQuery { /** * Enables / Disables multiple selection of cells and rows - depending on the mode + * */ igGridSelection(optionLiteral: 'option', optionName: "multipleSelection"): boolean; /** * Enables / Disables multiple selection of cells and rows - depending on the mode * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "multipleSelection", optionValue: boolean): void; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection + * */ igGridSelection(optionLiteral: 'option', optionName: "mouseDragSelect"): boolean; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "mouseDragSelect", optionValue: boolean): void; /** * Defines type of the selection. + * */ igGridSelection(optionLiteral: 'option', optionName: "mode"): string; @@ -52579,6 +60735,7 @@ interface JQuery { /** * Defines type of the selection. * + * * @optionValue New value to be set. */ @@ -52586,59 +60743,69 @@ interface JQuery { /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel + * */ igGridSelection(optionLiteral: 'option', optionName: "activation"): boolean; /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "activation", optionValue: boolean): void; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected + * */ igGridSelection(optionLiteral: 'option', optionName: "wrapAround"): boolean; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "wrapAround", optionValue: boolean): void; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid + * */ igGridSelection(optionLiteral: 'option', optionName: "skipChildren"): boolean; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "skipChildren", optionValue: boolean): void; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. + * */ igGridSelection(optionLiteral: 'option', optionName: "multipleCellSelectOnClick"): boolean; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "multipleCellSelectOnClick", optionValue: boolean): void; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * */ igGridSelection(optionLiteral: 'option', optionName: "touchDragSelect"): boolean; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * * * @optionValue New value to be set. */ @@ -52646,24 +60813,28 @@ interface JQuery { /** * Enables / disables selection persistance between states. + * */ igGridSelection(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables / disables selection persistance between states. * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' + * */ igGridSelection(optionLiteral: 'option', optionName: "allowMultipleRangeSelection"): boolean; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' * + * * @optionValue New value to be set. */ igGridSelection(optionLiteral: 'option', optionName: "allowMultipleRangeSelection", optionValue: boolean): void; @@ -52833,6 +61004,24 @@ interface IgGridModalDialog { */ tabIndex?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before the modal dialog is opened. */ @@ -52888,12 +61077,27 @@ interface IgGridModalDialog { } interface IgGridModalDialogMethods { openModalDialog(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridmodaldialog#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridmodaldialog#options:language) or [locale](ui.iggridmodaldialog#options:locale) option setter + */ changeLocale(): void; closeModalDialog(accepted: Object, e: Object): void; getCaptionButtonContainer(): void; getFooter(): void; getContent(): void; destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igGridModalDialog"): IgGridModalDialogMethods; @@ -52921,6 +61125,13 @@ declare namespace Infragistics { class EditorProvider { /** * Create handlers cache + * + * @param callbacks + * @param key + * @param editorOptions + * @param tabIndex + * @param format + * @param element */ createEditor(callbacks: Object, key: Object, editorOptions: Object, tabIndex: Object, format: Object, element: Object): void; keyDown(evt: Object, ui: Object): void; @@ -52944,6 +61155,13 @@ declare namespace Infragistics { class EditorProviderBase { /** * Call parent createEditor + * + * @param callbacks + * @param key + * @param editorOptions + * @param tabIndex + * @param format + * @param element */ createEditor(callbacks: Object, key: Object, editorOptions: Object, tabIndex: Object, format: Object, element: Object): void; textChanged(evt: Object, ui: Object): void; @@ -53152,6 +61370,10 @@ class SortingExpressionsManager { /** * Insert expr at the first position of the se (sorting expressions) if there are not any other expressions with flag group by * otherwise if there are such expressions inserts after the last + * + * @param se + * @param expr + * @param feature */ addSortingExpression(se: Object, expr: Object, feature: Object): void; setFormattersForSortingExprs(exprs: Object, grid: Object): void; @@ -53166,6 +61388,8 @@ interface JQuery { igGridModalDialog(methodName: "getFooter"): void; igGridModalDialog(methodName: "getContent"): void; igGridModalDialog(methodName: "destroy"): void; + igGridModalDialog(methodName: "changeGlobalLanguage"): void; + igGridModalDialog(methodName: "changeGlobalRegional"): void; /** * The default modal dialog width in pixels. @@ -53221,6 +61445,50 @@ interface JQuery { */ igGridModalDialog(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igGridModalDialog(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridModalDialog(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridModalDialog(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridModalDialog(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridModalDialog(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridModalDialog(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before the modal dialog is opened. */ @@ -53356,76 +61624,91 @@ interface JQuery { interface IgGridSortingLocale { /** * Custom sorted column tooltip in [igTemplating](http://www.igniteui.com/help/igtemplating-overview) format. + * */ sortedColumnTooltipFormat?: string; /** * Unsorted column tooltip. + * */ unsortedColumnTooltip?: string; /** * Ascending text used for header title. + * */ ascending?: string; /** * Descending text used for header title. + * */ descending?: string; /** * Specifies sortby button text for each unsorted column in multiple sorting dialog. + * */ modalDialogSortByButtonText?: string; /** * Specifies reset button text in the modal dialog. + * */ modalDialogResetButton?: string; /** * Specifies caption for each descending sorted column in multiple sorting dialog. + * */ modalDialogCaptionButtonDesc?: string; /** * Specifies caption for each ascending sorted column in multiple sorting dialog. + * */ modalDialogCaptionButtonAsc?: string; /** * Specifies caption for unsort button in multiple sorting dialog. + * */ modalDialogCaptionButtonUnsort?: string; /** * Specifies the text of the feature chooser sorting button. + * */ featureChooserText?: string; /** * Specifies caption text for multiple sorting dialog. + * */ modalDialogCaptionText?: string; /** * Specifies text of button which applies changes in modal dialog. + * */ modalDialogButtonApplyText?: string; /** * Specifies text of button which cancels the changes in the advanced sorting modal dialog. + * */ modalDialogButtonCancelText?: string; /** * Specifies the text shown in the feature chooser item for sorting in ascending order (displayed only on touch environment). + * */ featureChooserSortAsc?: string; /** * Specifies the text shown in the feature chooser item for sorting in descending order (displayed only on touch environment). + * */ featureChooserSortDesc?: string; @@ -53438,17 +61721,20 @@ interface IgGridSortingLocale { interface IgGridSortingColumnSetting { /** * Identifies the grid column by key. Either key or index must be set in every column setting. + * */ columnKey?: string; /** * Identifies the grid column by index. Either key or index must be set in every column setting. + * */ columnIndex?: number; /** * This will be the first sort direction when the column hasn't been sorted before. * + * * Valid values: * "asc" The first sort of the column data will be in ascending order. * "desc" The first sort of the column data will be in descending order. @@ -53458,6 +61744,7 @@ interface IgGridSortingColumnSetting { /** * The current (or default) sort direction. If this setting is specified, the column will be rendered sorted according to this option. * + * * Valid values: * "asc" The initial sort of the column data will be in ascending order. * "desc" The initial sort of the column data will be in descending order. @@ -53466,6 +61753,7 @@ interface IgGridSortingColumnSetting { /** * Enables/disables sorting on the specified column. By default all columns are sortable. + * */ allowSorting?: boolean; @@ -53480,6 +61768,7 @@ interface IgGridSortingColumnSetting { * 1 - indicating that val1 > val2, * -1 - indicating that val1 < val2. * + * * Valid values: * "string" The name of the function as a string located in the global window object. * "function" Function which will be used for custom comparison. @@ -53616,6 +61905,7 @@ interface IgGridSorting { /** * Defines local or remote sorting operations. * + * * Valid values: * "remote" Sorting is performed remotely as a server-side operation. * "local" Sorting is performed locally by the [$.ig.DataSource](ig.datasource) component. @@ -53624,32 +61914,38 @@ interface IgGridSorting { /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. + * */ caseSensitive?: boolean; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. + * */ applySortedColumnCss?: boolean; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc + * */ sortUrlKey?: string; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc + * */ sortUrlKeyAscValue?: string; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc + * */ sortUrlKeyDescValue?: string; /** * Defines single column sorting or multiple column sorting. * + * * Valid values: * "single" Only a single column can be sorted. Previously sorted columns will not preserve their sorting upon sorting a new column. * "multi" If enabled, previous sorted state for columns won't be cleared @@ -53658,12 +61954,14 @@ interface IgGridSorting { /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. + * */ customSortFunction?: Function; /** * Specifies which direction to use on the first click / keydown, if the column is sorted for the first time. * + * * Valid values: * "ascending" The first sort of the column data will be in ascending order. * "descending" The first sort of the column data will be in descending order. @@ -53672,6 +61970,7 @@ interface IgGridSorting { /** * Specifies whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. + * */ modalDialogSortOnClick?: boolean; @@ -53763,6 +62062,7 @@ interface IgGridSorting { /** * Specifies width of multiple sorting dialog. * + * * Valid values: * "string" Specifies the width in pixels as a string ("300px"). * "number" Specifies the width in pixels as a number (300) @@ -53772,6 +62072,7 @@ interface IgGridSorting { /** * Specifies height of multiple sorting dialog. * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set in pixels as a number. @@ -53780,16 +62081,19 @@ interface IgGridSorting { /** * Specifies time of milliseconds for animation duration to show/hide modal dialog. + * */ modalDialogAnimationDuration?: number; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). + * */ columnSettings?: IgGridSortingColumnSetting[]; /** * Enables/disables sorting persistence when the grid is rebound. + * */ persist?: boolean; @@ -53803,14 +62107,28 @@ interface IgGridSorting { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ inherit?: boolean; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before sorting is invoked for a certain column. * Return false in order to cancel column sorting. @@ -53888,6 +62206,13 @@ interface IgGridSorting { [optionName: string]: any; } interface IgGridSortingMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridsorting#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridsorting#options:language) or [locale](ui.iggridsorting#options:locale) option setter + */ changeLocale(): void; /** @@ -53895,6 +62220,7 @@ interface IgGridSortingMethods { * * @param index Column key (string) or index (number) - for multi-row grid only column key can be used. Specifies the column which we want to sort. If the mode is multiple, previous sorting states are not cleared. * @param direction Specifies sorting direction (ascending or descending) + * @param header */ sortColumn(index: Object, direction: Object, header: Object): void; @@ -53935,6 +62261,8 @@ interface IgGridSortingMethods { /** * Renders content of multiple sorting dialog - sorted and unsorted columns. + * + * @param isToCallEvents */ renderMultipleSortingDialogContent(isToCallEvents: Object): void; @@ -53948,6 +62276,8 @@ interface JQuery { } interface JQuery { + igGridSorting(methodName: "changeGlobalLanguage"): void; + igGridSorting(methodName: "changeGlobalRegional"): void; igGridSorting(methodName: "changeLocale"): void; igGridSorting(methodName: "sortColumn", index: Object, direction: Object, header: Object): void; igGridSorting(methodName: "sortMultiple", exprs?: any[]): void; @@ -53961,6 +62291,7 @@ interface JQuery { /** * Defines local or remote sorting operations. + * */ igGridSorting(optionLiteral: 'option', optionName: "type"): string; @@ -53968,6 +62299,7 @@ interface JQuery { /** * Defines local or remote sorting operations. * + * * @optionValue New value to be set. */ @@ -53975,66 +62307,77 @@ interface JQuery { /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. + * */ igGridSorting(optionLiteral: 'option', optionName: "caseSensitive"): boolean; /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "caseSensitive", optionValue: boolean): void; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. + * */ igGridSorting(optionLiteral: 'option', optionName: "applySortedColumnCss"): boolean; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "applySortedColumnCss", optionValue: boolean): void; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc + * */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKey"): string; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKey", optionValue: string): void; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc + * */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyAscValue"): string; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyAscValue", optionValue: string): void; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc + * */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyDescValue"): string; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyDescValue", optionValue: string): void; /** * Defines single column sorting or multiple column sorting. + * */ igGridSorting(optionLiteral: 'option', optionName: "mode"): string; @@ -54042,6 +62385,7 @@ interface JQuery { /** * Defines single column sorting or multiple column sorting. * + * * @optionValue New value to be set. */ @@ -54049,18 +62393,21 @@ interface JQuery { /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. + * */ igGridSorting(optionLiteral: 'option', optionName: "customSortFunction"): Function; /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "customSortFunction", optionValue: Function): void; /** * Gets which direction to use on the first click / keydown, if the column is sorted for the first time. + * */ igGridSorting(optionLiteral: 'option', optionName: "firstSortDirection"): string; @@ -54068,6 +62415,7 @@ interface JQuery { /** * Sets which direction to use on the first click / keydown, if the column is sorted for the first time. * + * * @optionValue New value to be set. */ @@ -54075,12 +62423,14 @@ interface JQuery { /** * Gets whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. + * */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogSortOnClick"): boolean; /** * Sets whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogSortOnClick", optionValue: boolean): void; @@ -54281,6 +62631,7 @@ interface JQuery { /** * Gets width of multiple sorting dialog. + * */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogWidth"): string|number; @@ -54288,6 +62639,7 @@ interface JQuery { /** * Sets width of multiple sorting dialog. * + * * @optionValue New value to be set. */ @@ -54295,6 +62647,7 @@ interface JQuery { /** * Gets height of multiple sorting dialog. + * */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogHeight"): string|number; @@ -54302,6 +62655,7 @@ interface JQuery { /** * Sets height of multiple sorting dialog. * + * * @optionValue New value to be set. */ @@ -54309,36 +62663,42 @@ interface JQuery { /** * Gets time of milliseconds for animation duration to show/hide modal dialog. + * */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogAnimationDuration"): number; /** * Sets time of milliseconds for animation duration to show/hide modal dialog. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "modalDialogAnimationDuration", optionValue: number): void; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). + * */ igGridSorting(optionLiteral: 'option', optionName: "columnSettings"): IgGridSortingColumnSetting[]; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridSortingColumnSetting[]): void; /** * Enables/disables sorting persistence when the grid is rebound. + * */ igGridSorting(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables sorting persistence when the grid is rebound. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; @@ -54363,28 +62723,62 @@ interface JQuery { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igGridSorting(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * */ igGridSorting(optionLiteral: 'option', optionName: "inherit"): boolean; /** * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * + * * @optionValue New value to be set. */ igGridSorting(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridSorting(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridSorting(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridSorting(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridSorting(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before sorting is invoked for a certain column. * Return false in order to cancel column sorting. @@ -54563,12 +62957,14 @@ interface JQuery { interface IgGridSummariesColumnSettingSummaryOperand { /** * Text of the summary method which is shown in summary cell + * */ rowDisplayLabel?: string; /** * Set type of summary operand * + * * Valid values: * "count" calculate count of result rows for the specified column * "min" calculate min of result rows for the specified column @@ -54581,16 +62977,19 @@ interface IgGridSummariesColumnSettingSummaryOperand { /** * If it is false the summary operand will be shown in dropdown but it will not be made calculation + * */ active?: boolean; /** * Name of the custom summary function which should be executed when type is custom + * */ summaryCalculator?: string; /** * Specifies the order of elements in dropdown. It is recommended to set order of custom operands and to be greater or equal to 5 + * */ order?: number; @@ -54599,6 +62998,7 @@ interface IgGridSummariesColumnSettingSummaryOperand { * When this option is not set, the [format](ui.iggrid#options:columns.format) of the column it is in will taken into account. * When this option and the column [format](ui.iggrid#options:columns.format) is not set, the regional settings will be taken depending on the [autoFormat](ui.iggrid#options:autoFormat) option. * If the column type is not specified in the [autoFormat](ui.iggrid#options:autoFormat) option and no format is set for both column and summary operand, no formatting is applied. + * */ format?: string; @@ -54611,21 +63011,25 @@ interface IgGridSummariesColumnSettingSummaryOperand { interface IgGridSummariesColumnSetting { /** * Enables disables summaries for the column + * */ allowSummaries?: boolean; /** * Column key. This is a required property in every column setting if columnIndex is not set + * */ columnKey?: string; /** * Column index. Can be used in place of column key. The preferred way of populating a column setting is to always use the column keys as identifiers + * */ columnIndex?: number; /** * Check defaultSummaryOperands + * */ summaryOperands?: IgGridSummariesColumnSettingSummaryOperand[]; @@ -54638,31 +63042,37 @@ interface IgGridSummariesColumnSetting { interface IgGridSummariesLocale { /** * Text of the button OK in the summaries dropdown + * */ dialogButtonOKText?: string; /** * Text of the button Cancel in the summaries dropdown + * */ dialogButtonCancelText?: string; /** * Get or set text that is shown in the feature chooser dropdown when summaries are hidden + * */ featureChooserText?: string; /** * Get or set text that is shown in the feauture chooser dropdown when summaries are shown + * */ featureChooserTextHide?: string; /** * Empty text template to be shown for empty cells + * */ emptyCellText?: string; /** * Tooltip text for header cell button + * */ summariesHeaderButtonTooltip?: string; @@ -54798,6 +63208,7 @@ interface IgGridSummaries { /** * type of summaries calculating. * + * * Valid values: * "remote" when it is remote summaries calculations are made on the server * "local" When it is local calculations are made on the client @@ -54849,6 +63260,7 @@ interface IgGridSummaries { /** * Specifies when calculations are made. * + * * Valid values: * "onselect" summaries are updated when checkbox is checked/unchecked * "okcancelbuttons" summaries are updated only when OK button is clicked @@ -54860,47 +63272,56 @@ interface IgGridSummaries { * When true indicates that the summaries may be rendered compactly, even mixing different summaries on the same line. * False ensures that each summary type is occupying a separate line. * Auto will use True if the maximum number of visible summaries is one or less and False otherwise. + * */ compactRenderingMode?: any; /** * Show header button icon in the header cell. On click - shows/hides summaries. If false then summary icon should not be shown in the feature chooser(if shown). + * */ showSummariesButton?: boolean; /** * Result key by which we get data from the result returned by remote data source. + * */ summariesResponseKey?: string; /** * Set key in GET Request for summaries - used only when type is remote + * */ summaryExprUrlKey?: string; /** * Function reference - it is called when data is retrieved from the data source + * */ callee?: Function; /** * Height of the dropdown in pixels + * */ dropDownHeight?: number; /** * Width of the dropdown in pixels + * */ dropDownWidth?: number; /** * Show/hide footer button(on click show/hide dropdown) + * */ showDropDownButton?: boolean; /** * Determines when the summary values are calculated when type is local * + * * Valid values: * "priortofilteringandpaging" summaries are calculated prior to filtering and paging * "afterfilteringbeforepaging" summaries are calculated after filtering and before paging @@ -54910,21 +63331,25 @@ interface IgGridSummaries { /** * Dropdown animation duration + * */ dropDownDialogAnimationDuration?: number; /** * Result template for summary result(shown in table cell) + * */ resultTemplate?: string; /** * a reference or name of a javascript function - renders summary cell in grid footer.(if not set it is used default render function) It takes 3 parameters - methodName(summary method), columnKey, data(summary data which should be rendered) + * */ renderSummaryCellFunc?: string|Object; /** * A list of column settings that specifies custom summaries options per column basis + * */ columnSettings?: IgGridSummariesColumnSetting[]; @@ -54934,6 +63359,18 @@ interface IgGridSummaries { inherit?: boolean; locale?: IgGridSummariesLocale; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before drop down is opened for a specific column summary * Return false in order to cancel opening the drop down. @@ -54999,7 +63436,19 @@ interface IgGridSummaries { [optionName: string]: any; } interface IgGridSummariesMethods { + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridsummaries#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridsummaries#options:language) or [locale](ui.iggridsummaries#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridsummaries#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridsummaries#options:regional) option setter + */ changeRegional(): void; destroy(): void; @@ -55063,6 +63512,7 @@ interface IgGridSummariesMethods { * @param columnMethods Array of column methods objects * @param data Object which represents result * represents dataType for the current column + * @param dataType */ calculateSummaryColumn(ck: string, columnMethods: any[], data: Object, dataType: Object): void; @@ -55073,6 +63523,8 @@ interface IgGridSummariesMethods { /** * Return a JQUERY object which holds all summaries for column with the specified column key + * + * @param columnKey */ summariesFor(columnKey: Object): void; } @@ -55081,6 +63533,8 @@ interface JQuery { } interface JQuery { + igGridSummaries(methodName: "changeGlobalLanguage"): void; + igGridSummaries(methodName: "changeGlobalRegional"): void; igGridSummaries(methodName: "changeLocale"): void; igGridSummaries(methodName: "changeRegional"): void; igGridSummaries(methodName: "destroy"): void; @@ -55098,6 +63552,7 @@ interface JQuery { /** * Type of summaries calculating. + * */ igGridSummaries(optionLiteral: 'option', optionName: "type"): string; @@ -55105,6 +63560,7 @@ interface JQuery { /** * Type of summaries calculating. * + * * @optionValue New value to be set. */ @@ -55208,6 +63664,7 @@ interface JQuery { /** * Gets when calculations are made. + * */ igGridSummaries(optionLiteral: 'option', optionName: "calculateRenderMode"): string; @@ -55215,6 +63672,7 @@ interface JQuery { /** * Sets when calculations are made. * + * * @optionValue New value to be set. */ @@ -55225,6 +63683,7 @@ interface JQuery { * When true indicates that the summaries may be rendered compactly, even mixing different summaries on the same line. * False ensures that each summary type is occupying a separate line. * Auto will use True if the maximum number of visible summaries is one or less and False otherwise. + * */ igGridSummaries(optionLiteral: 'option', optionName: "compactRenderingMode"): any; @@ -55234,96 +63693,112 @@ interface JQuery { * False ensures that each summary type is occupying a separate line. * Auto will use True if the maximum number of visible summaries is one or less and False otherwise. * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "compactRenderingMode", optionValue: any): void; /** * Show header button icon in the header cell. On click - shows/hides summaries. If false then summary icon should not be shown in the feature chooser(if shown). + * */ igGridSummaries(optionLiteral: 'option', optionName: "showSummariesButton"): boolean; /** * Show header button icon in the header cell. On click - shows/hides summaries. If false then summary icon should not be shown in the feature chooser(if shown). * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "showSummariesButton", optionValue: boolean): void; /** * Result key by which we get data from the result returned by remote data source. + * */ igGridSummaries(optionLiteral: 'option', optionName: "summariesResponseKey"): string; /** * Result key by which we get data from the result returned by remote data source. * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "summariesResponseKey", optionValue: string): void; /** * Set key in GET Request for summaries - used only when type is remote + * */ igGridSummaries(optionLiteral: 'option', optionName: "summaryExprUrlKey"): string; /** * Set key in GET Request for summaries - used only when type is remote * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "summaryExprUrlKey", optionValue: string): void; /** * Function reference - it is called when data is retrieved from the data source + * */ igGridSummaries(optionLiteral: 'option', optionName: "callee"): Function; /** * Function reference - it is called when data is retrieved from the data source * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "callee", optionValue: Function): void; /** * Height of the dropdown in pixels + * */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownHeight"): number; /** * Height of the dropdown in pixels * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownHeight", optionValue: number): void; /** * Width of the dropdown in pixels + * */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownWidth"): number; /** * Width of the dropdown in pixels * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownWidth", optionValue: number): void; /** * Show/hide footer button(on click show/hide dropdown) + * */ igGridSummaries(optionLiteral: 'option', optionName: "showDropDownButton"): boolean; /** * Show/hide footer button(on click show/hide dropdown) * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "showDropDownButton", optionValue: boolean): void; /** * Determines when the summary values are calculated when type is local + * */ igGridSummaries(optionLiteral: 'option', optionName: "summaryExecution"): string; @@ -55331,6 +63806,7 @@ interface JQuery { /** * Determines when the summary values are calculated when type is local * + * * @optionValue New value to be set. */ @@ -55338,30 +63814,35 @@ interface JQuery { /** * Dropdown animation duration + * */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownDialogAnimationDuration"): number; /** * Dropdown animation duration * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "dropDownDialogAnimationDuration", optionValue: number): void; /** * Result template for summary result(shown in table cell) + * */ igGridSummaries(optionLiteral: 'option', optionName: "resultTemplate"): string; /** * Result template for summary result(shown in table cell) * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "resultTemplate", optionValue: string): void; /** * A reference or name of a javascript function - renders summary cell in grid footer.(if not set it is used default render function) It takes 3 parameters - methodName(summary method), columnKey, data(summary data which should be rendered) + * */ igGridSummaries(optionLiteral: 'option', optionName: "renderSummaryCellFunc"): string|Object; @@ -55369,6 +63850,7 @@ interface JQuery { /** * A reference or name of a javascript function - renders summary cell in grid footer.(if not set it is used default render function) It takes 3 parameters - methodName(summary method), columnKey, data(summary data which should be rendered) * + * * @optionValue New value to be set. */ @@ -55376,12 +63858,14 @@ interface JQuery { /** * A list of column settings that specifies custom summaries options per column basis + * */ igGridSummaries(optionLiteral: 'option', optionName: "columnSettings"): IgGridSummariesColumnSetting[]; /** * A list of column settings that specifies custom summaries options per column basis * + * * @optionValue New value to be set. */ igGridSummaries(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridSummariesColumnSetting[]): void; @@ -55400,6 +63884,36 @@ interface JQuery { igGridSummaries(optionLiteral: 'option', optionName: "locale"): IgGridSummariesLocale; igGridSummaries(optionLiteral: 'option', optionName: "locale", optionValue: IgGridSummariesLocale): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igGridSummaries(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igGridSummaries(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igGridSummaries(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igGridSummaries(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before drop down is opened for a specific column summary * Return false in order to cancel opening the drop down. @@ -55548,21 +64062,25 @@ interface JQuery { interface IgGridTooltipsColumnSettings { /** * Either key or index must be set in every column setting. + * */ columnKey?: string; /** * Either key or index must be set in every column setting. + * */ columnIndex?: number; /** * Enables / disables tooltips on the specified column. By default tooltips are displayed for each column. Note: This option is mandatory. + * */ allowTooltips?: boolean; /** * Specifies the maximum width (in pixels) of the tooltip when shown for the specified column. If unset the width of the column will be used instead. + * */ maxWidth?: number; @@ -55574,7 +64092,8 @@ interface IgGridTooltipsColumnSettings { interface IgGridTooltips { /** - * determines the tooltip visibility option + * Determines the tooltip visibility option + * * * Valid values: * "always" tooltips always show for hovered elements @@ -55584,7 +64103,8 @@ interface IgGridTooltips { visibility?: string; /** - * controls the tooltip's style + * Controls the tooltip's style + * * * Valid values: * "tooltip" The tooltip will be positioned according to the mouse cursor. Will render the tooltip content as plain text. @@ -55595,32 +64115,38 @@ interface IgGridTooltips { /** * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. + * */ showDelay?: number; /** * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. + * */ hideDelay?: number; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) + * */ columnSettings?: IgGridTooltipsColumnSettings; /** * Sets the time tooltip fades in and out when showing/hiding + * */ fadeTimespan?: number; /** * Sets the left position of the tooltip relative to the mouse cursor + * */ cursorLeftOffset?: number; /** * Sets the top position of the tooltip relative to the mouse cursor + * */ cursorTopOffset?: number; @@ -55675,6 +64201,7 @@ interface JQuery { /** * Determines the tooltip visibility option + * */ igGridTooltips(optionLiteral: 'option', optionName: "visibility"): string; @@ -55682,6 +64209,7 @@ interface JQuery { /** * Determines the tooltip visibility option * + * * @optionValue New value to be set. */ @@ -55689,6 +64217,7 @@ interface JQuery { /** * Controls the tooltip's style + * */ igGridTooltips(optionLiteral: 'option', optionName: "style"): string; @@ -55696,6 +64225,7 @@ interface JQuery { /** * Controls the tooltip's style * + * * @optionValue New value to be set. */ @@ -55704,6 +64234,7 @@ interface JQuery { /** * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. + * */ igGridTooltips(optionLiteral: 'option', optionName: "showDelay"): number; @@ -55711,6 +64242,7 @@ interface JQuery { * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "showDelay", optionValue: number): void; @@ -55718,6 +64250,7 @@ interface JQuery { /** * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. + * */ igGridTooltips(optionLiteral: 'option', optionName: "hideDelay"): number; @@ -55725,54 +64258,63 @@ interface JQuery { * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "hideDelay", optionValue: number): void; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) + * */ igGridTooltips(optionLiteral: 'option', optionName: "columnSettings"): IgGridTooltipsColumnSettings; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridTooltipsColumnSettings): void; /** * The time tooltip fades in and out when showing/hiding + * */ igGridTooltips(optionLiteral: 'option', optionName: "fadeTimespan"): number; /** * Sets the time tooltip fades in and out when showing/hiding * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "fadeTimespan", optionValue: number): void; /** * The left position of the tooltip relative to the mouse cursor + * */ igGridTooltips(optionLiteral: 'option', optionName: "cursorLeftOffset"): number; /** * Sets the left position of the tooltip relative to the mouse cursor * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "cursorLeftOffset", optionValue: number): void; /** * The top position of the tooltip relative to the mouse cursor + * */ igGridTooltips(optionLiteral: 'option', optionName: "cursorTopOffset"): number; /** * Sets the top position of the tooltip relative to the mouse cursor * + * * @optionValue New value to be set. */ igGridTooltips(optionLiteral: 'option', optionName: "cursorTopOffset", optionValue: number): void; @@ -55845,12 +64387,14 @@ interface JQuery { interface IgGridUpdatingColumnSetting { /** * Identifies the grid column by key. + * */ columnKey?: string; /** * Specifies the type of editor to use for the column. * + * * Valid values: * "text" An igTextEditor will be created * "mask" An igMaskEditor will be created @@ -55883,31 +64427,37 @@ interface IgGridUpdatingColumnSetting { * validate: function (noLabel) {}, * isValid: function () {} * }); + * */ editorProvider?: any; /** * Specifies options to initialize the corresponding editor with. + * */ editorOptions?: any; /** * Specifies if the end-user will be allowed to leave the editor's value empty during edit mode or not. + * */ required?: boolean; /** * Specifies if the column is read-only. In 'cell' and 'row' [editMode](ui.iggridupdating#options:editMode) no editor will be created for read-only columns. In 'dialog' mode enabling [showReadonlyEditors](ui.iggridupdating#options:rowEditDialogOptions.showReadonlyEditors) will display disabled editors for such columns. + * */ readOnly?: boolean; /** * Specifies if the column's value should be validated or not. The validation is done based on the rules of the corresponding editor. + * */ validation?: boolean; /** * Specifies the default value for the column when adding new rows. When in edit mode for adding a row the value will be pre-filled in the column's editor (if the column is not read-only). The value should be of the type specified for the column in the grid's [columns](ui.iggrid#options:columns) collection. + * */ defaultValue?: any; @@ -55921,6 +64471,7 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Controls the containment of the dialog's drag operation. * + * * Valid values: * "owner" The row edit dialog will be draggable only in the grid area. * "window" The row edit dialog will be draggable in the whole window area. @@ -55930,6 +64481,7 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Controls the default row edit dialog width. * + * * Valid values: * "string" The dialog window width in pixels (400px). * "number" The dialog window width as a number (400). @@ -55939,6 +64491,7 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Controls the default row edit dialog height. * + * * Valid values: * "string" The dialog window height in pixels (350px). * "number" The dialog window height as a number (350). @@ -55947,22 +64500,26 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Specifies the animation duration for the opening and closing operations. + * */ animationDuration?: number; /** * Controls if editors should be rendered for read-only columns. If rendered, these editors will be disabled. + * */ showReadonlyEditors?: boolean; /** * Controls if editors should be rendered for hidden columns. + * */ showEditorsForHiddenColumns?: boolean; /** * Controls the width of the column containing the column names in the default row edit dialog. * + * * Valid values: * "string" The width of the column in pixels (100px) or percents (20%). * "number" The width of the column as a number (100) in pixels. @@ -55973,6 +64530,7 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Controls the width of the column containing the editors in the default row edit dialog. * + * * Valid values: * "string" The width of the column in pixels (100px) or percents (20%). * "number" The width of the column as a number (100) in pixels. @@ -55983,28 +64541,33 @@ interface IgGridUpdatingRowEditDialogOptions { /** * Controls the visibility of the done and cancel buttons for the dialog. * If disabled the end-user will be able to stop editing only with the Enter and Esc keys. + * */ showDoneCancelButtons?: boolean; /** * Specifies a template to be rendered against the currently edited record (or up-to-date key-value pairs in the case of not yet created records). It may contain an element decorated with the 'data-render-tmpl' attribute to specify where the control should render the editors template specified in the [editorsTemplate](ui.iggridupdating#options:rowEditDialogOptions.editorsTemplate) option. For custom dialogs, the elements can be decorated with 'data-editor-for-' attributes where columnKey is the key of the column that editor or input will be used to edit. If both dialogTemplate and [dialogTemplateSelector](ui.iggridupdating#options:rowEditDialogOptions.dialogTemplateSelector) are specified, dialogTemplateSelector will be used.The default template is '
'. + * */ dialogTemplate?: string; /** * Specifies a selector to a template rendered against the currently edited record (or up-to-date key-value pairs in the case of not yet created records). It may contain an element decorated with the 'data-render-tmpl' attribute to specify where the control should render the editors template specified in the [editorsTemplate](ui.iggridupdating#options:rowEditDialogOptions.editorsTemplate) option. For custom dialogs, the elements can be decorated with 'data-editor-for-' attributes where columnKey is the key of the column that editor or input will be used to edit. If both [dialogTemplate](ui.iggridupdating#options:rowEditDialogOptions.dialogTemplate) and dialogTemplateSelector are specified, dialogTemplateSelector will be used.The default template is '
'. + * */ dialogTemplateSelector?: string; /** * Specifies a template to be executed for each column in the grid's column collection (or just the read-write columns if [showReadonlyEditors](ui.iggridupdating#options:rowEditDialogOptions.showReadonlyEditors) is false). Decorate the element to be used as an editor with 'data-editor-for-${key}'. The ${key} template tag should be replaced with the chosen templating engine's syntax for rendering values. If any editors for columns are specified in the dialog markup they will be exluded from the data the template will be rendered for. This property is ignored if [dialogTemplate](ui.iggridupdating#options:rowEditDialogOptions.dialogTemplate) does not include an element with the 'data-render-tmpl' attribute. If both editorsTemplate and [editorsTemplateSelector](ui.iggridupdating#options:rowEditDialogOptions.editorsTemplateSelector) are specified, editorsTemplateSelector will be used. * The default template is '${headerText}' + * */ editorsTemplate?: string; /** * Specifies a selector to a template to be executed for each column in the grid's column collection (or just the read-write columns if [showReadonlyEditors](ui.iggridupdating#options:rowEditDialogOptions.showReadonlyEditors) is false). Decorate the element to be used as an editor with 'data-editor-for-${key}'. The ${key} template tag should be replaced with the chosen templating engine's syntax for rendering values. If any editors for columns are specified in the dialog markup they will be exluded from the data the template will be rendered for. This property is ignored if [dialogTemplate](ui.iggridupdating#options:rowEditDialogOptions.dialogTemplate) does not include an element with the 'data-render-tmpl' attribute. If both [editorsTemplate](ui.iggridupdating#options:rowEditDialogOptions.editorsTemplate) and editorsTemplateSelector are specified, editorsTemplateSelector will be used. * The default template is '${headerText}' + * */ editorsTemplateSelector?: string; @@ -56017,41 +64580,49 @@ interface IgGridUpdatingRowEditDialogOptions { interface IgGridUpdatingLocale { /** * Specifies the label for the Done editing button (only applicable when the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) option is enabled). If not set, $.ig.GridUpdating.locale.doneLabel is used. + * */ doneLabel?: string; /** * Specifies the title for the Done editing button (only applicable when the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) option is enabled). If not set, $.ig.GridUpdating.locale.doneTooltip is used. + * */ doneTooltip?: string; /** * Specifies the label for the Cancel editing button (only applicable when the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) option is enabled). If not set, $.ig.GridUpdating.locale.cancelLabel is used. + * */ cancelLabel?: string; /** * Specifies the title for the Cancel editing button (only applicable when the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) option is enabled). If not set, $.ig.GridUpdating.locale.cancelTooltip is used. + * */ cancelTooltip?: string; /** * Specifies the label for the button starting edit mode for row adding. If not set, $.ig.GridUpdating.locale.addRowLabel is used. + * */ addRowLabel?: string; /** * Specifies the title for the button starting edit mode for row adding. If not set, $.ig.GridUpdating.locale.addRowTooltip is used. + * */ addRowTooltip?: string; /** * Specifies the label for the delete button. If not set, $.ig.GridUpdating.locale.deleteRowLabel is used. + * */ deleteRowLabel?: string; /** * Specifies the title for the delete button. If not set, $.ig.GridUpdating.locale.deleteRowTooltip is used. + * */ deleteRowTooltip?: string; @@ -56453,12 +65024,14 @@ interface RowEditDialogContentsRenderedEventUIParam { interface IgGridUpdating { /** * A list of custom column options that specify editing and validation settings for a specific column. + * */ columnSettings?: IgGridUpdatingColumnSetting[]; /** * Specifies the edit mode. * + * * Valid values: * "row" Editors are shown for all columns that are not read-only. The editor of the clicked cell receives initial focus. Done and Cancel buttons may be displayed based on the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) property. * "cell" An editor is shown for the cell entering edit mode. The Done and Cancel buttons are not supported for this mode. @@ -56469,16 +65042,19 @@ interface IgGridUpdating { /** * Specifies if deleting rows through the UI is enabled. + * */ enableDeleteRow?: boolean; /** * Specifies if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). + * */ enableAddRow?: boolean; /** * Specifies if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. + * */ validation?: boolean; @@ -56540,56 +65116,67 @@ interface IgGridUpdating { /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. + * */ showDoneCancelButtons?: boolean; /** * Specifies if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. + * */ enableDataDirtyException?: boolean; /** * Specifies how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. + * */ startEditTriggers?: string|Array; /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). + * */ horizontalMoveOnEnter?: boolean; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. + * */ excelNavigationMode?: boolean; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. + * */ saveChangesSuccessHandler?: Function|string; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. + * */ saveChangesErrorHandler?: Function|string; /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. + * */ swipeDistance?: string|number; /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. + * */ wrapAround?: boolean; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. + * */ rowEditDialogOptions?: IgGridUpdatingRowEditDialogOptions; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. + * */ dialogWidget?: string; @@ -56793,7 +65380,17 @@ interface IgGridUpdatingMethods { * Destroys igGridUpdating. */ destroy(): Object; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridupdating#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridupdating#options:regional) option setter + */ changeRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridupdating#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridupdating#options:language) or [locale](ui.iggridupdating#options:locale) option setter + */ changeLocale(): void; /** @@ -56832,18 +65429,21 @@ interface JQuery { /** * A list of custom column options that specify editing and validation settings for a specific column. + * */ igGridUpdating(optionLiteral: 'option', optionName: "columnSettings"): IgGridUpdatingColumnSetting[]; /** * A list of custom column options that specify editing and validation settings for a specific column. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridUpdatingColumnSetting[]): void; /** * Gets the edit mode. + * */ igGridUpdating(optionLiteral: 'option', optionName: "editMode"): string; @@ -56851,6 +65451,7 @@ interface JQuery { /** * Sets the edit mode. * + * * @optionValue New value to be set. */ @@ -56858,36 +65459,42 @@ interface JQuery { /** * Gets if deleting rows through the UI is enabled. + * */ igGridUpdating(optionLiteral: 'option', optionName: "enableDeleteRow"): boolean; /** * Sets if deleting rows through the UI is enabled. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "enableDeleteRow", optionValue: boolean): void; /** * Gets if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). + * */ igGridUpdating(optionLiteral: 'option', optionName: "enableAddRow"): boolean; /** * Sets if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "enableAddRow", optionValue: boolean): void; /** * Gets if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. + * */ igGridUpdating(optionLiteral: 'option', optionName: "validation"): boolean; /** * Sets if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "validation", optionValue: boolean): void; @@ -57022,30 +65629,35 @@ interface JQuery { /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. + * */ igGridUpdating(optionLiteral: 'option', optionName: "showDoneCancelButtons"): boolean; /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "showDoneCancelButtons", optionValue: boolean): void; /** * Gets if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. + * */ igGridUpdating(optionLiteral: 'option', optionName: "enableDataDirtyException"): boolean; /** * Sets if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "enableDataDirtyException", optionValue: boolean): void; /** * Gets how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. + * */ igGridUpdating(optionLiteral: 'option', optionName: "startEditTriggers"): string|Array; @@ -57053,6 +65665,7 @@ interface JQuery { /** * Sets how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. * + * * @optionValue New value to be set. */ @@ -57060,30 +65673,35 @@ interface JQuery { /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). + * */ igGridUpdating(optionLiteral: 'option', optionName: "horizontalMoveOnEnter"): boolean; /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "horizontalMoveOnEnter", optionValue: boolean): void; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. + * */ igGridUpdating(optionLiteral: 'option', optionName: "excelNavigationMode"): boolean; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "excelNavigationMode", optionValue: boolean): void; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. + * */ igGridUpdating(optionLiteral: 'option', optionName: "saveChangesSuccessHandler"): Function|string; @@ -57091,6 +65709,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. * + * * @optionValue New value to be set. */ @@ -57098,6 +65717,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. + * */ igGridUpdating(optionLiteral: 'option', optionName: "saveChangesErrorHandler"): Function|string; @@ -57105,6 +65725,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. * + * * @optionValue New value to be set. */ @@ -57112,6 +65733,7 @@ interface JQuery { /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. + * */ igGridUpdating(optionLiteral: 'option', optionName: "swipeDistance"): string|number; @@ -57119,6 +65741,7 @@ interface JQuery { /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. * + * * @optionValue New value to be set. */ @@ -57126,36 +65749,42 @@ interface JQuery { /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. + * */ igGridUpdating(optionLiteral: 'option', optionName: "wrapAround"): boolean; /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "wrapAround", optionValue: boolean): void; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. + * */ igGridUpdating(optionLiteral: 'option', optionName: "rowEditDialogOptions"): IgGridUpdatingRowEditDialogOptions; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "rowEditDialogOptions", optionValue: IgGridUpdatingRowEditDialogOptions): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. + * */ igGridUpdating(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. * + * * @optionValue New value to be set. */ igGridUpdating(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; @@ -57496,54 +66125,82 @@ interface WorkspaceResizedEventUIParam {} interface IgHtmlEditor { /** * Shows/hides the "Formatting" toolbar. + * */ showFormattingToolbar?: boolean; /** * Shows/hides the "Text" toolbar. + * */ showTextToolbar?: boolean; /** * Shows/hides the "Insert Object" toolbar. + * */ showInsertObjectToolbar?: boolean; /** * Shows/hides the "Copy Paste" toolbar. + * */ showCopyPasteToolbar?: boolean; /** * The width of the html editor. It can be set as a number in pixels, string (px) or percentage (%). + * */ width?: string|number; /** * The height of the html editor. It can be set as a number in pixels, string (px) or percentage (%). + * */ height?: string|number; /** * The html editor toolbars list. + * */ toolbarSettings?: any[]; /** * The html editor custom toolbars list. + * */ customToolbars?: any[]; /** * The name attribute of the html editor source view. + * */ inputName?: string; /** * Used to render inside the html editor as initial content + * */ value?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired after the html editor widget has been rendered. */ @@ -57624,6 +66281,11 @@ interface IgHtmlEditorMethods { * Returns the element on which the widget was instantiated */ widget(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.ightmleditor#options:language) + * Note that this method is for rare scenarios, use [language](ui.ightmleditor#options:language) or [locale](ui.ightmleditor#options:locale) option setter + */ changeLocale(): void; /** @@ -57695,6 +66357,16 @@ interface IgHtmlEditorMethods { * @param element Accepts html string, DOM element or a jQuery object. */ insertAtCaret(element: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igHtmlEditor"): IgHtmlEditorMethods; @@ -57737,6 +66409,24 @@ interface IgHtmlEditorPopover { item?: any; target?: any; isHidden?: boolean; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; apply?: ApplyEvent; cancel?: CancelEvent; show?: ShowEvent; @@ -57750,6 +66440,32 @@ interface IgHtmlEditorPopover { interface IgHtmlEditorPopoverMethods { show(item: Object): void; hide(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; + + /** + * Destroy is part of the jQuery UI widget API and does the following: + * 1. Remove custom CSS classes that were added. + * 2. Unwrap any wrapping elements such as scrolling divs and other containers. + * 3. Unbind all events that were bound. + */ + destroy(): void; } interface JQuery { data(propertyName: "igHtmlEditorPopover"): IgHtmlEditorPopoverMethods; @@ -57759,6 +66475,24 @@ interface IgLinkPropertiesDialog { item?: any; target?: any; isHidden?: boolean; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; apply?: ApplyEvent; cancel?: CancelEvent; show?: ShowEvent; @@ -57781,6 +66515,24 @@ interface IgTablePropertiesDialog { item?: any; target?: any; isHidden?: boolean; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; apply?: ApplyEvent; cancel?: CancelEvent; show?: ShowEvent; @@ -57803,6 +66555,24 @@ interface IgImagePropertiesDialog { item?: any; target?: any; isHidden?: boolean; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; apply?: ApplyEvent; cancel?: CancelEvent; show?: ShowEvent; @@ -57859,57 +66629,68 @@ interface JQuery { igHtmlEditor(methodName: "selection"): Object; igHtmlEditor(methodName: "range"): Object; igHtmlEditor(methodName: "insertAtCaret", element: Object): void; + igHtmlEditor(methodName: "changeGlobalLanguage"): void; + igHtmlEditor(methodName: "changeGlobalRegional"): void; /** * Shows/hides the "Formatting" toolbar. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "showFormattingToolbar"): boolean; /** * Shows/hides the "Formatting" toolbar. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "showFormattingToolbar", optionValue: boolean): void; /** * Shows/hides the "Text" toolbar. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "showTextToolbar"): boolean; /** * Shows/hides the "Text" toolbar. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "showTextToolbar", optionValue: boolean): void; /** * Shows/hides the "Insert Object" toolbar. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "showInsertObjectToolbar"): boolean; /** * Shows/hides the "Insert Object" toolbar. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "showInsertObjectToolbar", optionValue: boolean): void; /** * Shows/hides the "Copy Paste" toolbar. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "showCopyPasteToolbar"): boolean; /** * Shows/hides the "Copy Paste" toolbar. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "showCopyPasteToolbar", optionValue: boolean): void; /** * The width of the html editor. It can be set as a number in pixels, string (px) or percentage (%). + * */ igHtmlEditor(optionLiteral: 'option', optionName: "width"): string|number; @@ -57917,6 +66698,7 @@ interface JQuery { /** * The width of the html editor. It can be set as a number in pixels, string (px) or percentage (%). * + * * @optionValue New value to be set. */ @@ -57924,6 +66706,7 @@ interface JQuery { /** * The height of the html editor. It can be set as a number in pixels, string (px) or percentage (%). + * */ igHtmlEditor(optionLiteral: 'option', optionName: "height"): string|number; @@ -57931,6 +66714,7 @@ interface JQuery { /** * The height of the html editor. It can be set as a number in pixels, string (px) or percentage (%). * + * * @optionValue New value to be set. */ @@ -57938,52 +66722,104 @@ interface JQuery { /** * The html editor toolbars list. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "toolbarSettings"): any[]; /** * The html editor toolbars list. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "toolbarSettings", optionValue: any[]): void; /** * The html editor custom toolbars list. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "customToolbars"): any[]; /** * The html editor custom toolbars list. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "customToolbars", optionValue: any[]): void; /** * The name attribute of the html editor source view. + * */ igHtmlEditor(optionLiteral: 'option', optionName: "inputName"): string; /** * The name attribute of the html editor source view. * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "inputName", optionValue: string): void; /** * Used to render inside the html editor as initial content + * */ igHtmlEditor(optionLiteral: 'option', optionName: "value"): string; /** * Used to render inside the html editor as initial content * + * * @optionValue New value to be set. */ igHtmlEditor(optionLiteral: 'option', optionName: "value", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igHtmlEditor(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igHtmlEditor(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igHtmlEditor(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igHtmlEditor(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igHtmlEditor(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igHtmlEditor(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired after the html editor widget has been rendered. */ @@ -58169,12 +67005,60 @@ interface JQuery { interface JQuery { igHtmlEditorPopover(methodName: "show", item: Object): void; igHtmlEditorPopover(methodName: "hide"): void; + igHtmlEditorPopover(methodName: "changeLocale", $container: Object): void; + igHtmlEditorPopover(methodName: "changeGlobalLanguage"): void; + igHtmlEditorPopover(methodName: "changeGlobalRegional"): void; + igHtmlEditorPopover(methodName: "destroy"): void; igHtmlEditorPopover(optionLiteral: 'option', optionName: "item"): any; igHtmlEditorPopover(optionLiteral: 'option', optionName: "item", optionValue: any): void; igHtmlEditorPopover(optionLiteral: 'option', optionName: "target"): any; igHtmlEditorPopover(optionLiteral: 'option', optionName: "target", optionValue: any): void; igHtmlEditorPopover(optionLiteral: 'option', optionName: "isHidden"): boolean; igHtmlEditorPopover(optionLiteral: 'option', optionName: "isHidden", optionValue: boolean): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igHtmlEditorPopover(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igHtmlEditorPopover(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igHtmlEditorPopover(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igHtmlEditorPopover(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igHtmlEditorPopover(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igHtmlEditorPopover(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igHtmlEditorPopover(optionLiteral: 'option', optionName: "apply"): ApplyEvent; igHtmlEditorPopover(optionLiteral: 'option', optionName: "apply", optionValue: ApplyEvent): void; igHtmlEditorPopover(optionLiteral: 'option', optionName: "cancel"): CancelEvent; @@ -58198,6 +67082,50 @@ interface JQuery { igLinkPropertiesDialog(optionLiteral: 'option', optionName: "target", optionValue: any): void; igLinkPropertiesDialog(optionLiteral: 'option', optionName: "isHidden"): boolean; igLinkPropertiesDialog(optionLiteral: 'option', optionName: "isHidden", optionValue: boolean): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igLinkPropertiesDialog(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igLinkPropertiesDialog(optionLiteral: 'option', optionName: "apply"): ApplyEvent; igLinkPropertiesDialog(optionLiteral: 'option', optionName: "apply", optionValue: ApplyEvent): void; igLinkPropertiesDialog(optionLiteral: 'option', optionName: "cancel"): CancelEvent; @@ -58221,6 +67149,50 @@ interface JQuery { igTablePropertiesDialog(optionLiteral: 'option', optionName: "target", optionValue: any): void; igTablePropertiesDialog(optionLiteral: 'option', optionName: "isHidden"): boolean; igTablePropertiesDialog(optionLiteral: 'option', optionName: "isHidden", optionValue: boolean): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igTablePropertiesDialog(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTablePropertiesDialog(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igTablePropertiesDialog(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTablePropertiesDialog(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igTablePropertiesDialog(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igTablePropertiesDialog(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igTablePropertiesDialog(optionLiteral: 'option', optionName: "apply"): ApplyEvent; igTablePropertiesDialog(optionLiteral: 'option', optionName: "apply", optionValue: ApplyEvent): void; igTablePropertiesDialog(optionLiteral: 'option', optionName: "cancel"): CancelEvent; @@ -58244,6 +67216,50 @@ interface JQuery { igImagePropertiesDialog(optionLiteral: 'option', optionName: "target", optionValue: any): void; igImagePropertiesDialog(optionLiteral: 'option', optionName: "isHidden"): boolean; igImagePropertiesDialog(optionLiteral: 'option', optionName: "isHidden", optionValue: boolean): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igImagePropertiesDialog(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igImagePropertiesDialog(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igImagePropertiesDialog(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igImagePropertiesDialog(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igImagePropertiesDialog(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igImagePropertiesDialog(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igImagePropertiesDialog(optionLiteral: 'option', optionName: "apply"): ApplyEvent; igImagePropertiesDialog(optionLiteral: 'option', optionName: "apply", optionValue: ApplyEvent): void; igImagePropertiesDialog(optionLiteral: 'option', optionName: "cancel"): CancelEvent; @@ -58261,31 +67277,37 @@ interface JQuery { interface IgLayoutManagerBorderLayout { /** * Option specifying the width of the left region, either in px or percentages + * */ leftWidth?: string; /** * Option specifying the width of the right region, either in px or percentages + * */ rightWidth?: string; /** * Option specifying whether the footer region in the border layout will be hidden or shown + * */ showFooter?: boolean; /** * Option specifying whether the header region in the border layout will be hidden or shown + * */ showHeader?: boolean; /** * Option specifying whether the left region in the border layout will be hidden or shown + * */ showLeft?: boolean; /** * Option specifying whether the right region in the border layout will be hidden or shown + * */ showRight?: boolean; @@ -58298,11 +67320,13 @@ interface IgLayoutManagerBorderLayout { interface IgLayoutManagerGridLayout { /** * Specifies the duration of the animations in the layout manager"s grid layout + * */ animationDuration?: number; /** * Number of columns in the grid + * */ cols?: number; @@ -58311,6 +67335,7 @@ interface IgLayoutManagerGridLayout { * It can also accept an array, specifying height for each column. If more than one column * has an asterisk value, the remaining height will be equally distributed between these columns. * array The column height can be set as an array of heights. + * */ columnHeight?: string|number|Array; @@ -58319,32 +67344,38 @@ interface IgLayoutManagerGridLayout { * It can also accept an array, specifying width for each column. If more than one column * has an asterisk value, the remaining width will be equally distributed between these columns. * array The column width can be set as an array of widths. + * */ columnWidth?: string|number|Array; /** * Specifies the margin left css property for items + * */ marginLeft?: number; /** * Specifies the margin top css property for items + * */ marginTop?: number; /** * Specifies whether the previous set options should be overriden when setting options + * */ overrideConfigOnSetOption?: boolean; /** * Specified whether the items should rearrange to fit in the container when it is resized. * Have effect only when fixed columnWidth option is set. + * */ rearrangeItems?: boolean; /** * Number of rows in the grid + * */ rows?: number; @@ -58357,33 +67388,39 @@ interface IgLayoutManagerGridLayout { interface IgLayoutManagerItem { /** * Column index of the item in the grid + * */ colIndex?: number; /** * ColSpan of the item + * */ colSpan?: number; /** * Gets/Sets individual item height, either in px or percentage * string The default height can be set in pixels (px), %, em and other units. + * */ height?: string; /** * Row index of the item in the grid + * */ rowIndex?: number; /** * RowSpan of the item + * */ rowSpan?: number; /** * Gets/Sets individual item width, either in px or percentage * string The default width can be set in pixels (px), %, em and other units. + * */ width?: number; @@ -58470,21 +67507,25 @@ interface ItemRenderingEventUIParam { interface IgLayoutManager { /** * Options specific to a border layout + * */ borderLayout?: IgLayoutManagerBorderLayout; /** * Options specific to grid layout mode + * */ gridLayout?: IgLayoutManagerGridLayout; /** * Gets/Sets height of the layout container. + * */ height?: string|number; /** * Number of items to render, this is only applicable to layouts: vertical and flow + * */ itemCount?: number; @@ -58496,6 +67537,7 @@ interface IgLayoutManager { * items can have various properties some of which may not be applicable * depending on the layoutMode. * for example rowSpan/colSpan/colIndex/rowIndex are only applicable to gridlayout + * */ items?: IgLayoutManagerItem[]; @@ -58507,6 +67549,7 @@ interface IgLayoutManager { * column Column type can be set with column layout * vertical Column type can be set with vertical layout * + * * Valid values: * "grid" * "border" @@ -58518,6 +67561,7 @@ interface IgLayoutManager { /** * Gets/Sets width of the layout container. + * */ width?: string|number; @@ -58594,30 +67638,35 @@ interface JQuery { /** * Options specific to a border layout + * */ igLayoutManager(optionLiteral: 'option', optionName: "borderLayout"): IgLayoutManagerBorderLayout; /** * Options specific to a border layout * + * * @optionValue New value to be set. */ igLayoutManager(optionLiteral: 'option', optionName: "borderLayout", optionValue: IgLayoutManagerBorderLayout): void; /** * Options specific to grid layout mode + * */ igLayoutManager(optionLiteral: 'option', optionName: "gridLayout"): IgLayoutManagerGridLayout; /** * Options specific to grid layout mode * + * * @optionValue New value to be set. */ igLayoutManager(optionLiteral: 'option', optionName: "gridLayout", optionValue: IgLayoutManagerGridLayout): void; /** * Gets/Sets height of the layout container. + * */ igLayoutManager(optionLiteral: 'option', optionName: "height"): string|number; @@ -58625,6 +67674,7 @@ interface JQuery { /** * /Sets height of the layout container. * + * * @optionValue New value to be set. */ @@ -58632,12 +67682,14 @@ interface JQuery { /** * Number of items to render, this is only applicable to layouts: vertical and flow + * */ igLayoutManager(optionLiteral: 'option', optionName: "itemCount"): number; /** * Number of items to render, this is only applicable to layouts: vertical and flow * + * * @optionValue New value to be set. */ igLayoutManager(optionLiteral: 'option', optionName: "itemCount", optionValue: number): void; @@ -58650,6 +67702,7 @@ interface JQuery { * items can have various properties some of which may not be applicable * depending on the layoutMode. * for example rowSpan/colSpan/colIndex/rowIndex are only applicable to gridlayout + * */ igLayoutManager(optionLiteral: 'option', optionName: "items"): IgLayoutManagerItem[]; @@ -58662,6 +67715,7 @@ interface JQuery { * depending on the layoutMode. * for example rowSpan/colSpan/colIndex/rowIndex are only applicable to gridlayout * + * * @optionValue New value to be set. */ igLayoutManager(optionLiteral: 'option', optionName: "items", optionValue: IgLayoutManagerItem[]): void; @@ -58673,6 +67727,7 @@ interface JQuery { * flow Column type can be set with flow layout * column Column type can be set with column layout * vertical Column type can be set with vertical layout + * */ igLayoutManager(optionLiteral: 'option', optionName: "layoutMode"): any; @@ -58684,12 +67739,14 @@ interface JQuery { * column Column type can be set with column layout * vertical Column type can be set with vertical layout * + * * @optionValue New value to be set. */ igLayoutManager(optionLiteral: 'option', optionName: "layoutMode", optionValue: any): void; /** * Gets/Sets width of the layout container. + * */ igLayoutManager(optionLiteral: 'option', optionName: "width"): string|number; @@ -58697,6 +67754,7 @@ interface JQuery { /** * /Sets width of the layout container. * + * * @optionValue New value to be set. */ @@ -59201,6 +68259,24 @@ interface IgLinearGauge { */ pixelScalingRatio?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised when a label of the the gauge is formatted. * Function takes first argument evt and second argument ui. @@ -59266,6 +68342,9 @@ interface IgLinearGaugeMethods { /** * Gets the value for the main scale of the gauge for a given point within the bounds of the gauge. + * + * @param x + * @param y */ getValueForPoint(x: Object, y: Object): number; @@ -59296,6 +68375,24 @@ interface IgLinearGaugeMethods { * Re-polls the css styles for the widget. Use this method when the css styles have been modified. */ styleUpdated(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igLinearGauge"): IgLinearGaugeMethods; @@ -59312,6 +68409,9 @@ interface JQuery { igLinearGauge(methodName: "flush"): void; igLinearGauge(methodName: "destroy"): void; igLinearGauge(methodName: "styleUpdated"): void; + igLinearGauge(methodName: "changeLocale", $container: Object): void; + igLinearGauge(methodName: "changeGlobalLanguage"): void; + igLinearGauge(methodName: "changeGlobalRegional"): void; /** * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). @@ -60113,6 +69213,50 @@ interface JQuery { */ igLinearGauge(optionLiteral: 'option', optionName: "pixelScalingRatio", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igLinearGauge(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igLinearGauge(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igLinearGauge(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igLinearGauge(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igLinearGauge(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igLinearGauge(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised when a label of the the gauge is formatted. * Function takes first argument evt and second argument ui. @@ -60438,6 +69582,7 @@ interface IgMapSeries { /** * Gets or sets the marker type for the current series object.If the MarkerTemplate property is set, the setting of the MarkerType property will be ignored. * + * * Valid values: * "unset" * "none" @@ -60879,6 +70024,7 @@ interface IgMap { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. * + * * Valid values: * "deferred" Defer the view update until after the user action is complete. * "immediate" Update the view immediately while the user action is happening. @@ -61019,6 +70165,24 @@ interface IgMap { */ theme?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired when the mouse has hovered on a series and the tooltip is about to show * Function takes arguments evt and ui. @@ -61358,11 +70522,15 @@ interface IgMapMethods { /** * Gets the actual minimum value of the target xAxis or yAxis + * + * @param targetName */ getActualMinimumValue(targetName: Object): void; /** * Gets the actual maximum value of the target xAxis or yAxis + * + * @param targetName */ getActualMaximumValue(targetName: Object): void; @@ -61404,147 +70572,29 @@ interface IgMapMethods { * @param animate Whether the change should be animated, if possible. */ renderSeries(targetName: string, animate: boolean): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igMap"): IgMapMethods; } -interface ShapeDataSourceSettings { - /** - * The unique identifier. - */ - id?: string; - - /** - * The Uri of the .shp portion of the Shapefile. - */ - shapefileSource?: string; - - /** - * The Uri of the .dbf portion of the Shapefile. - */ - databaseSource?: string; - - /** - * Callback function to call when data binding is complete. - */ - callback?: Function; - - /** - * Object on which to invoke the callback function. - */ - callee?: any; - - /** - * Callback function to call to allow shape records to be transformed. - * paramType="object" the shape record to be transformed. - */ - transformRecord?: Function; - - /** - * Callback function to call to allow points in the shape records to be transformed. - * paramType="object" the point to be transformed in place. The object will look like { x: value, y: value2 } - */ - transformPoint?: Function; - - /** - * Callback function to call to allow the bounds of the shape data source to be transformed. - * paramType="object" the bounds of the shape datasource to be transformed in place. The object will look like { top: value, left: value, width: value, height: value } - */ - transformBounds?: Function; - - /** - * Callback function to call when the import process has been completed - * paramType="object" the ShapeDataSource instance - */ - importCompleted?: Function; - - /** - * Option for ShapeDataSourceSettings - */ - [optionName: string]: any; -} - -declare namespace Infragistics { -class ShapeDataSource { - constructor(settings: ShapeDataSourceSettings); - - /** - * Loads to the current data source - */ - dataBind(): void; - - /** - * Returns true if data is loaded - */ - isBound(): boolean; - - /** - * Returns the current converter instance - */ - converter(): Object; -} -} -interface IgniteUIStatic { -ShapeDataSource: typeof Infragistics.ShapeDataSource; -} - -interface TriangulationDataSourceSettings { - /** - * The unique identifier. - */ - id?: string; - - /** - * A Uri specifying the location of the Itf file. - */ - source?: string; - - /** - * The TriangulationSource which is typically created after importing the Itf from the Source Uri. - */ - triangulationSource?: string; - - /** - * Callback function to call when data binding is complete - */ - callback?: Function; - - /** - * Object on which to invoke the callback function - */ - callee?: any; - - /** - * Option for TriangulationDataSourceSettings - */ - [optionName: string]: any; -} - -declare namespace Infragistics { -class TriangulationDataSource { - constructor(settings: TriangulationDataSourceSettings); - - /** - * Loads to the current data source - */ - dataBind(): void; - - /** - * Returns true if data is loaded - */ - isBound(): boolean; - - /** - * Returns the current converter instance - */ - converter(): Object; -} -} -interface IgniteUIStatic { -TriangulationDataSource: typeof Infragistics.TriangulationDataSource; -} - interface JQuery { igMap(methodName: "option"): void; igMap(methodName: "destroy"): void; @@ -61576,6 +70626,9 @@ interface JQuery { igMap(methodName: "getZoomFromGeographic", rect: Object): Object; igMap(methodName: "print"): void; igMap(methodName: "renderSeries", targetName: string, animate: boolean): void; + igMap(methodName: "changeLocale", $container: Object): void; + igMap(methodName: "changeGlobalLanguage"): void; + igMap(methodName: "changeGlobalRegional"): void; /** * The width of the map. It can be set as a number in pixels, string (px) or percentage (%). @@ -61821,6 +70874,7 @@ interface JQuery { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. + * */ igMap(optionLiteral: 'option', optionName: "windowResponse"): string; @@ -61828,6 +70882,7 @@ interface JQuery { /** * The response to user panning and zooming: whether to update the view immediately while the user action is happening, or to defer the update to after the user action is complete. The user action will be an action such as a mouse drag which causes panning and/or zooming to occur. * + * * @optionValue New value to be set. */ @@ -62141,6 +71196,50 @@ interface JQuery { */ igMap(optionLiteral: 'option', optionName: "theme", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igMap(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igMap(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igMap(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igMap(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igMap(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igMap(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired when the mouse has hovered on a series and the tooltip is about to show * Function takes arguments evt and ui. @@ -62535,11 +71634,13 @@ interface JQuery { interface IgNotifierHeaderTemplate { /** * Controls whether the popover renders a functional close button + * */ closeButton?: boolean; /** * Sets the content for the popover header. + * */ title?: string; @@ -62553,6 +71654,7 @@ interface IgNotifier { /** * Gets/Sets the current state of the igNotifier messages. State controls what CSS classes are applied to the messages and target and has interactions with other options as well. * + * * Valid values: * "success" Messages and target CSS have success styles applied. * "info" Messages have info applied. Target is unaffected. @@ -62564,6 +71666,7 @@ interface IgNotifier { /** * Controls the level of notifications shown by automatic and manual messages using the [notify](ui.ignotifier#methods:notify) method. Use [show](ui.ignotifier#methods:show) to ignore the level. * + * * Valid values: * "success" Show all types of messages * "info" Show everything from info level messages up @@ -62575,6 +71678,7 @@ interface IgNotifier { /** * Controls where the popover DOM should be attached to (only applies to popovers). * + * * Valid values: * "string" A valid jQuery selector for the element * "object" A reference to the parent jQuery object @@ -62584,6 +71688,7 @@ interface IgNotifier { /** * Controls the positioning mode of messages. Setting a mode will override the default behavior which is auto.Note: Inline element uses a block container as is always placed after the target. * + * * Valid values: * "auto" Uses popover for info and warning messages and inline for errors and success. * "popover" Displays messages in a configurable popover. @@ -62593,17 +71698,20 @@ interface IgNotifier { /** * Allows setting the respective state CSS on the target element (used to apply border color by default) + * */ allowCSSOnTarget?: boolean; /** * Allows rendering a span with the respective state CSS to display jQuery UI framework icons + * */ showIcon?: boolean; /** * Gets/Sets the content for the popover container. Templated with parameters by default: {0} - icon container class, {1} - the icon class and {2} - message text. * + * * Valid values: * "string" String content of the popover container * "function" Function which is a callback that should return the content. Use the 'this' value to access the target DOM element and passed argument for state value. Result can also include the same template parametes. @@ -62612,12 +71720,14 @@ interface IgNotifier { /** * Sets the content for the popover header + * */ headerTemplate?: IgNotifierHeaderTemplate; /** * Sets the event on which the notification will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * Valid values: * "mouseenter" The popover is shown on mouse enter in the target element * "click" The popover is shown on click on the target element @@ -62628,16 +71738,19 @@ interface IgNotifier { /** * Controls whether the popover will close on blur or not. This option has effect only when the corresponding [showOn](ui.ignotifier#options:showOn) is set (manual by default) + * */ closeOnBlur?: boolean; /** * Gets/Sets the time in milliseconds the notification fades in and out when showing/hiding + * */ animationDuration?: number; /** * Gets/Sets the distance in pixels a notification popover slides outwards as it's shown. + * */ animationSlideDistance?: number; @@ -62649,6 +71762,7 @@ interface IgNotifier { /** * controls the direction in which the control shows relative to the target element * + * * Valid values: * "auto" lets the control show on the side where enough space is available with the priority specified by the [directionPriority](ui.%%WidgetNameLowered%%#options:directionPriority) property * "left" shows popover on the left side of the target element @@ -62661,12 +71775,14 @@ interface IgNotifier { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ directionPriority?: any[]; /** * controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * Valid values: * "auto" lets the control choose a position depending on available space with the following priority balanced > end > start * "balanced" the popover is positioned at the middle of the target element @@ -62677,31 +71793,37 @@ interface IgNotifier { /** * defines width for the popover. leave null for auto. + * */ width?: number|string; /** * defines height for the popover. leave null for auto + * */ height?: number|string; /** * defines width the popover won't go under the value even if no specific one is set. + * */ minWidth?: number|string; /** * defines width the popover won't exceed even if no specific one is set. + * */ maxWidth?: number|string; /** * defines height the popover won't exceed even if no specific one is set. + * */ maxHeight?: number|string; /** * Sets the containment for the popover. Accepts a jQuery object + * */ containment?: any; @@ -62731,6 +71853,10 @@ interface IgNotifier { [optionName: string]: any; } interface IgNotifierMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.ignotifier#options:language) + * Note that this method is for rare scenarios, use [language](ui.ignotifier#options:language) or [locale](ui.ignotifier#options:locale) option setter + */ changeLocale(): void; /** @@ -62824,6 +71950,7 @@ interface JQuery { /** * Gets/Sets the current state of the igNotifier messages. State controls what CSS classes are applied to the messages and target and has interactions with other options as well. + * */ igNotifier(optionLiteral: 'option', optionName: "state"): string; @@ -62831,6 +71958,7 @@ interface JQuery { /** * /Sets the current state of the igNotifier messages. State controls what CSS classes are applied to the messages and target and has interactions with other options as well. * + * * @optionValue New value to be set. */ @@ -62838,6 +71966,7 @@ interface JQuery { /** * Controls the level of notifications shown by automatic and manual messages using the [notify](ui.ignotifier#methods:notify) method. Use [show](ui.ignotifier#methods:show) to ignore the level. + * */ igNotifier(optionLiteral: 'option', optionName: "notifyLevel"): string; @@ -62845,6 +71974,7 @@ interface JQuery { /** * Controls the level of notifications shown by automatic and manual messages using the [notify](ui.ignotifier#methods:notify) method. Use [show](ui.ignotifier#methods:show) to ignore the level. * + * * @optionValue New value to be set. */ @@ -62852,6 +71982,7 @@ interface JQuery { /** * Controls where the popover DOM should be attached to (only applies to popovers). + * */ igNotifier(optionLiteral: 'option', optionName: "appendTo"): string|Object; @@ -62859,6 +71990,7 @@ interface JQuery { /** * Controls where the popover DOM should be attached to (only applies to popovers). * + * * @optionValue New value to be set. */ @@ -62866,6 +71998,7 @@ interface JQuery { /** * Controls the positioning mode of messages. Setting a mode will override the default behavior which is auto.Note: Inline element uses a block container as is always placed after the target. + * */ igNotifier(optionLiteral: 'option', optionName: "mode"): string; @@ -62873,6 +72006,7 @@ interface JQuery { /** * Controls the positioning mode of messages. Setting a mode will override the default behavior which is auto.Note: Inline element uses a block container as is always placed after the target. * + * * @optionValue New value to be set. */ @@ -62880,30 +72014,35 @@ interface JQuery { /** * Allows setting the respective state CSS on the target element (used to apply border color by default) + * */ igNotifier(optionLiteral: 'option', optionName: "allowCSSOnTarget"): boolean; /** * Allows setting the respective state CSS on the target element (used to apply border color by default) * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "allowCSSOnTarget", optionValue: boolean): void; /** * Allows rendering a span with the respective state CSS to display jQuery UI framework icons + * */ igNotifier(optionLiteral: 'option', optionName: "showIcon"): boolean; /** * Allows rendering a span with the respective state CSS to display jQuery UI framework icons * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "showIcon", optionValue: boolean): void; /** * Gets/Sets the content for the popover container. Templated with parameters by default: {0} - icon container class, {1} - the icon class and {2} - message text. + * */ igNotifier(optionLiteral: 'option', optionName: "contentTemplate"): string|Function; @@ -62911,6 +72050,7 @@ interface JQuery { /** * /Sets the content for the popover container. Templated with parameters by default: {0} - icon container class, {1} - the icon class and {2} - message text. * + * * @optionValue New value to be set. */ @@ -62918,18 +72058,21 @@ interface JQuery { /** * The content for the popover header + * */ igNotifier(optionLiteral: 'option', optionName: "headerTemplate"): IgNotifierHeaderTemplate; /** * Sets the content for the popover header * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "headerTemplate", optionValue: IgNotifierHeaderTemplate): void; /** * Sets the event on which the notification will be shown. Predefined values are "mouseenter", "click" and "focus" + * */ igNotifier(optionLiteral: 'option', optionName: "showOn"): string; @@ -62937,6 +72080,7 @@ interface JQuery { /** * Sets the event on which the notification will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * @optionValue New value to be set. */ @@ -62944,36 +72088,42 @@ interface JQuery { /** * Controls whether the popover will close on blur or not. This option has effect only when the corresponding [showOn](ui.ignotifier#options:showOn) is set (manual by default) + * */ igNotifier(optionLiteral: 'option', optionName: "closeOnBlur"): boolean; /** * Controls whether the popover will close on blur or not. This option has effect only when the corresponding [showOn](ui.ignotifier#options:showOn) is set (manual by default) * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "closeOnBlur", optionValue: boolean): void; /** * Gets/Sets the time in milliseconds the notification fades in and out when showing/hiding + * */ igNotifier(optionLiteral: 'option', optionName: "animationDuration"): number; /** * /Sets the time in milliseconds the notification fades in and out when showing/hiding * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; /** * Gets/Sets the distance in pixels a notification popover slides outwards as it's shown. + * */ igNotifier(optionLiteral: 'option', optionName: "animationSlideDistance"): number; /** * /Sets the distance in pixels a notification popover slides outwards as it's shown. * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "animationSlideDistance", optionValue: number): void; @@ -62992,6 +72142,7 @@ interface JQuery { /** * Controls the direction in which the control shows relative to the target element + * */ igNotifier(optionLiteral: 'option', optionName: "direction"): string; @@ -62999,6 +72150,7 @@ interface JQuery { /** * Controls the direction in which the control shows relative to the target element * + * * @optionValue New value to be set. */ @@ -63007,6 +72159,7 @@ interface JQuery { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ igNotifier(optionLiteral: 'option', optionName: "directionPriority"): any[]; @@ -63014,12 +72167,14 @@ interface JQuery { * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "directionPriority", optionValue: any[]): void; /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area + * */ igNotifier(optionLiteral: 'option', optionName: "position"): string; @@ -63027,6 +72182,7 @@ interface JQuery { /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * @optionValue New value to be set. */ @@ -63034,6 +72190,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. + * */ igNotifier(optionLiteral: 'option', optionName: "width"): number|string; @@ -63041,6 +72198,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. * + * * @optionValue New value to be set. */ @@ -63048,6 +72206,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto + * */ igNotifier(optionLiteral: 'option', optionName: "height"): number|string; @@ -63055,6 +72214,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto * + * * @optionValue New value to be set. */ @@ -63062,6 +72222,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. + * */ igNotifier(optionLiteral: 'option', optionName: "minWidth"): number|string; @@ -63069,6 +72230,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -63076,6 +72238,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. + * */ igNotifier(optionLiteral: 'option', optionName: "maxWidth"): number|string; @@ -63083,6 +72246,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -63090,6 +72254,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. + * */ igNotifier(optionLiteral: 'option', optionName: "maxHeight"): number|string; @@ -63097,6 +72262,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -63104,12 +72270,14 @@ interface JQuery { /** * The containment for the popover. Accepts a jQuery object + * */ igNotifier(optionLiteral: 'option', optionName: "containment"): any; /** * Sets the containment for the popover. Accepts a jQuery object * + * * @optionValue New value to be set. */ igNotifier(optionLiteral: 'option', optionName: "containment", optionValue: any): void; @@ -63170,8 +72338,8 @@ interface JQuery { interface IgPivotDataSelectorDataSourceOptionsXmlaOptionsRequestOptions { /** * The value is applied to XmlHttpRequest.withCredentials if supported by the user agent. - * Setting this property to true will allow IE8/IE9 to make authenticated cross-origin requests to tusted domains through XmlHttpRequest instead of XDomainRequest - * and will prompt the user for credentials. + * Setting this property to true will allow IE8/IE9 to make authenticated cross-origin requests to tusted domains through XmlHttpRequest instead of XDomainRequest + * and will prompt the user for credentials. */ withCredentials?: boolean; @@ -63256,13 +72424,13 @@ interface IgPivotDataSelectorDataSourceOptionsXmlaOptions { /** * Additional properties sent with every discover request. - * The object is treated as a key/value store where each property name is used as the key and the property value as the value. + * The object is treated as a key/value store where each property name is used as the key and the property value as the value. */ discoverProperties?: any; /** * Additional properties sent with every execute request. - * The object is treated as a key/value store where each property name is used as the key and the property value as the value. + * The object is treated as a key/value store where each property name is used as the key and the property value as the value. */ executeProperties?: any; @@ -63290,7 +72458,7 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeMeasure /** * Optional="false" An aggregator function called when each cell is evaluated. - * Returns a value for the cell. If the returned value is null, no cell will be created in for the data source result. + * Returns a value for the cell. If the returned value is null, no cell will be created in for the data source result. */ aggregator?: Function; @@ -63308,14 +72476,14 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeMeasure interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeMeasuresDimension { /** * A unique name for the measures dimension. - * The default value is "Measures". This name is used to create the names of dimensions using the following pattern: - * [].[] + * The default value is "Measures". This name is used to create the names of dimensions using the following pattern: + * [].[] */ name?: string; /** * A caption for the measures dimension. - * The default value is "Measures". + * The default value is "Measures". */ caption?: string; @@ -63333,8 +72501,8 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeMeasure interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeDimensionHierarchieLevel { /** * Optional="false" A name for the level. - * The unique name of the level is formed using the following pattern: - * {}.[] + * The unique name of the level is formed using the following pattern: + * {}.[] */ name?: string; @@ -63345,7 +72513,7 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeDimensi /** * A function called for each item of the data source array when level members are created. - * Based on the item parameter the function should return a value that will form the $.ig.Member’s name and caption. + * Based on the item parameter the function should return a value that will form the $.ig.Member’s name and caption. */ memberProvider?: Function; @@ -63358,8 +72526,8 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeDimensi interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeDimensionHierarchie { /** * Optional="false" A name for the hierarchy. - * The unique name of the hierarchy is formed using the following pattern: - * [].[] + * The unique name of the hierarchy is formed using the following pattern: + * [].[] */ name?: string; @@ -63370,8 +72538,8 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptionsMetadataCubeDimensi /** * The path to be used when displaying the hierarchy in the user interface. - * Nested folders are indicated by a backslash (\). - * The folder hierarchy will appear under parent dimension node. + * Nested folders are indicated by a backslash (\). + * The folder hierarchy will appear under parent dimension node. */ displayFolder?: string; @@ -63465,14 +72633,14 @@ interface IgPivotDataSelectorDataSourceOptionsFlatDataOptions { /** * See $.ig.DataSource. - * string Specifies the name of the property in which data records are held if the response is wrapped. - * null Option is ignored. + * string Specifies the name of the property in which data records are held if the response is wrapped. + * null Option is ignored. */ responseDataKey?: string; /** * String Explicitly set data source type (such as "json"). Please refer to the documentation of $.ig.DataSource and its type property. - * null Option is ignored. + * null Option is ignored. */ responseDataType?: string; @@ -63531,7 +72699,8 @@ interface IgPivotDataSelectorDragAndDropSettings { appendTo?: any; /** - * Specifies the containment for the drag helper. The area inside of which the helper is contained would be scrollable while dragging. + * Specifies the containment for the drag helper. The area inside of which thehelper is contained would be scrollable while dragging. + * */ containment?: boolean|string|Array; @@ -63552,7 +72721,7 @@ interface DataSelectorRenderedEvent { interface DataSelectorRenderedEventUIParam { /** - * Used to get a reference to the data selector. + * Gets a reference to the data selector. */ owner?: any; } @@ -63563,22 +72732,22 @@ interface DataSourceInitializedEvent { interface DataSourceInitializedEventUIParam { /** - * Used to get a reference to the data selector. + * Gets a reference to the data selector. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to see if an error has occured during initialization. + * See if an error has occured during initialization. */ - error?: any; + error?: string; /** - * Used to get a reference to the root of the data source metatadata root item. + * Gets a reference to the root of the data source metatadata root item. */ metadataTreeRoot?: any; } @@ -63589,22 +72758,22 @@ interface DataSourceUpdatedEvent { interface DataSourceUpdatedEventUIParam { /** - * Used to get a reference to the data selector. + * Gets a reference to the data selector. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to see if an error has occured during update. + * See if an error has occured during update. */ - error?: any; + error?: string; /** - * Used to get the result of the update operation. + * Gets the result of the update operation. */ result?: any; } @@ -63615,14 +72784,14 @@ interface DeferUpdateChangedEvent { interface DeferUpdateChangedEventUIParam { /** - * Used to get a reference to the data selector. + * Gets a reference to the data selector. */ owner?: any; /** - * Used to get the defer update value. + * Gets the defer update value. */ - deferUpdate?: any; + deferUpdate?: boolean; } interface DragStartEvent { @@ -63631,27 +72800,27 @@ interface DragStartEvent { interface DragStartEventUIParam { /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; /** - * Used to get a reference to the helper. + * Gets a reference to the helper. */ - helper?: any; + helper?: string; /** - * Used to get a reference to the offset. + * Gets a reference to the offset. */ offset?: any; /** - * Used to get a reference to the original position of the draggable element. + * Gets a reference to the original position of the draggable element. */ originalPosition?: any; /** - * Used to get a reference to the current position of the draggable element. + * Gets a reference to the current position of the draggable element. */ position?: any; } @@ -63662,27 +72831,27 @@ interface DragEvent { interface DragEventUIParam { /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; /** - * Used to get a reference to the helper. + * Gets a reference to the helper. */ - helper?: any; + helper?: string; /** - * Used to get a reference to the offset. + * Gets a reference to the offset. */ offset?: any; /** - * Used to get a reference to the original position of the draggable element. + * Gets a reference to the original position of the draggable element. */ originalPosition?: any; /** - * Used to get a reference to the current position of the draggable element. + * Gets a reference to the current position of the draggable element. */ position?: any; } @@ -63693,22 +72862,22 @@ interface DragStopEvent { interface DragStopEventUIParam { /** - * Used to get a reference to the helper. + * Gets a reference to the helper. */ - helper?: any; + helper?: string; /** - * Used to get a reference to the offset. + * Gets a reference to the offset. */ offset?: any; /** - * Used to get a reference to the original position of the draggable element. + * Gets a reference to the original position of the draggable element. */ originalPosition?: any; /** - * Used to get a reference to the current position of the draggable element. + * Gets a reference to the current position of the draggable element. */ position?: any; } @@ -63719,37 +72888,37 @@ interface MetadataDroppingEvent { interface MetadataDroppingEventUIParam { /** - * Used to the drop target. + * A reference to the drop target. */ - targetElement?: any; + targetElement?: string; /** - * Used to the dragged element. + * A reference to the dragged element. */ - draggedElement?: any; + draggedElement?: string; /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; /** - * Used to get the index at which the metadata will be inserted. + * Gets the index at which the metadata will be inserted. */ - metadataIndex?: any; + metadataIndex?: number; /** - * Used to get a reference to the helper. + * Gets a reference to the helper. */ - helper?: any; + helper?: string; /** - * Used to get a reference to the offset. + * Gets a reference to the offset. */ offset?: any; /** - * Used to get a reference to the current position of the draggable element. + * Gets a reference to the current position of the draggable element. */ position?: any; } @@ -63760,37 +72929,37 @@ interface MetadataDroppedEvent { interface MetadataDroppedEventUIParam { /** - * Used to the drop target. + * A reference to the drop target. */ - targetElement?: any; + targetElement?: string; /** - * Used to the dragged element. + * A reference to the dragged element. */ - draggedElement?: any; + draggedElement?: string; /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; /** - * Used to get the index at which the metadata is inserted. + * Gets the index at which the metadata is inserted. */ - metadataIndex?: any; + metadataIndex?: number; /** - * Used to get a reference to the helper. + * Gets a reference to the helper. */ - helper?: any; + helper?: string; /** - * Used to get a reference to the offset. + * Gets a reference to the offset. */ offset?: any; /** - * Used to get a reference to the current position of the draggable element. + * Gets a reference to the current position of the draggable element. */ position?: any; } @@ -63801,12 +72970,12 @@ interface MetadataRemovingEvent { interface MetadataRemovingEventUIParam { /** - * Used to the dragged element. + * A reference to the dragged element. */ - targetElement?: any; + targetElement?: string; /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; } @@ -63817,7 +72986,7 @@ interface MetadataRemovedEvent { interface MetadataRemovedEventUIParam { /** - * Used to get a reference to the data. + * Gets a reference to the data. */ metadata?: any; } @@ -63828,7 +72997,7 @@ interface FilterDropDownOpeningEvent { interface FilterDropDownOpeningEventUIParam { /** - * Used to the hierarchy. + * A reference to the hierarchy. */ hierarchy?: any; } @@ -63839,14 +73008,14 @@ interface FilterDropDownOpenedEvent { interface FilterDropDownOpenedEventUIParam { /** - * Used to the hierarchy. + * A reference to the hierarchy. */ hierarchy?: any; /** - * Used to the drop down. + * A reference to the drop down. */ - dropDownElement?: any; + dropDownElement?: string; } interface FilterMembersLoadedEvent { @@ -63855,11 +73024,19 @@ interface FilterMembersLoadedEvent { interface FilterMembersLoadedEventUIParam { /** - * Used to get the parent node or the igTree instance in the initial load. + * Gets the parent node or the igTree instance in the initial load. */ - parent?: any; - rootFilterMembers?: any; - filterMembers?: any; + parent?: string; + + /** + * A collection with the root filter members . + */ + rootFilterMembers?: any[]; + + /** + * A collection with the newly loaded filter members. + */ + filterMembers?: any[]; } interface FilterDropDownOkEvent { @@ -63868,15 +73045,19 @@ interface FilterDropDownOkEvent { interface FilterDropDownOkEventUIParam { /** - * Used to the hierarchy. + * A reference to the hierarchy. */ hierarchy?: any; - filterMembers?: any; /** - * Used to the drop down. + * A collection with the selected filter members. If all filter members are selected the collection will be empty. */ - dropDownElement?: any; + filterMembers?: any[]; + + /** + * A reference to the drop down. + */ + dropDownElement?: string; } interface FilterDropDownClosingEvent { @@ -63885,14 +73066,14 @@ interface FilterDropDownClosingEvent { interface FilterDropDownClosingEventUIParam { /** - * Used to the hierarchy. + * A reference to the hierarchy. */ hierarchy?: any; /** - * Used to the drop down. + * A reference to the drop down. */ - dropDownElement?: any; + dropDownElement?: string; } interface FilterDropDownClosedEvent { @@ -63901,17 +73082,26 @@ interface FilterDropDownClosedEvent { interface FilterDropDownClosedEventUIParam { /** - * Used to the hierarchy. + * A reference to the hierarchy. */ hierarchy?: any; } interface IgPivotDataSelector { + /** + * + * + * Valid values: + * "string" The widget width can be set in pixels (px) and percentage (%). The recommended width is 250px. + * "number" The widget width can be set as a number. + * "null" will stretch to fit data, if no other widths are defined. + */ width?: string|number; /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number. @@ -63921,22 +73111,26 @@ interface IgPivotDataSelector { /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ dataSource?: any; /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. - * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ dataSourceOptions?: IgPivotDataSelectorDataSourceOptions; /** * Setting deferUpdate to true will not apply changes to the data source until the update method is called or the update layout button is clicked. + * */ deferUpdate?: boolean; /** * Settings for the drag and drop functionality of the igPivotDataSelector. + * */ dragAndDropSettings?: IgPivotDataSelectorDragAndDropSettings; @@ -63947,173 +73141,138 @@ interface IgPivotDataSelector { /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. + * */ disableRowsDropArea?: boolean; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. + * */ disableColumnsDropArea?: boolean; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. + * */ disableMeasuresDropArea?: boolean; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. + * */ disableFiltersDropArea?: boolean; /** * A function that will be called to determine if an item can be moved in or dropped on an area of the data selector. - * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. - * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. - * paramType="string" The unique name of the item. - * returnType="bool" The function must return true if the item should be accepted. + * + * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. + * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. + * paramType="string" The unique name of the item. + * returnType="bool" The function must return true if the item should be accepted. */ customMoveValidation?: Function; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired after the data selector is rendered. Changing the data source instance will re-render the data selector. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. */ dataSelectorRendered?: DataSelectorRenderedEvent; /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. */ dataSourceInitialized?: DataSourceInitializedEvent; /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. */ dataSourceUpdated?: DataSourceUpdatedEvent; /** * Fired when the defer update checkbox changes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.deferUpdate to get the defer update value. */ deferUpdateChanged?: DeferUpdateChangedEvent; /** * Fired on drag start. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ dragStart?: DragStartEvent; /** * Fired on drag. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ drag?: DragEvent; /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ dragStop?: DragStopEvent; /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ metadataDropping?: MetadataDroppingEvent; /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ metadataDropped?: MetadataDroppedEvent; /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. */ metadataRemoving?: MetadataRemovingEvent; /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. */ metadataRemoved?: MetadataRemovedEvent; /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. */ filterDropDownOpening?: FilterDropDownOpeningEvent; /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownOpened?: FilterDropDownOpenedEvent; /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. */ filterMembersLoaded?: FilterMembersLoadedEvent; /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownOk?: FilterDropDownOkEvent; /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownClosing?: FilterDropDownClosingEvent; /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. */ filterDropDownClosed?: FilterDropDownClosedEvent; @@ -64123,6 +73282,10 @@ interface IgPivotDataSelector { [optionName: string]: any; } interface IgPivotDataSelectorMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igpivotdataselector#options:language) + * Note that this method is for rare scenarios, see [language](ui.igpivotdataselector#options:language) or [locale](ui.igpivotdataselector#options:locale) option setter + */ changeLocale(): void; /** @@ -64132,11 +73295,21 @@ interface IgPivotDataSelectorMethods { /** * Destroy is part of the jQuery UI widget API and does the following: - * 1. Remove custom CSS classes that were added. - * 2. Unwrap any wrapping elements such as scrolling divs and other containers. - * 3. Unbind all events that were bound. + * 1. Remove custom CSS classes that were added. + * 2. Unwrap any wrapping elements such as scrolling divs and other containers. + * 3. Unbind all events that were bound. */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igPivotDataSelector"): IgPivotDataSelectorMethods; @@ -64146,13 +73319,26 @@ interface JQuery { igPivotDataSelector(methodName: "changeLocale"): void; igPivotDataSelector(methodName: "update"): void; igPivotDataSelector(methodName: "destroy"): void; + igPivotDataSelector(methodName: "changeGlobalLanguage"): void; + igPivotDataSelector(methodName: "changeGlobalRegional"): void; + + /** + * * + */ igPivotDataSelector(optionLiteral: 'option', optionName: "width"): string|number; + /** + * * + * + * @optionValue New value to be set. + */ + igPivotDataSelector(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "height"): string|number; @@ -64160,6 +73346,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. * + * * @optionValue New value to be set. */ @@ -64167,25 +73354,29 @@ interface JQuery { /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSource"): any; /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. - * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSourceOptions"): IgPivotDataSelectorDataSourceOptions; /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. - * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * * * @optionValue New value to be set. */ @@ -64193,24 +73384,28 @@ interface JQuery { /** * Setting deferUpdate to true will not apply changes to the data source until the update method is called or the update layout button is clicked. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "deferUpdate"): boolean; /** * Setting deferUpdate to true will not apply changes to the data source until the update method is called or the update layout button is clicked. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "deferUpdate", optionValue: boolean): void; /** * Settings for the drag and drop functionality of the igPivotDataSelector. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "dragAndDropSettings"): IgPivotDataSelectorDragAndDropSettings; /** * Settings for the drag and drop functionality of the igPivotDataSelector. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dragAndDropSettings", optionValue: IgPivotDataSelectorDragAndDropSettings): void; @@ -64229,83 +73424,133 @@ interface JQuery { /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableRowsDropArea"): boolean; /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableRowsDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableColumnsDropArea"): boolean; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableColumnsDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableMeasuresDropArea"): boolean; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableMeasuresDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. + * */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableFiltersDropArea"): boolean; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "disableFiltersDropArea", optionValue: boolean): void; /** * A function that will be called to determine if an item can be moved in or dropped on an area of the data selector. - * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. - * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. - * paramType="string" The unique name of the item. - * returnType="bool" The function must return true if the item should be accepted. + * + * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. + * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. + * paramType="string" The unique name of the item. + * returnType="bool" The function must return true if the item should be accepted. */ igPivotDataSelector(optionLiteral: 'option', optionName: "customMoveValidation"): Function; /** * A function that will be called to determine if an item can be moved in or dropped on an area of the data selector. - * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. - * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. - * paramType="string" The unique name of the item. - * returnType="bool" The function must return true if the item should be accepted. + * + * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. + * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. + * paramType="string" The unique name of the item. + * returnType="bool" The function must return true if the item should be accepted. * * @optionValue New value to be set. */ igPivotDataSelector(optionLiteral: 'option', optionName: "customMoveValidation", optionValue: Function): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igPivotDataSelector(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotDataSelector(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igPivotDataSelector(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotDataSelector(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igPivotDataSelector(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igPivotDataSelector(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired after the data selector is rendered. Changing the data source instance will re-render the data selector. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSelectorRendered"): DataSelectorRenderedEvent; /** * Fired after the data selector is rendered. Changing the data source instance will re-render the data selector. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. * * @optionValue New value to be set. */ @@ -64313,21 +73558,11 @@ interface JQuery { /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSourceInitialized"): DataSourceInitializedEvent; /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. * * @optionValue New value to be set. */ @@ -64335,21 +73570,11 @@ interface JQuery { /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dataSourceUpdated"): DataSourceUpdatedEvent; /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. * * @optionValue New value to be set. */ @@ -64357,17 +73582,11 @@ interface JQuery { /** * Fired when the defer update checkbox changes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.deferUpdate to get the defer update value. */ igPivotDataSelector(optionLiteral: 'option', optionName: "deferUpdateChanged"): DeferUpdateChangedEvent; /** * Fired when the defer update checkbox changes. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the data selector. - * Use ui.deferUpdate to get the defer update value. * * @optionValue New value to be set. */ @@ -64375,21 +73594,11 @@ interface JQuery { /** * Fired on drag start. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dragStart"): DragStartEvent; /** * Fired on drag start. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -64397,21 +73606,11 @@ interface JQuery { /** * Fired on drag. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotDataSelector(optionLiteral: 'option', optionName: "drag"): DragEvent; /** * Fired on drag. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -64419,19 +73618,11 @@ interface JQuery { /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotDataSelector(optionLiteral: 'option', optionName: "dragStop"): DragStopEvent; /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -64439,25 +73630,11 @@ interface JQuery { /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotDataSelector(optionLiteral: 'option', optionName: "metadataDropping"): MetadataDroppingEvent; /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -64465,25 +73642,11 @@ interface JQuery { /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotDataSelector(optionLiteral: 'option', optionName: "metadataDropped"): MetadataDroppedEvent; /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -64491,15 +73654,11 @@ interface JQuery { /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. */ igPivotDataSelector(optionLiteral: 'option', optionName: "metadataRemoving"): MetadataRemovingEvent; /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. * * @optionValue New value to be set. */ @@ -64507,13 +73666,11 @@ interface JQuery { /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. */ igPivotDataSelector(optionLiteral: 'option', optionName: "metadataRemoved"): MetadataRemovedEvent; /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. * * @optionValue New value to be set. */ @@ -64521,13 +73678,11 @@ interface JQuery { /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterDropDownOpening"): FilterDropDownOpeningEvent; /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. * * @optionValue New value to be set. */ @@ -64535,15 +73690,11 @@ interface JQuery { /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterDropDownOpened"): FilterDropDownOpenedEvent; /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -64551,17 +73702,11 @@ interface JQuery { /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterMembersLoaded"): FilterMembersLoadedEvent; /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. * * @optionValue New value to be set. */ @@ -64569,17 +73714,11 @@ interface JQuery { /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterDropDownOk"): FilterDropDownOkEvent; /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -64587,15 +73726,11 @@ interface JQuery { /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterDropDownClosing"): FilterDropDownClosingEvent; /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -64603,13 +73738,11 @@ interface JQuery { /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. */ igPivotDataSelector(optionLiteral: 'option', optionName: "filterDropDownClosed"): FilterDropDownClosedEvent; /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. * * @optionValue New value to be set. */ @@ -65018,6 +74151,7 @@ interface IgPivotGridGridOptions { /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. + * */ fixedHeaders?: boolean; @@ -65028,11 +74162,13 @@ interface IgPivotGridGridOptions { /** * A list of grid features definitions. The supported features are Resizing and Tooltips. Each feature goes with its separate options that are documented for the feature accordingly. + * */ features?: IgPivotGridGridOptionsFeatures; /** * Initial tabIndex attribute that will be set on the container element. + * */ tabIndex?: number; @@ -65060,6 +74196,7 @@ interface IgPivotGridDragAndDropSettings { /** * Specifies the containment for the drag helper. The area inside of which thehelper is contained would be scrollable while dragging. + * */ containment?: boolean|string|Array; @@ -65080,19 +74217,19 @@ interface PivotGridHeadersRenderedEvent { interface PivotGridHeadersRenderedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get a reference to the igGrid widget, which holds the headers. + * Gets a reference to the igGrid widget, which holds the headers. */ grid?: any; /** - * Used to get a reference to the headers table DOM element. + * Gets a reference to the headers table DOM element. */ - table?: any; + table?: Element; } interface PivotGridRenderedEvent { @@ -65101,12 +74238,12 @@ interface PivotGridRenderedEvent { interface PivotGridRenderedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get reference to the igGrid widget, which represents the data. + * Gets reference to the igGrid widget, which represents the data. */ grid?: any; } @@ -65117,29 +74254,29 @@ interface TupleMemberExpandingEvent { interface TupleMemberExpandingEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to get the name of axis, which holds the member and the tuple. + * Gets the name of axis, which holds the member and the tuple. */ - axisName?: any; + axisName?: string; /** - * Used to get the index of the tuple in the axis. + * Gets the index of the tuple in the axis. */ - tupleIndex?: any; + tupleIndex?: number; /** - * Used to get the index of the member in the tuple. + * Gets the index of the member in the tuple. */ - memberIndex?: any; + memberIndex?: number; } interface TupleMemberExpandedEvent { @@ -65148,29 +74285,29 @@ interface TupleMemberExpandedEvent { interface TupleMemberExpandedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to get the name of axis, which holds the member and the tuple. + * Gets the name of axis, which holds the member and the tuple. */ - axisName?: any; + axisName?: string; /** - * Used to get the index of the tuple in the axis. + * Gets the index of the tuple in the axis. */ - tupleIndex?: any; + tupleIndex?: number; /** - * Used to get the index of the member in the tuple. + * Gets the index of the member in the tuple. */ - memberIndex?: any; + memberIndex?: number; } interface TupleMemberCollapsingEvent { @@ -65179,29 +74316,29 @@ interface TupleMemberCollapsingEvent { interface TupleMemberCollapsingEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to get the name of axis, which holds the member and the tuple. + * Gets the name of axis, which holds the member and the tuple. */ - axisName?: any; + axisName?: string; /** - * Used to get the index of the tuple in the axis. + * Gets the index of the tuple in the axis. */ - tupleIndex?: any; + tupleIndex?: number; /** - * Used to get the index of the member in the tuple. + * Gets the index of the member in the tuple. */ - memberIndex?: any; + memberIndex?: number; } interface TupleMemberCollapsedEvent { @@ -65210,29 +74347,29 @@ interface TupleMemberCollapsedEvent { interface TupleMemberCollapsedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get a reference to the data source. + * Gets a reference to the data source. */ dataSource?: any; /** - * Used to get the name of axis, which holds the member and the tuple. + * Gets the name of axis, which holds the member and the tuple. */ - axisName?: any; + axisName?: string; /** - * Used to get the index of the tuple in the axis. + * Gets the index of the tuple in the axis. */ - tupleIndex?: any; + tupleIndex?: number; /** - * Used to get the index of the member in the tuple. + * Gets the index of the member in the tuple. */ - memberIndex?: any; + memberIndex?: number; } interface SortingEvent { @@ -65241,14 +74378,14 @@ interface SortingEvent { interface SortingEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get an array of the tuple indices and sort directions that will be used. + * Gets an array of the tuple indices and sort directions that will be used. */ - sortDirections?: any; + sortDirections?: any[]; } interface SortedEvent { @@ -65257,19 +74394,19 @@ interface SortedEvent { interface SortedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get an array of the tuple indices and sort directions that were passed to the table view. + * Gets an array of the tuple indices and sort directions that were passed to the table view. */ - sortDirections?: any; + sortDirections?: any[]; /** - * Used to get an array of the tuple indices and sort directions that were actually applied to the table view. + * Gets an array of the tuple indices and sort directions that were actually applied to the table view. */ - appliedSortDirections?: any; + appliedSortDirections?: any[]; } interface HeadersSortingEvent { @@ -65278,14 +74415,14 @@ interface HeadersSortingEvent { interface HeadersSortingEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get an array of the level names and sort directions that will be used. + * Gets an array of the level names and sort directions that will be used. */ - levelSortDirections?: any; + levelSortDirections?: any[]; } interface HeadersSortedEvent { @@ -65294,27 +74431,34 @@ interface HeadersSortedEvent { interface HeadersSortedEventUIParam { /** - * Used to get a reference to the pivot grid. + * Gets a reference to the pivot grid. */ owner?: any; /** - * Used to get an array of the level names and sort directions that were used. + * Gets an array of the level names and sort directions that were used. */ - levelSortDirections?: any; + levelSortDirections?: any[]; /** - * Used to get an array of the level names and sort directions that were actually applied to the table view. + * Gets an array of the level names and sort directions that were actually applied to the table view. */ - appliedLevelSortDirections?: any; + appliedLevelSortDirections?: any[]; } interface IgPivotGrid { + /** + * + * + * Valid values: + * "null" Will stretch to fit the data, if no other widths are defined. + */ width?: string|number; /** * This is the total height of the grid. * + * * Valid values: * "null" Will stretch vertically to fit data, if no other heights are defined */ @@ -65322,17 +74466,20 @@ interface IgPivotGrid { /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ dataSource?: any; /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ dataSourceOptions?: IgPivotGridDataSourceOptions; /** * Setting deferUpdate to true will not apply changes to the data source until the updateGrid method is called. + * */ deferUpdate?: boolean; @@ -65340,6 +74487,7 @@ interface IgPivotGrid { * A boolean value indicating whether a parent in the columns is in front of its children. * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. + * */ isParentInFrontForColumns?: boolean; @@ -65347,16 +74495,19 @@ interface IgPivotGrid { * A boolean value indicating whether a parent in the rows is in front of its children. * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. + * */ isParentInFrontForRows?: boolean; /** * A boolean value indicating whether the column headers should be arranged for compact header layout i.e. each hierarchy is in a single row. + * */ compactColumnHeaders?: boolean; /** * A boolean value indicating whether the row headers should be arranged for compact header layout i.e. each hierarchy is in a single column. + * */ compactRowHeaders?: boolean; @@ -65365,6 +74516,7 @@ interface IgPivotGrid { * superCompact Each hierarchy in the rows is displayed in a separate column. The child members of a member in the rows are displayed on above or below it (Depending on the isParentInFrontForRows setting). * tree All hierarchies in the rows are displayed in a tree-like structure in a single column (The column's width is dependent on the defaultRowHEaderWidth, which can be set to "null" to enable the built-in auto-sizing functionality). * + * * Valid values: * "standard" * "superCompact" @@ -65374,11 +74526,13 @@ interface IgPivotGrid { /** * The indentation for every level column when the compactColumnHeaders is set to true. + * */ compactColumnHeaderIndentation?: number; /** * The indentation for every level row when the rowHeadersLayout is set to 'superCompact'. + * */ compactRowHeaderIndentation?: number; @@ -65394,31 +74548,37 @@ interface IgPivotGrid { /** * Specifies the width of the row headers. + * */ defaultRowHeaderWidth?: number; /** * Enables sorting of the value cells in columns. + * */ allowSorting?: boolean; /** * Specifies the default sort direction for the rows. + * */ firstSortDirection?: any; /** * Enables sorting of the header cells in rows. + * */ allowHeaderRowsSorting?: boolean; /** * Enables sorting of the header cells in columns. + * */ allowHeaderColumnsSorting?: boolean; /** * An array of level sort direction items, which predefine the sorted header cells. + * */ levelSortDirections?: IgPivotGridLevelSortDirection[]; @@ -65433,16 +74593,19 @@ interface IgPivotGrid { /** * Specifies the default sort direction for the levels if no sort direction is specified in an item from the levelSortDirections option. + * */ firstLevelSortDirection?: any; /** * Options specific to the igGrid that will render the pivot grid view. + * */ gridOptions?: IgPivotGridGridOptions; /** * Settings for the drag and drop functionality of the igPivotGrid. + * */ dragAndDropSettings?: IgPivotGridDragAndDropSettings; @@ -65453,46 +74616,55 @@ interface IgPivotGrid { /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. + * */ disableRowsDropArea?: boolean; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. + * */ disableColumnsDropArea?: boolean; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. + * */ disableMeasuresDropArea?: boolean; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. + * */ disableFiltersDropArea?: boolean; /** * Hide the rows drop area. + * */ hideRowsDropArea?: boolean; /** * Hide the columns drop area. + * */ hideColumnsDropArea?: boolean; /** * Hide the measures drop area. + * */ hideMeasuresDropArea?: boolean; /** * Hide the filters drop area. + * */ hideFiltersDropArea?: boolean; /** * A function that will be called to determine if an item can be moved in or dropped on an area of the pivot grid. + * * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. * paramType="string" The unique name of the item. @@ -65500,226 +74672,146 @@ interface IgPivotGrid { */ customMoveValidation?: Function; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. */ dataSourceInitialized?: DataSourceInitializedEvent; /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. */ dataSourceUpdated?: DataSourceUpdatedEvent; /** * Event fired after the headers have been rendered. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get a reference to the igGrid widget, which holds the headers. - * Use ui.table to get a reference to the headers table DOM element. */ pivotGridHeadersRendered?: PivotGridHeadersRenderedEvent; /** * Event fired after the whole grid widget has been rendered (including headers, footers, etc.). - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get reference to the igGrid widget, which represents the data. */ pivotGridRendered?: PivotGridRenderedEvent; /** - * Fired before the expand of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the expanding. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the expand of the tuple member. Return false to cancel the expanding. */ tupleMemberExpanding?: TupleMemberExpandingEvent; /** * Fired after the expand of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. */ tupleMemberExpanded?: TupleMemberExpandedEvent; /** - * Fired before the collapse of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the collapsing. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the collapse of the tuple member. Return false to cancel the collapsing. */ tupleMemberCollapsing?: TupleMemberCollapsingEvent; /** * Fired after the collapse of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. */ tupleMemberCollapsed?: TupleMemberCollapsedEvent; /** - * Fired before the sorting of the columns. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that will be used. + * Fired before the sorting of the columns. Return false to cancel the sorting. */ sorting?: SortingEvent; /** * Fired after the sorting of the columns. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that were passed to the table view. - * Use ui.appliedSortDirections to get an array of the tuple indices and sort directions that were actually applied to the table view. */ sorted?: SortedEvent; /** - * Fired before the sorting of the headers. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that will be used. + * Fired before the sorting of the headers. Return false to cancel the sorting. */ headersSorting?: HeadersSortingEvent; /** * Fired after the sorting of the headers. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that were used. - * Use ui.appliedLevelSortDirections to get an array of the level names and sort directions that were actually applied to the table view. */ headersSorted?: HeadersSortedEvent; /** * Fired on drag start. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ dragStart?: DragStartEvent; /** * Fired on drag. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ drag?: DragEvent; /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ dragStop?: DragStopEvent; /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the metadata item element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ metadataDropping?: MetadataDroppingEvent; /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ metadataDropped?: MetadataDroppedEvent; /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. */ metadataRemoving?: MetadataRemovingEvent; /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. */ metadataRemoved?: MetadataRemovedEvent; /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. */ filterDropDownOpening?: FilterDropDownOpeningEvent; /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownOpened?: FilterDropDownOpenedEvent; /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. */ filterMembersLoaded?: FilterMembersLoadedEvent; /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownOk?: FilterDropDownOkEvent; /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ filterDropDownClosing?: FilterDropDownClosingEvent; /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. */ filterDropDownClosed?: FilterDropDownClosedEvent; @@ -65729,7 +74821,16 @@ interface IgPivotGrid { [optionName: string]: any; } interface IgPivotGridMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igpivotgrid#options:language) + * Note that this method is for rare scenarios, see [language](ui.igpivotgrid#options:language) or [locale](ui.igpivotgrid#options:locale) option setter + */ changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.igpivotgrid#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.igpivotgrid#options:regional) option setter + */ changeRegional(): void; /** @@ -65764,6 +74865,7 @@ interface IgPivotGridMethods { /** * Returns an array with the applied sort directions on the igPivotGrid's columns. The returned array contains objects with the following properties: + * * memberNames: The names of the members in the tuple. * tupleIndex: The index of the tuple on the column axis in the original unsorted result. * sortDirection: The direction of the sort - ascending or descending. @@ -65772,6 +74874,7 @@ interface IgPivotGridMethods { /** * Returns an array with the applied level sort direction items, which were used for the sorting of the header cells. The returned array contains objects with the following properties: + * * levelUniqueName: Specifies the unique name of the level, which was sorted. * sortDirection: The direction of the header sort - ascending or descending. */ @@ -65784,6 +74887,16 @@ interface IgPivotGridMethods { * 3. Unbind all events that were bound. */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igPivotGrid"): IgPivotGridMethods; @@ -65799,13 +74912,26 @@ interface JQuery { igPivotGrid(methodName: "appliedColumnSortDirections"): any[]; igPivotGrid(methodName: "appliedLevelSortDirections"): any[]; igPivotGrid(methodName: "destroy"): void; + igPivotGrid(methodName: "changeGlobalLanguage"): void; + igPivotGrid(methodName: "changeGlobalRegional"): void; + + /** + * * + */ igPivotGrid(optionLiteral: 'option', optionName: "width"): string|number; + /** + * * + * + * @optionValue New value to be set. + */ + igPivotGrid(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; /** * This is the total height of the grid. + * */ igPivotGrid(optionLiteral: 'option', optionName: "height"): string|number; @@ -65813,6 +74939,7 @@ interface JQuery { /** * This is the total height of the grid. * + * * @optionValue New value to be set. */ @@ -65820,12 +74947,14 @@ interface JQuery { /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ igPivotGrid(optionLiteral: 'option', optionName: "dataSource"): any; /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; @@ -65833,6 +74962,7 @@ interface JQuery { /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ igPivotGrid(optionLiteral: 'option', optionName: "dataSourceOptions"): IgPivotGridDataSourceOptions; @@ -65840,18 +74970,21 @@ interface JQuery { * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "dataSourceOptions", optionValue: IgPivotGridDataSourceOptions): void; /** * Setting deferUpdate to true will not apply changes to the data source until the updateGrid method is called. + * */ igPivotGrid(optionLiteral: 'option', optionName: "deferUpdate"): boolean; /** * Setting deferUpdate to true will not apply changes to the data source until the updateGrid method is called. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "deferUpdate", optionValue: boolean): void; @@ -65860,6 +74993,7 @@ interface JQuery { * A boolean value indicating whether a parent in the columns is in front of its children. * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. + * */ igPivotGrid(optionLiteral: 'option', optionName: "isParentInFrontForColumns"): boolean; @@ -65868,6 +75002,7 @@ interface JQuery { * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "isParentInFrontForColumns", optionValue: boolean): void; @@ -65876,6 +75011,7 @@ interface JQuery { * A boolean value indicating whether a parent in the rows is in front of its children. * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. + * */ igPivotGrid(optionLiteral: 'option', optionName: "isParentInFrontForRows"): boolean; @@ -65884,30 +75020,35 @@ interface JQuery { * If set to true, the query set sorts members in a level in their natural order - child members immediately follow their parent members. * If set to false the query set sorts the members in a level using a post-natural order. In other words, child members precede their parents. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "isParentInFrontForRows", optionValue: boolean): void; /** * A boolean value indicating whether the column headers should be arranged for compact header layout i.e. each hierarchy is in a single row. + * */ igPivotGrid(optionLiteral: 'option', optionName: "compactColumnHeaders"): boolean; /** * A boolean value indicating whether the column headers should be arranged for compact header layout i.e. each hierarchy is in a single row. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "compactColumnHeaders", optionValue: boolean): void; /** * A boolean value indicating whether the row headers should be arranged for compact header layout i.e. each hierarchy is in a single column. + * */ igPivotGrid(optionLiteral: 'option', optionName: "compactRowHeaders"): boolean; /** * A boolean value indicating whether the row headers should be arranged for compact header layout i.e. each hierarchy is in a single column. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "compactRowHeaders", optionValue: boolean): void; @@ -65916,6 +75057,7 @@ interface JQuery { * A value indicating whether the layout that row headers should be arranged.standard Each hierarchy in the rows is displayed in a separate column. The child members of a member in the rows are displayed on its right. * superCompact Each hierarchy in the rows is displayed in a separate column. The child members of a member in the rows are displayed on above or below it (Depending on the isParentInFrontForRows setting). * tree All hierarchies in the rows are displayed in a tree-like structure in a single column (The column's width is dependent on the defaultRowHEaderWidth, which can be set to "null" to enable the built-in auto-sizing functionality). + * */ igPivotGrid(optionLiteral: 'option', optionName: "rowHeadersLayout"): any; @@ -65924,30 +75066,35 @@ interface JQuery { * superCompact Each hierarchy in the rows is displayed in a separate column. The child members of a member in the rows are displayed on above or below it (Depending on the isParentInFrontForRows setting). * tree All hierarchies in the rows are displayed in a tree-like structure in a single column (The column's width is dependent on the defaultRowHEaderWidth, which can be set to "null" to enable the built-in auto-sizing functionality). * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "rowHeadersLayout", optionValue: any): void; /** * The indentation for every level column when the compactColumnHeaders is set to true. + * */ igPivotGrid(optionLiteral: 'option', optionName: "compactColumnHeaderIndentation"): number; /** * The indentation for every level column when the compactColumnHeaders is set to true. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "compactColumnHeaderIndentation", optionValue: number): void; /** * The indentation for every level row when the rowHeadersLayout is set to 'superCompact'. + * */ igPivotGrid(optionLiteral: 'option', optionName: "compactRowHeaderIndentation"): number; /** * The indentation for every level row when the rowHeadersLayout is set to 'superCompact'. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "compactRowHeaderIndentation", optionValue: number): void; @@ -65978,72 +75125,84 @@ interface JQuery { /** * Gets the width of the row headers. + * */ igPivotGrid(optionLiteral: 'option', optionName: "defaultRowHeaderWidth"): number; /** * Sets the width of the row headers. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "defaultRowHeaderWidth", optionValue: number): void; /** * Enables sorting of the value cells in columns. + * */ igPivotGrid(optionLiteral: 'option', optionName: "allowSorting"): boolean; /** * Enables sorting of the value cells in columns. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "allowSorting", optionValue: boolean): void; /** * Gets the default sort direction for the rows. + * */ igPivotGrid(optionLiteral: 'option', optionName: "firstSortDirection"): any; /** * Sets the default sort direction for the rows. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "firstSortDirection", optionValue: any): void; /** * Enables sorting of the header cells in rows. + * */ igPivotGrid(optionLiteral: 'option', optionName: "allowHeaderRowsSorting"): boolean; /** * Enables sorting of the header cells in rows. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "allowHeaderRowsSorting", optionValue: boolean): void; /** * Enables sorting of the header cells in columns. + * */ igPivotGrid(optionLiteral: 'option', optionName: "allowHeaderColumnsSorting"): boolean; /** * Enables sorting of the header cells in columns. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "allowHeaderColumnsSorting", optionValue: boolean): void; /** * An array of level sort direction items, which predefine the sorted header cells. + * */ igPivotGrid(optionLiteral: 'option', optionName: "levelSortDirections"): IgPivotGridLevelSortDirection[]; /** * An array of level sort direction items, which predefine the sorted header cells. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "levelSortDirections", optionValue: IgPivotGridLevelSortDirection[]): void; @@ -66064,36 +75223,42 @@ interface JQuery { /** * Gets the default sort direction for the levels if no sort direction is specified in an item from the levelSortDirections option. + * */ igPivotGrid(optionLiteral: 'option', optionName: "firstLevelSortDirection"): any; /** * Sets the default sort direction for the levels if no sort direction is specified in an item from the levelSortDirections option. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "firstLevelSortDirection", optionValue: any): void; /** * Options specific to the igGrid that will render the pivot grid view. + * */ igPivotGrid(optionLiteral: 'option', optionName: "gridOptions"): IgPivotGridGridOptions; /** * Options specific to the igGrid that will render the pivot grid view. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "gridOptions", optionValue: IgPivotGridGridOptions): void; /** * Settings for the drag and drop functionality of the igPivotGrid. + * */ igPivotGrid(optionLiteral: 'option', optionName: "dragAndDropSettings"): IgPivotGridDragAndDropSettings; /** * Settings for the drag and drop functionality of the igPivotGrid. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "dragAndDropSettings", optionValue: IgPivotGridDragAndDropSettings): void; @@ -66112,102 +75277,119 @@ interface JQuery { /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. + * */ igPivotGrid(optionLiteral: 'option', optionName: "disableRowsDropArea"): boolean; /** * Disable the drag and drop for the rows drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "disableRowsDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. + * */ igPivotGrid(optionLiteral: 'option', optionName: "disableColumnsDropArea"): boolean; /** * Disable the drag and drop for the columns drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "disableColumnsDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. + * */ igPivotGrid(optionLiteral: 'option', optionName: "disableMeasuresDropArea"): boolean; /** * Disable the drag and drop for the measures drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "disableMeasuresDropArea", optionValue: boolean): void; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. + * */ igPivotGrid(optionLiteral: 'option', optionName: "disableFiltersDropArea"): boolean; /** * Disable the drag and drop for the filters drop area and the ability to use filtering and remove items from it. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "disableFiltersDropArea", optionValue: boolean): void; /** * Hide the rows drop area. + * */ igPivotGrid(optionLiteral: 'option', optionName: "hideRowsDropArea"): boolean; /** * Hide the rows drop area. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "hideRowsDropArea", optionValue: boolean): void; /** * Hide the columns drop area. + * */ igPivotGrid(optionLiteral: 'option', optionName: "hideColumnsDropArea"): boolean; /** * Hide the columns drop area. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "hideColumnsDropArea", optionValue: boolean): void; /** * Hide the measures drop area. + * */ igPivotGrid(optionLiteral: 'option', optionName: "hideMeasuresDropArea"): boolean; /** * Hide the measures drop area. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "hideMeasuresDropArea", optionValue: boolean): void; /** * Hide the filters drop area. + * */ igPivotGrid(optionLiteral: 'option', optionName: "hideFiltersDropArea"): boolean; /** * Hide the filters drop area. * + * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "hideFiltersDropArea", optionValue: boolean): void; /** * A function that will be called to determine if an item can be moved in or dropped on an area of the pivot grid. + * * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. * paramType="string" The unique name of the item. @@ -66217,6 +75399,7 @@ interface JQuery { /** * A function that will be called to determine if an item can be moved in or dropped on an area of the pivot grid. + * * paramType="string" The location where the item will be moved - igPivotGrid, igPivotDataSelector, filters, rows, columns or measures. * paramType="string" The type of the item - Hierarchy, Measure or MeasureList. * paramType="string" The unique name of the item. @@ -66226,23 +75409,57 @@ interface JQuery { */ igPivotGrid(optionLiteral: 'option', optionName: "customMoveValidation", optionValue: Function): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igPivotGrid(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotGrid(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igPivotGrid(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotGrid(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igPivotGrid(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igPivotGrid(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. */ igPivotGrid(optionLiteral: 'option', optionName: "dataSourceInitialized"): DataSourceInitializedEvent; /** * Fired after the data source has initialized. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during initialization. - * Use ui.metadataTreeRoot to get a reference to the root of the data source metatadata root item. * * @optionValue New value to be set. */ @@ -66250,21 +75467,11 @@ interface JQuery { /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. */ igPivotGrid(optionLiteral: 'option', optionName: "dataSourceUpdated"): DataSourceUpdatedEvent; /** * Fired after the data source has updated. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.error to see if an error has occured during update. - * Use ui.result to get the result of the update operation. * * @optionValue New value to be set. */ @@ -66272,19 +75479,11 @@ interface JQuery { /** * Event fired after the headers have been rendered. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get a reference to the igGrid widget, which holds the headers. - * Use ui.table to get a reference to the headers table DOM element. */ igPivotGrid(optionLiteral: 'option', optionName: "pivotGridHeadersRendered"): PivotGridHeadersRenderedEvent; /** * Event fired after the headers have been rendered. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get a reference to the igGrid widget, which holds the headers. - * Use ui.table to get a reference to the headers table DOM element. * * @optionValue Define event handler function. */ @@ -66292,41 +75491,23 @@ interface JQuery { /** * Event fired after the whole grid widget has been rendered (including headers, footers, etc.). - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get reference to the igGrid widget, which represents the data. */ igPivotGrid(optionLiteral: 'option', optionName: "pivotGridRendered"): PivotGridRenderedEvent; /** * Event fired after the whole grid widget has been rendered (including headers, footers, etc.). - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.grid to get reference to the igGrid widget, which represents the data. * * @optionValue Define event handler function. */ igPivotGrid(optionLiteral: 'option', optionName: "pivotGridRendered", optionValue: PivotGridRenderedEvent): void; /** - * Fired before the expand of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the expanding. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the expand of the tuple member. Return false to cancel the expanding. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberExpanding"): TupleMemberExpandingEvent; /** - * Fired before the expand of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the expanding. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the expand of the tuple member. Return false to cancel the expanding. * * @optionValue New value to be set. */ @@ -66334,47 +75515,23 @@ interface JQuery { /** * Fired after the expand of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberExpanded"): TupleMemberExpandedEvent; /** * Fired after the expand of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberExpanded", optionValue: TupleMemberExpandedEvent): void; /** - * Fired before the collapse of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the collapsing. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the collapse of the tuple member. Return false to cancel the collapsing. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberCollapsing"): TupleMemberCollapsingEvent; /** - * Fired before the collapse of the tuple member. - * Function takes arguments evt and ui. Return false to cancel the collapsing. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. + * Fired before the collapse of the tuple member. Return false to cancel the collapsing. * * @optionValue New value to be set. */ @@ -66382,41 +75539,23 @@ interface JQuery { /** * Fired after the collapse of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberCollapsed"): TupleMemberCollapsedEvent; /** * Fired after the collapse of the tuple member. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.dataSource to get a reference to the data source. - * Use ui.axisName to get the name of axis, which holds the member and the tuple. - * Use ui.tupleIndex to get the index of the tuple in the axis. - * Use ui.memberIndex to get the index of the member in the tuple. * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "tupleMemberCollapsed", optionValue: TupleMemberCollapsedEvent): void; /** - * Fired before the sorting of the columns. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that will be used. + * Fired before the sorting of the columns. Return false to cancel the sorting. */ igPivotGrid(optionLiteral: 'option', optionName: "sorting"): SortingEvent; /** - * Fired before the sorting of the columns. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that will be used. + * Fired before the sorting of the columns. Return false to cancel the sorting. * * @optionValue New value to be set. */ @@ -66424,37 +75563,23 @@ interface JQuery { /** * Fired after the sorting of the columns. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that were passed to the table view. - * Use ui.appliedSortDirections to get an array of the tuple indices and sort directions that were actually applied to the table view. */ igPivotGrid(optionLiteral: 'option', optionName: "sorted"): SortedEvent; /** * Fired after the sorting of the columns. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.sortDirections to get an array of the tuple indices and sort directions that were passed to the table view. - * Use ui.appliedSortDirections to get an array of the tuple indices and sort directions that were actually applied to the table view. * * @optionValue New value to be set. */ igPivotGrid(optionLiteral: 'option', optionName: "sorted", optionValue: SortedEvent): void; /** - * Fired before the sorting of the headers. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that will be used. + * Fired before the sorting of the headers. Return false to cancel the sorting. */ igPivotGrid(optionLiteral: 'option', optionName: "headersSorting"): HeadersSortingEvent; /** - * Fired before the sorting of the headers. - * Function takes arguments evt and ui. Return false to cancel the sorting. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that will be used. + * Fired before the sorting of the headers. Return false to cancel the sorting. * * @optionValue New value to be set. */ @@ -66462,19 +75587,11 @@ interface JQuery { /** * Fired after the sorting of the headers. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that were used. - * Use ui.appliedLevelSortDirections to get an array of the level names and sort directions that were actually applied to the table view. */ igPivotGrid(optionLiteral: 'option', optionName: "headersSorted"): HeadersSortedEvent; /** * Fired after the sorting of the headers. - * Function takes arguments evt and ui. - * Use ui.owner to get a reference to the pivot grid. - * Use ui.levelSortDirections to get an array of the level names and sort directions that were used. - * Use ui.appliedLevelSortDirections to get an array of the level names and sort directions that were actually applied to the table view. * * @optionValue New value to be set. */ @@ -66482,21 +75599,11 @@ interface JQuery { /** * Fired on drag start. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotGrid(optionLiteral: 'option', optionName: "dragStart"): DragStartEvent; /** * Fired on drag start. Return false to cancel the dragging. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -66504,21 +75611,11 @@ interface JQuery { /** * Fired on drag. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotGrid(optionLiteral: 'option', optionName: "drag"): DragEvent; /** * Fired on drag. Return false to cancel the drag. - * Use ui.metadatato get a reference to the data. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -66526,19 +75623,11 @@ interface JQuery { /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotGrid(optionLiteral: 'option', optionName: "dragStop"): DragStopEvent; /** * Fired on drag stop. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.originalPosition to get a reference to the original position of the draggable element. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -66546,25 +75635,11 @@ interface JQuery { /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the metadata item element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotGrid(optionLiteral: 'option', optionName: "metadataDropping"): MetadataDroppingEvent; /** * Fired before a metadata item drop. Return false to cancel the drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the metadata item element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata will be inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -66572,25 +75647,11 @@ interface JQuery { /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. */ igPivotGrid(optionLiteral: 'option', optionName: "metadataDropped"): MetadataDroppedEvent; /** * Fired after a metadata item drop. - * Use ui.targetElement for a reference to the drop target. - * Use ui.draggedElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. - * Use ui.metadataIndex to get the index at which the metadata is inserted. - * Use ui.helper to get a reference to the helper. - * Use ui.offset to get a reference to the offset. - * Use ui.position to get a reference to the current position of the draggable element. * * @optionValue New value to be set. */ @@ -66598,15 +75659,11 @@ interface JQuery { /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. */ igPivotGrid(optionLiteral: 'option', optionName: "metadataRemoving"): MetadataRemovingEvent; /** * Fired before a metadata item is removed when the user clicks the close icon. Return false to cancel the removing. - * Use ui.targetElement for a reference to the dragged element. - * Use ui.metadatato get a reference to the data. * * @optionValue New value to be set. */ @@ -66614,13 +75671,11 @@ interface JQuery { /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. */ igPivotGrid(optionLiteral: 'option', optionName: "metadataRemoved"): MetadataRemovedEvent; /** * Fired after a metadata item is removed when the user clicks the close icon. - * Use ui.metadatato get a reference to the data. * * @optionValue New value to be set. */ @@ -66628,13 +75683,11 @@ interface JQuery { /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. */ igPivotGrid(optionLiteral: 'option', optionName: "filterDropDownOpening"): FilterDropDownOpeningEvent; /** * Fired before the filter members drop down opens. Return false to cancel the opening. - * Use ui.hierarchy for a reference to the hierarchy. * * @optionValue New value to be set. */ @@ -66642,15 +75695,11 @@ interface JQuery { /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotGrid(optionLiteral: 'option', optionName: "filterDropDownOpened"): FilterDropDownOpenedEvent; /** * Fired after the filter members drop down opens. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -66658,17 +75707,11 @@ interface JQuery { /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. */ igPivotGrid(optionLiteral: 'option', optionName: "filterMembersLoaded"): FilterMembersLoadedEvent; /** * Fired after the filter members are loaded. - * Use ui.parent to get the parent node or the igTree instance in the initial load. - * Use ui.rootFilterMembers for a collection with the root filter members . - * Use ui.filterMembers for a collection with the newly loaded filter members. * * @optionValue New value to be set. */ @@ -66676,17 +75719,11 @@ interface JQuery { /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotGrid(optionLiteral: 'option', optionName: "filterDropDownOk"): FilterDropDownOkEvent; /** * Fired after the OK button in the filter members drop down is clicked. Return false to cancel the applying of the filters. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.filterMembers for a collection with the selected filter members. If all filter members are selected the collection will be empty. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -66694,15 +75731,11 @@ interface JQuery { /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. */ igPivotGrid(optionLiteral: 'option', optionName: "filterDropDownClosing"): FilterDropDownClosingEvent; /** * Fired before the filter members drop down closes. Return false to cancel the closing. - * Use ui.hierarchy for a reference to the hierarchy. - * Use ui.dropDownElement for a reference to the drop down. * * @optionValue New value to be set. */ @@ -66710,13 +75743,11 @@ interface JQuery { /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. */ igPivotGrid(optionLiteral: 'option', optionName: "filterDropDownClosed"): FilterDropDownClosedEvent; /** * Fired after the filter members drop down closes. - * Use ui.hierarchy for a reference to the hierarchy. * * @optionValue New value to be set. */ @@ -67092,6 +76123,7 @@ interface IgPivotViewPivotGridOptionsLevelSortDirection { /** * optional="true" Specifies the sort direction. If no direction is specified,the level is going to be sorted in the direction specified by the firstLevelSortDirection option. + * */ sortDirection?: any; @@ -67161,7 +76193,8 @@ interface IgPivotViewPivotGridOptionsDragAndDropSettings { appendTo?: any; /** - * Specifies the containment for the drag helper. The area inside of which the helper is contained would be scrollable while dragging. + * Specifies the containment for the drag helper. The area inside of which thehelper is contained would be scrollable while dragging. + * */ containment?: boolean|string|Array; @@ -67323,7 +76356,8 @@ interface IgPivotViewDataSelectorOptionsDragAndDropSettings { appendTo?: any; /** - * Specifies the containment for the drag helper. The area inside of which the helper is contained would be scrollable while dragging. + * Specifies the containment for the drag helper. The area inside of which thehelper is contained would be scrollable while dragging. + * */ containment?: boolean|string|Array; @@ -67434,40 +76468,81 @@ interface IgPivotViewDataSelectorPanel { } interface IgPivotView { + /** + * + * + * Valid values: + * "string" The widget width can be set in pixels (px) and percentage (%). + * "number" The widget width can be set as a number. + * "null" will stretch to fit the parent, if no other widths are defined. + */ width?: string|number; + + /** + * + * + * Valid values: + * "string" The widget height can be set in pixels (px) and percentage (%). + * "number" The widget height can be set as a number. + * "null" will stretch vertically to fit the parent, if no other heights are defined. + */ height?: string|number; /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ dataSource?: any; /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ dataSourceOptions?: IgPivotViewDataSourceOptions; /** * Configuration settings that will be assigned to the igPivotGrid widget. + * */ pivotGridOptions?: IgPivotViewPivotGridOptions; /** * Configuration settings that will be assigned to the igPivotDataSelector widget. + * */ dataSelectorOptions?: IgPivotViewDataSelectorOptions; /** * Configuration settings for the panel containing the igPivotGrid. + * */ pivotGridPanel?: IgPivotViewPivotGridPanel; /** * Configuration settings for the panel containing the igPivotDataSelector. + * */ dataSelectorPanel?: IgPivotViewDataSelectorPanel; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Option for igPivotView */ @@ -67496,6 +76571,24 @@ interface IgPivotViewMethods { * 3. Unbind all events that were bound. */ destroy(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igPivotView"): IgPivotViewMethods; @@ -67506,23 +76599,48 @@ interface JQuery { igPivotView(methodName: "dataSelector"): Object; igPivotView(methodName: "splitter"): Object; igPivotView(methodName: "destroy"): void; + igPivotView(methodName: "changeLocale", $container: Object): void; + igPivotView(methodName: "changeGlobalLanguage"): void; + igPivotView(methodName: "changeGlobalRegional"): void; + + /** + * * + */ igPivotView(optionLiteral: 'option', optionName: "width"): string|number; + /** + * * + * + * @optionValue New value to be set. + */ + igPivotView(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; + /** + * * + */ + igPivotView(optionLiteral: 'option', optionName: "height"): string|number; + /** + * * + * + * @optionValue New value to be set. + */ + igPivotView(optionLiteral: 'option', optionName: "height", optionValue: string|number): void; /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. + * */ igPivotView(optionLiteral: 'option', optionName: "dataSource"): any; /** * An instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; @@ -67530,6 +76648,7 @@ interface JQuery { /** * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. + * */ igPivotView(optionLiteral: 'option', optionName: "dataSourceOptions"): IgPivotViewDataSourceOptions; @@ -67537,57 +76656,110 @@ interface JQuery { * An object that will be used to create an instance of $.ig.OlapXmlaDataSource or $.ig.OlapFlatDataSource. * The provided value must contain an object with settings for one of the data source types - xmlaOptions or flatDataOptions. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "dataSourceOptions", optionValue: IgPivotViewDataSourceOptions): void; /** * Configuration settings that will be assigned to the igPivotGrid widget. + * */ igPivotView(optionLiteral: 'option', optionName: "pivotGridOptions"): IgPivotViewPivotGridOptions; /** * Configuration settings that will be assigned to the igPivotGrid widget. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "pivotGridOptions", optionValue: IgPivotViewPivotGridOptions): void; /** * Configuration settings that will be assigned to the igPivotDataSelector widget. + * */ igPivotView(optionLiteral: 'option', optionName: "dataSelectorOptions"): IgPivotViewDataSelectorOptions; /** * Configuration settings that will be assigned to the igPivotDataSelector widget. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "dataSelectorOptions", optionValue: IgPivotViewDataSelectorOptions): void; /** * Configuration settings for the panel containing the igPivotGrid. + * */ igPivotView(optionLiteral: 'option', optionName: "pivotGridPanel"): IgPivotViewPivotGridPanel; /** * Configuration settings for the panel containing the igPivotGrid. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "pivotGridPanel", optionValue: IgPivotViewPivotGridPanel): void; /** * Configuration settings for the panel containing the igPivotDataSelector. + * */ igPivotView(optionLiteral: 'option', optionName: "dataSelectorPanel"): IgPivotViewDataSelectorPanel; /** * Configuration settings for the panel containing the igPivotDataSelector. * + * * @optionValue New value to be set. */ igPivotView(optionLiteral: 'option', optionName: "dataSelectorPanel", optionValue: IgPivotViewDataSelectorPanel): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igPivotView(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotView(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igPivotView(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPivotView(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igPivotView(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igPivotView(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; igPivotView(options: IgPivotView): JQuery; igPivotView(optionLiteral: 'option', optionName: string): any; igPivotView(optionLiteral: 'option', options: IgPivotView): JQuery; @@ -67597,12 +76769,14 @@ interface JQuery { interface IgPopover { /** * Controls whether the popover will close on blur or not + * */ closeOnBlur?: boolean; /** * controls the direction in which the control shows relative to the target element * + * * Valid values: * "auto" lets the control show on the side where enough space is available with the priority specified by the [directionPriority](ui.%%WidgetNameLowered%%#options:directionPriority) property * "left" shows popover on the left side of the target element @@ -67615,12 +76789,14 @@ interface IgPopover { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ directionPriority?: any[]; /** * controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * Valid values: * "auto" lets the control choose a position depending on available space with the following priority balanced > end > start * "balanced" the popover is positioned at the middle of the target element @@ -67631,37 +76807,44 @@ interface IgPopover { /** * defines width for the popover. leave null for auto. + * */ width?: number|string; /** * defines height for the popover. leave null for auto + * */ height?: number|string; /** * defines width the popover won't go under the value even if no specific one is set. + * */ minWidth?: number|string; /** * defines width the popover won't exceed even if no specific one is set. + * */ maxWidth?: number|string; /** * defines height the popover won't exceed even if no specific one is set. + * */ maxHeight?: number|string; /** * Sets the time popover fades in and out when showing/hiding + * */ animationDuration?: number; /** * sets the content for the popover container. If left null the content will be get from the target. * + * * Valid values: * "string" String content of the popover container * "function" Function which is a callback that should return the content. Use the 'this' value to access the target DOM element. @@ -67670,17 +76853,20 @@ interface IgPopover { /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option + * */ selectors?: string; /** * Sets the content for the popover header + * */ headerTemplate?: IgPopoverHeaderTemplate; /** * sets the event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * Valid values: * "mouseenter" the popover is shown on mouse enter in the target element * "click" the popover is shown on click on the target element @@ -67690,18 +76876,38 @@ interface IgPopover { /** * Sets the containment for the popover. Accepts a jQuery object + * */ containment?: any; /** * Controls where the popover DOM should be attached to. * + * * Valid values: * "string" A valid jQuery selector for the element * "object" A reference to the parent jQuery object */ appendTo?: string|Object; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before popover is shown. */ @@ -67784,6 +76990,24 @@ interface IgPopoverMethods { * @param pos The popover coordinates in pixels. */ setCoordinates(pos: Object): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igPopover"): IgPopoverMethods; @@ -67800,21 +77024,27 @@ interface JQuery { igPopover(methodName: "target"): Object; igPopover(methodName: "getCoordinates"): Object; igPopover(methodName: "setCoordinates", pos: Object): void; + igPopover(methodName: "changeLocale", $container: Object): void; + igPopover(methodName: "changeGlobalLanguage"): void; + igPopover(methodName: "changeGlobalRegional"): void; /** * Controls whether the popover will close on blur or not + * */ igPopover(optionLiteral: 'option', optionName: "closeOnBlur"): boolean; /** * Controls whether the popover will close on blur or not * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "closeOnBlur", optionValue: boolean): void; /** * Controls the direction in which the control shows relative to the target element + * */ igPopover(optionLiteral: 'option', optionName: "direction"): string; @@ -67822,6 +77052,7 @@ interface JQuery { /** * Controls the direction in which the control shows relative to the target element * + * * @optionValue New value to be set. */ @@ -67830,6 +77061,7 @@ interface JQuery { /** * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. + * */ igPopover(optionLiteral: 'option', optionName: "directionPriority"): any[]; @@ -67837,12 +77069,14 @@ interface JQuery { * Controls the priority in which the control searches for space to show relative to the target element. * This property has effect only if the [direction](ui.%%WidgetNameLowered%%#options:direction) property value is "auto" or unset. * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "directionPriority", optionValue: any[]): void; /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area + * */ igPopover(optionLiteral: 'option', optionName: "position"): string; @@ -67850,6 +77084,7 @@ interface JQuery { /** * Controls the position of the popover according to the target element in case the popover is larger than the target on the side we want to position, if the popover is smaller it should always be in the middle of the visible area * + * * @optionValue New value to be set. */ @@ -67857,6 +77092,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. + * */ igPopover(optionLiteral: 'option', optionName: "width"): number|string; @@ -67864,6 +77100,7 @@ interface JQuery { /** * Defines width for the popover. leave null for auto. * + * * @optionValue New value to be set. */ @@ -67871,6 +77108,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto + * */ igPopover(optionLiteral: 'option', optionName: "height"): number|string; @@ -67878,6 +77116,7 @@ interface JQuery { /** * Defines height for the popover. leave null for auto * + * * @optionValue New value to be set. */ @@ -67885,6 +77124,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. + * */ igPopover(optionLiteral: 'option', optionName: "minWidth"): number|string; @@ -67892,6 +77132,7 @@ interface JQuery { /** * Defines width the popover won't go under the value even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -67899,6 +77140,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. + * */ igPopover(optionLiteral: 'option', optionName: "maxWidth"): number|string; @@ -67906,6 +77148,7 @@ interface JQuery { /** * Defines width the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -67913,6 +77156,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. + * */ igPopover(optionLiteral: 'option', optionName: "maxHeight"): number|string; @@ -67920,6 +77164,7 @@ interface JQuery { /** * Defines height the popover won't exceed even if no specific one is set. * + * * @optionValue New value to be set. */ @@ -67927,18 +77172,21 @@ interface JQuery { /** * The time popover fades in and out when showing/hiding + * */ igPopover(optionLiteral: 'option', optionName: "animationDuration"): number; /** * Sets the time popover fades in and out when showing/hiding * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; /** * The content for the popover container. If left null the content will be get from the target. + * */ igPopover(optionLiteral: 'option', optionName: "contentTemplate"): string|Function; @@ -67946,6 +77194,7 @@ interface JQuery { /** * Sets the content for the popover container. If left null the content will be get from the target. * + * * @optionValue New value to be set. */ @@ -67953,30 +77202,35 @@ interface JQuery { /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option + * */ igPopover(optionLiteral: 'option', optionName: "selectors"): string; /** * Selectors indicating which items should show popovers. The predefined value is [title]. Customize if you're using something other then the title attribute for the popover content, or if you need a different selector for event delegation. When changing this option, you likely need to also change the contentTemplate option * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "selectors", optionValue: string): void; /** * The content for the popover header + * */ igPopover(optionLiteral: 'option', optionName: "headerTemplate"): IgPopoverHeaderTemplate; /** * Sets the content for the popover header * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "headerTemplate", optionValue: IgPopoverHeaderTemplate): void; /** * The event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" + * */ igPopover(optionLiteral: 'option', optionName: "showOn"): string; @@ -67984,6 +77238,7 @@ interface JQuery { /** * Sets the event on which the popover will be shown. Predefined values are "mouseenter", "click" and "focus" * + * * @optionValue New value to be set. */ @@ -67991,18 +77246,21 @@ interface JQuery { /** * The containment for the popover. Accepts a jQuery object + * */ igPopover(optionLiteral: 'option', optionName: "containment"): any; /** * Sets the containment for the popover. Accepts a jQuery object * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "containment", optionValue: any): void; /** * Controls where the popover DOM should be attached to. + * */ igPopover(optionLiteral: 'option', optionName: "appendTo"): string|Object; @@ -68010,11 +77268,56 @@ interface JQuery { /** * Controls where the popover DOM should be attached to. * + * * @optionValue New value to be set. */ igPopover(optionLiteral: 'option', optionName: "appendTo", optionValue: string|Object): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igPopover(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPopover(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igPopover(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igPopover(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igPopover(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igPopover(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before popover is shown. */ @@ -68290,6 +77593,24 @@ interface IgQRCodeBarcode { */ applicationIndicator?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Occurs when an error has happened. * Function takes first argument evt and second argument ui. @@ -68331,6 +77652,24 @@ interface IgQRCodeBarcodeMethods { * Re-polls the css styles for the widget. Use this method when the css styles have been modified. */ styleUpdated(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igQRCodeBarcode"): IgQRCodeBarcodeMethods; @@ -68341,6 +77680,9 @@ interface JQuery { igQRCodeBarcode(methodName: "flush"): void; igQRCodeBarcode(methodName: "destroy"): void; igQRCodeBarcode(methodName: "styleUpdated"): void; + igQRCodeBarcode(methodName: "changeLocale", $container: Object): void; + igQRCodeBarcode(methodName: "changeGlobalLanguage"): void; + igQRCodeBarcode(methodName: "changeGlobalRegional"): void; /** * The width of the barcode. It can be set as a number in pixels, string (px) or percentage (%). @@ -68632,6 +77974,50 @@ interface JQuery { */ igQRCodeBarcode(optionLiteral: 'option', optionName: "applicationIndicator", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igQRCodeBarcode(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igQRCodeBarcode(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igQRCodeBarcode(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igQRCodeBarcode(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igQRCodeBarcode(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igQRCodeBarcode(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Occurs when an error has happened. * Function takes first argument evt and second argument ui. @@ -69127,6 +78513,24 @@ interface IgRadialGauge { */ pixelScalingRatio?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised when a label of the gauge is formatted. * Function takes first argument null and second argument ui. @@ -69177,16 +78581,22 @@ interface IgRadialGaugeMethods { /** * Adds a new range to the radial gauge. + * + * @param value */ addRange(value: Object): void; /** * Removes a specified range. + * + * @param value */ removeRange(value: Object): void; /** * Updates the range. + * + * @param value */ updateRange(value: Object): void; @@ -69197,26 +78607,39 @@ interface IgRadialGaugeMethods { /** * Scales a value on the gauge's main scale to an angle around the center point of the gauge, in radians. + * + * @param value */ scaleValue(value: Object): void; /** * Unscales a value from an angle in radians to the represented value along the main scale of the gauge. + * + * @param value */ unscaleValue(value: Object): void; /** * Gets the value for the main scale of the gauge for a given point within the bounds of the gauge. + * + * @param x + * @param y */ getValueForPoint(x: Object, y: Object): number; /** * Gets the point on the gauge for a given scale value and extent. + * + * @param value + * @param extent */ getPointForValue(value: Object, extent: Object): void; /** * Returns true if the main gauge needle bounding box contains the point provided, otherwise false. + * + * @param x + * @param y */ needleContainsPoint(x: Object, y: Object): void; @@ -69239,6 +78662,24 @@ interface IgRadialGaugeMethods { * Returns true if the style was updated for the radial gauge. */ styleUpdated(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igRadialGauge"): IgRadialGaugeMethods; @@ -69259,6 +78700,9 @@ interface JQuery { igRadialGauge(methodName: "flush"): void; igRadialGauge(methodName: "destroy"): void; igRadialGauge(methodName: "styleUpdated"): void; + igRadialGauge(methodName: "changeLocale", $container: Object): void; + igRadialGauge(methodName: "changeGlobalLanguage"): void; + igRadialGauge(methodName: "changeGlobalRegional"): void; /** * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). @@ -70112,6 +79556,50 @@ interface JQuery { */ igRadialGauge(optionLiteral: 'option', optionName: "pixelScalingRatio", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igRadialGauge(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRadialGauge(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igRadialGauge(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRadialGauge(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igRadialGauge(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igRadialGauge(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised when a label of the gauge is formatted. * Function takes first argument null and second argument ui. @@ -70201,6 +79689,7 @@ interface IgRadialMenuItem { /** * Gets or sets a value indicating what type of item is being provided. * + * * Valid values: * "button" * "coloritem" @@ -70666,6 +80155,24 @@ interface IgRadialMenu { wedgePaddingInDegrees?: number; pixelScalingRatio?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Invoked when the IsOpen property is changed to false. * Function takes a first argument ui. @@ -70714,6 +80221,24 @@ interface IgRadialMenuMethods { * Notify the radial menu that style information used for rendering the menu may have been updated. */ styleUpdated(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igRadialMenu"): IgRadialMenuMethods; @@ -70725,6 +80250,9 @@ interface JQuery { igRadialMenu(methodName: "flush"): void; igRadialMenu(methodName: "destroy"): void; igRadialMenu(methodName: "styleUpdated"): void; + igRadialMenu(methodName: "changeLocale", $container: Object): void; + igRadialMenu(methodName: "changeGlobalLanguage"): void; + igRadialMenu(methodName: "changeGlobalRegional"): void; /** * Gets the items in the menu. @@ -71040,6 +80568,50 @@ interface JQuery { igRadialMenu(optionLiteral: 'option', optionName: "pixelScalingRatio"): number; igRadialMenu(optionLiteral: 'option', optionName: "pixelScalingRatio", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igRadialMenu(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRadialMenu(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igRadialMenu(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRadialMenu(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igRadialMenu(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igRadialMenu(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Invoked when the IsOpen property is changed to false. * Function takes a first argument ui. @@ -71083,14 +80655,14 @@ interface HoverChangeEvent { interface HoverChangeEventUIParam { /** - * Used to get new value. + * Gets the new hovered value. */ - value?: any; + value?: number; /** - * Used to get old value. + * Gets the old value. */ - oldValue?: any; + oldValue?: number; } interface ValueChangeEvent { @@ -71099,45 +80671,51 @@ interface ValueChangeEvent { interface ValueChangeEventUIParam { /** - * Used to get new value. + * Gets the new selected value. */ - value?: any; + value?: number; /** - * Used to get old value. + * Gets the previously selected value. */ - oldValue?: any; + oldValue?: number; } interface IgRating { /** * Gets a vertical or horizontal orientation for the votes. * Change of that option is not supported after igRating was created. + * */ vertical?: boolean; /** * Gets/Sets value (selected votes or percent). If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the value is used as number of selected votes or as a percent of the votes. + * */ value?: number|string; /** * Gets/Sets value-hover (hovered votes or percent of hovered votes). The default is same as value. If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the valueHover is used as number of hovered votes or as a percent of the hovered votes. + * */ valueHover?: number|string; /** * Gets/Sets number of votes. + * */ voteCount?: number; /** * Gets/Sets custom width of a vote in pixels. In case of 0 the run time style value is used. + * */ voteWidth?: number; /** * Gets/Sets custom height of a vote in pixels. In case of 0 the run time style value is used. + * */ voteHeight?: number; @@ -71145,6 +80723,7 @@ interface IgRating { * Gets the direction of selected and hovered votes. Change of that option is not supported after igRating was created. * Value true: from left to right or from top to bottom. * Value false: from right to left or from bottom to left. + * */ swapDirection?: boolean; @@ -71152,6 +80731,7 @@ interface IgRating { * Gets/Sets percent or vote number to measure value and value-hover. * Value true: value is measured as percent (from 0 to 1). * Value false: value is measured in number of voted (from 0 to voteCount) + * */ valueAsPercent?: boolean; @@ -71159,12 +80739,14 @@ interface IgRating { * Gets if igRating can have focus. Change of that option is not supported after igRating was created. * Value true: can get focus and process key events. * Value false: cannot get focus. + * */ focusable?: boolean; /** * Gets/Sets precision. Precision of value and valueHover. * + * * Valid values: * "exact" Value corresponds location of mouse. * "half" Value is rounded to the half of vote. @@ -71177,6 +80759,7 @@ interface IgRating { * It has effect only when precision is set to "half" or "whole". * If user clicks between edge of the first vote and (sizeOfVote * precisionZeroVote), then value is set to 0. * Same is applied for mouseover as well. + * */ precisionZeroVote?: number; @@ -71187,6 +80770,7 @@ interface IgRating { * If precision is "whole" or "half" and roundedDecimalPlaces is set in range of 0..2, then 3 is used. * If valueAsPercent is enabled and roundedDecimalPlaces is set to 0, then 1 is used. * If it is larger than 15, then 15 is used. + * */ roundedDecimalPlaces?: number; @@ -71194,12 +80778,14 @@ interface IgRating { * Gets/Sets selector for css classes. * That option allows replacing all default css styles by custom values. * Application should provide css classes for all members defined in the css options with "theme" selector. + * */ theme?: string; /** * Gets/Sets object which contains options supported by igValidator. * Note that for onblur validation depends on the [focusable](ui.igrating#options:focusable) option. + * */ validatorOptions?: any; @@ -71215,26 +80801,37 @@ interface IgRating { * will customize only second vote with [normalCss](ui.igrating#theming:ui-igrating ui-state-default ui-widget-content) for normal state, [hoverCss](ui.igrating#theming:ui-igrating-hover ui-state-hover) for hover state and [selectedCss](ui.igrating#theming:ui-igrating-voteselected) for selected state. * [[null, 's1', 'h1'], [null, 's2', 'h2'], [null, 's3', 'h3']] * will customize selected and hover states for first 3 votes with classes h# and s#. + * */ cssVotes?: any; /** - * Event which is raised before hover value is changed. - * If application returns false, then action is canceled and hover value stays unchanged. + * Set/Get the locale setting for the widget. * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + + /** + * Fired before hover value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. */ hoverChange?: HoverChangeEvent; /** - * Event which is raised before (selected) value is changed. - * If application returns false, then action is canceled and value stays unchanged. - * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. + * Fired before (selected) value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. */ valueChange?: ValueChangeEvent; @@ -71286,6 +80883,24 @@ interface IgRatingMethods { * Destroys igRating widget. */ destroy(): Object; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igRating"): IgRatingMethods; @@ -71299,10 +80914,14 @@ interface JQuery { igRating(methodName: "hasFocus"): boolean; igRating(methodName: "focus"): Object; igRating(methodName: "destroy"): Object; + igRating(methodName: "changeLocale", $container: Object): void; + igRating(methodName: "changeGlobalLanguage"): void; + igRating(methodName: "changeGlobalRegional"): void; /** * Gets a vertical or horizontal orientation for the votes. * Change of that option is not supported after igRating was created. + * */ igRating(optionLiteral: 'option', optionName: "vertical"): boolean; @@ -71310,12 +80929,14 @@ interface JQuery { * A vertical or horizontal orientation for the votes. * Change of that option is not supported after igRating was created. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "vertical", optionValue: boolean): void; /** * Gets/Sets value (selected votes or percent). If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the value is used as number of selected votes or as a percent of the votes. + * */ igRating(optionLiteral: 'option', optionName: "value"): number|string; @@ -71323,6 +80944,7 @@ interface JQuery { /** * /Sets value (selected votes or percent). If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the value is used as number of selected votes or as a percent of the votes. * + * * @optionValue New value to be set. */ @@ -71330,6 +80952,7 @@ interface JQuery { /** * Gets/Sets value-hover (hovered votes or percent of hovered votes). The default is same as value. If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the valueHover is used as number of hovered votes or as a percent of the hovered votes. + * */ igRating(optionLiteral: 'option', optionName: "valueHover"): number|string; @@ -71337,6 +80960,7 @@ interface JQuery { /** * /Sets value-hover (hovered votes or percent of hovered votes). The default is same as value. If the value is of type string, it should be suitable for parsing to number. According to [valueAsPercent](ui.igrating#options:valueAsPercent) options the valueHover is used as number of hovered votes or as a percent of the hovered votes. * + * * @optionValue New value to be set. */ @@ -71344,36 +80968,42 @@ interface JQuery { /** * Gets/Sets number of votes. + * */ igRating(optionLiteral: 'option', optionName: "voteCount"): number; /** * /Sets number of votes. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "voteCount", optionValue: number): void; /** * Gets/Sets custom width of a vote in pixels. In case of 0 the run time style value is used. + * */ igRating(optionLiteral: 'option', optionName: "voteWidth"): number; /** * /Sets custom width of a vote in pixels. In case of 0 the run time style value is used. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "voteWidth", optionValue: number): void; /** * Gets/Sets custom height of a vote in pixels. In case of 0 the run time style value is used. + * */ igRating(optionLiteral: 'option', optionName: "voteHeight"): number; /** * /Sets custom height of a vote in pixels. In case of 0 the run time style value is used. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "voteHeight", optionValue: number): void; @@ -71382,6 +81012,7 @@ interface JQuery { * Gets the direction of selected and hovered votes. Change of that option is not supported after igRating was created. * Value true: from left to right or from top to bottom. * Value false: from right to left or from bottom to left. + * */ igRating(optionLiteral: 'option', optionName: "swapDirection"): boolean; @@ -71390,6 +81021,7 @@ interface JQuery { * Value true: from left to right or from top to bottom. * Value false: from right to left or from bottom to left. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "swapDirection", optionValue: boolean): void; @@ -71398,6 +81030,7 @@ interface JQuery { * Gets/Sets percent or vote number to measure value and value-hover. * Value true: value is measured as percent (from 0 to 1). * Value false: value is measured in number of voted (from 0 to voteCount) + * */ igRating(optionLiteral: 'option', optionName: "valueAsPercent"): boolean; @@ -71406,6 +81039,7 @@ interface JQuery { * Value true: value is measured as percent (from 0 to 1). * Value false: value is measured in number of voted (from 0 to voteCount) * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "valueAsPercent", optionValue: boolean): void; @@ -71414,6 +81048,7 @@ interface JQuery { * Gets if igRating can have focus. Change of that option is not supported after igRating was created. * Value true: can get focus and process key events. * Value false: cannot get focus. + * */ igRating(optionLiteral: 'option', optionName: "focusable"): boolean; @@ -71422,12 +81057,14 @@ interface JQuery { * Value true: can get focus and process key events. * Value false: cannot get focus. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "focusable", optionValue: boolean): void; /** * Gets/Sets precision. Precision of value and valueHover. + * */ igRating(optionLiteral: 'option', optionName: "precision"): string; @@ -71435,6 +81072,7 @@ interface JQuery { /** * /Sets precision. Precision of value and valueHover. * + * * @optionValue New value to be set. */ @@ -71445,6 +81083,7 @@ interface JQuery { * It has effect only when precision is set to "half" or "whole". * If user clicks between edge of the first vote and (sizeOfVote * precisionZeroVote), then value is set to 0. * Same is applied for mouseover as well. + * */ igRating(optionLiteral: 'option', optionName: "precisionZeroVote"): number; @@ -71454,6 +81093,7 @@ interface JQuery { * If user clicks between edge of the first vote and (sizeOfVote * precisionZeroVote), then value is set to 0. * Same is applied for mouseover as well. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "precisionZeroVote", optionValue: number): void; @@ -71465,6 +81105,7 @@ interface JQuery { * If precision is "whole" or "half" and roundedDecimalPlaces is set in range of 0..2, then 3 is used. * If valueAsPercent is enabled and roundedDecimalPlaces is set to 0, then 1 is used. * If it is larger than 15, then 15 is used. + * */ igRating(optionLiteral: 'option', optionName: "roundedDecimalPlaces"): number; @@ -71476,6 +81117,7 @@ interface JQuery { * If valueAsPercent is enabled and roundedDecimalPlaces is set to 0, then 1 is used. * If it is larger than 15, then 15 is used. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "roundedDecimalPlaces", optionValue: number): void; @@ -71484,6 +81126,7 @@ interface JQuery { * Gets/Sets selector for css classes. * That option allows replacing all default css styles by custom values. * Application should provide css classes for all members defined in the css options with "theme" selector. + * */ igRating(optionLiteral: 'option', optionName: "theme"): string; @@ -71492,6 +81135,7 @@ interface JQuery { * That option allows replacing all default css styles by custom values. * Application should provide css classes for all members defined in the css options with "theme" selector. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "theme", optionValue: string): void; @@ -71499,6 +81143,7 @@ interface JQuery { /** * Gets/Sets object which contains options supported by igValidator. * Note that for onblur validation depends on the [focusable](ui.igrating#options:focusable) option. + * */ igRating(optionLiteral: 'option', optionName: "validatorOptions"): any; @@ -71506,6 +81151,7 @@ interface JQuery { * /Sets object which contains options supported by igValidator. * Note that for onblur validation depends on the [focusable](ui.igrating#options:focusable) option. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "validatorOptions", optionValue: any): void; @@ -71522,6 +81168,7 @@ interface JQuery { * will customize only second vote with [normalCss](ui.igrating#theming:ui-igrating ui-state-default ui-widget-content) for normal state, [hoverCss](ui.igrating#theming:ui-igrating-hover ui-state-hover) for hover state and [selectedCss](ui.igrating#theming:ui-igrating-voteselected) for selected state. * [[null, 's1', 'h1'], [null, 's2', 'h2'], [null, 's3', 'h3']] * will customize selected and hover states for first 3 votes with classes h# and s#. + * */ igRating(optionLiteral: 'option', optionName: "cssVotes"): any; @@ -71538,51 +81185,80 @@ interface JQuery { * [[null, 's1', 'h1'], [null, 's2', 'h2'], [null, 's3', 'h3']] * will customize selected and hover states for first 3 votes with classes h# and s#. * + * * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "cssVotes", optionValue: any): void; /** - * Event which is raised before hover value is changed. - * If application returns false, then action is canceled and hover value stays unchanged. + * Set/Get the locale setting for the widget. * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. + */ + igRating(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRating(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igRating(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igRating(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igRating(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igRating(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + + /** + * Fired before hover value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. */ igRating(optionLiteral: 'option', optionName: "hoverChange"): HoverChangeEvent; /** - * Event which is raised before hover value is changed. - * If application returns false, then action is canceled and hover value stays unchanged. + * Fired before hover value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. - * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "hoverChange", optionValue: HoverChangeEvent): void; /** - * Event which is raised before (selected) value is changed. - * If application returns false, then action is canceled and value stays unchanged. - * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. + * Fired before (selected) value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. */ igRating(optionLiteral: 'option', optionName: "valueChange"): ValueChangeEvent; /** - * Event which is raised before (selected) value is changed. - * If application returns false, then action is canceled and value stays unchanged. + * Fired before (selected) value is changed. + * If the application returns false, then the action is canceled and the value remains unchanged. * - * Function takes arguments evt and ui. - * Use ui.value to get new value. - * Use ui.oldValue to get old value. - * - * @optionValue Define event handler function. + * @optionValue New value to be set. */ igRating(optionLiteral: 'option', optionName: "valueChange", optionValue: ValueChangeEvent): void; igRating(options: IgRating): JQuery; @@ -71594,6 +81270,7 @@ interface JQuery { interface IgSchedulerAgendaViewSettings { /** * Gets/Sets the number of days shown in AgendaView mode. + * */ dateRangeInterval?: number; @@ -71603,6 +81280,56 @@ interface IgSchedulerAgendaViewSettings { [optionName: string]: any; } +interface IgSchedulerWeekViewSettings { + /** + * Gets/Sets the week view display mode (whether to show all days or just working days). + * + */ + weekViewDisplayMode?: number; + + /** + * Gets/Sets whether to display all hours or just working hours. + * + */ + workingHoursDisplayMode?: number; + + /** + * Gets/Sets the time slots duration. 5, 6, 10, 15, 30 and 60 minutes are supported. + * + */ + timeSlotInterval?: number; + + /** + * Option for IgSchedulerWeekViewSettings + */ + [optionName: string]: any; +} + +interface IgSchedulerDayViewSettings { + /** + * Gets/Sets the time slots duration. 5, 6, 10, 15, 30 and 60 minutes are supported. + * + */ + timeSlotInterval?: number; + + /** + * Gets/Sets the number of days are visible at a time in the day view. 1 to 7 days are supported. + * + */ + dayViewNumberOfDays?: number; + + /** + * Gets/Sets whether to display all hours or just working hours. + * + */ + workingHoursDisplayMode?: number; + + /** + * Option for IgSchedulerDayViewSettings + */ + [optionName: string]: any; +} + interface IgSchedulerMonthViewSettings { /** * Gets/Sets the type of content displayed in a MonthView day. @@ -71615,6 +81342,7 @@ interface IgSchedulerMonthViewSettings { /** * Gets/Sets the visibility of an AgendaView in a MonthView. When true, the MonthView will display an AgendaView showing the Appointments for the currently selected day at the top of its list of Appointments. + * */ isAgendaVisible?: boolean; @@ -71637,31 +81365,37 @@ interface IgSchedulerMonthViewSettings { /** * Gets/sets the visibility of the horizontal separators between weeks in the MonthView. + * */ isHorizontalSeparatorVisibile?: boolean; /** * Gets/sets the visibility of the vertical separators between days of the week in a MonthView. + * */ isVerticalSeparatorVisibile?: boolean; /** * Gets/sets the visibility of the weekday names in MonthView. + * */ isWeekdayVisible?: boolean; /** * Gets/sets the visibility of the week numbers in a MonthView. + * */ isWeekNumberVisible?: boolean; /** * Gets/sets the visibility of the days from the previous month that occur in the first week of a given month. + * */ isPreviousMonthShown?: boolean; /** * Gets/sets the visibility of the days from the next month that occur in the last week of a given month. + * */ isNextMonthShown?: boolean; @@ -71771,6 +81505,80 @@ interface MonthChangedEventUIParam { newSelectedDate?: any; } +interface WeekChangingEvent { + (event: Event, ui: WeekChangingEventUIParam): void; +} + +interface WeekChangingEventUIParam { + /** + * Gets a reference to the scheduler. + */ + owner?: any; + + /** + * Gets a reference to newly selected date. + */ + newSelectedDate?: any; + + /** + * Gets a reference to the currently selected date. + */ + currentSelectedDate?: any; +} + +interface WeekChangedEvent { + (event: Event, ui: WeekChangedEventUIParam): void; +} + +interface WeekChangedEventUIParam { + /** + * Gets a reference to the scheduler. + */ + owner?: any; + + /** + * Gets a reference to newly selected date. + */ + newSelectedDate?: any; +} + +interface DayChangingEvent { + (event: Event, ui: DayChangingEventUIParam): void; +} + +interface DayChangingEventUIParam { + /** + * Gets a reference to the scheduler. + */ + owner?: any; + + /** + * Gets a reference to newly selected date. + */ + newSelectedDate?: any; + + /** + * Gets a reference to the currently selected date. + */ + currentSelectedDate?: any; +} + +interface DayChangedEvent { + (event: Event, ui: DayChangedEventUIParam): void; +} + +interface DayChangedEventUIParam { + /** + * Gets a reference to the scheduler. + */ + owner?: any; + + /** + * Gets a reference to newly selected date. + */ + newSelectedDate?: any; +} + interface ViewChangingEvent { (event: Event, ui: ViewChangingEventUIParam): void; } @@ -71996,12 +81804,14 @@ interface AppointmentEditedEventUIParam { interface IgScheduler { /** * Lists of all the views, rendered in the Scheduler. + * */ views?: any[]; /** * Gets/Sets current view mode in the Scheduler. If this options is not defined, then the first defined view in the views property is taken. * + * * Valid values: * "monthView" Enables MonthView in the Scheduler. * "agendaView" Enables AgendaView in the Scheduler. @@ -72009,13 +81819,21 @@ interface IgScheduler { viewMode?: string; /** - * Enables/Disables today button. + * Gets/Sets selected date in the Scheduler. + * */ - selectedDate?: boolean; + selectedDate?: Date; + + /** + * Enables/Disables today button. + * + */ + enableTodayButton?: boolean; /** * Gets/Sets the width of the control. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -72024,6 +81842,7 @@ interface IgScheduler { /** * Gets/Sets the height of the control. * + * * Valid values: * "null" will fit the editor inside its parent container, if no other heights are defined. */ @@ -72031,24 +81850,74 @@ interface IgScheduler { /** * Gets/Sets AgendaView settings. + * */ agendaViewSettings?: IgSchedulerAgendaViewSettings; + /** + * Gets/Sets WeekView settings. + * + */ + weekViewSettings?: IgSchedulerWeekViewSettings; + + /** + * Gets/Sets DayView settings. + * + */ + dayViewSettings?: IgSchedulerDayViewSettings; + /** * Gets/Sets MonthView settings. + * */ monthViewSettings?: IgSchedulerMonthViewSettings; /** * Gets/Sets whether the appointment dialog and the related day and appointment popups should be shown. + * */ appointmentDialogSuppress?: boolean; /** * Gets/Sets dataSource of type $.ig.scheduler.ScheduleListDataSource. + * */ dataSource?: any; + /** + * Gets the resources collection that holds the activities` owners + * + * //Initialize + * var resources = [ + * { id: 1, displayName: "Trina Friesen" }, + * { id: 2, displayName: "Mack Koch" }]; + * $(".selector").%%WidgetName%%({ + * resources: resources + * }); + * + * // Get + * var resources = $(".selector").%%WidgetName%%("option", "resources"); + */ + resources?: any; + + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired before agenda view range is changed when using previous and next buttons (fired only in Agenda View) */ @@ -72084,6 +81953,26 @@ interface IgScheduler { */ rendered?: RenderedEvent; + /** + * Fired before changing the week begins, when using previous and next buttons (fired only in Week View) + */ + weekChanging?: WeekChangingEvent; + + /** + * Fired after week is changed when using previous and next buttons (fired only in Week View) + */ + weekChanged?: WeekChangedEvent; + + /** + * Fired before changing the day begins, when using previous and next buttons (fired only in Day View) + */ + dayChanging?: DayChangingEvent; + + /** + * Fired after day is changed when using previous and next buttons (fired only in Day View) + */ + dayChanged?: DayChangedEvent; + /** * Fired before the view is changed, when using the menu buttons. */ @@ -72151,15 +82040,20 @@ interface IgScheduler { } interface IgSchedulerMethods { /** - * Gets reference to appointment by id - */ - getAppointmentById(id: Object): Object; - - /** - * Creates a new appointment and renders it to the scheduler + * Creates an appointment and adds it to the appointment collection + * + * @param appointment appointment */ createAppointment(appointment: Object): Object; + /** + * Gets reference to a collection of all appointments for the given time range + * + * @param start Start date. + * @param end End date. + */ + getAppointmentsInRange(start: Date, end: Date): Object; + /** * Deletes appointment from the appointment collection * @@ -72174,6 +82068,11 @@ interface IgSchedulerMethods { * @param updateAppoinment updateAppoinment */ editAppointment(appointment: Object, updateAppoinment: Object): Object; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igscheduler#options:language) + * Note that this method is for rare scenarios, see [language](ui.igscheduler#options:language) or [locale](ui.igscheduler#options:locale) option setter + */ changeLocale(): void; /** @@ -72205,14 +82104,24 @@ interface IgSchedulerMethods { * Gets reference to the jQuery calendar UI control. */ getCalendar(): string; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igScheduler"): IgSchedulerMethods; } interface JQuery { - igScheduler(methodName: "getAppointmentById", id: Object): Object; igScheduler(methodName: "createAppointment", appointment: Object): Object; + igScheduler(methodName: "getAppointmentsInRange", start: Date, end: Date): Object; igScheduler(methodName: "deleteAppointment", appointment: Object): Object; igScheduler(methodName: "editAppointment", appointment: Object, updateAppoinment: Object): Object; igScheduler(methodName: "changeLocale"): void; @@ -72222,21 +82131,26 @@ interface JQuery { igScheduler(methodName: "dateRangeButton"): string; igScheduler(methodName: "nextButton"): string; igScheduler(methodName: "getCalendar"): string; + igScheduler(methodName: "changeGlobalLanguage"): void; + igScheduler(methodName: "changeGlobalRegional"): void; /** * Lists of all the views, rendered in the Scheduler. + * */ igScheduler(optionLiteral: 'option', optionName: "views"): any[]; /** * Lists of all the views, rendered in the Scheduler. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "views", optionValue: any[]): void; /** * Gets/Sets current view mode in the Scheduler. If this options is not defined, then the first defined view in the views property is taken. + * */ igScheduler(optionLiteral: 'option', optionName: "viewMode"): string; @@ -72244,25 +82158,43 @@ interface JQuery { /** * /Sets current view mode in the Scheduler. If this options is not defined, then the first defined view in the views property is taken. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "viewMode", optionValue: string): void; /** - * Enables/Disables today button. + * Gets/Sets selected date in the Scheduler. + * */ - igScheduler(optionLiteral: 'option', optionName: "selectedDate"): boolean; + igScheduler(optionLiteral: 'option', optionName: "selectedDate"): Date; + + /** + * /Sets selected date in the Scheduler. + * + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "selectedDate", optionValue: Date): void; /** * Enables/Disables today button. * + */ + igScheduler(optionLiteral: 'option', optionName: "enableTodayButton"): boolean; + + /** + * Enables/Disables today button. + * + * * @optionValue New value to be set. */ - igScheduler(optionLiteral: 'option', optionName: "selectedDate", optionValue: boolean): void; + igScheduler(optionLiteral: 'option', optionName: "enableTodayButton", optionValue: boolean): void; /** * Gets/Sets the width of the control. + * */ igScheduler(optionLiteral: 'option', optionName: "width"): string|number; @@ -72270,6 +82202,7 @@ interface JQuery { /** * /Sets the width of the control. * + * * @optionValue New value to be set. */ @@ -72277,6 +82210,7 @@ interface JQuery { /** * Gets/Sets the height of the control. + * */ igScheduler(optionLiteral: 'option', optionName: "height"): string|number; @@ -72284,6 +82218,7 @@ interface JQuery { /** * /Sets the height of the control. * + * * @optionValue New value to be set. */ @@ -72291,52 +82226,166 @@ interface JQuery { /** * Gets/Sets AgendaView settings. + * */ igScheduler(optionLiteral: 'option', optionName: "agendaViewSettings"): IgSchedulerAgendaViewSettings; /** * /Sets AgendaView settings. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "agendaViewSettings", optionValue: IgSchedulerAgendaViewSettings): void; + /** + * Gets/Sets WeekView settings. + * + */ + igScheduler(optionLiteral: 'option', optionName: "weekViewSettings"): IgSchedulerWeekViewSettings; + + /** + * /Sets WeekView settings. + * + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "weekViewSettings", optionValue: IgSchedulerWeekViewSettings): void; + + /** + * Gets/Sets DayView settings. + * + */ + igScheduler(optionLiteral: 'option', optionName: "dayViewSettings"): IgSchedulerDayViewSettings; + + /** + * /Sets DayView settings. + * + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "dayViewSettings", optionValue: IgSchedulerDayViewSettings): void; + /** * Gets/Sets MonthView settings. + * */ igScheduler(optionLiteral: 'option', optionName: "monthViewSettings"): IgSchedulerMonthViewSettings; /** * /Sets MonthView settings. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "monthViewSettings", optionValue: IgSchedulerMonthViewSettings): void; /** * Gets/Sets whether the appointment dialog and the related day and appointment popups should be shown. + * */ igScheduler(optionLiteral: 'option', optionName: "appointmentDialogSuppress"): boolean; /** * /Sets whether the appointment dialog and the related day and appointment popups should be shown. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "appointmentDialogSuppress", optionValue: boolean): void; /** * Gets/Sets dataSource of type $.ig.scheduler.ScheduleListDataSource. + * */ igScheduler(optionLiteral: 'option', optionName: "dataSource"): any; /** * /Sets dataSource of type $.ig.scheduler.ScheduleListDataSource. * + * * @optionValue New value to be set. */ igScheduler(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; + /** + * Gets the resources collection that holds the activities` owners + * + * //Initialize + * var resources = [ + * { id: 1, displayName: "Trina Friesen" }, + * { id: 2, displayName: "Mack Koch" }]; + * $(".selector").%%WidgetName%%({ + * resources: resources + * }); + * + * // Get + * var resources = $(".selector").%%WidgetName%%("option", "resources"); + */ + igScheduler(optionLiteral: 'option', optionName: "resources"): any; + + /** + * The resources collection that holds the activities` owners + * + * //Initialize + * var resources = [ + * { id: 1, displayName: "Trina Friesen" }, + * { id: 2, displayName: "Mack Koch" }]; + * $(".selector").%%WidgetName%%({ + * resources: resources + * }); + * + * // Get + * var resources = $(".selector").%%WidgetName%%("option", "resources"); + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "resources", optionValue: any): void; + + /** + * Set/Get the locale setting for the widget. + * + */ + igScheduler(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igScheduler(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igScheduler(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igScheduler(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired before agenda view range is changed when using previous and next buttons (fired only in Agenda View) */ @@ -72421,6 +82470,54 @@ interface JQuery { */ igScheduler(optionLiteral: 'option', optionName: "rendered", optionValue: RenderedEvent): void; + /** + * Fired before changing the week begins, when using previous and next buttons (fired only in Week View) + */ + igScheduler(optionLiteral: 'option', optionName: "weekChanging"): WeekChangingEvent; + + /** + * Fired before changing the week begins, when using previous and next buttons (fired only in Week View) + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "weekChanging", optionValue: WeekChangingEvent): void; + + /** + * Fired after week is changed when using previous and next buttons (fired only in Week View) + */ + igScheduler(optionLiteral: 'option', optionName: "weekChanged"): WeekChangedEvent; + + /** + * Fired after week is changed when using previous and next buttons (fired only in Week View) + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "weekChanged", optionValue: WeekChangedEvent): void; + + /** + * Fired before changing the day begins, when using previous and next buttons (fired only in Day View) + */ + igScheduler(optionLiteral: 'option', optionName: "dayChanging"): DayChangingEvent; + + /** + * Fired before changing the day begins, when using previous and next buttons (fired only in Day View) + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "dayChanging", optionValue: DayChangingEvent): void; + + /** + * Fired after day is changed when using previous and next buttons (fired only in Day View) + */ + igScheduler(optionLiteral: 'option', optionName: "dayChanged"): DayChangedEvent; + + /** + * Fired after day is changed when using previous and next buttons (fired only in Day View) + * + * @optionValue New value to be set. + */ + igScheduler(optionLiteral: 'option', optionName: "dayChanged", optionValue: DayChangedEvent): void; + /** * Fired before the view is changed, when using the menu buttons. */ @@ -72715,12 +82812,14 @@ interface ResizedEventUIParam { interface IgScroll { /** * Sets or gets if the scrollbars should be always visible (on all environments). Otherwise it will be the default behavior. Note: this option is only for the custom scrollbars set through the scrollbarType option. + * */ alwaysVisible?: boolean; /** * Sets or gets what type of scrollbars should be using the igScroll (on all environments). * + * * Valid values: * "custom" Custom scrollbars with custom ui and events. * "native" Native scrollbars @@ -72728,126 +82827,174 @@ interface IgScroll { */ scrollbarType?: string; + /** + * Sets or gets the minimum size of the thumb drag in pixels. For the vertical thumb it means its minimum height, for the horizontal thumb it means its minimum width. This affects only the custom scrollblar when scrollbarType is set to "custom". + * + */ + minThumbSize?: number|string; + /** * Sets or gets if igScroll can modify the DOM when it is initialized on certain element so that the content can be scrollable. + * */ modifyDOM?: boolean; /** * Sets custom value for how high is actually the content. Useful when wanting to scroll and update the shown content manually. + * */ scrollHeight?: number; /** * Sets custom value for what width is actually the content. Useful when wanting to scroll and update the shown content manually. + * */ scrollWidth?: number; /** * Sets gets current vertical position of the content. + * */ scrollTop?: number; /** * Sets gets current horizontal position of the content. + * */ scrollLeft?: number; /** * Sets gets the step of the default scrolling behavior when using mouse wheel + * */ wheelStep?: number; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar arrows + * */ smallIncrementStep?: number; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar track areas. + * */ bigIncrementStep?: number; /** * Sets gets if smoother scrolling with small intertia should be used when using mouse wheel + * */ smoothing?: boolean; /** * Sets or gets the modifier for how many pixels will be scrolled when using the mouse wheel once. This is used only for the smooth scrolling behavior. + * */ smoothingStep?: number; /** * Sets or gets the modifier for how long the scroll ‘animation’ lasts when using the mouse wheel once. This is used only for the smooth scrolling behavior. + * */ smoothingDuration?: number; /** * Sets gets the modifier for how much the inertia scrolls on mobile devices + * */ inertiaStep?: number; /** * Sets gets the modifier for how long the inertia last on mobile devices + * */ inertiaDuration?: number; /** * Sets gets how much pixels of toleration there will be when initially swiping horizontally. This is to improve swiping up/down without scrolling left/right when not intended due to small deviation left/right + * */ swipeToleranceX?: number; /** * Sets gets at least how many times the horizontal speed should be bigger so the inertia proceeds only horizontally without scrolling vertically. This is to improve interactions due to not perfectly swiping left/right with some deviation down/up + * */ inertiaDeltaX?: number; /** * Sets gets at least how many times the vertical speed should be bigger so the inertia proceeds only vertically without scrolling horizontally. This is to improve interactions due to not perfectly swiping down/up with some deviation left/right + * */ inertiaDeltaY?: number; /** * Sets gets elements that are linked to the main content horizontally. When the content is scrolled on X axis the linked elements scroll accordingly. + * */ syncedElemsH?: any[]; /** * Sets gets elements that are linked to the main content vertically. When the content is scrolled on Y axis the linked elements scroll accordingly. + * */ syncedElemsV?: any[]; /** * Sets gets html or jQuery element which is used for horizontal scrolling. + * */ scrollbarH?: string; /** * Sets gets html or jQuery element which is used for vertical scrolling. + * */ scrollbarV?: string; /** * Sets gets if only the linked horizontal scrollbar should be used for horizontal scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. + * */ scrollOnlyHBar?: boolean; /** * Sets gets if only the linked vertical scrollbar should be used for vertical scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. + * */ scrollOnlyVBar?: boolean; /** * Sets gets html or jQuery element to which the horizontal scrollbar will be appended to. + * */ scrollbarHParent?: string; /** * Sets gets html or jQuery element to which the vertical scrollbar will be appended to. + * */ scrollbarVParent?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised after the scroller has been rendered fully */ @@ -72902,9 +83049,24 @@ interface IgScroll { } interface IgScrollMethods { refresh(): void; + + /** + * This method overrides the base method and does nothing, because the scoll container shouldn't change the container locales + * Note that this method is for rare scenarios, use [language](ui.igupload#options:language) or [locale](ui.igupload#options:locale) option setter + */ changeLocale(): void; option(optionName: Object, value: Object): void; destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igScroll"): IgScrollMethods; @@ -72915,21 +83077,26 @@ interface JQuery { igScroll(methodName: "changeLocale"): void; igScroll(methodName: "option", optionName: Object, value: Object): void; igScroll(methodName: "destroy"): void; + igScroll(methodName: "changeGlobalLanguage"): void; + igScroll(methodName: "changeGlobalRegional"): void; /** * Sets or gets if the scrollbars should be always visible (on all environments). Otherwise it will be the default behavior. Note: this option is only for the custom scrollbars set through the scrollbarType option. + * */ igScroll(optionLiteral: 'option', optionName: "alwaysVisible"): boolean; /** * Sets or gets if the scrollbars should be always visible (on all environments). Otherwise it will be the default behavior. Note: this option is only for the custom scrollbars set through the scrollbarType option. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "alwaysVisible", optionValue: boolean): void; /** * Sets or gets what type of scrollbars should be using the igScroll (on all environments). + * */ igScroll(optionLiteral: 'option', optionName: "scrollbarType"): string; @@ -72937,299 +83104,408 @@ interface JQuery { /** * Sets or gets what type of scrollbars should be using the igScroll (on all environments). * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollbarType", optionValue: string): void; + /** + * Sets or gets the minimum size of the thumb drag in pixels. For the vertical thumb it means its minimum height, for the horizontal thumb it means its minimum width. This affects only the custom scrollblar when scrollbarType is set to "custom". + * + */ + + igScroll(optionLiteral: 'option', optionName: "minThumbSize"): number|string; + + /** + * Sets or gets the minimum size of the thumb drag in pixels. For the vertical thumb it means its minimum height, for the horizontal thumb it means its minimum width. This affects only the custom scrollblar when scrollbarType is set to "custom". + * + * + * @optionValue New value to be set. + */ + + igScroll(optionLiteral: 'option', optionName: "minThumbSize", optionValue: number|string): void; + /** * Sets or gets if igScroll can modify the DOM when it is initialized on certain element so that the content can be scrollable. + * */ igScroll(optionLiteral: 'option', optionName: "modifyDOM"): boolean; /** * Sets or gets if igScroll can modify the DOM when it is initialized on certain element so that the content can be scrollable. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "modifyDOM", optionValue: boolean): void; /** * Sets custom value for how high is actually the content. Useful when wanting to scroll and update the shown content manually. + * */ igScroll(optionLiteral: 'option', optionName: "scrollHeight"): number; /** * Sets custom value for how high is actually the content. Useful when wanting to scroll and update the shown content manually. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollHeight", optionValue: number): void; /** * Sets custom value for what width is actually the content. Useful when wanting to scroll and update the shown content manually. + * */ igScroll(optionLiteral: 'option', optionName: "scrollWidth"): number; /** * Sets custom value for what width is actually the content. Useful when wanting to scroll and update the shown content manually. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollWidth", optionValue: number): void; /** * Sets gets current vertical position of the content. + * */ igScroll(optionLiteral: 'option', optionName: "scrollTop"): number; /** * Sets gets current vertical position of the content. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollTop", optionValue: number): void; /** * Sets gets current horizontal position of the content. + * */ igScroll(optionLiteral: 'option', optionName: "scrollLeft"): number; /** * Sets gets current horizontal position of the content. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollLeft", optionValue: number): void; /** * Sets gets the step of the default scrolling behavior when using mouse wheel + * */ igScroll(optionLiteral: 'option', optionName: "wheelStep"): number; /** * Sets gets the step of the default scrolling behavior when using mouse wheel * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "wheelStep", optionValue: number): void; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar arrows + * */ igScroll(optionLiteral: 'option', optionName: "smallIncrementStep"): number; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar arrows * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "smallIncrementStep", optionValue: number): void; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar track areas. + * */ igScroll(optionLiteral: 'option', optionName: "bigIncrementStep"): number; /** * Sets gets the step of the default scrolling behavior when using any of the custom scrollbar track areas. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "bigIncrementStep", optionValue: number): void; /** * Sets gets if smoother scrolling with small intertia should be used when using mouse wheel + * */ igScroll(optionLiteral: 'option', optionName: "smoothing"): boolean; /** * Sets gets if smoother scrolling with small intertia should be used when using mouse wheel * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "smoothing", optionValue: boolean): void; /** * Sets or gets the modifier for how many pixels will be scrolled when using the mouse wheel once. This is used only for the smooth scrolling behavior. + * */ igScroll(optionLiteral: 'option', optionName: "smoothingStep"): number; /** * Sets or gets the modifier for how many pixels will be scrolled when using the mouse wheel once. This is used only for the smooth scrolling behavior. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "smoothingStep", optionValue: number): void; /** * Sets or gets the modifier for how long the scroll ‘animation’ lasts when using the mouse wheel once. This is used only for the smooth scrolling behavior. + * */ igScroll(optionLiteral: 'option', optionName: "smoothingDuration"): number; /** * Sets or gets the modifier for how long the scroll ‘animation’ lasts when using the mouse wheel once. This is used only for the smooth scrolling behavior. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "smoothingDuration", optionValue: number): void; /** * Sets gets the modifier for how much the inertia scrolls on mobile devices + * */ igScroll(optionLiteral: 'option', optionName: "inertiaStep"): number; /** * Sets gets the modifier for how much the inertia scrolls on mobile devices * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "inertiaStep", optionValue: number): void; /** * Sets gets the modifier for how long the inertia last on mobile devices + * */ igScroll(optionLiteral: 'option', optionName: "inertiaDuration"): number; /** * Sets gets the modifier for how long the inertia last on mobile devices * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "inertiaDuration", optionValue: number): void; /** * Sets gets how much pixels of toleration there will be when initially swiping horizontally. This is to improve swiping up/down without scrolling left/right when not intended due to small deviation left/right + * */ igScroll(optionLiteral: 'option', optionName: "swipeToleranceX"): number; /** * Sets gets how much pixels of toleration there will be when initially swiping horizontally. This is to improve swiping up/down without scrolling left/right when not intended due to small deviation left/right * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "swipeToleranceX", optionValue: number): void; /** * Sets gets at least how many times the horizontal speed should be bigger so the inertia proceeds only horizontally without scrolling vertically. This is to improve interactions due to not perfectly swiping left/right with some deviation down/up + * */ igScroll(optionLiteral: 'option', optionName: "inertiaDeltaX"): number; /** * Sets gets at least how many times the horizontal speed should be bigger so the inertia proceeds only horizontally without scrolling vertically. This is to improve interactions due to not perfectly swiping left/right with some deviation down/up * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "inertiaDeltaX", optionValue: number): void; /** * Sets gets at least how many times the vertical speed should be bigger so the inertia proceeds only vertically without scrolling horizontally. This is to improve interactions due to not perfectly swiping down/up with some deviation left/right + * */ igScroll(optionLiteral: 'option', optionName: "inertiaDeltaY"): number; /** * Sets gets at least how many times the vertical speed should be bigger so the inertia proceeds only vertically without scrolling horizontally. This is to improve interactions due to not perfectly swiping down/up with some deviation left/right * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "inertiaDeltaY", optionValue: number): void; /** * Sets gets elements that are linked to the main content horizontally. When the content is scrolled on X axis the linked elements scroll accordingly. + * */ igScroll(optionLiteral: 'option', optionName: "syncedElemsH"): any[]; /** * Sets gets elements that are linked to the main content horizontally. When the content is scrolled on X axis the linked elements scroll accordingly. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "syncedElemsH", optionValue: any[]): void; /** * Sets gets elements that are linked to the main content vertically. When the content is scrolled on Y axis the linked elements scroll accordingly. + * */ igScroll(optionLiteral: 'option', optionName: "syncedElemsV"): any[]; /** * Sets gets elements that are linked to the main content vertically. When the content is scrolled on Y axis the linked elements scroll accordingly. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "syncedElemsV", optionValue: any[]): void; /** * Sets gets html or jQuery element which is used for horizontal scrolling. + * */ igScroll(optionLiteral: 'option', optionName: "scrollbarH"): string; /** * Sets gets html or jQuery element which is used for horizontal scrolling. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollbarH", optionValue: string): void; /** * Sets gets html or jQuery element which is used for vertical scrolling. + * */ igScroll(optionLiteral: 'option', optionName: "scrollbarV"): string; /** * Sets gets html or jQuery element which is used for vertical scrolling. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollbarV", optionValue: string): void; /** * Sets gets if only the linked horizontal scrollbar should be used for horizontal scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. + * */ igScroll(optionLiteral: 'option', optionName: "scrollOnlyHBar"): boolean; /** * Sets gets if only the linked horizontal scrollbar should be used for horizontal scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollOnlyHBar", optionValue: boolean): void; /** * Sets gets if only the linked vertical scrollbar should be used for vertical scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. + * */ igScroll(optionLiteral: 'option', optionName: "scrollOnlyVBar"): boolean; /** * Sets gets if only the linked vertical scrollbar should be used for vertical scrolling. Note: The behavior when the linked scrollbar is scrolled in this case should be handled manually. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollOnlyVBar", optionValue: boolean): void; /** * Sets gets html or jQuery element to which the horizontal scrollbar will be appended to. + * */ igScroll(optionLiteral: 'option', optionName: "scrollbarHParent"): string; /** * Sets gets html or jQuery element to which the horizontal scrollbar will be appended to. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollbarHParent", optionValue: string): void; /** * Sets gets html or jQuery element to which the vertical scrollbar will be appended to. + * */ igScroll(optionLiteral: 'option', optionName: "scrollbarVParent"): string; /** * Sets gets html or jQuery element to which the vertical scrollbar will be appended to. * + * * @optionValue New value to be set. */ igScroll(optionLiteral: 'option', optionName: "scrollbarVParent", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igScroll(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igScroll(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igScroll(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igScroll(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igScroll(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igScroll(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised after the scroller has been rendered fully */ @@ -73345,6 +83621,3062 @@ interface JQuery { igScroll(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; igScroll(methodName: string, ...methodParams: any[]): any; } +interface IgShapeChart { + /** + * The triangulated file source URI or an instance of $.ig.ShapeDataSource. + */ + shapeDataSource?: string; + + /** + * String The database source URI. + */ + databaseSource?: string; + + /** + * The triangulated file source URI or an instance of $.ig.TriangulationDataSource. + */ + triangulationDataSource?: string; + + /** + * Gets or sets the id of a template element to use for tooltips, or markup representing the tooltip template. + */ + tooltipTemplate?: any; + + /** + * Gets or sets the names of tooltip templates + */ + tooltipTemplates?: any; + + /** + * Gets or sets the left margin of chart title + */ + titleLeftMargin?: number; + + /** + * Gets or sets the right margin of chart title + */ + titleRightMargin?: number; + + /** + * Gets or sets the top margin of chart title + */ + titleTopMargin?: number; + + /** + * Gets or sets the bottom margin of chart title + */ + titleBottomMargin?: number; + + /** + * Gets or sets the left margin of chart subtitle + */ + subtitleLeftMargin?: number; + + /** + * Gets or sets the top margin of chart subtitle + */ + subtitleTopMargin?: number; + + /** + * Gets or sets the right margin of chart subtitle + */ + subtitleRightMargin?: number; + + /** + * Gets or sets the bottom margin of chart subtitle + */ + subtitleBottomMargin?: number; + + /** + * Gets or sets color of chart subtitle + */ + subtitleTextColor?: string; + + /** + * Gets or sets color of chart title + */ + titleTextColor?: string; + + /** + * Gets or sets the left margin of the chart content. + */ + leftMargin?: number; + + /** + * Gets or sets the top margin of the chart content. + */ + topMargin?: number; + + /** + * Gets or sets the right margin of the chart content. + */ + rightMargin?: number; + + /** + * Gets or sets the bottom margin around the chart content. + */ + bottomMargin?: number; + + /** + * Gets or sets the duration used for animating series plots when the data is changing + */ + transitionDuration?: number; + + /** + * Gets or sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + transitionEasingFunction?: any; + + /** + * Gets or sets a function for creating wrapped tooltip + */ + createWrappedTooltip?: any; + + /** + * Gets or sets the widget of this control + */ + widget?: any; + + /** + * Gets or sets CSS font property for the chart subtitle + */ + subtitleTextStyle?: string; + + /** + * Gets or sets CSS font property for the chart title + */ + titleTextStyle?: string; + + /** + * Gets or sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + itemsSource?: any; + + /** + * Gets or sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + includedProperties?: any; + + /** + * Gets or sets a set of property paths that should be excluded from consideration by the category chart. + */ + excludedProperties?: any; + + /** + * Gets or sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + brushes?: any; + + /** + * Gets or sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + outlines?: any; + + /** + * Gets or sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + legend?: any; + + /** + * Gets or sets whether the chart can be horizontally zoomed through user interactions. + */ + isHorizontalZoomEnabled?: boolean; + + /** + * Gets or sets whether the chart can be vertically zoomed through user interactions. + */ + isVerticalZoomEnabled?: boolean; + + /** + * Gets or sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + windowRect?: any; + + /** + * Gets or sets text to display above the plot area. + */ + title?: string; + + /** + * Gets or sets text to display below the Title, above the plot area. + */ + subtitle?: string; + + /** + * Gets or sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + titleAlignment?: string; + + /** + * Gets or sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + subtitleAlignment?: string; + + /** + * Gets or sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * Valid values: + * "linearInterpolate" Plot the unknown value as the midpoint between surrounding known values using linear interpolation. + * "dontPlot" Do not plot the unknown value on the chart. + */ + unknownValuePlotting?: string; + + /** + * Gets or sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + resolution?: number; + + /** + * Gets or sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + thickness?: number; + + /** + * Gets or sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + markerTypes?: any; + + /** + * Gets or sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerBrushes?: any; + + /** + * Gets or sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + markerOutlines?: any; + + /** + * Gets or sets the maximum number of markers displyed in the plot area of the chart. + */ + markerMaxCount?: number; + + /** + * Gets or sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + trendLineBrushes?: any; + + /** + * Gets or sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * Valid values: + * "none" No trend line will be displayed. + * "linearFit" Linear fit. + * "quadraticFit" Quadratic polynomial fit. + * "cubicFit" Cubic polynomial fit. + * "quarticFit" Quartic polynomial fit. + * "quinticFit" Quintic polynomial fit. + * "logarithmicFit" Logarithmic fit. + * "exponentialFit" Exponential fit. + * "powerLawFit" Powerlaw fit. + * "simpleAverage" Simple moving average. + * "exponentialAverage" Exponential moving average. + * "modifiedAverage" Modified moving average. + * "cumulativeAverage" Cumulative moving average. + * "weightedAverage" Weighted moving average. + */ + trendLineType?: string; + + /** + * Gets or sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + trendLineThickness?: number; + + /** + * Gets or sets a value indicating whether grid and tick lines are aligned to device pixels. + */ + alignsGridLinesToPixels?: boolean; + trendLinePeriod?: number; + + /** + * Gets or sets function which takes an context object and returns a formatted label for the X-axis. + */ + xAxisFormatLabel?: any; + + /** + * Gets or sets function which takes a context object and returns a formatted label for the Y-axis. + */ + yAxisFormatLabel?: any; + + /** + * Gets or sets the left margin of labels on the X-axis + */ + xAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the X-axis + */ + xAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the X-axis + */ + xAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the X-axis + */ + xAxisLabelBottomMargin?: number; + + /** + * Gets or sets the left margin of labels on the Y-axis + */ + yAxisLabelLeftMargin?: number; + + /** + * Gets or sets the top margin of labels on the Y-axis + */ + yAxisLabelTopMargin?: number; + + /** + * Gets or sets the right margin of labels on the Y-axis + */ + yAxisLabelRightMargin?: number; + + /** + * Gets or sets the bottom margin of labels on the Y-axis + */ + yAxisLabelBottomMargin?: number; + + /** + * Gets or sets color of labels on the X-axis + */ + xAxisLabelTextColor?: string; + + /** + * Gets or sets color of labels on the Y-axis + */ + yAxisLabelTextColor?: string; + + /** + * Gets or sets the margin around a title on the X-axis + */ + xAxisTitleMargin?: number; + + /** + * Gets or sets the margin around a title on the Y-axis + */ + yAxisTitleMargin?: number; + + /** + * Gets or sets the left margin of a title on the X-axis + */ + xAxisTitleLeftMargin?: number; + + /** + * Gets or sets the left margin of a title on the Y-axis + */ + yAxisTitleLeftMargin?: number; + + /** + * Gets or sets the top margin of a title on the X-axis + */ + xAxisTitleTopMargin?: number; + + /** + * Gets or sets the top margin of a title on the Y-axis + */ + yAxisTitleTopMargin?: number; + + /** + * Gets or sets the right margin of a title on the X-axis + */ + xAxisTitleRightMargin?: number; + + /** + * Gets or sets the right margin of a title on the Y-axis + */ + yAxisTitleRightMargin?: number; + + /** + * Gets or sets the bottom margin of a title on the X-axis + */ + xAxisTitleBottomMargin?: number; + + /** + * Gets or sets the bottom margin of a title on the Y-axis + */ + yAxisTitleBottomMargin?: number; + + /** + * Gets or sets color of title on the X-axis + */ + xAxisTitleTextColor?: string; + + /** + * Gets or sets color of title on the Y-axis + */ + yAxisTitleTextColor?: string; + + /** + * Gets or sets CSS font property for labels on X-axis + */ + xAxisLabelTextStyle?: string; + + /** + * Gets or sets CSS font property for labels on Y-axis + */ + yAxisLabelTextStyle?: string; + + /** + * Gets or sets CSS font property for title on X-axis + */ + xAxisTitleTextStyle?: string; + + /** + * Gets or sets CSS font property for title on Y-axis + */ + yAxisTitleTextStyle?: string; + + /** + * Gets or sets the format for labels along the X-axis. + */ + xAxisLabel?: any; + + /** + * Gets or sets the format for labels along the Y-axis. + */ + yAxisLabel?: any; + + /** + * Gets or sets the color to apply to major gridlines along the X-axis. + */ + xAxisMajorStroke?: string; + + /** + * Gets or sets the color to apply to major gridlines along the Y-axis. + */ + yAxisMajorStroke?: string; + + /** + * Gets or sets the thickness to apply to major gridlines along the X-axis. + */ + xAxisMajorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to major gridlines along the Y-axis. + */ + yAxisMajorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to minor gridlines along the X-axis. + */ + xAxisMinorStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to minor gridlines along the Y-axis. + */ + yAxisMinorStrokeThickness?: number; + + /** + * Gets or sets the color to apply to stripes along the X-axis. + */ + xAxisStrip?: string; + + /** + * Gets or sets the color to apply to stripes along the Y-axis. + */ + yAxisStrip?: string; + + /** + * Gets or sets the color to apply to the X-axis line. + */ + xAxisStroke?: string; + + /** + * Gets or sets the color to apply to the Y-axis line. + */ + yAxisStroke?: string; + + /** + * Gets or sets the thickness to apply to the X-axis line. + */ + xAxisStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to the Y-axis line. + */ + yAxisStrokeThickness?: number; + + /** + * Gets or sets the length of tickmarks along the X-axis. + */ + xAxisTickLength?: number; + + /** + * Gets or sets the length of tickmarks along the Y-axis. + */ + yAxisTickLength?: number; + + /** + * Gets or sets the color to apply to tickmarks along the X-axis. + */ + xAxisTickStroke?: string; + + /** + * Gets or sets the color to apply to tickmarks along the Y-axis. + */ + yAxisTickStroke?: string; + + /** + * Gets or sets the thickness to apply to tickmarks along the X-axis. + */ + xAxisTickStrokeThickness?: number; + + /** + * Gets or sets the thickness to apply to tickmarks along the Y-axis. + */ + yAxisTickStrokeThickness?: number; + + /** + * Gets or sets the Text to display below the X-axis. + */ + xAxisTitle?: string; + + /** + * Gets or sets the Text to display to the left of the Y-axis. + */ + yAxisTitle?: string; + + /** + * Gets or sets the color to apply to minor gridlines along the X-axis. + */ + xAxisMinorStroke?: string; + + /** + * Gets or sets the color to apply to minor gridlines along the Y-axis. + */ + yAxisMinorStroke?: string; + + /** + * Gets or sets the angle of rotation for labels along the X-axis. + */ + xAxisLabelAngle?: number; + + /** + * Gets or sets the angle of rotation for labels along the Y-axis. + */ + yAxisLabelAngle?: number; + + /** + * Gets or sets the distance between the X-axis and the bottom of the chart. + */ + xAxisExtent?: number; + + /** + * Gets or sets the distance between the Y-axis and the left edge of the chart. + */ + yAxisExtent?: number; + + /** + * Gets or sets the angle of rotation for the X-axis title. + */ + xAxisTitleAngle?: number; + + /** + * Gets or sets the angle of rotation for the Y-axis title. + */ + yAxisTitleAngle?: number; + + /** + * Gets or sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + */ + xAxisInverted?: boolean; + + /** + * Gets or sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + */ + yAxisInverted?: boolean; + + /** + * Gets or sets Horizontal alignment of the X-axis title. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + xAxisTitleAlignment?: string; + + /** + * Gets or sets Vertical alignment of the Y-axis title. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + yAxisTitleAlignment?: string; + + /** + * Gets or sets Horizontal alignment of X-axis labels. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + xAxisLabelHorizontalAlignment?: string; + + /** + * Gets or sets Horizontal alignment of Y-axis labels. + * + * Valid values: + * "left" Align the item to the left + * "center" Center the item + * "right" Align the item to the right + * "stretch" Stretch the item to the full width + */ + yAxisLabelHorizontalAlignment?: string; + + /** + * Gets or sets Vertical alignment of X-axis labels. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + xAxisLabelVerticalAlignment?: string; + + /** + * Gets or sets Vertical alignment of Y-axis labels. + * + * Valid values: + * "top" Align the item to the top + * "center" Center the item + * "bottom" Align the item to the bottom + * "stretch" Stretch the item to the full height + */ + yAxisLabelVerticalAlignment?: string; + + /** + * Gets or sets Visibility of X-axis labels. + * + * Valid values: + * "visible" Display the element. + * "collapsed" Do not display the element. + */ + xAxisLabelVisibility?: string; + + /** + * Gets or sets Visibility of Y-axis labels. + * + * Valid values: + * "visible" Display the element. + * "collapsed" Do not display the element. + */ + yAxisLabelVisibility?: string; + + /** + * The location of Y-axis labels, relative to the plot area. + * + * Valid values: + * "outsideTop" Places the axis labels at the top, outside of the plotting area. + * "outsideBottom" Places the axis labels at the bottom, outside of the plotting area + * "outsideLeft" Places the axis labels to the left, outside of the plotting area. + * "outsideRight" Places the axis labels to the right, outside of the plotting area. + * "insideTop" Places the axis labels inside the plotting area above the axis line. + * "insideBottom" Places the axis labels inside the plotting area below the axis line. + * "insideLeft" Places the axis labels inside the plotting area and to the left of the axis line. + * "insideRight" Places the axis labels inside the plotting area and to the right of the axis line. + */ + yAxisLabelLocation?: string; + + /** + * Gets or sets the frequency of displayed labels along the X-axis. + * Gets or sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + */ + xAxisInterval?: number; + + /** + * Gets or sets the frequency of displayed minor lines along the X-axis. + * Gets or sets the set value is a factor that determines how the minor lines will be displayed. + */ + xAxisMinorInterval?: number; + + /** + * Gets or sets the distance between each label and grid line along the Y-axis. + */ + yAxisInterval?: number; + + /** + * Gets or sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + yAxisIsLogarithmic?: boolean; + + /** + * Gets or sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + yAxisLogarithmBase?: number; + + /** + * Gets or sets the data value corresponding to the minimum value of the Y-axis. + */ + yAxisMinimumValue?: number; + + /** + * Gets or sets the data value corresponding to the maximum value of the Y-axis. + */ + yAxisMaximumValue?: number; + + /** + * Gets or sets the frequency of displayed minor lines along the Y-axis. + */ + yAxisMinorInterval?: number; + + /** + * Gets or sets whether the X-axis will use a logarithmic scale, instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the X-axis minimum is greater than zero. + */ + xAxisIsLogarithmic?: boolean; + + /** + * Gets or sets the base value to use in the log function when mapping the position of data items along the X-axis. + * This property is effective only when y-axis is logarithmic + */ + xAxisLogarithmBase?: number; + + /** + * Gets or sets the data value corresponding to the minimum value on the X-axis. + */ + xAxisMinimumValue?: number; + + /** + * Gets or sets the data value corresponding to the maximum value on the X-axis. + */ + xAxisMaximumValue?: number; + + /** + * Gets or sets whether the large numbers on the X-axis labels are abbreviated. + */ + xAxisAbbreviateLargeNumbers?: boolean; + + /** + * Gets or sets whether the large numbers on the Y-axis labels are abbreviated. + */ + yAxisAbbreviateLargeNumbers?: boolean; + + /** + * Gets or sets collision avoidance between markers on series that support this behaviour. + * + * Valid values: + * "none" Collision avoidance is disabled. + * "omit" Items colliding with other items will be hidden from view. + * "fade" Items colliding with other items will be partially hidden from view by reducing their opacity. + * "omitAndShift" Items colliding with other items will be either hidden from view or moved to new positions. + * "fadeAndShift" Items colliding with other items will be either partially hidden from view by reducing their opacity, or moved to new positions, or a combination of both. + */ + markerCollision?: string; + + /** + * Gets or sets the type of chart series to generate from the data. + * + * Valid values: + * "auto" Specifies automatic selection of chart type based on suggestion from internal Data Adapter + * "point" Specifies point chart with small markers at X/Y data + * "line" Specifies line chart with small markers at X/Y data and connected with lines + * "spline" Specifies spline chart with small markers at X/Y data and connected with splines + * "bubble" Specifies bubble chart with proportional markers at X/Y data + * "highDensity" Specifies high density chart with colored bitmap pixels at X/Y data based on density of nearby points + * "area" Specifies area chart with colored surface based on a triangulation of X/Y data with numeric values assigned to each point. + * "contour" Specifies area chart with colored lines based on a triangulation of X/Y data with numeric values assigned to each point. + * "polygon" Specifies polygon chart with polygons defined by X/Y data + * "polyline" Specifies polyline chart with polylines defined by X/Y data + */ + chartType?: string; + + /** + * The width of the chart. + */ + width?: number; + + /** + * The height of the chart. + */ + height?: number; + + /** + * Gets sets maximum number of displayed records in chart. + */ + maxRecCount?: number; + + /** + * Gets sets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + */ + dataSource?: any; + + /** + * Gets sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + */ + dataSourceType?: string; + + /** + * Gets sets url which is used for sending JSON on request for remote data. + */ + dataSourceUrl?: string; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + */ + responseTotalRecCountKey?: string; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + */ + responseDataKey?: string; + + /** + * Event raised when a property value is changed on this chart + */ + propertyChanged?: PropertyChangedEvent; + + /** + * Event raised when a series is initialized and added to this chart. + */ + seriesAdded?: SeriesAddedEvent; + + /** + * Event raised when a series is removed from this chart. + */ + seriesRemoved?: SeriesRemovedEvent; + + /** + * Occurs when the pointer enters a Series. + */ + seriesPointerEnter?: SeriesPointerEnterEvent; + + /** + * Occurs when the pointer leaves a Series. + */ + seriesPointerLeave?: SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer moves over a Series. + */ + seriesPointerMove?: SeriesPointerMoveEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + seriesPointerDown?: SeriesPointerDownEvent; + + /** + * Occurs when the pointer is released over a Series. + */ + seriesPointerUp?: SeriesPointerUpEvent; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + dataBinding?: DataBindingEvent; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + dataBound?: DataBoundEvent; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + */ + updateTooltip?: UpdateTooltipEvent; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + */ + hideTooltip?: HideTooltipEvent; + + /** + * Option for igShapeChart + */ + [optionName: string]: any; +} +interface IgShapeChartMethods { + destroy(): void; + id(): void; + exportVisualData(): void; + + /** + * Find index of item within actual data used by chart. + * + * @param item The reference to item. + */ + findIndexOfItem(item: Object): number; + + /** + * Get item within actual data used by chart. That is similar to this.getData()[ index ]. + * + * @param index Index of data item. + */ + getDataItem(index: Object): Object; + + /** + * Get reference of actual data used by chart. + */ + getData(): any[]; + + /** + * Adds a new item to the data source and notifies the chart. + * + * @param item The item that we want to add to the data source. + */ + addItem(item: Object): Object; + + /** + * Inserts a new item to the data source and notifies the chart. + * + * @param item the new item that we want to insert in the data source. + * @param index The index in the data source where the new item will be inserted. + */ + insertItem(item: Object, index: number): Object; + + /** + * Deletes an item from the data source and notifies the chart. + * + * @param index The index in the data source from where the item will be been removed. + */ + removeItem(index: number): Object; + + /** + * Updates an item in the data source and notifies the chart. + * + * @param index The index of the item in the data source that we want to change. + * @param item The new item object that will be set in the data source. + */ + setItem(index: number, item: Object): Object; + + /** + * Notifies the chart that an item has been set in an associated data source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source that has been changed. + * @param newItem the new item that has been set in the collection. + * @param oldItem the old item that has been overwritten in the collection. + */ + notifySetItem(dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; + + /** + * Notifies the chart that the items have been cleared from an associated data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + */ + notifyClearItems(dataSource: Object): Object; + + /** + * Notifies the target axis or series that an item has been inserted at the specified index in its data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source where the new item has been inserted. + * @param newItem the new item that has been set in the collection. + */ + notifyInsertItem(dataSource: Object, index: number, newItem: Object): Object; + + /** + * Notifies the target axis or series that an item has been removed from the specified index in its data source. + * It's not necessary to notify more than one target of a change if they share the same items source. + * + * @param dataSource The data source in which the change happened. + * @param index The index in the items source from where the old item has been removed. + * @param oldItem the old item that has been removed from the collection. + */ + notifyRemoveItem(dataSource: Object, index: number, oldItem: Object): Object; + + /** + * Get reference to chart object. + */ + chart(): Object; + + /** + * Binds data to the chart + */ + dataBind(): void; + + /** + * Forces any pending deferred work to render on the chart before continuing + */ + flush(): void; +} +interface JQuery { + data(propertyName: "igShapeChart"): IgShapeChartMethods; +} + +interface JQuery { + igShapeChart(methodName: "destroy"): void; + igShapeChart(methodName: "id"): void; + igShapeChart(methodName: "exportVisualData"): void; + igShapeChart(methodName: "findIndexOfItem", item: Object): number; + igShapeChart(methodName: "getDataItem", index: Object): Object; + igShapeChart(methodName: "getData"): any[]; + igShapeChart(methodName: "addItem", item: Object): Object; + igShapeChart(methodName: "insertItem", item: Object, index: number): Object; + igShapeChart(methodName: "removeItem", index: number): Object; + igShapeChart(methodName: "setItem", index: number, item: Object): Object; + igShapeChart(methodName: "notifySetItem", dataSource: Object, index: number, newItem: Object, oldItem: Object): Object; + igShapeChart(methodName: "notifyClearItems", dataSource: Object): Object; + igShapeChart(methodName: "notifyInsertItem", dataSource: Object, index: number, newItem: Object): Object; + igShapeChart(methodName: "notifyRemoveItem", dataSource: Object, index: number, oldItem: Object): Object; + igShapeChart(methodName: "chart"): Object; + igShapeChart(methodName: "dataBind"): void; + igShapeChart(methodName: "flush"): void; + + /** + * The triangulated file source URI or an instance of $.ig.ShapeDataSource. + */ + igShapeChart(optionLiteral: 'option', optionName: "shapeDataSource"): string; + + /** + * The triangulated file source URI or an instance of $.ig.ShapeDataSource. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "shapeDataSource", optionValue: string): void; + + /** + * String The database source URI. + */ + igShapeChart(optionLiteral: 'option', optionName: "databaseSource"): string; + + /** + * String The database source URI. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "databaseSource", optionValue: string): void; + + /** + * The triangulated file source URI or an instance of $.ig.TriangulationDataSource. + */ + igShapeChart(optionLiteral: 'option', optionName: "triangulationDataSource"): string; + + /** + * The triangulated file source URI or an instance of $.ig.TriangulationDataSource. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "triangulationDataSource", optionValue: string): void; + + /** + * Gets the id of a template element to use for tooltips, or markup representing the tooltip template. + */ + igShapeChart(optionLiteral: 'option', optionName: "tooltipTemplate"): any; + + /** + * Sets the id of a template element to use for tooltips, or markup representing the tooltip template. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "tooltipTemplate", optionValue: any): void; + + /** + * Gets the names of tooltip templates + */ + igShapeChart(optionLiteral: 'option', optionName: "tooltipTemplates"): any; + + /** + * Sets the names of tooltip templates + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "tooltipTemplates", optionValue: any): void; + + /** + * Gets the left margin of chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleLeftMargin"): number; + + /** + * Sets the left margin of chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleLeftMargin", optionValue: number): void; + + /** + * Gets the right margin of chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleRightMargin"): number; + + /** + * Sets the right margin of chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleRightMargin", optionValue: number): void; + + /** + * Gets the top margin of chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTopMargin"): number; + + /** + * Sets the top margin of chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTopMargin", optionValue: number): void; + + /** + * Gets the bottom margin of chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleBottomMargin"): number; + + /** + * Sets the bottom margin of chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleBottomMargin", optionValue: number): void; + + /** + * Gets the left margin of chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleLeftMargin"): number; + + /** + * Sets the left margin of chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTopMargin"): number; + + /** + * Sets the top margin of chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTopMargin", optionValue: number): void; + + /** + * Gets the right margin of chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleRightMargin"): number; + + /** + * Sets the right margin of chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleBottomMargin"): number; + + /** + * Sets the bottom margin of chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleBottomMargin", optionValue: number): void; + + /** + * Gets color of chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTextColor"): string; + + /** + * Sets color of chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTextColor", optionValue: string): void; + + /** + * Gets color of chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTextColor"): string; + + /** + * Sets color of chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTextColor", optionValue: string): void; + + /** + * Gets the left margin of the chart content. + */ + igShapeChart(optionLiteral: 'option', optionName: "leftMargin"): number; + + /** + * Sets the left margin of the chart content. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "leftMargin", optionValue: number): void; + + /** + * Gets the top margin of the chart content. + */ + igShapeChart(optionLiteral: 'option', optionName: "topMargin"): number; + + /** + * Sets the top margin of the chart content. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "topMargin", optionValue: number): void; + + /** + * Gets the right margin of the chart content. + */ + igShapeChart(optionLiteral: 'option', optionName: "rightMargin"): number; + + /** + * Sets the right margin of the chart content. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "rightMargin", optionValue: number): void; + + /** + * Gets the bottom margin around the chart content. + */ + igShapeChart(optionLiteral: 'option', optionName: "bottomMargin"): number; + + /** + * Sets the bottom margin around the chart content. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "bottomMargin", optionValue: number): void; + + /** + * Gets the duration used for animating series plots when the data is changing + */ + igShapeChart(optionLiteral: 'option', optionName: "transitionDuration"): number; + + /** + * Sets the duration used for animating series plots when the data is changing + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "transitionDuration", optionValue: number): void; + + /** + * Gets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + */ + igShapeChart(optionLiteral: 'option', optionName: "transitionEasingFunction"): any; + + /** + * Sets the easing function used for animating series plots when the data is changing. + * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "transitionEasingFunction", optionValue: any): void; + + /** + * Gets a function for creating wrapped tooltip + */ + igShapeChart(optionLiteral: 'option', optionName: "createWrappedTooltip"): any; + + /** + * Sets a function for creating wrapped tooltip + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "createWrappedTooltip", optionValue: any): void; + + /** + * Gets the widget of this control + */ + igShapeChart(optionLiteral: 'option', optionName: "widget"): any; + + /** + * Sets the widget of this control + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "widget", optionValue: any): void; + + /** + * Gets CSS font property for the chart subtitle + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTextStyle"): string; + + /** + * Sets CSS font property for the chart subtitle + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitleTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for the chart title + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTextStyle"): string; + + /** + * Sets CSS font property for the chart title + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "titleTextStyle", optionValue: string): void; + + /** + * Gets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + */ + igShapeChart(optionLiteral: 'option', optionName: "itemsSource"): any; + + /** + * Sets a collection of data items used to generate the chart. + * The ItemsSource of this chart can be a list of objects containing one or more numeric properties. + * Additionally, if the objects in the list implement the IEnumerable interface, + * the Chart will attempt to delve into the sub-collections when reading through the data source. + * Databinding can be further configured by attributing the data item classes + * with the DataSeriesMemberIntentAttribute. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "itemsSource", optionValue: any): void; + + /** + * Gets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + */ + igShapeChart(optionLiteral: 'option', optionName: "includedProperties"): any; + + /** + * Sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "includedProperties", optionValue: any): void; + + /** + * Gets a set of property paths that should be excluded from consideration by the category chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "excludedProperties"): any; + + /** + * Sets a set of property paths that should be excluded from consideration by the category chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "excludedProperties", optionValue: any): void; + + /** + * Gets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igShapeChart(optionLiteral: 'option', optionName: "brushes"): any; + + /** + * Sets the palette of brushes to use for coloring the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "brushes", optionValue: any): void; + + /** + * Gets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igShapeChart(optionLiteral: 'option', optionName: "outlines"): any; + + /** + * Sets the palette of brushes to use for outlines on the chart series. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "outlines", optionValue: any): void; + + /** + * Gets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + */ + igShapeChart(optionLiteral: 'option', optionName: "legend"): any; + + /** + * Sets the legend to connect this chart to. + * When the legend property is set, the chart will use it to display information about its series. Legends can be shared by multiple chart controls. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "legend", optionValue: any): void; + + /** + * Gets whether the chart can be horizontally zoomed through user interactions. + */ + igShapeChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be horizontally zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "isHorizontalZoomEnabled", optionValue: boolean): void; + + /** + * Gets whether the chart can be vertically zoomed through user interactions. + */ + igShapeChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled"): boolean; + + /** + * Sets whether the chart can be vertically zoomed through user interactions. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "isVerticalZoomEnabled", optionValue: boolean): void; + + /** + * Gets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + */ + igShapeChart(optionLiteral: 'option', optionName: "windowRect"): any; + + /** + * Sets the rectangle representing the current scroll and zoom state of the chart. + * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1. + * The provided object should have numeric properties called left, top, width and height. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "windowRect", optionValue: any): void; + + /** + * Gets text to display above the plot area. + */ + igShapeChart(optionLiteral: 'option', optionName: "title"): string; + + /** + * Sets text to display above the plot area. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "title", optionValue: string): void; + + /** + * Gets text to display below the Title, above the plot area. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitle"): string; + + /** + * Sets text to display below the Title, above the plot area. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "subtitle", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the title position, relative to the left and right edges of the control. + */ + + igShapeChart(optionLiteral: 'option', optionName: "titleAlignment"): string; + + /** + * Sets horizontal alignment which determines the title position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "titleAlignment", optionValue: string): void; + + /** + * Gets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + */ + + igShapeChart(optionLiteral: 'option', optionName: "subtitleAlignment"): string; + + /** + * Sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "subtitleAlignment", optionValue: string): void; + + /** + * Gets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + */ + + igShapeChart(optionLiteral: 'option', optionName: "unknownValuePlotting"): string; + + /** + * Sets the behavior that determines how unknown values will be plotted on the chart.Null and Double.NaN are two examples of unknown values. + * + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "unknownValuePlotting", optionValue: string): void; + + /** + * Gets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + */ + igShapeChart(optionLiteral: 'option', optionName: "resolution"): number; + + /** + * Sets the rendering resolution for all series in this chart. + * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint. When Resolution = 0, all datapoints will be rendered as graphical objects. Charts with a higher resolution will have faster performance. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "resolution", optionValue: number): void; + + /** + * Gets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + */ + igShapeChart(optionLiteral: 'option', optionName: "thickness"): number; + + /** + * Sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "thickness", optionValue: number): void; + + /** + * Gets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + */ + igShapeChart(optionLiteral: 'option', optionName: "markerTypes"): any; + + /** + * Sets the marker shapes used for indicating location of data points in this chart. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerTypes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerBrushes"): any; + + /** + * Sets the palette of brushes used for rendering fill area of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerBrushes", optionValue: any): void; + + /** + * Gets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerOutlines"): any; + + /** + * Sets the palette of brushes used for rendering outlines of data point markers. + * This property applies only to these chart types: point, line, spline, bubble, and polygon + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerOutlines", optionValue: any): void; + + /** + * Gets the maximum number of markers displyed in the plot area of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerMaxCount"): number; + + /** + * Sets the maximum number of markers displyed in the plot area of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "markerMaxCount", optionValue: number): void; + + /** + * Gets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + */ + igShapeChart(optionLiteral: 'option', optionName: "trendLineBrushes"): any; + + /** + * Sets the palette of brushes to used for coloring trend lines in this chart. + * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection + * The value provided should be an array of css color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "trendLineBrushes", optionValue: any): void; + + /** + * Gets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + */ + + igShapeChart(optionLiteral: 'option', optionName: "trendLineType"): string; + + /** + * Sets the formula used for calculating trend lines in this chart.This property applies only to these chart types: point, line, spline, and bubble + * + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "trendLineType", optionValue: string): void; + + /** + * Gets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + */ + igShapeChart(optionLiteral: 'option', optionName: "trendLineThickness"): number; + + /** + * Sets the thickness of the trend lines in this chart. + * This property applies only to these chart types: point, line, spline, and bubble + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "trendLineThickness", optionValue: number): void; + + /** + * Gets a value indicating whether grid and tick lines are aligned to device pixels. + */ + igShapeChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels"): boolean; + + /** + * Sets a value indicating whether grid and tick lines are aligned to device pixels. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "alignsGridLinesToPixels", optionValue: boolean): void; + igShapeChart(optionLiteral: 'option', optionName: "trendLinePeriod"): number; + igShapeChart(optionLiteral: 'option', optionName: "trendLinePeriod", optionValue: number): void; + + /** + * Gets function which takes an context object and returns a formatted label for the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisFormatLabel"): any; + + /** + * Sets function which takes an context object and returns a formatted label for the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisFormatLabel", optionValue: any): void; + + /** + * Gets function which takes a context object and returns a formatted label for the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisFormatLabel"): any; + + /** + * Sets function which takes a context object and returns a formatted label for the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisFormatLabel", optionValue: any): void; + + /** + * Gets the left margin of labels on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets the left margin of labels on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin"): number; + + /** + * Sets the left margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of labels on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin"): number; + + /** + * Sets the top margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTopMargin", optionValue: number): void; + + /** + * Gets the right margin of labels on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin"): number; + + /** + * Sets the right margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of labels on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin"): number; + + /** + * Sets the bottom margin of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelBottomMargin", optionValue: number): void; + + /** + * Gets color of labels on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor"): string; + + /** + * Sets color of labels on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTextColor", optionValue: string): void; + + /** + * Gets color of labels on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor"): string; + + /** + * Sets color of labels on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTextColor", optionValue: string): void; + + /** + * Gets the margin around a title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleMargin"): number; + + /** + * Sets the margin around a title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleMargin", optionValue: number): void; + + /** + * Gets the margin around a title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleMargin"): number; + + /** + * Sets the margin around a title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleMargin", optionValue: number): void; + + /** + * Gets the left margin of a title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleLeftMargin"): number; + + /** + * Sets the left margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleLeftMargin", optionValue: number): void; + + /** + * Gets the left margin of a title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleLeftMargin"): number; + + /** + * Sets the left margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleLeftMargin", optionValue: number): void; + + /** + * Gets the top margin of a title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTopMargin"): number; + + /** + * Sets the top margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTopMargin", optionValue: number): void; + + /** + * Gets the top margin of a title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTopMargin"): number; + + /** + * Sets the top margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTopMargin", optionValue: number): void; + + /** + * Gets the right margin of a title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleRightMargin"): number; + + /** + * Sets the right margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleRightMargin", optionValue: number): void; + + /** + * Gets the right margin of a title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleRightMargin"): number; + + /** + * Sets the right margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleRightMargin", optionValue: number): void; + + /** + * Gets the bottom margin of a title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleBottomMargin"): number; + + /** + * Sets the bottom margin of a title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleBottomMargin", optionValue: number): void; + + /** + * Gets the bottom margin of a title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleBottomMargin"): number; + + /** + * Sets the bottom margin of a title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleBottomMargin", optionValue: number): void; + + /** + * Gets color of title on the X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTextColor"): string; + + /** + * Sets color of title on the X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTextColor", optionValue: string): void; + + /** + * Gets color of title on the Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTextColor"): string; + + /** + * Sets color of title on the Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTextColor", optionValue: string): void; + + /** + * Gets CSS font property for labels on X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTextStyle"): string; + + /** + * Sets CSS font property for labels on X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for labels on Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTextStyle"): string; + + /** + * Sets CSS font property for labels on Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for title on X-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle"): string; + + /** + * Sets CSS font property for title on X-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleTextStyle", optionValue: string): void; + + /** + * Gets CSS font property for title on Y-axis + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle"): string; + + /** + * Sets CSS font property for title on Y-axis + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleTextStyle", optionValue: string): void; + + /** + * Gets the format for labels along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabel"): any; + + /** + * Sets the format for labels along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabel", optionValue: any): void; + + /** + * Gets the format for labels along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabel"): any; + + /** + * Sets the format for labels along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabel", optionValue: any): void; + + /** + * Gets the color to apply to major gridlines along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMajorStroke"): string; + + /** + * Sets the color to apply to major gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMajorStroke", optionValue: string): void; + + /** + * Gets the color to apply to major gridlines along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMajorStroke"): string; + + /** + * Sets the color to apply to major gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMajorStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to major gridlines along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMajorStrokeThickness"): number; + + /** + * Sets the thickness to apply to major gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMajorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to major gridlines along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMajorStrokeThickness"): number; + + /** + * Sets the thickness to apply to major gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMajorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to minor gridlines along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorStrokeThickness"): number; + + /** + * Sets the thickness to apply to minor gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to minor gridlines along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorStrokeThickness"): number; + + /** + * Sets the thickness to apply to minor gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorStrokeThickness", optionValue: number): void; + + /** + * Gets the color to apply to stripes along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStrip"): string; + + /** + * Sets the color to apply to stripes along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStrip", optionValue: string): void; + + /** + * Gets the color to apply to stripes along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStrip"): string; + + /** + * Sets the color to apply to stripes along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStrip", optionValue: string): void; + + /** + * Gets the color to apply to the X-axis line. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStroke"): string; + + /** + * Sets the color to apply to the X-axis line. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStroke", optionValue: string): void; + + /** + * Gets the color to apply to the Y-axis line. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStroke"): string; + + /** + * Sets the color to apply to the Y-axis line. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to the X-axis line. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStrokeThickness"): number; + + /** + * Sets the thickness to apply to the X-axis line. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to the Y-axis line. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStrokeThickness"): number; + + /** + * Sets the thickness to apply to the Y-axis line. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisStrokeThickness", optionValue: number): void; + + /** + * Gets the length of tickmarks along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickLength"): number; + + /** + * Sets the length of tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickLength", optionValue: number): void; + + /** + * Gets the length of tickmarks along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickLength"): number; + + /** + * Sets the length of tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickLength", optionValue: number): void; + + /** + * Gets the color to apply to tickmarks along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickStroke"): string; + + /** + * Sets the color to apply to tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickStroke", optionValue: string): void; + + /** + * Gets the color to apply to tickmarks along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickStroke"): string; + + /** + * Sets the color to apply to tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickStroke", optionValue: string): void; + + /** + * Gets the thickness to apply to tickmarks along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickStrokeThickness"): number; + + /** + * Sets the thickness to apply to tickmarks along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTickStrokeThickness", optionValue: number): void; + + /** + * Gets the thickness to apply to tickmarks along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickStrokeThickness"): number; + + /** + * Sets the thickness to apply to tickmarks along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTickStrokeThickness", optionValue: number): void; + + /** + * Gets the Text to display below the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitle"): string; + + /** + * Sets the Text to display below the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitle", optionValue: string): void; + + /** + * Gets the Text to display to the left of the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitle"): string; + + /** + * Sets the Text to display to the left of the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitle", optionValue: string): void; + + /** + * Gets the color to apply to minor gridlines along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorStroke"): string; + + /** + * Sets the color to apply to minor gridlines along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorStroke", optionValue: string): void; + + /** + * Gets the color to apply to minor gridlines along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorStroke"): string; + + /** + * Sets the color to apply to minor gridlines along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorStroke", optionValue: string): void; + + /** + * Gets the angle of rotation for labels along the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelAngle"): number; + + /** + * Sets the angle of rotation for labels along the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelAngle", optionValue: number): void; + + /** + * Gets the angle of rotation for labels along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelAngle"): number; + + /** + * Sets the angle of rotation for labels along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelAngle", optionValue: number): void; + + /** + * Gets the distance between the X-axis and the bottom of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisExtent"): number; + + /** + * Sets the distance between the X-axis and the bottom of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisExtent", optionValue: number): void; + + /** + * Gets the distance between the Y-axis and the left edge of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisExtent"): number; + + /** + * Sets the distance between the Y-axis and the left edge of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisExtent", optionValue: number): void; + + /** + * Gets the angle of rotation for the X-axis title. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleAngle"): number; + + /** + * Sets the angle of rotation for the X-axis title. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleAngle", optionValue: number): void; + + /** + * Gets the angle of rotation for the Y-axis title. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleAngle"): number; + + /** + * Sets the angle of rotation for the Y-axis title. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleAngle", optionValue: number): void; + + /** + * Gets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisInverted"): boolean; + + /** + * Sets whether to invert the direction of the X-axis by placing the first data items on the right side of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisInverted", optionValue: boolean): void; + + /** + * Gets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisInverted"): boolean; + + /** + * Sets whether to invert the direction of the Y-axis by placing the minimum numeric value at the top of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisInverted", optionValue: boolean): void; + + /** + * Gets Horizontal alignment of the X-axis title. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment"): string; + + /** + * Sets Horizontal alignment of the X-axis title. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of the Y-axis title. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment"): string; + + /** + * Sets Vertical alignment of the Y-axis title. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisTitleAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of X-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Horizontal alignment of Y-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment"): string; + + /** + * Sets Horizontal alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelHorizontalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of X-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of X-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Vertical alignment of Y-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment"): string; + + /** + * Sets Vertical alignment of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelVerticalAlignment", optionValue: string): void; + + /** + * Gets Visibility of X-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility"): string; + + /** + * Sets Visibility of X-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "xAxisLabelVisibility", optionValue: string): void; + + /** + * Gets Visibility of Y-axis labels. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility"): string; + + /** + * Sets Visibility of Y-axis labels. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelVisibility", optionValue: string): void; + + /** + * The location of Y-axis labels, relative to the plot area. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelLocation"): string; + + /** + * The location of Y-axis labels, relative to the plot area. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "yAxisLabelLocation", optionValue: string): void; + + /** + * Gets the frequency of displayed labels along the X-axis. + * Gets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisInterval"): number; + + /** + * Sets the frequency of displayed labels along the X-axis. + * sets the set value is a factor that determines which labels will be hidden. For example, an interval of 2 will display every other label. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisInterval", optionValue: number): void; + + /** + * Gets the frequency of displayed minor lines along the X-axis. + * Gets the set value is a factor that determines how the minor lines will be displayed. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorInterval"): number; + + /** + * Sets the frequency of displayed minor lines along the X-axis. + * sets the set value is a factor that determines how the minor lines will be displayed. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinorInterval", optionValue: number): void; + + /** + * Gets the distance between each label and grid line along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisInterval"): number; + + /** + * Sets the distance between each label and grid line along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisInterval", optionValue: number): void; + + /** + * Gets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic"): boolean; + + /** + * Sets whether the Y-axis should use a logarithmic scale instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the Y-axis minimum is greater than zero. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisIsLogarithmic", optionValue: boolean): void; + + /** + * Gets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase"): number; + + /** + * Sets the base value to use in the log function when mapping the position of data items along the Y-axis. + * This property is effective only when YAxisIsLogarithmic is true. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisLogarithmBase", optionValue: number): void; + + /** + * Gets the data value corresponding to the minimum value of the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinimumValue"): number; + + /** + * Sets the data value corresponding to the minimum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinimumValue", optionValue: number): void; + + /** + * Gets the data value corresponding to the maximum value of the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMaximumValue"): number; + + /** + * Sets the data value corresponding to the maximum value of the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMaximumValue", optionValue: number): void; + + /** + * Gets the frequency of displayed minor lines along the Y-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorInterval"): number; + + /** + * Sets the frequency of displayed minor lines along the Y-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisMinorInterval", optionValue: number): void; + + /** + * Gets whether the X-axis will use a logarithmic scale, instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the X-axis minimum is greater than zero. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisIsLogarithmic"): boolean; + + /** + * Sets whether the X-axis will use a logarithmic scale, instead of a linear one. + * Since log(-1) is imaginary and log(0) is undefined, it is recommended to enable this property only when the X-axis minimum is greater than zero. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisIsLogarithmic", optionValue: boolean): void; + + /** + * Gets the base value to use in the log function when mapping the position of data items along the X-axis. + * This property is effective only when y-axis is logarithmic + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLogarithmBase"): number; + + /** + * Sets the base value to use in the log function when mapping the position of data items along the X-axis. + * This property is effective only when y-axis is logarithmic + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisLogarithmBase", optionValue: number): void; + + /** + * Gets the data value corresponding to the minimum value on the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinimumValue"): number; + + /** + * Sets the data value corresponding to the minimum value on the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMinimumValue", optionValue: number): void; + + /** + * Gets the data value corresponding to the maximum value on the X-axis. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMaximumValue"): number; + + /** + * Sets the data value corresponding to the maximum value on the X-axis. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisMaximumValue", optionValue: number): void; + + /** + * Gets whether the large numbers on the X-axis labels are abbreviated. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisAbbreviateLargeNumbers"): boolean; + + /** + * Sets whether the large numbers on the X-axis labels are abbreviated. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "xAxisAbbreviateLargeNumbers", optionValue: boolean): void; + + /** + * Gets whether the large numbers on the Y-axis labels are abbreviated. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers"): boolean; + + /** + * Sets whether the large numbers on the Y-axis labels are abbreviated. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "yAxisAbbreviateLargeNumbers", optionValue: boolean): void; + + /** + * Gets collision avoidance between markers on series that support this behaviour. + */ + + igShapeChart(optionLiteral: 'option', optionName: "markerCollision"): string; + + /** + * Sets collision avoidance between markers on series that support this behaviour. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "markerCollision", optionValue: string): void; + + /** + * Gets the type of chart series to generate from the data. + */ + + igShapeChart(optionLiteral: 'option', optionName: "chartType"): string; + + /** + * Sets the type of chart series to generate from the data. + * + * @optionValue New value to be set. + */ + + igShapeChart(optionLiteral: 'option', optionName: "chartType", optionValue: string): void; + + /** + * The width of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "width"): number; + + /** + * The width of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "width", optionValue: number): void; + + /** + * The height of the chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "height"): number; + + /** + * The height of the chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "height", optionValue: number): void; + + /** + * Gets maximum number of displayed records in chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "maxRecCount"): number; + + /** + * Sets maximum number of displayed records in chart. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "maxRecCount", optionValue: number): void; + + /** + * Gets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSource"): any; + + /** + * Sets a valid data source. + * That can be instance of array or primitives, array of objects, instance of $.ig.DataSource, or any other data accepted by $.ig.DataSource. + * Note: if it is set to string and "dataSourceType" option is not set, then $.ig.JSONPDataSource is used. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; + + /** + * Gets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSourceType"): string; + + /** + * Sets data source type (such as "json", "xml", etc). Please refer to the documentation of $.ig.DataSource and its type property + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; + + /** + * Gets url which is used for sending JSON on request for remote data. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSourceUrl"): string; + + /** + * Sets url which is used for sending JSON on request for remote data. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + */ + igShapeChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; + + /** + * See $.ig.DataSource. property in the response specifying the total number of records on the server. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "responseTotalRecCountKey", optionValue: string): void; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + */ + igShapeChart(optionLiteral: 'option', optionName: "responseDataKey"): string; + + /** + * See $.ig.DataSource. This is basically the property in the responses where data records are held, if the response is wrapped. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; + + /** + * Event raised when a property value is changed on this chart + */ + igShapeChart(optionLiteral: 'option', optionName: "propertyChanged"): PropertyChangedEvent; + + /** + * Event raised when a property value is changed on this chart + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "propertyChanged", optionValue: PropertyChangedEvent): void; + + /** + * Event raised when a series is initialized and added to this chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesAdded"): SeriesAddedEvent; + + /** + * Event raised when a series is initialized and added to this chart. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesAdded", optionValue: SeriesAddedEvent): void; + + /** + * Event raised when a series is removed from this chart. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesRemoved"): SeriesRemovedEvent; + + /** + * Event raised when a series is removed from this chart. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesRemoved", optionValue: SeriesRemovedEvent): void; + + /** + * Occurs when the pointer enters a Series. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerEnter"): SeriesPointerEnterEvent; + + /** + * Occurs when the pointer enters a Series. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerEnter", optionValue: SeriesPointerEnterEvent): void; + + /** + * Occurs when the pointer leaves a Series. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerLeave"): SeriesPointerLeaveEvent; + + /** + * Occurs when the pointer leaves a Series. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerLeave", optionValue: SeriesPointerLeaveEvent): void; + + /** + * Occurs when the pointer moves over a Series. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerMove"): SeriesPointerMoveEvent; + + /** + * Occurs when the pointer moves over a Series. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerMove", optionValue: SeriesPointerMoveEvent): void; + + /** + * Occurs when the pointer is pressed down over a Series. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerDown"): SeriesPointerDownEvent; + + /** + * Occurs when the pointer is pressed down over a Series. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerDown", optionValue: SeriesPointerDownEvent): void; + + /** + * Occurs when the pointer is released over a Series. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerUp"): SeriesPointerUpEvent; + + /** + * Occurs when the pointer is released over a Series. + * + * @optionValue New value to be set. + */ + igShapeChart(optionLiteral: 'option', optionName: "seriesPointerUp", optionValue: SeriesPointerUpEvent): void; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataBinding"): DataBindingEvent; + + /** + * Event which is raised before data binding. + * Return false in order to cancel data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataBinding", optionValue: DataBindingEvent): void; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataBound"): DataBoundEvent; + + /** + * Event which is raised after data binding. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.data to obtain reference to array actual data which is displayed by chart. + * Use ui.dataSource to obtain reference to instance of $.ig.DataSource. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "dataBound", optionValue: DataBoundEvent): void; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + */ + igShapeChart(optionLiteral: 'option', optionName: "updateTooltip"): UpdateTooltipEvent; + + /** + * Event which is raised before tooltip is updated. + * Return false in order to cancel updating and hide tooltip. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.text to obtain html of tooltip. Value of that member can be modified. If modified value is null or empty string, then current content of tooltip keeps old value. + * Use ui.item to obtain reference to item. Value of that member can be modified or replaced by custom item. + * Use ui.x to obtain left position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.y to obtain top position of tooltip in pixels relative to widget. Value of that member can be modified. + * Use ui.element to obtain reference to jquery object which represents tooltip. Value of that member can be replaced by custom element. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "updateTooltip", optionValue: UpdateTooltipEvent): void; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + */ + igShapeChart(optionLiteral: 'option', optionName: "hideTooltip"): HideTooltipEvent; + + /** + * Event which is raised before tooltip is hidden. + * Return false in order to cancel hiding and keep tooltip visible. + * Function takes first argument null and second argument ui. + * Use ui.owner to obtain reference to chart widget. + * Use ui.item to obtain reference to item. + * Use ui.element to obtain reference to jquery object which represents tooltip or value of ui.element from last updateTooltip event. Value of that member can be replaced by custom element. + * + * @optionValue Define event handler function. + */ + igShapeChart(optionLiteral: 'option', optionName: "hideTooltip", optionValue: HideTooltipEvent): void; + igShapeChart(options: IgShapeChart): JQuery; + igShapeChart(optionLiteral: 'option', optionName: string): any; + igShapeChart(optionLiteral: 'option', options: IgShapeChart): JQuery; + igShapeChart(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; + igShapeChart(methodName: string, ...methodParams: any[]): any; +} interface IgLoading { cssClass?: any; includeVerticalOffset?: boolean; @@ -75295,16 +88627,19 @@ interface IgSplitButtonItem { interface IgSplitButton { /** * Button items. + * */ items?: IgSplitButtonItem[]; /** * Default button item name. + * */ defaultItemName?: string; /** * Specifies whether the default button will be switched when another button is selected. + * */ swapDefaultEnabled?: boolean; @@ -75402,36 +88737,42 @@ interface JQuery { /** * Button items. + * */ igSplitButton(optionLiteral: 'option', optionName: "items"): IgSplitButtonItem[]; /** * Button items. * + * * @optionValue New value to be set. */ igSplitButton(optionLiteral: 'option', optionName: "items", optionValue: IgSplitButtonItem[]): void; /** * Default button item name. + * */ igSplitButton(optionLiteral: 'option', optionName: "defaultItemName"): string; /** * Default button item name. * + * * @optionValue New value to be set. */ igSplitButton(optionLiteral: 'option', optionName: "defaultItemName", optionValue: string): void; /** * Gets whether the default button will be switched when another button is selected. + * */ igSplitButton(optionLiteral: 'option', optionName: "swapDefaultEnabled"): boolean; /** * Sets whether the default button will be switched when another button is selected. * + * * @optionValue New value to be set. */ igSplitButton(optionLiteral: 'option', optionName: "swapDefaultEnabled", optionValue: boolean): void; @@ -75534,31 +88875,37 @@ interface JQuery { interface IgSplitterPanel { /** * Gets the size of the panel + * */ size?: string|number; /** * Gets the minimum size that the panel can have + * */ min?: string|number; /** * Gets the maximum size that the panel can have + * */ max?: string|number; /** * Gets whether the panel can be resized + * */ resizable?: boolean; /** * Gets whether the panel is initially collapsed + * */ collapsed?: boolean; /** * Gets whether the panel can be collapsed + * */ collapsible?: boolean; @@ -75616,6 +88963,7 @@ interface IgSplitter { /** * Gets/Sets the width of the container. * + * * Valid values: * "null" will stretch to fit data, if no other widths are defined. */ @@ -75624,6 +88972,7 @@ interface IgSplitter { /** * Gets/Sets the height of the container. * + * * Valid values: * "null" will fit the tree inside its parent container, if no other widths are defined. */ @@ -75632,6 +88981,7 @@ interface IgSplitter { /** * Specifies the orientation of the splitter. * + * * Valid values: * "vertical" * "horizontal" @@ -75640,19 +88990,40 @@ interface IgSplitter { /** * Array of objects options that specify the panels settings. The panels are no more than two. Settings are specified via enumeration. + * */ panels?: IgSplitterPanel[]; /** * Specifies drag delta of the split bar. In order to start dragging "move", the mouse has to be moved specific distance from its original position. + * */ dragDelta?: number; /** * Specifies whether the other splitters on the page will be resized as this splitter resizes. + * */ resizeOtherSplitters?: boolean; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired after collapsing is performed * @@ -75769,6 +89140,24 @@ interface IgSplitterMethods { * Destroys the igSplitter widget */ destroy(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igSplitter"): IgSplitterMethods; @@ -75784,9 +89173,13 @@ interface JQuery { igSplitter(methodName: "setFirstPanelSize", size: Object): void; igSplitter(methodName: "setSecondPanelSize", size: Object): void; igSplitter(methodName: "destroy"): void; + igSplitter(methodName: "changeLocale", $container: Object): void; + igSplitter(methodName: "changeGlobalLanguage"): void; + igSplitter(methodName: "changeGlobalRegional"): void; /** * Gets/Sets the width of the container. + * */ igSplitter(optionLiteral: 'option', optionName: "width"): string|number; @@ -75794,6 +89187,7 @@ interface JQuery { /** * /Sets the width of the container. * + * * @optionValue New value to be set. */ @@ -75801,6 +89195,7 @@ interface JQuery { /** * Gets/Sets the height of the container. + * */ igSplitter(optionLiteral: 'option', optionName: "height"): string|number; @@ -75808,6 +89203,7 @@ interface JQuery { /** * /Sets the height of the container. * + * * @optionValue New value to be set. */ @@ -75815,6 +89211,7 @@ interface JQuery { /** * Gets the orientation of the splitter. + * */ igSplitter(optionLiteral: 'option', optionName: "orientation"): string; @@ -75822,6 +89219,7 @@ interface JQuery { /** * Sets the orientation of the splitter. * + * * @optionValue New value to be set. */ @@ -75829,40 +89227,90 @@ interface JQuery { /** * Array of objects options that specify the panels settings. The panels are no more than two. Settings are specified via enumeration. + * */ igSplitter(optionLiteral: 'option', optionName: "panels"): IgSplitterPanel[]; /** * Array of objects options that specify the panels settings. The panels are no more than two. Settings are specified via enumeration. * + * * @optionValue New value to be set. */ igSplitter(optionLiteral: 'option', optionName: "panels", optionValue: IgSplitterPanel[]): void; /** * Gets drag delta of the split bar. In order to start dragging "move", the mouse has to be moved specific distance from its original position. + * */ igSplitter(optionLiteral: 'option', optionName: "dragDelta"): number; /** * Sets drag delta of the split bar. In order to start dragging "move", the mouse has to be moved specific distance from its original position. * + * * @optionValue New value to be set. */ igSplitter(optionLiteral: 'option', optionName: "dragDelta", optionValue: number): void; /** * Gets whether the other splitters on the page will be resized as this splitter resizes. + * */ igSplitter(optionLiteral: 'option', optionName: "resizeOtherSplitters"): boolean; /** * Sets whether the other splitters on the page will be resized as this splitter resizes. * + * * @optionValue New value to be set. */ igSplitter(optionLiteral: 'option', optionName: "resizeOtherSplitters", optionValue: boolean): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igSplitter(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igSplitter(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igSplitter(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igSplitter(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igSplitter(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igSplitter(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired after collapsing is performed * @@ -76029,6 +89477,27 @@ interface ActivePaneChangedEventUIParam { visibleRange?: string; } +interface ActiveTableChangedEvent { + (event: Event, ui: ActiveTableChangedEventUIParam): void; +} + +interface ActiveTableChangedEventUIParam { + /** + * Gets a reference to the spreadsheet widget. + */ + owner?: any; + + /** + * Gets the previous active [Table](ig.excel.WorksheetTable). + */ + oldActiveTable?: any; + + /** + * Gets the current active [Table](ig.excel.WorksheetTable). + */ + newActiveTable?: any; +} + interface ActiveWorksheetChangedEvent { (event: Event, ui: ActiveWorksheetChangedEventUIParam): void; } @@ -76253,6 +89722,7 @@ interface IgSpreadsheet { /** * The width of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). * + * * Valid values: * "string" The widget width can be set in pixels (px) and percentage (%). * "number" The widget width can be set as a number @@ -76262,6 +89732,7 @@ interface IgSpreadsheet { /** * The height of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number @@ -76270,6 +89741,7 @@ interface IgSpreadsheet { /** * Returns or sets the A1 format address of the current active cell within the selected worksheet. + * */ activeCell?: string; @@ -76279,31 +89751,37 @@ interface IgSpreadsheet { * if an arrow key is pressed while the scroll lock is enabled the cell area will be scrolled rather than changing * the active cell. Note: This property is not maintained/changed by the control. It is just queried when * performing actions that consider whether the scroll lock is enabled. + * */ isScrollLocked?: boolean; /** * Returns or sets the Worksheet from the workbook whose content should be displayed within the control. + * */ activeWorksheet?: any; /** * Returns or sets a boolean indicating whether the spreadsheet allows adding worksheets. + * */ allowAddWorksheet?: boolean; /** * Returns or sets a boolean indicating whether the spreadsheet allows deleting worksheets. + * */ allowDeleteWorksheet?: boolean; /** * Returns or sets a boolean indicating if the grid lines are displayed in the selected worksheets. + * */ areGridlinesVisible?: boolean; /** * Returns or sets a boolean indicating if the row and column headers are displayed for the selected worksheets. + * */ areHeadersVisible?: boolean; @@ -76311,6 +89789,7 @@ interface IgSpreadsheet { * Returns or sets an enumeration indicating the direction of the cell adjacent to the activeCell that should be activated when the enter key is pressed.This property is only used if the isEnterKeyNavigationEnabled is set to true. Also, the reverse direction is * navigated when Shift + Enter are pressed. * + * * Valid values: * "down" The cell below should be activated. * "right" The cell to the right should be activated @@ -76321,21 +89800,25 @@ interface IgSpreadsheet { /** * Returns or sets the number of decimal places by which a whole number typed in during edit mode should be adjusted when isFixedDecimalEnabled is true + * */ fixedDecimalPlaceCount?: number; /** * Returns or sets a boolean indicating whether the adjacent cell indicated by the enterKeyNavigationDirection should be navigated to when the enter key is pressed. + * */ isEnterKeyNavigationEnabled?: boolean; /** * Returns or sets a boolean indicating whether a fixed decimal place is automatically added when a whole number is entered while in edit mode. + * */ isFixedDecimalEnabled?: boolean; /** * Returns or sets a boolean indicating if the formula bar is displayed within the Spreadsheet. + * */ isFormulaBarVisible?: boolean; @@ -76345,22 +89828,26 @@ interface IgSpreadsheet { * end mode and one presses the right arrow, the activeCell will be changed to be the first cell to the right of the current ActiveCell * that has a value (even if the value is ""). If there were no cells to the right with a value then it would activate the right most cell in that row. End * mode will end automatically such as when one presses an arrow key. + * */ isInEndMode?: boolean; /** * Returns or sets a boolean indicating whether undo is enabled for the control. + * */ isUndoEnabled?: boolean; /** * Returns or sets the width of the name box within the formula bar. + * */ nameBoxWidth?: number; /** * Returns or sets a value indicating how the selection is updated when interacting with the cells via the mouse or keyboard. * + * * Valid values: * "normal" The selection is replaced when dragging the mouse to select a cell or range of cells. Similarly when navigating via the keyboard a new selection is created. One may add a new range by holding the Ctrl key and using the mouse and one may alter the selection range containing the active cell by holding the Shift key down while clicking with the mouse or navigating with the keyboard such as with the arrow keys. * "extendSelection" The selection range in the cellRanges representing the active cell is updated as one uses the mouse to select a cell or navigating via the keyboard. @@ -76370,6 +89857,7 @@ interface IgSpreadsheet { /** * Type="ig.excel.Worksheet[]" Returns or sets an array of the Worksheets whose tabs are selected. + * */ selectedWorksheets?: any; @@ -76382,26 +89870,31 @@ interface IgSpreadsheet { /** * Returns or sets the workbook whose information is displayed in the control. + * */ workbook?: any; /** * Returns or sets the magnification of the selected worksheets. + * */ zoomLevel?: number; /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; @@ -76425,6 +89918,11 @@ interface IgSpreadsheet { */ activePaneChanged?: ActivePaneChangedEvent; + /** + * Invoked when the activeTable of the Spreadsheet has changed. + */ + activeTableChanged?: ActiveTableChangedEvent; + /** * Invoked when the activeWorksheet of the Spreadsheet has changed. */ @@ -76499,6 +89997,11 @@ interface IgSpreadsheetMethods { */ getActivePane(): Object; + /** + * Returns an object that represents the pane with the focus. + */ + getActiveTable(): Object; + /** * Returns an object that represents the current selection of the active pane. */ @@ -76542,6 +90045,22 @@ interface IgSpreadsheetMethods { */ executeAction(action: Object): boolean; + /** + * Shows the filter dialog for the specified relative column of the [filterSettings](ig.excel.worksheet#methods:filterSettings) of the [activeWorksheet](ui.igspreadsheet#options:activeWorksheet). + * + * @param relativeColumnIndex A zero based column index relative to the [region](ig.excel.worksheetFilterSettings#methods:region) of the active worksheet. + * @param spreadsheetFilterDialogOption Optional enumeration that specifies the initial display of the filter dialog. + */ + showFilterDialogForWorksheet(relativeColumnIndex: number, spreadsheetFilterDialogOption: Object): void; + + /** + * Shows the filter dialog for the specified relative column of the [filterSettings](ig.excel.Worksheet#methods:filterSettings) of the [activeWorksheet](ui.igspreadsheet#options:activeWorksheet). + * + * @param worksheetTableColumn A [region](ig.excel.WorksheetTableColumn) whose filter is to be viewed or changed. + * @param spreadsheetFilterDialogOption Optional enumeration that specifies the initial display of the filter dialog. + */ + showFilterDialogForTable(worksheetTableColumn: Object, spreadsheetFilterDialogOption: Object): void; + /** * Forces any pending deferred work to render on the spreadsheet before continuing */ @@ -76557,7 +90076,15 @@ interface IgSpreadsheetMethods { * Notify the spreadsheet that style information used for rendering the spreadsheet may have been updated. */ styleUpdated(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ changeGlobalRegional(): void; } interface JQuery { @@ -76566,6 +90093,7 @@ interface JQuery { interface JQuery { igSpreadsheet(methodName: "getActivePane"): Object; + igSpreadsheet(methodName: "getActiveTable"): Object; igSpreadsheet(methodName: "getActiveSelection"): Object; igSpreadsheet(methodName: "getActiveSelectionCellRangeFormat"): Object; igSpreadsheet(methodName: "getCellEditMode"): Object; @@ -76573,6 +90101,8 @@ interface JQuery { igSpreadsheet(methodName: "getIsRenamingWorksheet"): boolean; igSpreadsheet(methodName: "getPanes"): void; igSpreadsheet(methodName: "executeAction", action: Object): boolean; + igSpreadsheet(methodName: "showFilterDialogForWorksheet", relativeColumnIndex: number, spreadsheetFilterDialogOption: Object): void; + igSpreadsheet(methodName: "showFilterDialogForTable", worksheetTableColumn: Object, spreadsheetFilterDialogOption: Object): void; igSpreadsheet(methodName: "flush"): void; igSpreadsheet(methodName: "destroy"): void; igSpreadsheet(methodName: "changeLocale", $container: Object): void; @@ -76582,6 +90112,7 @@ interface JQuery { /** * The width of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). + * */ igSpreadsheet(optionLiteral: 'option', optionName: "width"): string|number; @@ -76589,6 +90120,7 @@ interface JQuery { /** * The width of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). * + * * @optionValue New value to be set. */ @@ -76596,6 +90128,7 @@ interface JQuery { /** * The height of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). + * */ igSpreadsheet(optionLiteral: 'option', optionName: "height"): string|number; @@ -76603,6 +90136,7 @@ interface JQuery { /** * The height of the spreadsheet. It can be set as a number in pixels, string (px) or percentage (%). * + * * @optionValue New value to be set. */ @@ -76610,12 +90144,14 @@ interface JQuery { /** * Returns the A1 format address of the current active cell within the selected worksheet. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "activeCell"): string; /** * Returns or sets the A1 format address of the current active cell within the selected worksheet. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "activeCell", optionValue: string): void; @@ -76626,6 +90162,7 @@ interface JQuery { * if an arrow key is pressed while the scroll lock is enabled the cell area will be scrolled rather than changing * the active cell. Note: This property is not maintained/changed by the control. It is just queried when * performing actions that consider whether the scroll lock is enabled. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isScrollLocked"): boolean; @@ -76636,66 +90173,77 @@ interface JQuery { * the active cell. Note: This property is not maintained/changed by the control. It is just queried when * performing actions that consider whether the scroll lock is enabled. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isScrollLocked", optionValue: boolean): void; /** * Returns the Worksheet from the workbook whose content should be displayed within the control. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "activeWorksheet"): any; /** * Returns or sets the Worksheet from the workbook whose content should be displayed within the control. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "activeWorksheet", optionValue: any): void; /** * Returns a boolean indicating whether the spreadsheet allows adding worksheets. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "allowAddWorksheet"): boolean; /** * Returns or sets a boolean indicating whether the spreadsheet allows adding worksheets. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "allowAddWorksheet", optionValue: boolean): void; /** * Returns a boolean indicating whether the spreadsheet allows deleting worksheets. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "allowDeleteWorksheet"): boolean; /** * Returns or sets a boolean indicating whether the spreadsheet allows deleting worksheets. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "allowDeleteWorksheet", optionValue: boolean): void; /** * Returns a boolean indicating if the grid lines are displayed in the selected worksheets. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "areGridlinesVisible"): boolean; /** * Returns or sets a boolean indicating if the grid lines are displayed in the selected worksheets. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "areGridlinesVisible", optionValue: boolean): void; /** * Returns a boolean indicating if the row and column headers are displayed for the selected worksheets. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "areHeadersVisible"): boolean; /** * Returns or sets a boolean indicating if the row and column headers are displayed for the selected worksheets. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "areHeadersVisible", optionValue: boolean): void; @@ -76703,6 +90251,7 @@ interface JQuery { /** * Returns an enumeration indicating the direction of the cell adjacent to the activeCell that should be activated when the enter key is pressed.This property is only used if the isEnterKeyNavigationEnabled is set to true. Also, the reverse direction is * navigated when Shift + Enter are pressed. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "enterKeyNavigationDirection"): string; @@ -76711,6 +90260,7 @@ interface JQuery { * Returns or sets an enumeration indicating the direction of the cell adjacent to the activeCell that should be activated when the enter key is pressed.This property is only used if the isEnterKeyNavigationEnabled is set to true. Also, the reverse direction is * navigated when Shift + Enter are pressed. * + * * @optionValue New value to be set. */ @@ -76718,48 +90268,56 @@ interface JQuery { /** * Returns the number of decimal places by which a whole number typed in during edit mode should be adjusted when isFixedDecimalEnabled is true + * */ igSpreadsheet(optionLiteral: 'option', optionName: "fixedDecimalPlaceCount"): number; /** * Returns or sets the number of decimal places by which a whole number typed in during edit mode should be adjusted when isFixedDecimalEnabled is true * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "fixedDecimalPlaceCount", optionValue: number): void; /** * Returns a boolean indicating whether the adjacent cell indicated by the enterKeyNavigationDirection should be navigated to when the enter key is pressed. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isEnterKeyNavigationEnabled"): boolean; /** * Returns or sets a boolean indicating whether the adjacent cell indicated by the enterKeyNavigationDirection should be navigated to when the enter key is pressed. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isEnterKeyNavigationEnabled", optionValue: boolean): void; /** * Returns a boolean indicating whether a fixed decimal place is automatically added when a whole number is entered while in edit mode. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isFixedDecimalEnabled"): boolean; /** * Returns or sets a boolean indicating whether a fixed decimal place is automatically added when a whole number is entered while in edit mode. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isFixedDecimalEnabled", optionValue: boolean): void; /** * Returns a boolean indicating if the formula bar is displayed within the Spreadsheet. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isFormulaBarVisible"): boolean; /** * Returns or sets a boolean indicating if the formula bar is displayed within the Spreadsheet. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isFormulaBarVisible", optionValue: boolean): void; @@ -76770,6 +90328,7 @@ interface JQuery { * end mode and one presses the right arrow, the activeCell will be changed to be the first cell to the right of the current ActiveCell * that has a value (even if the value is ""). If there were no cells to the right with a value then it would activate the right most cell in that row. End * mode will end automatically such as when one presses an arrow key. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isInEndMode"): boolean; @@ -76780,36 +90339,42 @@ interface JQuery { * that has a value (even if the value is ""). If there were no cells to the right with a value then it would activate the right most cell in that row. End * mode will end automatically such as when one presses an arrow key. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isInEndMode", optionValue: boolean): void; /** * Returns a boolean indicating whether undo is enabled for the control. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "isUndoEnabled"): boolean; /** * Returns or sets a boolean indicating whether undo is enabled for the control. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "isUndoEnabled", optionValue: boolean): void; /** * Returns the width of the name box within the formula bar. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "nameBoxWidth"): number; /** * Returns or sets the width of the name box within the formula bar. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "nameBoxWidth", optionValue: number): void; /** * Returns a value indicating how the selection is updated when interacting with the cells via the mouse or keyboard. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "selectionMode"): string; @@ -76817,6 +90382,7 @@ interface JQuery { /** * Returns or sets a value indicating how the selection is updated when interacting with the cells via the mouse or keyboard. * + * * @optionValue New value to be set. */ @@ -76824,12 +90390,14 @@ interface JQuery { /** * Type="ig.excel.Worksheet[]" Returns an array of the Worksheets whose tabs are selected. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "selectedWorksheets"): any; /** * Type="ig.excel.Worksheet[]" Returns or sets an array of the Worksheets whose tabs are selected. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "selectedWorksheets", optionValue: any): void; @@ -76852,54 +90420,63 @@ interface JQuery { /** * Returns the workbook whose information is displayed in the control. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "workbook"): any; /** * Returns or sets the workbook whose information is displayed in the control. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "workbook", optionValue: any): void; /** * Returns the magnification of the selected worksheets. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "zoomLevel"): number; /** * Returns or sets the magnification of the selected worksheets. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "zoomLevel", optionValue: number): void; /** * Set/Get the locale setting for the widget. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igSpreadsheet(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igSpreadsheet(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -76907,6 +90484,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -76960,6 +90538,18 @@ interface JQuery { */ igSpreadsheet(optionLiteral: 'option', optionName: "activePaneChanged", optionValue: ActivePaneChangedEvent): void; + /** + * Invoked when the activeTable of the Spreadsheet has changed. + */ + igSpreadsheet(optionLiteral: 'option', optionName: "activeTableChanged"): ActiveTableChangedEvent; + + /** + * Invoked when the activeTable of the Spreadsheet has changed. + * + * @optionValue New value to be set. + */ + igSpreadsheet(optionLiteral: 'option', optionName: "activeTableChanged", optionValue: ActiveTableChangedEvent): void; + /** * Invoked when the activeWorksheet of the Spreadsheet has changed. */ @@ -77141,21 +90731,25 @@ interface IgTileManagerSplitterOptionsEvents { interface IgTileManagerSplitterOptions { /** * Gets/Sets whether the splitter should be enabled. + * */ enabled?: boolean; /** * Gets whether the splitter can be collapsible. + * */ collapsible?: boolean; /** * Gets whether the splitter should be initially collapsed. + * */ collapsed?: boolean; /** * Gets/Sets splitter events. + * */ events?: IgTileManagerSplitterOptionsEvents; @@ -77273,6 +90867,7 @@ interface TileMinimizedEventUIParam { interface IgTileManager { /** + * * * Valid values: * "string" The container width can be set in pixels (px) and percentage (%). @@ -77283,6 +90878,7 @@ interface IgTileManager { /** * Gets/Sets the height of the container. * + * * Valid values: * "string" The height width can be set in pixels (px) and percentage (%). * "number" The height width can be set as a number in pixels. @@ -77293,6 +90889,7 @@ interface IgTileManager { /** * Gets/Sets the width of each column in the container. * + * * Valid values: * "string" The column width can be set in pixels (px), percentage (%) or asterisk (*) which will distribute all the width between all the columns equally. * "number" The column width can be set as a number representing value in pixels. @@ -77304,6 +90901,7 @@ interface IgTileManager { /** * Gets/Sets the height of each column in the container. * + * * Valid values: * "string" The column height can be set in pixels (px), percentage (%) or asterisk (*) which will distribute all the height between all the columns equally. * "number" The column height can be set as a number representing value in pixels. @@ -77315,6 +90913,7 @@ interface IgTileManager { /** * Gets/Sets the columns count in the container. * + * * Valid values: * "null" The column count will be automatically calculated. * "number" The column count can be set as a number. @@ -77324,6 +90923,7 @@ interface IgTileManager { /** * Gets/Sets the rows count in the container. * + * * Valid values: * "number" The row count can be set as a number. * "null" The row count will be automatically calculated. @@ -77346,12 +90946,14 @@ interface IgTileManager { /** * Gets/Sets whether the items will rearrange when the container is resized. + * */ rearrangeItems?: boolean; /** * Gets/Sets the tiles configurations. Every tile is described by rowSpan, colSpan, rowIndex and colIndex. * + * * Valid values: * "array" An array with colSpan, rowSpan, colIndex, rowIndex configurations for each tile. * "null" Default tile configurations of rowSpan: 1 and colSpan: 1 will be used. @@ -77360,12 +90962,14 @@ interface IgTileManager { /** * Specifies any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. + * */ dataSource?: any; /** * Gets/Sets the content of the tiles in minimized state. * + * * Valid values: * "string" When initializing on html markup provide jQuery selector specifying what content of the tile to be shown in minimized state. When initializing on data source provide igTemplate that will be rendered for the minimized state. * "null" The whole content of the tile will be visible in minimized state. @@ -77375,6 +90979,7 @@ interface IgTileManager { /** * Gets/Sets the content of the tiles in maximized state. * + * * Valid values: * "string" When initializing on html markup provide jQuery selector specifying which elements of the tile to be shown in maximized state. When initializing on data source provide igTemplate that will be rendered for the maximized state. * "null" The whole content of the tile will be visible in maximized state. @@ -77384,6 +90989,7 @@ interface IgTileManager { /** * Gets/Sets the index of which items configuration will be used for positioning and sizing of the maximized tile. * + * * Valid values: * "number" The maximizedTileindex can be set as a number. * "null" Option is ignored. @@ -77393,6 +90999,7 @@ interface IgTileManager { /** * Gets/Sets how many columns to be displayed in the right panel when the tiles are minimized. * + * * Valid values: * "number" Set the number of right panel columns as a number. The minimum value is 1. * "null" Default of 1 column will be used. @@ -77402,6 +91009,7 @@ interface IgTileManager { /** * Gets/Sets the width of the minimized tiles in the right panel. * + * * Valid values: * "number" Set the width of the minimized tiles as a number. * "null" Default value equal to the column width will be used. @@ -77411,6 +91019,7 @@ interface IgTileManager { /** * Gets/Sets the height of the minimized tiles in the right panel. * + * * Valid values: * "number" Set the height of the minimized tiles as a number. * "null" Default value equal to the column height will be used. @@ -77419,32 +91028,38 @@ interface IgTileManager { /** * Gets/Sets whether the right panel should show scrollbar when tiles are overflowing. + * */ showRightPanelScroll?: boolean; /** * Configure the container variable representation, which defines splitter functionality. + * */ splitterOptions?: IgTileManagerSplitterOptions; /** * Gets/Sets JQuery selector that specifies which elements will not trigger maximizing when clicked on. + * */ preventMaximizingSelector?: string; /** * Gets/Sets the duration of the animations in the tile manager. + * */ animationDuration?: number; /** * Specifies a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. + * */ dataSourceUrl?: string; /** * Property in the response which specifies where the data records array will be held (if the response is wrapped). See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). * + * * Valid values: * "string" Specifies the name of the property in which data records are held if the response is wrapped. * "null" Option is ignored. @@ -77454,6 +91069,7 @@ interface IgTileManager { /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. * + * * Valid values: * "string" Explicitly set data source type (such as "json"). Please refer to the documentation of $.ig.DataSource and its type property. * "null" Option is ignored. @@ -77462,19 +91078,40 @@ interface IgTileManager { /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. + * */ dataSourceType?: string; /** * Specifies the HTTP request method. + * */ requestType?: string; /** * Gets/Sets the HTTP content type for the response object. See [Perform an asynchronous HTTP (Ajax) request](http://api.jquery.com/jQuery.ajax/). + * */ responseContentType?: string; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired before databinding is performed * @@ -77639,6 +91276,24 @@ interface IgTileManagerMethods { * Deletes the widget instance (client object). It is no longer accessible and all its event handlers stop working. Destroys all child widgets. Removes auto-generated HTML content, which is outside the widget, e.g. detached popups, dropdowns, etc. */ destroy(): Object; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igTileManager"): IgTileManagerMethods; @@ -77655,6 +91310,9 @@ interface JQuery { igTileManager(methodName: "widget"): Object; igTileManager(methodName: "dataBind"): void; igTileManager(methodName: "destroy"): Object; + igTileManager(methodName: "changeLocale", $container: Object): void; + igTileManager(methodName: "changeGlobalLanguage"): void; + igTileManager(methodName: "changeGlobalRegional"): void; /** * * @@ -77672,6 +91330,7 @@ interface JQuery { /** * Gets/Sets the height of the container. + * */ igTileManager(optionLiteral: 'option', optionName: "height"): string|number; @@ -77679,6 +91338,7 @@ interface JQuery { /** * /Sets the height of the container. * + * * @optionValue New value to be set. */ @@ -77686,6 +91346,7 @@ interface JQuery { /** * Gets/Sets the width of each column in the container. + * */ igTileManager(optionLiteral: 'option', optionName: "columnWidth"): string|number|Array; @@ -77693,6 +91354,7 @@ interface JQuery { /** * /Sets the width of each column in the container. * + * * @optionValue New value to be set. */ @@ -77700,6 +91362,7 @@ interface JQuery { /** * Gets/Sets the height of each column in the container. + * */ igTileManager(optionLiteral: 'option', optionName: "columnHeight"): string|number|Array; @@ -77707,6 +91370,7 @@ interface JQuery { /** * /Sets the height of each column in the container. * + * * @optionValue New value to be set. */ @@ -77714,6 +91378,7 @@ interface JQuery { /** * Gets/Sets the columns count in the container. + * */ igTileManager(optionLiteral: 'option', optionName: "cols"): number; @@ -77721,6 +91386,7 @@ interface JQuery { /** * /Sets the columns count in the container. * + * * @optionValue New value to be set. */ @@ -77728,6 +91394,7 @@ interface JQuery { /** * Gets/Sets the rows count in the container. + * */ igTileManager(optionLiteral: 'option', optionName: "rows"): number; @@ -77735,6 +91402,7 @@ interface JQuery { /** * /Sets the rows count in the container. * + * * @optionValue New value to be set. */ @@ -77774,18 +91442,21 @@ interface JQuery { /** * Gets/Sets whether the items will rearrange when the container is resized. + * */ igTileManager(optionLiteral: 'option', optionName: "rearrangeItems"): boolean; /** * /Sets whether the items will rearrange when the container is resized. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "rearrangeItems", optionValue: boolean): void; /** * Gets/Sets the tiles configurations. Every tile is described by rowSpan, colSpan, rowIndex and colIndex. + * */ igTileManager(optionLiteral: 'option', optionName: "items"): Object; @@ -77793,6 +91464,7 @@ interface JQuery { /** * /Sets the tiles configurations. Every tile is described by rowSpan, colSpan, rowIndex and colIndex. * + * * @optionValue New value to be set. */ @@ -77800,18 +91472,21 @@ interface JQuery { /** * Gets any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. + * */ igTileManager(optionLiteral: 'option', optionName: "dataSource"): any; /** * Sets any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an [$.ig.DataSource](ig.datasource) itself. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; /** * Gets/Sets the content of the tiles in minimized state. + * */ igTileManager(optionLiteral: 'option', optionName: "minimizedState"): string; @@ -77819,6 +91494,7 @@ interface JQuery { /** * /Sets the content of the tiles in minimized state. * + * * @optionValue New value to be set. */ @@ -77826,6 +91502,7 @@ interface JQuery { /** * Gets/Sets the content of the tiles in maximized state. + * */ igTileManager(optionLiteral: 'option', optionName: "maximizedState"): string; @@ -77833,6 +91510,7 @@ interface JQuery { /** * /Sets the content of the tiles in maximized state. * + * * @optionValue New value to be set. */ @@ -77840,6 +91518,7 @@ interface JQuery { /** * Gets/Sets the index of which items configuration will be used for positioning and sizing of the maximized tile. + * */ igTileManager(optionLiteral: 'option', optionName: "maximizedTileIndex"): number; @@ -77847,6 +91526,7 @@ interface JQuery { /** * /Sets the index of which items configuration will be used for positioning and sizing of the maximized tile. * + * * @optionValue New value to be set. */ @@ -77854,6 +91534,7 @@ interface JQuery { /** * Gets/Sets how many columns to be displayed in the right panel when the tiles are minimized. + * */ igTileManager(optionLiteral: 'option', optionName: "rightPanelCols"): number; @@ -77861,6 +91542,7 @@ interface JQuery { /** * /Sets how many columns to be displayed in the right panel when the tiles are minimized. * + * * @optionValue New value to be set. */ @@ -77868,6 +91550,7 @@ interface JQuery { /** * Gets/Sets the width of the minimized tiles in the right panel. + * */ igTileManager(optionLiteral: 'option', optionName: "rightPanelTilesWidth"): number; @@ -77875,6 +91558,7 @@ interface JQuery { /** * /Sets the width of the minimized tiles in the right panel. * + * * @optionValue New value to be set. */ @@ -77882,6 +91566,7 @@ interface JQuery { /** * Gets/Sets the height of the minimized tiles in the right panel. + * */ igTileManager(optionLiteral: 'option', optionName: "rightPanelTilesHeight"): number; @@ -77889,6 +91574,7 @@ interface JQuery { /** * /Sets the height of the minimized tiles in the right panel. * + * * @optionValue New value to be set. */ @@ -77896,66 +91582,77 @@ interface JQuery { /** * Gets/Sets whether the right panel should show scrollbar when tiles are overflowing. + * */ igTileManager(optionLiteral: 'option', optionName: "showRightPanelScroll"): boolean; /** * /Sets whether the right panel should show scrollbar when tiles are overflowing. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "showRightPanelScroll", optionValue: boolean): void; /** * Configure the container variable representation, which defines splitter functionality. + * */ igTileManager(optionLiteral: 'option', optionName: "splitterOptions"): IgTileManagerSplitterOptions; /** * Configure the container variable representation, which defines splitter functionality. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "splitterOptions", optionValue: IgTileManagerSplitterOptions): void; /** * Gets/Sets JQuery selector that specifies which elements will not trigger maximizing when clicked on. + * */ igTileManager(optionLiteral: 'option', optionName: "preventMaximizingSelector"): string; /** * /Sets JQuery selector that specifies which elements will not trigger maximizing when clicked on. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "preventMaximizingSelector", optionValue: string): void; /** * Gets/Sets the duration of the animations in the tile manager. + * */ igTileManager(optionLiteral: 'option', optionName: "animationDuration"): number; /** * /Sets the duration of the animations in the tile manager. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; /** * Gets a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. + * */ igTileManager(optionLiteral: 'option', optionName: "dataSourceUrl"): string; /** * Sets a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; /** * Property in the response which specifies where the data records array will be held (if the response is wrapped). See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). + * */ igTileManager(optionLiteral: 'option', optionName: "responseDataKey"): string; @@ -77963,6 +91660,7 @@ interface JQuery { /** * Property in the response which specifies where the data records array will be held (if the response is wrapped). See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). * + * * @optionValue New value to be set. */ @@ -77970,6 +91668,7 @@ interface JQuery { /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. + * */ igTileManager(optionLiteral: 'option', optionName: "responseDataType"): string; @@ -77977,6 +91676,7 @@ interface JQuery { /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. * + * * @optionValue New value to be set. */ @@ -77984,40 +91684,90 @@ interface JQuery { /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. + * */ igTileManager(optionLiteral: 'option', optionName: "dataSourceType"): string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type) and its type property. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; /** * Gets the HTTP request method. + * */ igTileManager(optionLiteral: 'option', optionName: "requestType"): string; /** * Sets the HTTP request method. * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Gets/Sets the HTTP content type for the response object. See [Perform an asynchronous HTTP (Ajax) request](http://api.jquery.com/jQuery.ajax/). + * */ igTileManager(optionLiteral: 'option', optionName: "responseContentType"): string; /** * /Sets the HTTP content type for the response object. See [Perform an asynchronous HTTP (Ajax) request](http://api.jquery.com/jQuery.ajax/). * + * * @optionValue New value to be set. */ igTileManager(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igTileManager(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTileManager(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igTileManager(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTileManager(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igTileManager(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igTileManager(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired before databinding is performed * @@ -78234,11 +91984,13 @@ interface JQuery { interface IgToolbarLocale { /** * Gets/Sets collapse button title. + * */ collapseButtonTitle?: any; /** * Gets/Sets expand button title. + * */ expandButtonTitle?: any; @@ -78305,50 +92057,71 @@ interface WindowResizedEventUIParam {} interface IgToolbar { /** * Set/Get the widget height. + * */ height?: any; /** * Set/Get the widget width. + * */ width?: any; /** * Get/Set whether the toolbar can be collapsed. + * */ allowCollapsing?: boolean; /** * The css class that will be applied to collapseButtonIcon. + * */ collapseButtonIcon?: string; /** * The css class that will be applied to the expand/collapse button icon. + * */ expandButtonIcon?: string; /** * Formal name of the widget. + * */ name?: string; /** * Display Name of the widget. + * */ displayName?: string; /** * Get/Set Toolbar's items. + * */ items?: any[]; /** * Get/Set whether the widget is expanded initially. + * */ isExpanded?: boolean; locale?: IgToolbarLocale; + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired after a click on any toolbar button */ @@ -78472,6 +92245,16 @@ interface IgToolbarMethods { * Destroy the widget. */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igToolbar"): IgToolbarMethods; @@ -78487,117 +92270,167 @@ interface JQuery { igToolbar(methodName: "activateItem", index: Object, activated: Object): void; igToolbar(methodName: "deactivateAll"): void; igToolbar(methodName: "destroy"): void; + igToolbar(methodName: "changeGlobalLanguage"): void; + igToolbar(methodName: "changeGlobalRegional"): void; /** * Set/Get the widget height. + * */ igToolbar(optionLiteral: 'option', optionName: "height"): any; /** * Set/Get the widget height. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "height", optionValue: any): void; /** * Set/Get the widget width. + * */ igToolbar(optionLiteral: 'option', optionName: "width"): any; /** * Set/Get the widget width. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "width", optionValue: any): void; /** * Get/Set whether the toolbar can be collapsed. + * */ igToolbar(optionLiteral: 'option', optionName: "allowCollapsing"): boolean; /** * Get/Set whether the toolbar can be collapsed. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "allowCollapsing", optionValue: boolean): void; /** * The css class that will be applied to collapseButtonIcon. + * */ igToolbar(optionLiteral: 'option', optionName: "collapseButtonIcon"): string; /** * The css class that will be applied to collapseButtonIcon. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "collapseButtonIcon", optionValue: string): void; /** * The css class that will be applied to the expand/collapse button icon. + * */ igToolbar(optionLiteral: 'option', optionName: "expandButtonIcon"): string; /** * The css class that will be applied to the expand/collapse button icon. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "expandButtonIcon", optionValue: string): void; /** * Formal name of the widget. + * */ igToolbar(optionLiteral: 'option', optionName: "name"): string; /** * Formal name of the widget. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "name", optionValue: string): void; /** * Display Name of the widget. + * */ igToolbar(optionLiteral: 'option', optionName: "displayName"): string; /** * Display Name of the widget. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "displayName", optionValue: string): void; /** * Get/Set Toolbar's items. + * */ igToolbar(optionLiteral: 'option', optionName: "items"): any[]; /** * Get/Set Toolbar's items. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "items", optionValue: any[]): void; /** * Get/Set whether the widget is expanded initially. + * */ igToolbar(optionLiteral: 'option', optionName: "isExpanded"): boolean; /** * Get/Set whether the widget is expanded initially. * + * * @optionValue New value to be set. */ igToolbar(optionLiteral: 'option', optionName: "isExpanded", optionValue: boolean): void; igToolbar(optionLiteral: 'option', optionName: "locale"): IgToolbarLocale; igToolbar(optionLiteral: 'option', optionName: "locale", optionValue: IgToolbarLocale): void; + /** + * Set/Get the locale language setting for the widget. + * + */ + igToolbar(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igToolbar(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igToolbar(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igToolbar(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired after a click on any toolbar button */ @@ -78806,11 +92639,13 @@ interface DeactivatedEventUIParam { interface IgToolbarButton { /** * Enable/Disable the "Toggling" of a button. + * */ allowToggling?: boolean; /** * Get/Set whether the toolbar button is selected. + * */ isSelected?: boolean; @@ -78855,11 +92690,15 @@ interface IgToolbarButtonMethods { /** * Activate toolbar button + * + * @param event */ activate(event: Object): void; /** * Deactivate toolbar button + * + * @param event */ deactivate(event: Object): void; @@ -78886,24 +92725,28 @@ interface JQuery { /** * Gets the "Toggling" of a button. + * */ igToolbarButton(optionLiteral: 'option', optionName: "allowToggling"): boolean; /** * Enable/Disable the "Toggling" of a button. * + * * @optionValue New value to be set. */ igToolbarButton(optionLiteral: 'option', optionName: "allowToggling", optionValue: boolean): void; /** * Get/Set whether the toolbar button is selected. + * */ igToolbarButton(optionLiteral: 'option', optionName: "isSelected"): boolean; /** * Get/Set whether the toolbar button is selected. * + * * @optionValue New value to be set. */ igToolbarButton(optionLiteral: 'option', optionName: "isSelected", optionValue: boolean): void; @@ -78987,53 +92830,63 @@ interface IgTreeBindingsBindings { interface IgTreeBindings { /** * Gets the name of the data source property the value of which would be the node text. + * */ textKey?: string; /** * Gets the XPath to the text attribute/node. Used in client-only binding directly to XML. + * */ textXPath?: string; /** * Gets the name of the data source property the value of which would be the node value. + * */ valueKey?: string; /** * Gets the XPath to the value attribute/node. Used in client-only binding directly to XML. + * */ valueXPath?: string; /** * Gets the name of the data source property the value of which would be used as a URL for the node image. + * */ imageUrlKey?: string; /** * Gets the XPath to the image URL attribute/node. Used in client-only binding directly to XML. + * */ imageUrlXPath?: string; /** * Gets the name of the data source property the value of which would be used as an href attribute for the node anchor. + * */ navigateUrlKey?: string; /** * Gets the XPath to the navigate URL attribute/node. Used in client-only binding directly to XML. + * */ navigateUrlXPath?: string; /** * Gets the name of the data source property the value of which would be used as a target * attribute for the node anchor. + * */ targetKey?: string; /** * Gets the name of the data source property the value of which would hold the node`s * expanded state. The expanded state is represented by a boolean. + * */ expandedKey?: string; @@ -79041,6 +92894,7 @@ interface IgTreeBindings { * Gets the name of the data source property the value of which would hold the node's * check state. The check state itself is represented by a string enumeration with the * checked|partially checked|unchecked states being respectively "on|partial|off". + * */ checkedKey?: string; @@ -79048,32 +92902,38 @@ interface IgTreeBindings { * Gets the name of the data source property the value of which is the primary key attribute * for the data. This property is used when load on demand is enabled and if specified the node paths * would be generated using primary keys instead of indices. + * */ primaryKey?: string; /** * Gets the node content template for the current layer of bindings. The igTree utilizes igTemplating * for generating node content templates. A good example of how to setup templating can be found here http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/06/17/how-to-use-templates-to-style-the-different-nodes-of-the-ignite-ui-tree-control.aspx + * */ nodeContentTemplate?: string; /** * Gets the name of the data source property that holds the child data of the current layer node. + * */ childDataProperty?: string; /** * Gets the XPath to the child data node. Used in client-only binding directly to XML. + * */ childDataXPath?: string; /** * Gets the XPath to the root data node. Used in client-only binding directly to XML. + * */ searchFieldXPath?: string; /** * Gets the next layer of bindings in a recursive fashion. + * */ bindings?: IgTreeBindingsBindings; @@ -79086,12 +92946,14 @@ interface IgTreeBindings { interface IgTreeDragAndDropSettings { /** * Gets whether the widget will accept drag and drop from other controls. + * */ allowDrop?: boolean; /** * Gets the drag and drop mode. * + * * Valid values: * "default" Performs "copy" when holding the Ctrl key, otherwise "move" is performed. * "copy" Makes a copy of the dragged node at the drop location. @@ -79101,43 +92963,51 @@ interface IgTreeDragAndDropSettings { /** * Gets the opacity of the drag helper: 0 is fully transparent while 1 is fully opaque. + * */ dragOpacity?: number; /** * Gets whether the helper would revert to its original position upon an invalid drop. + * */ revert?: boolean; /** * Gets the duration of the revert animation. + * */ revertDuration?: number; /** * Gets the z-index that would be set for the drag helper. + * */ zIndex?: number; /** * Gets the delay between mousedown and the start of the actual drag. Smaller values make the nodes * more sensitive to drag and may interfere with selection. + * */ dragStartDelay?: number; /** * Gets whether when dragging over a collapsed node with children will trigger the node to expand. + * */ expandOnDragOver?: boolean; /** * Gets the delay after hovering a parent node before expanding that node during drag when [expandOnDragOver](ui.igtree#options:dragAndDropSettings.expandOnDragOver) is set to true. + * */ expandDelay?: number; /** * Gets the type of helper to be rendered for the drag operation. * + * * Valid values: * "function" A function that will return a DOMElement to use while dragging. * "default" would render the default igTree helper. @@ -79147,6 +93017,7 @@ interface IgTreeDragAndDropSettings { /** * Gets the method for custom drop point validation. Returning true from this function would render the drop point valid, while false would make it invalid. The function has one parameter which is the current drop point and the context (this) of the function is the drag element. * + * * Valid values: * "function" A function that will be used for validating drop points. * "null" Only built-in validation is applied. @@ -79156,6 +93027,7 @@ interface IgTreeDragAndDropSettings { /** * Gets the containment for the drag helper. The area inside of which thehelper is contained would be scrollable while dragging. * + * * Valid values: * "boolean" If set to false, then the draggable elements will be contained in their window. * "selector" The draggable element will be contained to the bounding box of the first element found by the selector. If no element is found, no containment will be set. @@ -79167,46 +93039,55 @@ interface IgTreeDragAndDropSettings { /** * Gets the HTML markup for the invalid helper. + * */ invalidMoveToMarkup?: string; /** * Gets the HTML markup for the "move to" helper. + * */ moveToMarkup?: string; /** * Gets the HTML markup for the "move between" helper. + * */ moveBetweenMarkup?: string; /** * Gets the HTML markup for the "move after" helper. + * */ moveAfterMarkup?: string; /** * Gets the HTML markup for the "move before" helper. + * */ moveBeforeMarkup?: string; /** * Gets the HTML markup for the "copy to" helper. + * */ copyToMarkup?: string; /** * Gets the HTML markup for the "copy between" helper. + * */ copyBetweenMarkup?: string; /** * Gets the HTML markup for the "copy after" helper. + * */ copyAfterMarkup?: string; /** * Gets the HTML markup for the "copy before" helper. + * */ copyBeforeMarkup?: string; @@ -79532,6 +93413,7 @@ interface IgTree { /** * Gets/Sets the width of the control container. * + * * Valid values: * "string" The widget width can be set in pixels (px) and percentage (%). * "number" The widget width can be set as a number in pixels. @@ -79542,6 +93424,7 @@ interface IgTree { /** * Gets/Sets how the height of of the control container. * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number in pixels. @@ -79552,6 +93435,7 @@ interface IgTree { /** * Gets the behavior and type of the checkboxes rendered for the tree nodes. Can be set only at initialization. * + * * Valid values: * "off" Checkboxes are turned off and are not rendered for the tree. * "biState" Checkboxes are rendered and support two states (checked and unchecked). Checkboxes do not cascade down or up in this mode. @@ -79561,17 +93445,20 @@ interface IgTree { /** * Gets/Sets one or more branches to be expanded at a time. If set to true then only one branch at each level of the tree can be expanded at a time. Otherwise multiple branches can be expanded at a time. + * */ singleBranchExpand?: boolean; /** * Gets/Sets whether nodes are hoverable. Setting this option to false would make the tree to not apply hover styles on the nodes when they are hovered. + * */ hotTracking?: boolean; /** * Gets/Sets the image url applied to all parent nodes. * + * * Valid values: * "string" Image with the specified URL will be rendered for each node that has children (If you define both parentNodeImageUrl and parentNodeImageClass the parentNodeImageUrl would take priority). * "null" Option is ignored @@ -79581,6 +93468,7 @@ interface IgTree { /** * Gets/Sets the CSS class applied to all parent nodes. * + * * Valid values: * "string" Specified class with a CSS sprite that would be rendered for each node that has children (If you define both parentNodeImageUrl and parentNodeImageClass the parentNodeImageUrl would take priority). * "null" Option is ignored @@ -79590,6 +93478,7 @@ interface IgTree { /** * Gets/Sets the tooltip applied to all parent node images. * + * * Valid values: * "string" Specified a tooltip that would be rendered for each node that has children. * "null" Option is ignored @@ -79599,6 +93488,7 @@ interface IgTree { /** * Gets/Sets the image url applied to all leaf nodes. * + * * Valid values: * "string" Image with the specified URL will be rendered for each node that has no children (If you define both leafNodeImageUrl and leafNodeImageClass the leafNodeImageUrl would take priority). * "null" Option is ignored @@ -79608,6 +93498,7 @@ interface IgTree { /** * Gets/Sets the CSS class applied to all leaf nodes. * + * * Valid values: * "string" Specified class with a CSS sprite that would be rendered for each node that has no children (If you define both leafNodeImageUrl and leafNodeImageClass the leafNodeImageUrl would take priority). * "null" Option is ignored @@ -79617,6 +93508,7 @@ interface IgTree { /** * Gets/Sets the tooltip applied to all leaf node images. * + * * Valid values: * "string" Specified a tooltip that would be rendered for each node that has no children. * "null" Option is ignored @@ -79625,23 +93517,27 @@ interface IgTree { /** * Gets/Sets the duration of each animation such as the expand/collapse. + * */ animationDuration?: number; /** * Gets the node data-path attribute separator character. + * */ pathSeparator?: string; /** * Gets/Sets the igTree data source. Accepts any valid data source accepted by $.ig.DataSource, or an instance of an $.ig.DataSource itself. * Once the data source is initialized, this option becomes an instance of the $.ig.HierarchicalDataSource. + * */ dataSource?: any; /** * Gets/Sets a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. * + * * Valid values: * "string" Specifies the remote url. * "null" Option is ignored. @@ -79651,6 +93547,7 @@ interface IgTree { /** * Gets the type of the data source. Delegates the value to [$.ig.DataSource.settings.type](ig.datasource#options:settings.type). Explicitly set data source type (such as "json"). Please refer to the documentation of $.ig.DataSource.settings.type. * + * * Valid values: * "string" Specifies the data source type implicitly. * "null" Type is inferred. @@ -79660,6 +93557,7 @@ interface IgTree { /** * Gets the JSON key at which a remote data source will write the data. Delegates the value to [$.ig.DataSource.settings.responseDataKey](ig.datasource#options:settings.responseDataKey). Please refer to the documentation of $.ig.DataSource.settings.responseDataKey. * + * * Valid values: * "string" Specifies the name of the property in which data records are held if the response is wrapped. * "null" Option is ignored. @@ -79669,6 +93567,7 @@ interface IgTree { /** * Gets the data type of the remote data source response. Delegates the value to [$.ig.DataSource.settings.responseDataType](ig.datasource#options:settings.responseDataType). Please refer to the documentation of $.ig.DataSource.settings.responseDataType. * + * * Valid values: * "string" Response type when a URL is set as the data source. See http://api.jquery.com/jQuery.ajax/ => dataType. * "null" Type is inferred. @@ -79677,49 +93576,76 @@ interface IgTree { /** * Gets the HTTP verb used for remote requests. Specifies the HTTP verb to be used to issue the requests to the [dataSourceUrl](ui.igtree#options:dataSourceUrl). + * */ requestType?: string; /** * Gets the type of the content in a remote data source response. Content type of the response from the [dataSourceUrl](ui.igtree#options:dataSourceUrl). See http://api.jquery.com/jQuery.ajax/ => contentType + * */ responseContentType?: string; /** * Gets the initial depth the igTree is going to be expanded to upon initial render. + * */ initialExpandDepth?: number; /** * Gets whether all the data would be bound initially or each child collection would be bound upon expand. + * */ loadOnDemand?: boolean; /** * Gets the data binding properties and keys. The igTree uses these to extract the corresponding data from the dataSource. + * */ bindings?: IgTreeBindings; /** * Gets the default target attribute value for the node anchors. + * */ defaultNodeTarget?: string; /** * Gets/Sets whether drag and drop functionality is enabled. + * */ dragAndDrop?: boolean; /** * Gets the URL to which updating requests will be made. + * */ updateUrl?: string; /** * Gets/Sets specific settings for the drag and drop functionality. + * */ dragAndDropSettings?: IgTreeDragAndDropSettings; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Fired before databinding is performed. */ @@ -79850,6 +93776,7 @@ interface IgTreeMethods { * Applies a checked state to a node. * * @param nodeObj Specifies the node element to apply the state to. + * @param cascadeDir */ checkNode(nodeObj: Object, cascadeDir: Object): void; @@ -79857,6 +93784,7 @@ interface IgTreeMethods { * Applies an unchecked state to a node. * * @param nodeObj Specifies the node element to apply the state to. + * @param cascadeDir */ uncheckNode(nodeObj: Object, cascadeDir: Object): void; @@ -79864,6 +93792,7 @@ interface IgTreeMethods { * Applies a partially checked state to a node. * * @param nodeObj Specifies the node element to apply the state to. + * @param cascadeDir */ partiallyCheckNode(nodeObj: Object, cascadeDir: Object): void; @@ -79987,9 +93916,9 @@ interface IgTreeMethods { /** * Retrieves a node object for the specified node element. * - * @param element Specifies the node element. + * @param element Specifies the node jQuery element. */ - nodeFromElement(element: Object): Object; + nodeFromElement(element: string): Object; /** * Retrieves a node object collection of the immediate children of the provided node element. @@ -80080,6 +94009,16 @@ interface IgTreeMethods { * Destructor for the igTree widget. */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igTree"): IgTreeMethods; @@ -80109,7 +94048,7 @@ interface JQuery { igTree(methodName: "findNodesByText", text: string, parent?: Object): any[]; igTree(methodName: "findImmediateNodesByText", text: string, parent?: Object): any[]; igTree(methodName: "nodeByIndex", index: number, parent?: Object): Object; - igTree(methodName: "nodeFromElement", element: Object): Object; + igTree(methodName: "nodeFromElement", element: string): Object; igTree(methodName: "children", parent: Object): any[]; igTree(methodName: "childrenByPath", path: string): any[]; igTree(methodName: "isSelected", node: Object): boolean; @@ -80123,9 +94062,12 @@ interface JQuery { igTree(methodName: "transactionLog"): any[]; igTree(methodName: "nodeDataFor", path: string): Object; igTree(methodName: "destroy"): void; + igTree(methodName: "changeGlobalLanguage"): void; + igTree(methodName: "changeGlobalRegional"): void; /** * Gets/Sets the width of the control container. + * */ igTree(optionLiteral: 'option', optionName: "width"): string|number; @@ -80133,6 +94075,7 @@ interface JQuery { /** * /Sets the width of the control container. * + * * @optionValue New value to be set. */ @@ -80140,6 +94083,7 @@ interface JQuery { /** * Gets/Sets how the height of of the control container. + * */ igTree(optionLiteral: 'option', optionName: "height"): string|number; @@ -80147,6 +94091,7 @@ interface JQuery { /** * /Sets how the height of of the control container. * + * * @optionValue New value to be set. */ @@ -80154,6 +94099,7 @@ interface JQuery { /** * Gets the behavior and type of the checkboxes rendered for the tree nodes. Can be set only at initialization. + * */ igTree(optionLiteral: 'option', optionName: "checkboxMode"): string; @@ -80161,6 +94107,7 @@ interface JQuery { /** * The behavior and type of the checkboxes rendered for the tree nodes. Can be set only at initialization. * + * * @optionValue New value to be set. */ @@ -80168,30 +94115,35 @@ interface JQuery { /** * Gets/Sets one or more branches to be expanded at a time. If set to true then only one branch at each level of the tree can be expanded at a time. Otherwise multiple branches can be expanded at a time. + * */ igTree(optionLiteral: 'option', optionName: "singleBranchExpand"): boolean; /** * /Sets one or more branches to be expanded at a time. If set to true then only one branch at each level of the tree can be expanded at a time. Otherwise multiple branches can be expanded at a time. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "singleBranchExpand", optionValue: boolean): void; /** * Gets/Sets whether nodes are hoverable. Setting this option to false would make the tree to not apply hover styles on the nodes when they are hovered. + * */ igTree(optionLiteral: 'option', optionName: "hotTracking"): boolean; /** * /Sets whether nodes are hoverable. Setting this option to false would make the tree to not apply hover styles on the nodes when they are hovered. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "hotTracking", optionValue: boolean): void; /** * Gets/Sets the image url applied to all parent nodes. + * */ igTree(optionLiteral: 'option', optionName: "parentNodeImageUrl"): string; @@ -80199,6 +94151,7 @@ interface JQuery { /** * /Sets the image url applied to all parent nodes. * + * * @optionValue New value to be set. */ @@ -80206,6 +94159,7 @@ interface JQuery { /** * Gets/Sets the CSS class applied to all parent nodes. + * */ igTree(optionLiteral: 'option', optionName: "parentNodeImageClass"): string; @@ -80213,6 +94167,7 @@ interface JQuery { /** * /Sets the CSS class applied to all parent nodes. * + * * @optionValue New value to be set. */ @@ -80220,6 +94175,7 @@ interface JQuery { /** * Gets/Sets the tooltip applied to all parent node images. + * */ igTree(optionLiteral: 'option', optionName: "parentNodeImageTooltip"): string; @@ -80227,6 +94183,7 @@ interface JQuery { /** * /Sets the tooltip applied to all parent node images. * + * * @optionValue New value to be set. */ @@ -80234,6 +94191,7 @@ interface JQuery { /** * Gets/Sets the image url applied to all leaf nodes. + * */ igTree(optionLiteral: 'option', optionName: "leafNodeImageUrl"): string; @@ -80241,6 +94199,7 @@ interface JQuery { /** * /Sets the image url applied to all leaf nodes. * + * * @optionValue New value to be set. */ @@ -80248,6 +94207,7 @@ interface JQuery { /** * Gets/Sets the CSS class applied to all leaf nodes. + * */ igTree(optionLiteral: 'option', optionName: "leafNodeImageClass"): string; @@ -80255,6 +94215,7 @@ interface JQuery { /** * /Sets the CSS class applied to all leaf nodes. * + * * @optionValue New value to be set. */ @@ -80262,6 +94223,7 @@ interface JQuery { /** * Gets/Sets the tooltip applied to all leaf node images. + * */ igTree(optionLiteral: 'option', optionName: "leafNodeImageTooltip"): string; @@ -80269,6 +94231,7 @@ interface JQuery { /** * /Sets the tooltip applied to all leaf node images. * + * * @optionValue New value to be set. */ @@ -80276,24 +94239,28 @@ interface JQuery { /** * Gets/Sets the duration of each animation such as the expand/collapse. + * */ igTree(optionLiteral: 'option', optionName: "animationDuration"): number; /** * /Sets the duration of each animation such as the expand/collapse. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "animationDuration", optionValue: number): void; /** * Gets the node data-path attribute separator character. + * */ igTree(optionLiteral: 'option', optionName: "pathSeparator"): string; /** * The node data-path attribute separator character. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "pathSeparator", optionValue: string): void; @@ -80301,6 +94268,7 @@ interface JQuery { /** * Gets/Sets the igTree data source. Accepts any valid data source accepted by $.ig.DataSource, or an instance of an $.ig.DataSource itself. * Once the data source is initialized, this option becomes an instance of the $.ig.HierarchicalDataSource. + * */ igTree(optionLiteral: 'option', optionName: "dataSource"): any; @@ -80308,12 +94276,14 @@ interface JQuery { * /Sets the igTree data source. Accepts any valid data source accepted by $.ig.DataSource, or an instance of an $.ig.DataSource itself. * Once the data source is initialized, this option becomes an instance of the $.ig.HierarchicalDataSource. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "dataSource", optionValue: any): void; /** * Gets/Sets a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. + * */ igTree(optionLiteral: 'option', optionName: "dataSourceUrl"): string; @@ -80321,6 +94291,7 @@ interface JQuery { /** * /Sets a remote URL accepted by [$.ig.DataSource](ig.datasource) in order to request data from it. * + * * @optionValue New value to be set. */ @@ -80328,6 +94299,7 @@ interface JQuery { /** * Gets the type of the data source. Delegates the value to [$.ig.DataSource.settings.type](ig.datasource#options:settings.type). Explicitly set data source type (such as "json"). Please refer to the documentation of $.ig.DataSource.settings.type. + * */ igTree(optionLiteral: 'option', optionName: "dataSourceType"): string; @@ -80335,6 +94307,7 @@ interface JQuery { /** * The type of the data source. Delegates the value to [$.ig.DataSource.settings.type](ig.datasource#options:settings.type). Explicitly set data source type (such as "json"). Please refer to the documentation of $.ig.DataSource.settings.type. * + * * @optionValue New value to be set. */ @@ -80342,6 +94315,7 @@ interface JQuery { /** * Gets the JSON key at which a remote data source will write the data. Delegates the value to [$.ig.DataSource.settings.responseDataKey](ig.datasource#options:settings.responseDataKey). Please refer to the documentation of $.ig.DataSource.settings.responseDataKey. + * */ igTree(optionLiteral: 'option', optionName: "responseDataKey"): string; @@ -80349,6 +94323,7 @@ interface JQuery { /** * The JSON key at which a remote data source will write the data. Delegates the value to [$.ig.DataSource.settings.responseDataKey](ig.datasource#options:settings.responseDataKey). Please refer to the documentation of $.ig.DataSource.settings.responseDataKey. * + * * @optionValue New value to be set. */ @@ -80356,6 +94331,7 @@ interface JQuery { /** * Gets the data type of the remote data source response. Delegates the value to [$.ig.DataSource.settings.responseDataType](ig.datasource#options:settings.responseDataType). Please refer to the documentation of $.ig.DataSource.settings.responseDataType. + * */ igTree(optionLiteral: 'option', optionName: "responseDataType"): string; @@ -80363,6 +94339,7 @@ interface JQuery { /** * The data type of the remote data source response. Delegates the value to [$.ig.DataSource.settings.responseDataType](ig.datasource#options:settings.responseDataType). Please refer to the documentation of $.ig.DataSource.settings.responseDataType. * + * * @optionValue New value to be set. */ @@ -80370,112 +94347,174 @@ interface JQuery { /** * Gets the HTTP verb used for remote requests. Gets the HTTP verb to be used to issue the requests to the [dataSourceUrl](ui.igtree#options:dataSourceUrl). + * */ igTree(optionLiteral: 'option', optionName: "requestType"): string; /** * The HTTP verb used for remote requests. Sets the HTTP verb to be used to issue the requests to the [dataSourceUrl](ui.igtree#options:dataSourceUrl). * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Gets the type of the content in a remote data source response. Content type of the response from the [dataSourceUrl](ui.igtree#options:dataSourceUrl). See http://api.jquery.com/jQuery.ajax/ => contentType + * */ igTree(optionLiteral: 'option', optionName: "responseContentType"): string; /** * The type of the content in a remote data source response. Content type of the response from the [dataSourceUrl](ui.igtree#options:dataSourceUrl). See http://api.jquery.com/jQuery.ajax/ => contentType * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; /** * Gets the initial depth the igTree is going to be expanded to upon initial render. + * */ igTree(optionLiteral: 'option', optionName: "initialExpandDepth"): number; /** * The initial depth the igTree is going to be expanded to upon initial render. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "initialExpandDepth", optionValue: number): void; /** * Gets whether all the data would be bound initially or each child collection would be bound upon expand. + * */ igTree(optionLiteral: 'option', optionName: "loadOnDemand"): boolean; /** * Whether all the data would be bound initially or each child collection would be bound upon expand. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "loadOnDemand", optionValue: boolean): void; /** * Gets the data binding properties and keys. The igTree uses these to extract the corresponding data from the dataSource. + * */ igTree(optionLiteral: 'option', optionName: "bindings"): IgTreeBindings; /** * The data binding properties and keys. The igTree uses these to extract the corresponding data from the dataSource. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "bindings", optionValue: IgTreeBindings): void; /** * Gets the default target attribute value for the node anchors. + * */ igTree(optionLiteral: 'option', optionName: "defaultNodeTarget"): string; /** * The default target attribute value for the node anchors. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "defaultNodeTarget", optionValue: string): void; /** * Gets/Sets whether drag and drop functionality is enabled. + * */ igTree(optionLiteral: 'option', optionName: "dragAndDrop"): boolean; /** * /Sets whether drag and drop functionality is enabled. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "dragAndDrop", optionValue: boolean): void; /** * Gets the URL to which updating requests will be made. + * */ igTree(optionLiteral: 'option', optionName: "updateUrl"): string; /** * The URL to which updating requests will be made. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "updateUrl", optionValue: string): void; /** * Gets/Sets specific settings for the drag and drop functionality. + * */ igTree(optionLiteral: 'option', optionName: "dragAndDropSettings"): IgTreeDragAndDropSettings; /** * /Sets specific settings for the drag and drop functionality. * + * * @optionValue New value to be set. */ igTree(optionLiteral: 'option', optionName: "dragAndDropSettings", optionValue: IgTreeDragAndDropSettings): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igTree(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTree(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igTree(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igTree(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igTree(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igTree(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Fired before databinding is performed. */ @@ -80761,22 +94800,26 @@ interface IgTreeGridColumnFixing { /** * Specifies whether to show the column fixing buttons in header cells/feature chooser. + * */ showFixButtons?: boolean; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). + * */ syncRowHeights?: boolean; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. + * */ scrollDelta?: number; /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. * + * * Valid values: * "left" Fixed columns are rendered on the left side of the main grid. * "right" Fixed columns are rendered on the right side of the main grid. @@ -80785,12 +94828,14 @@ interface IgTreeGridColumnFixing { /** * List of column settings that specifies custom column fixing options on a per column basis. + * */ columnSettings?: IgGridColumnFixingColumnSetting[]; /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. * + * * Valid values: * "string" The width can be set in pixels (px) and percentage (%). * "number" The width can be set in pixels as a number. @@ -80799,6 +94844,7 @@ interface IgTreeGridColumnFixing { /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). + * */ fixNondataColumns?: boolean; @@ -80844,6 +94890,8 @@ interface IgTreeGridColumnFixing { } interface IgTreeGridColumnFixingMethods { destroy(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Unfixes a column by specified column identifier - column key or column index. @@ -80866,6 +94914,11 @@ interface IgTreeGridColumnFixingMethods { * @param clearRowsHeights Clears row heigths for all visible rows. */ syncHeights(check?: boolean, clearRowsHeights?: boolean): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridcolumnfixing#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridcolumnfixing#options:language) or [locale](ui.iggridcolumnfixing#options:locale) option setter + */ changeLocale(): void; /** @@ -80946,6 +94999,8 @@ interface JQuery { interface JQuery { igTreeGridColumnFixing(methodName: "destroy"): void; + igTreeGridColumnFixing(methodName: "changeGlobalLanguage"): void; + igTreeGridColumnFixing(methodName: "changeGlobalRegional"): void; igTreeGridColumnFixing(methodName: "unfixColumn", colIdentifier: Object, target?: string, after?: boolean): Object; igTreeGridColumnFixing(methodName: "checkAndSyncHeights"): void; igTreeGridColumnFixing(methodName: "syncHeights", check?: boolean, clearRowsHeights?: boolean): void; @@ -81022,42 +95077,49 @@ interface JQuery { /** * Gets whether to show the column fixing buttons in header cells/feature chooser. + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "showFixButtons"): boolean; /** * Sets whether to show the column fixing buttons in header cells/feature chooser. * + * * @optionValue New value to be set. */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "showFixButtons", optionValue: boolean): void; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "syncRowHeights"): boolean; /** * Enable row height sync for the fixed and unfixed portion of the grid. If you're observing row misalignment, please refer to [this article](http://www.igniteui.com/help/iggrid-known-issues#misalignment-ie9). * + * * @optionValue New value to be set. */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "syncRowHeights", optionValue: boolean): void; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "scrollDelta"): number; /** * Scroll delta in pixels when scrolling with the mouse wheel or the keyboard in the fixed columns area of the grid. * + * * @optionValue New value to be set. */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "scrollDelta", optionValue: number): void; /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "fixingDirection"): string; @@ -81065,6 +95127,7 @@ interface JQuery { /** * Configures which side the fixed columns of the grid will be rendered on. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#direction) out of more information. * + * * @optionValue New value to be set. */ @@ -81072,18 +95135,21 @@ interface JQuery { /** * List of column settings that specifies custom column fixing options on a per column basis. + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "columnSettings"): IgGridColumnFixingColumnSetting[]; /** * List of column settings that specifies custom column fixing options on a per column basis. * + * * @optionValue New value to be set. */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridColumnFixingColumnSetting[]): void; /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "minimalVisibleAreaWidth"): string|number; @@ -81091,6 +95157,7 @@ interface JQuery { /** * Minimal visible area in pixels for the unfixed columns. If the end user tries to fix a column(or columns), which causes the width of the fixed columns to grow such that the width of visible area of unfixed columns is less than this option then fixing will be canceled. Check [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#non-fixable-min-width) out for more information. * + * * @optionValue New value to be set. */ @@ -81098,12 +95165,14 @@ interface JQuery { /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). + * */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "fixNondataColumns"): boolean; /** * Specify initial fixing of all non data columns. Non-data columns are columns in the grid rendered for specific features, like the row selectors feature. The column containing the row numbering is such a column. This option is applicable when [fixingDirection](ui.iggridcolumnfixing#options:fixingDirection) is set to left. For a full column fixing configuration summary please refer to [this topic](http://www.igniteui.com/help/iggrid-columnfixing-configuring#configuration-summary). * + * * @optionValue New value to be set. */ igTreeGridColumnFixing(optionLiteral: 'option', optionName: "fixNondataColumns", optionValue: boolean): void; @@ -81198,14 +95267,21 @@ interface JQuery { igTreeGridColumnFixing(methodName: string, ...methodParams: any[]): any; } interface IgTreeGridColumnMoving { + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * A list of column settings that specifies moving options on a per column basis. + * */ columnSettings?: IgGridColumnMovingColumnSetting[]; /** * Specify the drag-and-drop mode for the feature * + * * Valid values: * "immediate" Column headers will rearange as you drag with a space opening under the cursor for the header to be dropped on * "deferred" A clone of the header dragged will be created and indicators will be shown between columns to help navigate the drop. @@ -81215,6 +95291,7 @@ interface IgTreeGridColumnMoving { /** * Specify the way columns will be rearranged * + * * Valid values: * "dom" Columns will be rearranged through dom manipulation * "render" Columns will not be rearranged but the grid will be rendered again with the new column order. Please note this option is incompatible with immediate move mode. @@ -81223,47 +95300,56 @@ interface IgTreeGridColumnMoving { /** * Specifies if header cells should include an additional button that opens a moving helper dropdown. + * */ addMovingDropdown?: boolean; /** * Specifies width of column moving dialog + * */ movingDialogWidth?: number; /** * Specifies height of column moving dialog + * */ movingDialogHeight?: number; /** * Specifies time in milliseconds for animation duration to show/hide modal dialog + * */ movingDialogAnimationDuration?: number; /** * Specifies the length (in pixels) between the dragged column and the column edges below which the move operation is accepted + * */ movingAcceptanceTolerance?: number; /** * Specifies the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs + * */ movingScrollTolerance?: number; /** * Specifies a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. + * */ scrollSpeedMultiplier?: number; /** * Specifies the length (in pixels) of each individual scroll operation + * */ scrollDelta?: number; /** * Specifies whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. + * */ hideHeaderContentsDuringDrag?: boolean; @@ -81271,6 +95357,7 @@ interface IgTreeGridColumnMoving { * Specifies the opacity of the drag markup, while a column header is being dragged. * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. + * */ dragHelperOpacity?: number; @@ -81343,6 +95430,7 @@ interface IgTreeGridColumnMoving { /** * Specifies markup for drop tooltip in column moving dialog + * */ movingDialogDropTooltipMarkup?: string; @@ -81356,14 +95444,10 @@ interface IgTreeGridColumnMoving { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event which is fired when a drag operation begins on a column header */ @@ -81451,6 +95535,13 @@ interface IgTreeGridColumnMoving { } interface IgTreeGridColumnMovingMethods { destroy(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridcolumnmoving#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridcolumnmoving#options:language) or [locale](ui.iggridcolumnmoving#options:locale) option setter + */ changeLocale(): void; /** @@ -81471,23 +95562,40 @@ interface JQuery { interface JQuery { igTreeGridColumnMoving(methodName: "destroy"): void; + igTreeGridColumnMoving(methodName: "changeGlobalLanguage"): void; + igTreeGridColumnMoving(methodName: "changeGlobalRegional"): void; igTreeGridColumnMoving(methodName: "changeLocale"): void; igTreeGridColumnMoving(methodName: "moveColumn", column: Object, target: Object, after?: boolean, inDom?: boolean, callback?: Function): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridColumnMoving(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridColumnMoving(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * A list of column settings that specifies moving options on a per column basis. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "columnSettings"): IgGridColumnMovingColumnSetting[]; /** * A list of column settings that specifies moving options on a per column basis. * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridColumnMovingColumnSetting[]): void; /** * Specify the drag-and-drop mode for the feature + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "mode"): string; @@ -81495,6 +95603,7 @@ interface JQuery { /** * Specify the drag-and-drop mode for the feature * + * * @optionValue New value to be set. */ @@ -81502,6 +95611,7 @@ interface JQuery { /** * Specify the way columns will be rearranged + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "moveType"): string; @@ -81509,6 +95619,7 @@ interface JQuery { /** * Specify the way columns will be rearranged * + * * @optionValue New value to be set. */ @@ -81516,96 +95627,112 @@ interface JQuery { /** * Gets if header cells should include an additional button that opens a moving helper dropdown. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "addMovingDropdown"): boolean; /** * Sets if header cells should include an additional button that opens a moving helper dropdown. * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "addMovingDropdown", optionValue: boolean): void; /** * Gets width of column moving dialog + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogWidth"): number; /** * Sets width of column moving dialog * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogWidth", optionValue: number): void; /** * Gets height of column moving dialog + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogHeight"): number; /** * Sets height of column moving dialog * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogHeight", optionValue: number): void; /** * Gets time in milliseconds for animation duration to show/hide modal dialog + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogAnimationDuration"): number; /** * Sets time in milliseconds for animation duration to show/hide modal dialog * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogAnimationDuration", optionValue: number): void; /** * Gets the length (in pixels) between the dragged column and the column edges below which the move operation is accepted + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingAcceptanceTolerance"): number; /** * Sets the length (in pixels) between the dragged column and the column edges below which the move operation is accepted * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingAcceptanceTolerance", optionValue: number): void; /** * Gets the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingScrollTolerance"): number; /** * Sets the length (in pixels) between the dragged column and the grid edges below which horizontal scrolling occurs * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingScrollTolerance", optionValue: number): void; /** * Gets a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "scrollSpeedMultiplier"): number; /** * Sets a multiplier for the delay between subsequent scroll operations. The larger this number is, the slower scrolling will appear to be. * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "scrollSpeedMultiplier", optionValue: number): void; /** * Gets the length (in pixels) of each individual scroll operation + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "scrollDelta"): number; /** * Sets the length (in pixels) of each individual scroll operation * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "scrollDelta", optionValue: number): void; @@ -81613,6 +95740,7 @@ interface JQuery { /** * Gets whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "hideHeaderContentsDuringDrag"): boolean; @@ -81620,6 +95748,7 @@ interface JQuery { * Sets whether the contents of the column being dragged will get hidden. The option is only * relevant in immediate moving mode. * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "hideHeaderContentsDuringDrag", optionValue: boolean): void; @@ -81628,6 +95757,7 @@ interface JQuery { * Gets the opacity of the drag markup, while a column header is being dragged. * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "dragHelperOpacity"): number; @@ -81636,6 +95766,7 @@ interface JQuery { * The value must be between 0 and 1. When GroupBy is enabled, the corresponding option in the GroupBy configuration * will be used with priority over this one. * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "dragHelperOpacity", optionValue: number): void; @@ -81798,12 +95929,14 @@ interface JQuery { /** * Gets markup for drop tooltip in column moving dialog + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogDropTooltipMarkup"): string; /** * Sets markup for drop tooltip in column moving dialog * + * * @optionValue New value to be set. */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "movingDialogDropTooltipMarkup", optionValue: string): void; @@ -81828,27 +95961,17 @@ interface JQuery { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igTreeGridColumnMoving(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * - * @optionValue New value to be set. - */ - igTreeGridColumnMoving(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridColumnMoving(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridColumnMoving(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridColumnMoving(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Event which is fired when a drag operation begins on a column header @@ -82056,6 +96179,7 @@ interface IgTreeGridFilteringLocale { * ${startRecord} (paging) * ${endRecord} (paging) * ${recordCount} (paging) + * */ filterSummaryInPagerTemplate?: string; @@ -82068,21 +96192,25 @@ interface IgTreeGridFilteringLocale { interface IgTreeGridFiltering { /** * The property in the response that will hold the total number of records in the data source + * */ recordCountKey?: string; /** * Specifies from which data bound level to be applied filtering - 0 is the first level + * */ fromLevel?: number; /** * Specifies to which data bound level to be applied filtering - if -1 filtering should be applied to the last data bound level + * */ toLevel?: number; /** * If displayMode is showWithAncestorsAndDescendants, show all records that match filtering conditions and their child records, even if child records don"t match filtering conditions. If displayMode is showWithAncestors show only those records that match filtering conditions and do not show child records(if any) that don"t match filtering conditions + * */ displayMode?: any; @@ -82090,6 +96218,7 @@ interface IgTreeGridFiltering { * Specifies the name of a boolean property in the dataRecord object that indicates whether the dataRow matches the filtering conditions. * When filtering a boolean flag with the specified name is added on each data record object with a value of true if it matches the condition or false if it doesn"t. * This is used mainly for internal purposes. + * */ matchFiltering?: string; @@ -82107,8 +96236,14 @@ interface IgTreeGridFiltering { filterSummaryInPagerTemplate?: string; locale?: IgTreeGridFilteringLocale; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. + * */ caseSensitive?: boolean; @@ -82116,11 +96251,13 @@ interface IgTreeGridFiltering { * Enable/disable footer visibility with summary info about the filter. * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. + * */ filterSummaryAlwaysVisible?: boolean; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) + * */ renderFC?: boolean; @@ -82133,6 +96270,7 @@ interface IgTreeGridFiltering { /** * Type of animations for the column filter dropdowns. * + * * Valid values: * "linear" The column filtering drop downs are shown with a linear animation. * "none" No animation is used when showing the filtering drop downs. @@ -82141,12 +96279,14 @@ interface IgTreeGridFiltering { /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). + * */ filterDropDownAnimationDuration?: number; /** * Width of the column filter dropdowns. * + * * Valid values: * "string" The width in pixels (0px) * "number" The width in pixels as a number (0) @@ -82163,12 +96303,14 @@ interface IgTreeGridFiltering { /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ filterExprUrlKey?: string; /** * Enable/disable filter icons visibility. * + * * Valid values: * "true" All predefined filters in the filter dropdowns will have icons rendered in front of the text. * "false" No icons will be rendered. @@ -82177,12 +96319,14 @@ interface IgTreeGridFiltering { /** * A list of column settings that specifies custom filtering options on a per column basis. + * */ columnSettings?: IgGridFilteringColumnSetting[]; /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). * + * * Valid values: * "remote" Filtering is performed by a remote end-point. * "local" Filtering is performed locally by the [$.ig.DataSource](ig.datasource). @@ -82191,12 +96335,14 @@ interface IgTreeGridFiltering { /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. + * */ filterDelay?: number; /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. * + * * Valid values: * "simple" Renders just a filter row. * "advanced" Allows to configure multiple filters from a dialog - Excel style. @@ -82205,12 +96351,14 @@ interface IgTreeGridFiltering { /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). + * */ advancedModeEditorsVisible?: boolean; /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). * + * * Valid values: * "left" * "right" @@ -82220,6 +96368,7 @@ interface IgTreeGridFiltering { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * Valid values: * "string" The dialog window width in pixels (370px). * "number" The dialog window width in pixels as a number (370). @@ -82229,6 +96378,7 @@ interface IgTreeGridFiltering { /** * default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * Valid values: * "string" The dialog window height in pixels (350px). * "number" The dialog window height in pixels as a number (350). @@ -82238,6 +96388,7 @@ interface IgTreeGridFiltering { /** * Width of the filtering condition dropdowns in the advanced filter dialog. * + * * Valid values: * "string" The filtering condition dropdowns width in pixels (80px). * "number" The filtering condition dropdowns width in pixels as a number (80). @@ -82247,6 +96398,7 @@ interface IgTreeGridFiltering { /** * Width of the filtering expression input boxes in the advanced filter dialog. * + * * Valid values: * "string" The filtering expression input boxes width in pixels (80px). * "number" The filtering expression input boxes width in pixels as a number (80). @@ -82256,6 +96408,7 @@ interface IgTreeGridFiltering { /** * Width of the column chooser dropdowns in the advanced filter dialog. * + * * Valid values: * "string" The column chooser dropdowns width in pixels (80px). * "number" The column chooser dropdowns width in pixels as a number (80). @@ -82264,12 +96417,14 @@ interface IgTreeGridFiltering { /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. + * */ renderFilterButton?: boolean; /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. * + * * Valid values: * "left" The button is rendered on the left. * "right" The button is rendered on the right. @@ -82314,11 +96469,13 @@ interface IgTreeGridFiltering { /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". + * */ filterDialogAddConditionTemplate?: string; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". + * */ filterDialogAddConditionDropDownTemplate?: string; @@ -82328,17 +96485,20 @@ interface IgTreeGridFiltering { * E.g.: DOM element used for selecting column has attribute "data-af-col", for selecting filter condition - "data-af-cond", for filter expression- "data-af-expr". * NOTE: The template is supported only with . * The default template is " ". + * */ filterDialogFilterTemplate?: string; /** * Custom template for options in condition list in filter dialog. The default template is "". + * */ filterDialogFilterConditionTemplate?: string; /** * Add button width - in the advanced filter dialog. * + * * Valid values: * "string" The dialog Add button width in pixels (100px). * "number" The dialog Add button width in pixels as a number (100). @@ -82348,6 +96508,7 @@ interface IgTreeGridFiltering { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. * + * * Valid values: * "string" The advanced filter dialog Ok and Cancel buttons width in pixels (120px). * "number" The advanced filter dialog Ok and Cancel buttons width in pixels as a number (120). @@ -82356,6 +96517,7 @@ interface IgTreeGridFiltering { /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. + * */ filterDialogMaxFilterCount?: number; @@ -82369,28 +96531,114 @@ interface IgTreeGridFiltering { /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. + * */ showEmptyConditions?: boolean; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. + * */ showNullConditions?: boolean; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; /** * Enables/disables filtering persistence between states. + * */ persist?: boolean; /** - * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. */ - inherit?: boolean; + dataFiltering?: DataFilteringEvent; + + /** + * Event fired after the filtering has been executed and results are rendered. + */ + dataFiltered?: DataFilteredEvent; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + */ + dropDownOpening?: DropDownOpeningEvent; + + /** + * Event fired after the filter dropdown is opened for a specific column. + */ + dropDownOpened?: DropDownOpenedEvent; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + */ + dropDownClosing?: DropDownClosingEvent; + + /** + * Event fired after a filter column dropdown is completely closed. + */ + dropDownClosed?: DropDownClosedEvent; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + */ + filterDialogOpening?: FilterDialogOpeningEvent; + + /** + * Event fired after the advanced filter dialog is already opened. + */ + filterDialogOpened?: FilterDialogOpenedEvent; + + /** + * Event fired every time the advanced filter dialog changes its position. + */ + filterDialogMoving?: FilterDialogMovingEvent; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + */ + filterDialogFilterAdding?: FilterDialogFilterAddingEvent; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + */ + filterDialogFilterAdded?: FilterDialogFilterAddedEvent; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + */ + filterDialogClosing?: FilterDialogClosingEvent; + + /** + * Event fired after the advanced filter dialog has been closed. + */ + filterDialogClosed?: FilterDialogClosedEvent; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + */ + filterDialogContentsRendering?: FilterDialogContentsRenderingEvent; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + */ + filterDialogContentsRendered?: FilterDialogContentsRenderedEvent; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + */ + filterDialogFiltering?: FilterDialogFilteringEvent; /** * Option for igTreeGridFiltering @@ -82403,6 +96651,43 @@ interface IgTreeGridFilteringMethods { */ getFilteringMatchesCount(): number; destroy(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridfiltering#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridfiltering#options:language) or [locale](ui.iggridfiltering#options:locale) option setter + */ + changeLocale(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridfiltering#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridfiltering#options:regional) option setter + */ + changeRegional(): void; + + /** + * Toggle filter row when mode is simple or [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is true. Otherwise show/hide advanced dialog. + * + * @param event Column key + */ + toggleFilterRowByFeatureChooser(event: string): void; + + /** + * Applies filtering programmatically and updates the UI by default. + * + * @param expressions An array of filtering expressions, each one having the format {fieldName: , expr: , cond: , logic: } where fieldName is the key of the column, expr is the actual expression string with which we would like to filter, logic is 'AND' or 'OR', and cond is one of the following strings: "equals", "doesNotEqual", "contains", "doesNotContain", "greaterThan", "lessThan", "greaterThanOrEqualTo", "lessThanOrEqualTo", "true", "false", "null", "notNull", "empty", "notEmpty", "startsWith", "endsWith", "today", "yesterday", "on", "notOn", "thisMonth", "lastMonth", "nextMonth", "before", "after", "thisYear", "lastYear", "nextYear". The difference between the empty and null filtering conditions is that empty includes null, NaN, and undefined, as well as the empty string. + * @param updateUI specifies whether the filter row should be also updated once the grid is filtered + * @param addedFromAdvanced + */ + filter(expressions: any[], updateUI?: boolean, addedFromAdvanced?: boolean): void; + + /** + * Check whether filterCondition requires or not filtering expression - e.g. if filterCondition is "lastMonth", "thisMonth", "null", "notNull", "true", "false", etc. then filtering expression is NOT required + * + * @param filterCondition filtering condition - e.g. "true", "false", "yesterday", "empty", "null", etc. + */ + requiresFilteringExpression(filterCondition: string): boolean; } interface JQuery { data(propertyName: "igTreeGridFiltering"): IgTreeGridFilteringMethods; @@ -82411,51 +96696,66 @@ interface JQuery { interface JQuery { igTreeGridFiltering(methodName: "getFilteringMatchesCount"): number; igTreeGridFiltering(methodName: "destroy"): void; + igTreeGridFiltering(methodName: "changeGlobalLanguage"): void; + igTreeGridFiltering(methodName: "changeGlobalRegional"): void; + igTreeGridFiltering(methodName: "changeLocale"): void; + igTreeGridFiltering(methodName: "changeRegional"): void; + igTreeGridFiltering(methodName: "toggleFilterRowByFeatureChooser", event: string): void; + igTreeGridFiltering(methodName: "filter", expressions: any[], updateUI?: boolean, addedFromAdvanced?: boolean): void; + igTreeGridFiltering(methodName: "requiresFilteringExpression", filterCondition: string): boolean; /** * The property in the response that will hold the total number of records in the data source + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "recordCountKey"): string; /** * The property in the response that will hold the total number of records in the data source * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "recordCountKey", optionValue: string): void; /** * Specifies from which data bound level to be applied filtering - 0 is the first level + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "fromLevel"): number; /** * Specifies from which data bound level to be applied filtering - 0 is the first level * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "fromLevel", optionValue: number): void; /** * Specifies to which data bound level to be applied filtering - if -1 filtering should be applied to the last data bound level + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "toLevel"): number; /** * Specifies to which data bound level to be applied filtering - if -1 filtering should be applied to the last data bound level * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "toLevel", optionValue: number): void; /** * If displayMode is showWithAncestorsAndDescendants, show all records that match filtering conditions and their child records, even if child records don"t match filtering conditions. If displayMode is showWithAncestors show only those records that match filtering conditions and do not show child records(if any) that don"t match filtering conditions + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "displayMode"): any; /** * If displayMode is showWithAncestorsAndDescendants, show all records that match filtering conditions and their child records, even if child records don"t match filtering conditions. If displayMode is showWithAncestors show only those records that match filtering conditions and do not show child records(if any) that don"t match filtering conditions * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "displayMode", optionValue: any): void; @@ -82464,6 +96764,7 @@ interface JQuery { * Gets the name of a boolean property in the dataRecord object that indicates whether the dataRow matches the filtering conditions. * When filtering a boolean flag with the specified name is added on each data record object with a value of true if it matches the condition or false if it doesn"t. * This is used mainly for internal purposes. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "matchFiltering"): string; @@ -82472,6 +96773,7 @@ interface JQuery { * When filtering a boolean flag with the specified name is added on each data record object with a value of true if it matches the condition or false if it doesn"t. * This is used mainly for internal purposes. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "matchFiltering", optionValue: string): void; @@ -82506,14 +96808,28 @@ interface JQuery { igTreeGridFiltering(optionLiteral: 'option', optionName: "locale"): IgTreeGridFilteringLocale; igTreeGridFiltering(optionLiteral: 'option', optionName: "locale", optionValue: IgTreeGridFilteringLocale): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "caseSensitive"): boolean; /** * Enables or disables the filtering case sensitivity. Works only for local filtering. If true, it case sensitive filtering is performed. If false, filtering is case insensitive. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "caseSensitive", optionValue: boolean): void; @@ -82522,6 +96838,7 @@ interface JQuery { * Enable/disable footer visibility with summary info about the filter. * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterSummaryAlwaysVisible"): boolean; @@ -82530,18 +96847,21 @@ interface JQuery { * When false, the filter summary row (in the footer) will only be visible when paging is enabled (or some other feature that renders a footer). * When true, the filter summary row will only be visible when a filter is applied i.e. it's not visible by default. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterSummaryAlwaysVisible", optionValue: boolean): void; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "renderFC"): boolean; /** * Render in [Feature Chooser](http://www.igniteui.com/help/iggrid-feature-chooser) * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "renderFC", optionValue: boolean): void; @@ -82562,6 +96882,7 @@ interface JQuery { /** * Type of animations for the column filter dropdowns. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimations"): string; @@ -82569,6 +96890,7 @@ interface JQuery { /** * Type of animations for the column filter dropdowns. * + * * @optionValue New value to be set. */ @@ -82576,18 +96898,21 @@ interface JQuery { /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimationDuration"): number; /** * Animation duration in milliseconds for the [filterDropDownAnimations](ui.iggridfiltering#options:filterDropDownAnimations). * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDropDownAnimationDuration", optionValue: number): void; /** * Width of the column filter dropdowns. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDropDownWidth"): string|number; @@ -82595,6 +96920,7 @@ interface JQuery { /** * Width of the column filter dropdowns. * + * * @optionValue New value to be set. */ @@ -82620,18 +96946,21 @@ interface JQuery { /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterExprUrlKey"): string; /** * URL key name that specifies how the filtering expressions will be encoded for remote requests, e.g. &filter('col') = startsWith. Default is OData. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterExprUrlKey", optionValue: string): void; /** * Enable/disable filter icons visibility. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDropDownItemIcons"): boolean; @@ -82639,6 +96968,7 @@ interface JQuery { /** * Enable/disable filter icons visibility. * + * * @optionValue New value to be set. */ @@ -82646,18 +96976,21 @@ interface JQuery { /** * A list of column settings that specifies custom filtering options on a per column basis. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "columnSettings"): IgGridFilteringColumnSetting[]; /** * A list of column settings that specifies custom filtering options on a per column basis. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridFilteringColumnSetting[]): void; /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "type"): string; @@ -82665,6 +96998,7 @@ interface JQuery { /** * Type of filtering. Delegates all filtering functionality to the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ @@ -82672,18 +97006,21 @@ interface JQuery { /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDelay"): number; /** * Time in milliseconds for which widget will wait between keystrokes before sending filtering requests. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDelay", optionValue: number): void; /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "mode"): string; @@ -82691,6 +97028,7 @@ interface JQuery { /** * Default is 'simple' for non-virtualized grids, and 'advanced' when [virtualization](ui.iggrid#options:virtualization) is enabled. * + * * @optionValue New value to be set. */ @@ -82698,18 +97036,21 @@ interface JQuery { /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "advancedModeEditorsVisible"): boolean; /** * Defines whether to render editors in advanced [mode](ui.iggridfiltering#options:mode). If false, no editors will be rendered in the advanced [mode](ui.iggridfiltering#options:mode). * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "advancedModeEditorsVisible", optionValue: boolean): void; /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "advancedModeHeaderButtonLocation"): string; @@ -82717,6 +97058,7 @@ interface JQuery { /** * Location of the advanced filtering button when [advancedModeEditorsVisible](ui.iggridfiltering#options:advancedModeEditorsVisible) is false (i.e. when the button is rendered in the header). * + * * @optionValue New value to be set. */ @@ -82724,6 +97066,7 @@ interface JQuery { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogWidth"): string|number; @@ -82731,6 +97074,7 @@ interface JQuery { /** * Default filter dialog width (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * @optionValue New value to be set. */ @@ -82738,6 +97082,7 @@ interface JQuery { /** * Default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogHeight"): string|number; @@ -82745,6 +97090,7 @@ interface JQuery { /** * Default filter dialog height (used for Advanced filtering [mode](ui.iggridfiltering#options:mode)). * + * * @optionValue New value to be set. */ @@ -82752,6 +97098,7 @@ interface JQuery { /** * Width of the filtering condition dropdowns in the advanced filter dialog. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterDropDownDefaultWidth"): string|number; @@ -82759,6 +97106,7 @@ interface JQuery { /** * Width of the filtering condition dropdowns in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -82766,6 +97114,7 @@ interface JQuery { /** * Width of the filtering expression input boxes in the advanced filter dialog. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogExprInputDefaultWidth"): string|number; @@ -82773,6 +97122,7 @@ interface JQuery { /** * Width of the filtering expression input boxes in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -82780,6 +97130,7 @@ interface JQuery { /** * Width of the column chooser dropdowns in the advanced filter dialog. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogColumnDropDownDefaultWidth"): string|number; @@ -82787,6 +97138,7 @@ interface JQuery { /** * Width of the column chooser dropdowns in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -82794,18 +97146,21 @@ interface JQuery { /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "renderFilterButton"): boolean; /** * Enable/disable filter button visibility. If false, no filter dropdown buttons will be rendered and a predefined list of filters will not be rendered for the columns. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "renderFilterButton", optionValue: boolean): void; /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterButtonLocation"): string; @@ -82813,6 +97168,7 @@ interface JQuery { /** * The filtering button for filter dropdowns can be rendered either on the left of the filter editor, or on the right. * + * * @optionValue New value to be set. */ @@ -82904,24 +97260,28 @@ interface JQuery { /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionTemplate"): string; /** * Custom template for add condition area in the filter dialog. The default template is "
${label1}
${label2}
". * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionTemplate", optionValue: string): void; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionDropDownTemplate"): string; /** * Custom template for options in dropdown in add condition area in the filter dialog. The default template is "". * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddConditionDropDownTemplate", optionValue: string): void; @@ -82932,6 +97292,7 @@ interface JQuery { * E.g.: DOM element used for selecting column has attribute "data-af-col", for selecting filter condition - "data-af-cond", for filter expression- "data-af-expr". * NOTE: The template is supported only with . * The default template is " ". + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterTemplate"): string; @@ -82942,24 +97303,28 @@ interface JQuery { * NOTE: The template is supported only with . * The default template is " ". * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterTemplate", optionValue: string): void; /** * Custom template for options in condition list in filter dialog. The default template is "". + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterConditionTemplate"): string; /** * Custom template for options in condition list in filter dialog. The default template is "". * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterConditionTemplate", optionValue: string): void; /** * Add button width - in the advanced filter dialog. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogAddButtonWidth"): string|number; @@ -82967,6 +97332,7 @@ interface JQuery { /** * Add button width - in the advanced filter dialog. * + * * @optionValue New value to be set. */ @@ -82974,6 +97340,7 @@ interface JQuery { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogOkCancelButtonWidth"): string|number; @@ -82981,6 +97348,7 @@ interface JQuery { /** * Width of the Ok and Cancel buttons in the advanced filtering dialogs. * + * * @optionValue New value to be set. */ @@ -82988,12 +97356,14 @@ interface JQuery { /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogMaxFilterCount"): number; /** * Maximum number of filter rows in the advanced filtering dialog. If this number is exceeded, an error message will be rendered. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogMaxFilterCount", optionValue: number): void; @@ -83018,63 +97388,265 @@ interface JQuery { /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "showEmptyConditions"): boolean; /** * Enable/disable empty condition visibility in the filter. If true, shows empty and not empty filtering conditions in the dropdowns. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "showEmptyConditions", optionValue: boolean): void; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "showNullConditions"): boolean; /** * Enable/disable visibility of null and not null filtering conditions in the dropdowns. If true, shows null and not null filtering conditions in the dropdowns. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "showNullConditions", optionValue: boolean): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Enables/disables filtering persistence between states. + * */ igTreeGridFiltering(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables filtering persistence between states. * + * * @optionValue New value to be set. */ igTreeGridFiltering(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** - * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. */ - igTreeGridFiltering(optionLiteral: 'option', optionName: "inherit"): boolean; + igTreeGridFiltering(optionLiteral: 'option', optionName: "dataFiltering"): DataFilteringEvent; /** - * Enables/disables feature inheritance for the child [layouts](ui.ighierarchicalgrid#options:columnLayouts). NOTE: It only applies for [igHierarchicalGrid](ui.ighierarchicalgrid). + * Event fired before a filtering operation is executed (remote request or local). + * Return false in order to cancel filtering operation. * - * @optionValue New value to be set. + * @optionValue Define event handler function. */ - igTreeGridFiltering(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridFiltering(optionLiteral: 'option', optionName: "dataFiltering", optionValue: DataFilteringEvent): void; + + /** + * Event fired after the filtering has been executed and results are rendered. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dataFiltered"): DataFilteredEvent; + + /** + * Event fired after the filtering has been executed and results are rendered. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dataFiltered", optionValue: DataFilteredEvent): void; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownOpening"): DropDownOpeningEvent; + + /** + * Event fired before the filter dropdown is opened for a specific column. + * Return false in order to cancel dropdown opening. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownOpening", optionValue: DropDownOpeningEvent): void; + + /** + * Event fired after the filter dropdown is opened for a specific column. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownOpened"): DropDownOpenedEvent; + + /** + * Event fired after the filter dropdown is opened for a specific column. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownOpened", optionValue: DropDownOpenedEvent): void; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownClosing"): DropDownClosingEvent; + + /** + * Event fired before the filter dropdown starts closing. + * Return false in order to cancel dropdown closing. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownClosing", optionValue: DropDownClosingEvent): void; + + /** + * Event fired after a filter column dropdown is completely closed. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownClosed"): DropDownClosedEvent; + + /** + * Event fired after a filter column dropdown is completely closed. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "dropDownClosed", optionValue: DropDownClosedEvent): void; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpening"): FilterDialogOpeningEvent; + + /** + * Event fired before the advanced filtering dialog is opened. + * Return false in order to cancel filter dialog opening. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpening", optionValue: FilterDialogOpeningEvent): void; + + /** + * Event fired after the advanced filter dialog is already opened. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpened"): FilterDialogOpenedEvent; + + /** + * Event fired after the advanced filter dialog is already opened. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogOpened", optionValue: FilterDialogOpenedEvent): void; + + /** + * Event fired every time the advanced filter dialog changes its position. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogMoving"): FilterDialogMovingEvent; + + /** + * Event fired every time the advanced filter dialog changes its position. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogMoving", optionValue: FilterDialogMovingEvent): void; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdding"): FilterDialogFilterAddingEvent; + + /** + * Event fired before a filter row is added to the advanced filter dialog. + * Return false in order to cancel filter adding to the advanced filtering dialog. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdding", optionValue: FilterDialogFilterAddingEvent): void; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdded"): FilterDialogFilterAddedEvent; + + /** + * Event fired after a filter row is added to the advanced filter dialog. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFilterAdded", optionValue: FilterDialogFilterAddedEvent): void; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosing"): FilterDialogClosingEvent; + + /** + * Event fired before the advanced filter dialog is closed. + * Return false in order to cancel filtering dialog closing. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosing", optionValue: FilterDialogClosingEvent): void; + + /** + * Event fired after the advanced filter dialog has been closed. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosed"): FilterDialogClosedEvent; + + /** + * Event fired after the advanced filter dialog has been closed. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogClosed", optionValue: FilterDialogClosedEvent): void; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendering"): FilterDialogContentsRenderingEvent; + + /** + * Event fired before the contents of the advanced filter dialog are rendered. + * Return false in order to cancel filtering dialog rendering. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendering", optionValue: FilterDialogContentsRenderingEvent): void; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendered"): FilterDialogContentsRenderedEvent; + + /** + * Event fired after the contents of the advanced filter dialog are rendered. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogContentsRendered", optionValue: FilterDialogContentsRenderedEvent): void; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFiltering"): FilterDialogFilteringEvent; + + /** + * Event fired when the OK button in the advanced filter dialog is pressed. + * + * @optionValue Define event handler function. + */ + igTreeGridFiltering(optionLiteral: 'option', optionName: "filterDialogFiltering", optionValue: FilterDialogFilteringEvent): void; igTreeGridFiltering(options: IgTreeGridFiltering): JQuery; igTreeGridFiltering(optionLiteral: 'option', optionName: string): any; igTreeGridFiltering(optionLiteral: 'option', options: IgTreeGridFiltering): JQuery; @@ -83082,13 +97654,20 @@ interface JQuery { igTreeGridFiltering(methodName: string, ...methodParams: any[]): any; } interface IgTreeGridHiding { + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * A list of column settings that specifies hiding options on a per column basis. + * */ columnSettings?: IgGridHidingColumnSetting[]; /** * The width in pixels of the hidden column indicator in the header. + * */ hiddenColumnIndicatorHeaderWidth?: number; @@ -83102,16 +97681,19 @@ interface IgTreeGridHiding { /** * The default column chooser width. + * */ columnChooserWidth?: string; /** * The default column chooser height. + * */ columnChooserHeight?: string; /** * The duration of the dropdown animation in milliseconds. + * */ dropDownAnimationDuration?: number; @@ -83172,24 +97754,22 @@ interface IgTreeGridHiding { /** * Specifies on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked + * */ columnChooserHideOnClick?: boolean; /** * Specifies time of milliseconds for animation duration to show/hide modal dialog + * */ columnChooserAnimationDuration?: number; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired before a hiding operation is executed. */ @@ -83277,7 +97857,14 @@ interface IgTreeGridHiding { } interface IgTreeGridHidingMethods { destroy(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridhiding#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridhiding#options:language) or [locale](ui.iggridhiding#options:locale) option setter + */ changeLocale(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Shows the Column Chooser dialog. If it is visible the method does nothing. @@ -83352,6 +97939,8 @@ interface JQuery { interface JQuery { igTreeGridHiding(methodName: "destroy"): void; igTreeGridHiding(methodName: "changeLocale"): void; + igTreeGridHiding(methodName: "changeGlobalLanguage"): void; + igTreeGridHiding(methodName: "changeGlobalRegional"): void; igTreeGridHiding(methodName: "showColumnChooser"): void; igTreeGridHiding(methodName: "hideColumnChooser"): void; igTreeGridHiding(methodName: "showColumn", column: Object, callback?: Function): void; @@ -83363,26 +97952,42 @@ interface JQuery { igTreeGridHiding(methodName: "renderColumnChooserResetButton"): void; igTreeGridHiding(methodName: "removeColumnChooserResetButton"): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridHiding(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridHiding(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * A list of column settings that specifies hiding options on a per column basis. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnSettings"): IgGridHidingColumnSetting[]; /** * A list of column settings that specifies hiding options on a per column basis. * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridHidingColumnSetting[]): void; /** * The width in pixels of the hidden column indicator in the header. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "hiddenColumnIndicatorHeaderWidth"): number; /** * The width in pixels of the hidden column indicator in the header. * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "hiddenColumnIndicatorHeaderWidth", optionValue: number): void; @@ -83407,36 +98012,42 @@ interface JQuery { /** * The default column chooser width. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserWidth"): string; /** * The default column chooser width. * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserWidth", optionValue: string): void; /** * The default column chooser height. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserHeight"): string; /** * The default column chooser height. * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserHeight", optionValue: string): void; /** * The duration of the dropdown animation in milliseconds. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "dropDownAnimationDuration"): number; /** * The duration of the dropdown animation in milliseconds. * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "dropDownAnimationDuration", optionValue: number): void; @@ -83571,51 +98182,45 @@ interface JQuery { /** * Gets on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserHideOnClick"): boolean; /** * Sets on click show/hide directly to be shown/hidden columns. If columnChooserHideOnClick is false then Apply and Cancel Buttons are shown on the bottom of modal dialog. Columns are Shown/Hidden after the Apply button is clicked * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserHideOnClick", optionValue: boolean): void; /** * Gets time of milliseconds for animation duration to show/hide modal dialog + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserAnimationDuration"): number; /** * Sets time of milliseconds for animation duration to show/hide modal dialog * + * * @optionValue New value to be set. */ igTreeGridHiding(optionLiteral: 'option', optionName: "columnChooserAnimationDuration", optionValue: number): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igTreeGridHiding(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * - * @optionValue New value to be set. - */ - igTreeGridHiding(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridHiding(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridHiding(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridHiding(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Event fired before a hiding operation is executed. @@ -83818,27 +98423,32 @@ interface IgTreeGridDataSourceSettings { /** * *** IMPORTANT DEPRECATED *** Use the expandedKey option instead. * The name of the property that keeps track of the expansion state of a data item. Defaults to __ig_options.expanded. + * */ propertyExpanded?: any; /** * *** IMPORTANT DEPRECATED *** Use the dataLevelKey option instead. * The name of the property that keeps track of the level in the hierarchy.Defaults to __ig_options.dataLevel. + * */ propertyDataLevel?: any; /** * The name of the property that keeps track of the expansion state of a data item. Defaults to __ig_options.expanded. + * */ expandedKey?: string; /** * The name of the property that keeps track of the level in the hierarchy.Defaults to __ig_options.dataLevel. + * */ dataLevelKey?: string; /** * If set to TRUE it is expected that the source of data is normalized and transformed(has set dataLevel and expansion state). The source of data is used as flatDataView. Usually used when the paging is remote and paging mode is allLevels, or features are remote(and the processing of the returned result should be made on the server) + * */ initialFlatDataView?: boolean; @@ -83851,11 +98461,13 @@ interface IgTreeGridDataSourceSettings { interface IgTreeGridLocale { /** * Specifies the expansion indicator tooltip text. + * */ expandTooltipText?: string; /** * Specifies the collapse indicator tooltip text. + * */ collapseTooltipText?: string; @@ -83865,19 +98477,29 @@ interface IgTreeGridLocale { [optionName: string]: any; } +interface IgTreeGridRestSettings { + /** + * Option for IgTreeGridRestSettings + */ + [optionName: string]: any; +} + interface IgTreeGrid { /** * Specifies the indentation (in pixels or percent) for a tree grid row. Nested indentation is achieved by calculating the level times the indentation value. Ex: '10px' or '5%'. Default is 30. + * */ indentation?: string; /** * If initial indentation level is set then it is used to be calculated width of the data skip column(usually used when remote load on demand is enabled) + * */ initialIndentationLevel?: number; /** * Specifies if rows(that have child rows) will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. + * */ showExpansionIndicator?: boolean; @@ -83897,58 +98519,90 @@ interface IgTreeGrid { /** * Unique identifier used in a self-referencing flat data source. Used with primaryKey to create a relationship among flat data sources. + * */ foreignKey?: string; /** * Specifies the depth down to which the tree grid would be expanded upon initial render. To expand all rows set value to -1. Default is -1. + * */ initialExpandDepth?: number; /** * Specifies the foreign key value in the data source to treat as the root level once the grid is data bound. Defaults to -1 (which includes the entire data source) + * */ foreignKeyRootValue?: number|string; /** * Specify whether to render non-data column which contains expander indicators + * */ renderExpansionIndicatorColumn?: boolean; /** * a reference or name of a javascript function which changes first data cell - renders indentation according to databound level + * */ renderFirstDataCellFunction?: string|Object; /** * Property name of the array of child data in a hierarchical data source. + * */ childDataKey?: string; /** * a reference or name of a javascript function which renders expand indicators(called ONLY IF option renderExpansionIndicatorColumn is true) + * */ renderExpansionCellFunction?: string|Object; /** * Specifies to the tree grid if data is loaded on demand from a remote server. Default is false. + * */ enableRemoteLoadOnDemand?: boolean; /** * Options object to configure data source-specific settings + * */ dataSourceSettings?: IgTreeGridDataSourceSettings; locale?: IgTreeGridLocale; + /** + * Determines row virtualization mode. For igTreeGrid only continuous virtualization can be used. + * + * continuous renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. + */ + virtualizationMode?: string; + /** * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. */ - restSettings?: any; + avgColumnWidth?: any; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + avgRowHeight?: any; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + columnVirtualization?: any; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + restSettings?: IgTreeGridRestSettings; /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget width can be set in pixels (px) or percentage (%). Example values: "800px", "800" (defaults to pixels), "100%". * "number" The widget width can be set in pixels as a number. Example values: 800, 700. @@ -83959,6 +98613,7 @@ interface IgTreeGrid { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set as a number @@ -83968,32 +98623,16 @@ interface IgTreeGrid { /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ autoAdjustHeight?: boolean; /** - * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). + * * * Valid values: - * "string" The avarage row height can be set in pixels ("25px"). - * "number" The avarage row height can be set in pixels as a number (25). - */ - avgRowHeight?: string|number; - - /** - * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. - * - * Valid values: - * "string" The avarage column width can be set in pixels ("25px"). - * "number" The avarage column width can be set in pixels as a number (25). - */ - avgColumnWidth?: string|number; - - /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. - * - * Valid values: - * "string" The default column width can be set in pixels ("100px"). + * "string" The default column width can be set in pixels ("100px") or as '*' in order to auto-size based on the cells and header content. * "number" The default column width can be set in pixels as a number (100). */ defaultColumnWidth?: string|number; @@ -84002,46 +98641,38 @@ interface IgTreeGrid { * If no [columns](ui.iggrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.iggrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.iggrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.iggrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. + * */ autoGenerateColumns?: boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ virtualization?: boolean; - /** - * Determines row virtualization mode. - * - * Valid values: - * "fixed" Renders only the visible rows and/or columns in the grid. On scrolling the same rows and/or columns are updated with new data from the data source. Only fixed virtualization can work with column virtualization at the same time. Fixed virtualization is not supported by some grid features: Resizing, Group By, Responsive. - * "continuous" renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. - */ - virtualizationMode?: string; - /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ rowVirtualization?: boolean; - /** - * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". - */ - columnVirtualization?: boolean; - /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). + * */ virtualizationMouseWheelStep?: number; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ adjustVirtualHeights?: boolean; /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * Valid values: * "infragistics" The grid will use the Infragistics Templating engine to render its [column templates](ui.iggrid#options:columns.template) and specific parts of the UI. * "jsRender" The grid will use jsRender to render its [column templates](ui.iggrid#options:columns.template) and specific parts of the UI. @@ -84050,12 +98681,14 @@ interface IgTreeGrid { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ columns?: IgGridColumn[]; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself * + * * Valid values: * "array" dataSource as an array * "object" ddataSource as an object @@ -84065,86 +98698,102 @@ interface IgTreeGrid { /** * Specifies a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ dataSourceUrl?: string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ dataSourceType?: string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ responseDataKey?: string; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. */ responseTotalRecCountKey?: string; /** * Specifies the HTTP verb to be used to issue the requests to a remote data source. + * */ requestType?: string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ responseContentType?: string; /** * Controls the visibility of the grid header. + * */ showHeader?: boolean; /** * Controls the visibility of the grid footer. + * */ showFooter?: boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ fixedHeaders?: boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ fixedFooters?: boolean; /** * Caption text that will be shown above the grid header. + * */ caption?: string; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ features?: IgGridFeature[]; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ tabIndex?: number; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. + * */ localSchemaTransform?: boolean; /** * Key of the column containing unique identifiers for the data records. + * */ primaryKey?: string; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ serializeTransactionLog?: boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ autoCommit?: boolean; @@ -84154,12 +98803,14 @@ interface IgTreeGrid { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. + * */ aggregateTransactions?: boolean; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * Valid values: * "date" formats only Date columns * "number" formats only number columns @@ -84171,53 +98822,63 @@ interface IgTreeGrid { /** * Gets sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). + * */ renderCheckboxes?: boolean; /** * URL to which updating requests will be made. + * */ updateUrl?: string; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ alternateRowStyles?: boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ autofitLastColumn?: boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ enableHoverStyles?: boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ enableUTCDates?: boolean; /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ mergeUnboundColumns?: boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ jsonpRequest?: boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ enableResizeContainerCheck?: boolean; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * Valid values: * "none" Always hide the feature chooser icon; The feature chooser is shown on tapping/clicking the column header. * "desktopOnly" Always show the icon on desktop but hide when touch device detected. @@ -84227,6 +98888,7 @@ interface IgTreeGrid { /** * Settings related to content scrolling. + * */ scrollSettings?: IgGridScrollSettings; @@ -84438,6 +99100,11 @@ interface IgTreeGridMethods { * Returns the element holding the data records */ widget(): void; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggrid#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggrid#options:regional) option setter + */ changeRegional(): void; /** @@ -84965,36 +99632,42 @@ interface JQuery { /** * Gets the indentation (in pixels or percent) for a tree grid row. Nested indentation is achieved by calculating the level times the indentation value. Ex: '10px' or '5%'. Default is 30. + * */ igTreeGrid(optionLiteral: 'option', optionName: "indentation"): string; /** * Sets the indentation (in pixels or percent) for a tree grid row. Nested indentation is achieved by calculating the level times the indentation value. Ex: '10px' or '5%'. Default is 30. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "indentation", optionValue: string): void; /** * If initial indentation level is set then it is used to be calculated width of the data skip column(usually used when remote load on demand is enabled) + * */ igTreeGrid(optionLiteral: 'option', optionName: "initialIndentationLevel"): number; /** * If initial indentation level is set then it is used to be calculated width of the data skip column(usually used when remote load on demand is enabled) * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "initialIndentationLevel", optionValue: number): void; /** * Gets if rows(that have child rows) will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. + * */ igTreeGrid(optionLiteral: 'option', optionName: "showExpansionIndicator"): boolean; /** * Sets if rows(that have child rows) will have an expander image that will allow end users to expand and collapse them. This option can be set only at initialization. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "showExpansionIndicator", optionValue: boolean): void; @@ -85033,30 +99706,35 @@ interface JQuery { /** * Unique identifier used in a self-referencing flat data source. Used with primaryKey to create a relationship among flat data sources. + * */ igTreeGrid(optionLiteral: 'option', optionName: "foreignKey"): string; /** * Unique identifier used in a self-referencing flat data source. Used with primaryKey to create a relationship among flat data sources. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "foreignKey", optionValue: string): void; /** * Gets the depth down to which the tree grid would be expanded upon initial render. To expand all rows set value to -1. Default is -1. + * */ igTreeGrid(optionLiteral: 'option', optionName: "initialExpandDepth"): number; /** * Sets the depth down to which the tree grid would be expanded upon initial render. To expand all rows set value to -1. Default is -1. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "initialExpandDepth", optionValue: number): void; /** * Gets the foreign key value in the data source to treat as the root level once the grid is data bound. Defaults to -1 (which includes the entire data source) + * */ igTreeGrid(optionLiteral: 'option', optionName: "foreignKeyRootValue"): number|string; @@ -85064,6 +99742,7 @@ interface JQuery { /** * Sets the foreign key value in the data source to treat as the root level once the grid is data bound. Defaults to -1 (which includes the entire data source) * + * * @optionValue New value to be set. */ @@ -85071,18 +99750,21 @@ interface JQuery { /** * Specify whether to render non-data column which contains expander indicators + * */ igTreeGrid(optionLiteral: 'option', optionName: "renderExpansionIndicatorColumn"): boolean; /** * Specify whether to render non-data column which contains expander indicators * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "renderExpansionIndicatorColumn", optionValue: boolean): void; /** * A reference or name of a javascript function which changes first data cell - renders indentation according to databound level + * */ igTreeGrid(optionLiteral: 'option', optionName: "renderFirstDataCellFunction"): string|Object; @@ -85090,6 +99772,7 @@ interface JQuery { /** * A reference or name of a javascript function which changes first data cell - renders indentation according to databound level * + * * @optionValue New value to be set. */ @@ -85097,18 +99780,21 @@ interface JQuery { /** * Property name of the array of child data in a hierarchical data source. + * */ igTreeGrid(optionLiteral: 'option', optionName: "childDataKey"): string; /** * Property name of the array of child data in a hierarchical data source. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "childDataKey", optionValue: string): void; /** * A reference or name of a javascript function which renders expand indicators(called ONLY IF option renderExpansionIndicatorColumn is true) + * */ igTreeGrid(optionLiteral: 'option', optionName: "renderExpansionCellFunction"): string|Object; @@ -85116,6 +99802,7 @@ interface JQuery { /** * A reference or name of a javascript function which renders expand indicators(called ONLY IF option renderExpansionIndicatorColumn is true) * + * * @optionValue New value to be set. */ @@ -85123,44 +99810,101 @@ interface JQuery { /** * Gets to the tree grid if data is loaded on demand from a remote server. Default is false. + * */ igTreeGrid(optionLiteral: 'option', optionName: "enableRemoteLoadOnDemand"): boolean; /** * Sets to the tree grid if data is loaded on demand from a remote server. Default is false. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "enableRemoteLoadOnDemand", optionValue: boolean): void; /** * Options object to configure data source-specific settings + * */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceSettings"): IgTreeGridDataSourceSettings; /** * Options object to configure data source-specific settings * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceSettings", optionValue: IgTreeGridDataSourceSettings): void; igTreeGrid(optionLiteral: 'option', optionName: "locale"): IgTreeGridLocale; igTreeGrid(optionLiteral: 'option', optionName: "locale", optionValue: IgTreeGridLocale): void; + /** + * Determines row virtualization mode. For igTreeGrid only continuous virtualization can be used. + * + * continuous renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. + */ + igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMode"): string; + + /** + * Determines row virtualization mode. For igTreeGrid only continuous virtualization can be used. + * + * continuous renders a pre-defined number of rows in the grid. On scrolling the continuous virtualization loads another portion of rows and disposes the current one. + * + * @optionValue New value to be set. + */ + igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMode", optionValue: string): void; + /** * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. */ - igTreeGrid(optionLiteral: 'option', optionName: "restSettings"): any; + igTreeGrid(optionLiteral: 'option', optionName: "avgColumnWidth"): any; /** * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. * * @optionValue New value to be set. */ - igTreeGrid(optionLiteral: 'option', optionName: "restSettings", optionValue: any): void; + igTreeGrid(optionLiteral: 'option', optionName: "avgColumnWidth", optionValue: any): void; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGrid(optionLiteral: 'option', optionName: "avgRowHeight"): any; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGrid(optionLiteral: 'option', optionName: "avgRowHeight", optionValue: any): void; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGrid(optionLiteral: 'option', optionName: "columnVirtualization"): any; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGrid(optionLiteral: 'option', optionName: "columnVirtualization", optionValue: any): void; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGrid(optionLiteral: 'option', optionName: "restSettings"): IgTreeGridRestSettings; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGrid(optionLiteral: 'option', optionName: "restSettings", optionValue: IgTreeGridRestSettings): void; /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igTreeGrid(optionLiteral: 'option', optionName: "width"): string|number; @@ -85168,6 +99912,7 @@ interface JQuery { /** * Defines the grid width in pixels or percents. [Here you can find more info about setting igGrid width](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -85175,6 +99920,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). + * */ igTreeGrid(optionLiteral: 'option', optionName: "height"): string|number; @@ -85182,6 +99928,7 @@ interface JQuery { /** * This is the total height of the grid, including all UI elements - scroll container with data rows, header, footer, filter row - (if any), etc. [Here you can find more info about setting igGrid height](http://www.igniteui.com/help/iggrid-columns-and-layout#width-height). * + * * @optionValue New value to be set. */ @@ -85189,52 +99936,28 @@ interface JQuery { /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. + * */ igTreeGrid(optionLiteral: 'option', optionName: "autoAdjustHeight"): boolean; /** * If autoAdjustHeight is set to false, the [height](ui.iggrid#options:height) will be set only on the scrolling container, and all other UI elements such as paging footer / filter row / headers will add on top of that, so the total height of the grid will be more than this value - the height of the scroll container (content area) will not be dynamically calculated. Setting this option to false will usually result in a lot better initial rendering performance for large data sets ( > 1000 rows rendered at once, no [virtualization](ui.iggrid#options:virtualization) enabled), since no reflows will be made by browsers when accessing DOM properties such as offsetHeight. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "autoAdjustHeight", optionValue: boolean): void; /** - * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "avgRowHeight"): string|number; - - /** - * Used for [row virtualization](ui.iggrid#options:rowVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels (default) that will be used to calculate how many rows to render as the end user scrolls. Also all rows' height will be automatically set to this value. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). * - * @optionValue New value to be set. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "avgRowHeight", optionValue: string|number): void; - - /** - * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "avgColumnWidth"): string|number; - - /** - * Used for [column virtualization](ui.iggrid#options:columnVirtualization) in [fixed mode](ui.iggrid#options:virtualizationMode). This is the average value in pixels for a column width. - * - * @optionValue New value to be set. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "avgColumnWidth", optionValue: string|number): void; - - /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. */ igTreeGrid(optionLiteral: 'option', optionName: "defaultColumnWidth"): string|number; /** - * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. + * Default column width that will be set for all columns, that don't have [column width](ui.iggrid#options:columns.width) defined. Can also be set as '*', in which case the width auto-size based on the content of the column cells (including the header text). + * * * @optionValue New value to be set. */ @@ -85245,6 +99968,7 @@ interface JQuery { * If no [columns](ui.iggrid#options:columns) collection is defined, and autoGenerateColumns is set to true, [columns](ui.iggrid#options:columns) will be inferred from the data source before the [dataRendering](ui.iggrid#events:dataRendering) event is fired. The inferred [columns](ui.iggrid#options:columns) collection will be available to the developer for modification at [dataRendering](ui.iggrid#events:dataRendering). If autoGenerateColumns is not explicitly set and [columns](ui.iggrid#options:columns) has at least one column defined then autoGenerateColumns is automatically set to false. * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. + * */ igTreeGrid(optionLiteral: 'option', optionName: "autoGenerateColumns"): boolean; @@ -85253,86 +99977,70 @@ interface JQuery { * If autoGenerateColumns is true and there are columns defined auto-generated columns will render after the explicitly defined ones. * Since auto-generated columns don't have width defined consider setting [defaultColumnWidth](ui.iggrid#options:defaultColumnWidth) as well. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "autoGenerateColumns", optionValue: boolean): void; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) + * */ igTreeGrid(optionLiteral: 'option', optionName: "virtualization"): boolean; /** * Enables/disables column and row virtualization at the same time. Virtualization can greatly enhance rendering performance. If enabled, the number of actual rendered rows (DOM elements) will be constant and related to the visible viewport of the grid. As the end user scrolls, those DOM elements will be dynamically reused to render the new data. [Here you can find more info about the performance guidelines when using the igGrid](http://www.igniteui.com/help/iggrid-performance-guide) * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "virtualization", optionValue: boolean): void; - /** - * Determines row virtualization mode. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMode"): string; - - /** - * Determines row virtualization mode. - * - * @optionValue New value to be set. - */ - - igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMode", optionValue: string): void; - /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) + * */ igTreeGrid(optionLiteral: 'option', optionName: "rowVirtualization"): boolean; /** * Enables virtualization for rows only. [Here you can find more info about igGrid row virtualization](http://www.igniteui.com/help/iggrid-virtualization-overview) * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "rowVirtualization", optionValue: boolean): void; - /** - * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". - */ - igTreeGrid(optionLiteral: 'option', optionName: "columnVirtualization"): boolean; - - /** - * Enables virtualization for columns only. Column virtualization can work only in combination with fixed row virtalization. Setting columnVirtualization to true will automatically set [virtualization](ui.iggrid#options:virtualization) to true and [virtualizationMode](ui.iggrid#options:virtualizationMode) to "fixed". - * - * @optionValue New value to be set. - */ - igTreeGrid(optionLiteral: 'option', optionName: "columnVirtualization", optionValue: boolean): void; - /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). + * */ igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep"): number; /** * Number of pixels to scroll the grid by, when virtualization is enabled, and mouse wheel scrolling is performed over the virtual grid area. If "null" the step will be equal to the [avgRowHeight](ui.iggrid#options:avgRowHeight). * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "virtualizationMouseWheelStep", optionValue: number): void; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. + * */ igTreeGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights"): boolean; /** * If this option is set to true, the height of the grid row will be calculated automatically based on the [avgRowHeight](ui.iggrid#options:avgRowHeight) and the visible virtual records. If no [avgRowHeight](ui.iggrid#options:avgRowHeight) is specified, it will be calculated automatically at runtime. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "adjustVirtualHeights", optionValue: boolean): void; /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. + * */ igTreeGrid(optionLiteral: 'option', optionName: "templatingEngine"): string; @@ -85340,6 +100048,7 @@ interface JQuery { /** * The templating engine that will be used to render the grid [column templates](ui.iggrid#options:columns.template). [Here you can find](http://www.infragistics.com/community/blogs/marina_stoyanova/archive/2014/05/30/using-different-template-engines-with-ignite-ui-controls.aspx) how to use templating engines other than igTemplating and jsRender. * + * * @optionValue New value to be set. */ @@ -85347,18 +100056,21 @@ interface JQuery { /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. + * */ igTreeGrid(optionLiteral: 'option', optionName: "columns"): IgGridColumn[]; /** * An array of column objects. Checkout the [Columns and Layout](http://www.igniteui.com/help/iggrid-columns-and-layout#defining-columns) topic for details on configuring the columns array. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "columns", optionValue: IgGridColumn[]): void; /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself + * */ igTreeGrid(optionLiteral: 'option', optionName: "dataSource"): Array|Object|string; @@ -85366,6 +100078,7 @@ interface JQuery { /** * Can be any valid data source accepted by [$.ig.DataSource](ig.datasource), or an instance of an $.ig.DataSource itself * + * * @optionValue New value to be set. */ @@ -85373,47 +100086,53 @@ interface JQuery { /** * Gets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). + * */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceUrl"): string; /** * Sets a remote URL as a data source, from which data will be retrieved using the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceUrl", optionValue: string): void; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). + * */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceType"): string; /** * Explicitly set data source type (such as "json"). Please refer to the documentation of [$.ig.DataSource type](ig.datasource#options:settings.type). * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "dataSourceType", optionValue: string): void; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. + * */ igTreeGrid(optionLiteral: 'option', optionName: "responseDataKey"): string; /** * See [$.ig.DataSource responseDataKey](ig.datasource#options:settings.responseDataKey). This is the property in the responses where data records are held, if the response is wrapped. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "responseDataKey", optionValue: string): void; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. */ igTreeGrid(optionLiteral: 'option', optionName: "responseTotalRecCountKey"): string; /** - * See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. + * This option has been deprecated. See [$.ig.DataSource responseTotalRecCountKey](ig.datasource#options:settings.responseTotalRecCountKey). Property in the response specifying the total number of records on the server. * * @optionValue New value to be set. */ @@ -85421,156 +100140,182 @@ interface JQuery { /** * Gets the HTTP verb to be used to issue the requests to a remote data source. + * */ igTreeGrid(optionLiteral: 'option', optionName: "requestType"): string; /** * Sets the HTTP verb to be used to issue the requests to a remote data source. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "requestType", optionValue: string): void; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType + * */ igTreeGrid(optionLiteral: 'option', optionName: "responseContentType"): string; /** * Content type of the response. See http://api.jquery.com/jQuery.ajax/ => contentType * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "responseContentType", optionValue: string): void; /** * Controls the visibility of the grid header. + * */ igTreeGrid(optionLiteral: 'option', optionName: "showHeader"): boolean; /** * Controls the visibility of the grid header. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "showHeader", optionValue: boolean): void; /** * Controls the visibility of the grid footer. + * */ igTreeGrid(optionLiteral: 'option', optionName: "showFooter"): boolean; /** * Controls the visibility of the grid footer. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "showFooter", optionValue: boolean): void; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. + * */ igTreeGrid(optionLiteral: 'option', optionName: "fixedHeaders"): boolean; /** * Headers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedHeaders will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "fixedHeaders", optionValue: boolean): void; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. + * */ igTreeGrid(optionLiteral: 'option', optionName: "fixedFooters"): boolean; /** * Footers will be fixed if this option is set to true, and only the grid data will be scrollable. If [virtualization](ui.iggrid#options:virtualization) is enabled, fixedFooters will always act as if it's true, no matter which value is set. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "fixedFooters", optionValue: boolean): void; /** * Caption text that will be shown above the grid header. + * */ igTreeGrid(optionLiteral: 'option', optionName: "caption"): string; /** * Caption text that will be shown above the grid header. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "caption", optionValue: string): void; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) + * */ igTreeGrid(optionLiteral: 'option', optionName: "features"): IgGridFeature[]; /** * List of grid feature definitions: sorting, paging, etc. Each feature goes with its separate options that are documented for the feature accordingly. [Here you can find detailed documentation for all igGrid features](http://www.igniteui.com/help/iggrid-features-landing-page) * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "features", optionValue: IgGridFeature[]): void; /** * Initial tabIndex attribute that will be set on all focusable elements. + * */ igTreeGrid(optionLiteral: 'option', optionName: "tabIndex"): number; /** * Initial tabIndex attribute that will be set on all focusable elements. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. + * */ igTreeGrid(optionLiteral: 'option', optionName: "localSchemaTransform"): boolean; /** * If this option is set to false, the data to which the grid is bound will be used "as is" with no additional transformations based on [columns](ui.iggrid#options:columns) defined. Otherwise only the subset of data properties used in the [columns](ui.iggrid#options:columns) defined will be extracted in a new object and used. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "localSchemaTransform", optionValue: boolean): void; /** * Key of the column containing unique identifiers for the data records. + * */ igTreeGrid(optionLiteral: 'option', optionName: "primaryKey"): string; /** * Key of the column containing unique identifiers for the data records. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "primaryKey", optionValue: string): void; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. + * */ igTreeGrid(optionLiteral: 'option', optionName: "serializeTransactionLog"): boolean; /** * If true, the transaction log will always be sent in the request for remote data, by the data source. Also this means that if there are values in the log, a POST will be performed instead of GET. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "serializeTransactionLog", optionValue: boolean): void; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. + * */ igTreeGrid(optionLiteral: 'option', optionName: "autoCommit"): boolean; /** * Automatically commits the transactions as rows/cells are being edited to the client data source. A [saveChanges](ui.iggrid#methods:saveChanges) call still needs to be performed in order to commit the transactions to a server-side data source. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "autoCommit", optionValue: boolean): void; @@ -85581,6 +100326,7 @@ interface JQuery { * If a new row is added, edited, then deleted, there will be no transaction added to the log. * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. + * */ igTreeGrid(optionLiteral: 'option', optionName: "aggregateTransactions"): boolean; @@ -85591,12 +100337,14 @@ interface JQuery { * If several edits are made to a row or an individual cell, this should result in a single transaction. * Note: This option takes effect only when [autoCommit](ui.iggrid#options:autoCommit) is set to false. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "aggregateTransactions", optionValue: boolean): void; /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) + * */ igTreeGrid(optionLiteral: 'option', optionName: "autoFormat"): string|boolean; @@ -85604,6 +100352,7 @@ interface JQuery { /** * Sets gets ability to automatically format text in cells for numeric and date columns. The format patterns and rules for numbers and dates are defined in $.ig.regional.defaults object. [Here column formatting is explained in details](http://www.igniteui.com/help/iggrid-columns-and-layout#column-formatting) * + * * @optionValue New value to be set. */ @@ -85611,72 +100360,84 @@ interface JQuery { /** * Gets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). + * */ igTreeGrid(optionLiteral: 'option', optionName: "renderCheckboxes"): boolean; /** * Sets ability to render checkboxes and use checkbox editor when dataType of a column is "bool". Checkboxes are not rendered for boolean values in columns with a [column template](ui.iggrid#options:columns.template). * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "renderCheckboxes", optionValue: boolean): void; /** * URL to which updating requests will be made. + * */ igTreeGrid(optionLiteral: 'option', optionName: "updateUrl"): string; /** * URL to which updating requests will be made. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "updateUrl", optionValue: string): void; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). + * */ igTreeGrid(optionLiteral: 'option', optionName: "alternateRowStyles"): boolean; /** * Enables/disables rendering of alternating row styles (odd and even rows receive different styling). * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "alternateRowStyles", optionValue: boolean): void; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. + * */ igTreeGrid(optionLiteral: 'option', optionName: "autofitLastColumn"): boolean; /** * If set to true and all columns' widths are specified and their combined width is less than the grid width then the last column width will be automatically adjusted to fill the remaining empty space of the grid. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "autofitLastColumn", optionValue: boolean): void; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. + * */ igTreeGrid(optionLiteral: 'option', optionName: "enableHoverStyles"): boolean; /** * Enables/disables rendering of hover styles when the mouse is over a record. This can be useful in templating scenarios, for example, where we don't want to apply hover styling to templated content. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "enableHoverStyles", optionValue: boolean): void; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. + * */ igTreeGrid(optionLiteral: 'option', optionName: "enableUTCDates"): boolean; /** * Enables/Disables serializing client date as UTC ISO 8061 string instead of using the local time and zone values. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "enableUTCDates", optionValue: boolean): void; @@ -85684,6 +100445,7 @@ interface JQuery { /** * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. + * */ igTreeGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns"): boolean; @@ -85691,36 +100453,42 @@ interface JQuery { * Merge unbound columns values inside data source when data source is remote. If true then the unbound columns are merged to the data source at runtime on the server. Note that data source is expanded with the new data and this could cause performance issues when the data is huge. If mergeUnboundColumns is false then the unbound data is sent and merged on the client. This option is used by the [igGrid MVC Helper](http://www.igniteui.com/help/iggrid-developing-asp-net-mvc-applications-with-iggrid). * Checkout [Populating Unbound Columns Remotely (igGrid)](http://www.igniteui.com/help/iggrid-unboundcolumns-populating-with-data-remotely) topic for more information. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "mergeUnboundColumns", optionValue: boolean): void; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. + * */ igTreeGrid(optionLiteral: 'option', optionName: "jsonpRequest"): boolean; /** * When dataSource is a remote URL, defines whether to set the type of the remote data source to JSONP. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "jsonpRequest", optionValue: boolean): void; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. + * */ igTreeGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck"): boolean; /** * Enables/disables grid adjusting its dimensions when its [width](ui.iggrid#options:width) and/or [height](ui.iggrid#options:height) is set in percent (%) and grid parent DOM container is resized. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "enableResizeContainerCheck", optionValue: boolean): void; /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. + * */ igTreeGrid(optionLiteral: 'option', optionName: "featureChooserIconDisplay"): string; @@ -85728,6 +100496,7 @@ interface JQuery { /** * Configures how the feature chooser icon should display on header cells - e.g. to display as gear icon or not. * + * * @optionValue New value to be set. */ @@ -85735,12 +100504,14 @@ interface JQuery { /** * Settings related to content scrolling. + * */ igTreeGrid(optionLiteral: 'option', optionName: "scrollSettings"): IgGridScrollSettings; /** * Settings related to content scrolling. * + * * @optionValue New value to be set. */ igTreeGrid(optionLiteral: 'option', optionName: "scrollSettings", optionValue: IgGridScrollSettings): void; @@ -86100,7 +100871,7 @@ interface JQuery { } interface IgTreeGridMultiColumnHeaders { /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. */ inherit?: boolean; @@ -86131,6 +100902,11 @@ interface IgTreeGridMultiColumnHeaders { } interface IgTreeGridMultiColumnHeadersMethods { destroy(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.iggridmulticolumnheader#options:language) + * Note that this method is for rare scenarios, see [language](ui.iggridmulticolumnheader#options:language) or [locale](ui.iggridmulticolumnheader#options:locale) option setter + */ changeLocale(): void; /** @@ -86178,12 +100954,12 @@ interface JQuery { igTreeGridMultiColumnHeaders(methodName: "getMultiColumnHeaders"): any[]; /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. */ igTreeGridMultiColumnHeaders(optionLiteral: 'option', optionName: "inherit"): boolean; /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. * * @optionValue New value to be set. */ @@ -86245,11 +101021,13 @@ interface JQuery { interface IgTreeGridPagingLocale { /** * Sets/gets the text message shown while loading content of the context row(while processing breadcrumb/immediate parent row). It is set via $.html(). If set to null loading message is not shown. + * */ contextRowLoadingText?: string; /** * Sets/gets the content of the context row when the first record in the page is root(hasn't ancestors) record. It is set via $.html() + * */ contextRowRootText?: string; @@ -86320,6 +101098,7 @@ interface IgTreeGridPaging { /** * Sets gets paging mode. * + * * Valid values: * "rootLevelOnly" Only pages records at the root of the tree grid are displayed. * "allLevels" includes all visible records in paging. @@ -86329,6 +101108,7 @@ interface IgTreeGridPaging { /** * When data flows to the next page there are a couple of different modes that can help communicate the context of a leaf level row. When mode option is "rootLevelOnly" then the context row always shows the value of the contextRowRootText option. * + * * Valid values: * "none" Does not render the contextual row * "parent" Renders a read-only representation of the immediate parent row @@ -86352,48 +101132,62 @@ interface IgTreeGridPaging { /** * Sets/gets the column key of ancestor to be shown in the breadcrumb trail. It is used only when contextRowMode is breadcrumb + * */ breadcrumbKey?: string; /** * Sets/gets (it is set via $.html()) delimiter between ancestors in the breadcrumb trail. It is used only when contextRowMode is breadcrumb + * */ breadcrumbDelimiter?: string; /** * Reference to the (or name of )function, called before rendering context row content(rendering loading message/bread crumb/parent row). The function takes 4 arguments- dataRow, $textArea- jQuery representation of the text area of the context row(when mode is loading/breadcrumb then it is otherwise ), array of parent rows and context mode - "loading"|"breadcrumb"|"parent". When the function returns string it is used as html set in $textArea. If the function does not return result or returns false/empty string then rendering of the content of the context row should be handled by the developer(similar to canceling rendering of context row content). + * */ renderContextRowFunc?: Function|string; locale?: IgTreeGridPagingLocale; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * Number of records loaded and displayed per page. + * */ pageSize?: number; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. + * */ recordCountKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. + * */ pageSizeUrlKey?: string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. + * */ pageIndexUrlKey?: string; /** * Current page index that's bound in the data source and rendered in the UI. + * */ currentPageIndex?: number; /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). * + * * Valid values: * "remote" Paging is performed by a remote end-point. * "local" Paging is performed locally by the [$.ig.DataSource](ig.datasource). @@ -86402,6 +101196,7 @@ interface IgTreeGridPaging { /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. + * */ showPageSizeDropDown?: boolean; @@ -86514,6 +101309,7 @@ interface IgTreeGridPaging { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. * + * * Valid values: * "above" The page size drop down will be rendered above the grid header. * "inpager" The page size drop down will be rendered next to page links. @@ -86522,54 +101318,58 @@ interface IgTreeGridPaging { /** * Option specifying whether to show summary label for the currently rendered records or not. + * */ showPagerRecordsLabel?: boolean; /** * Option specifying whether to render the first and last page navigation buttons. + * */ showFirstLastPages?: boolean; /** * Option specifying whether to render the previous and next page navigation buttons. + * */ showPrevNextPages?: boolean; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. + * */ pageSizeList?: any; /** * Sets/Gets the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. + * */ pageCountLimit?: number; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. + * */ visiblePageCount?: number; /** * Drop down width for the page size and page index drop downs. + * */ defaultDropDownWidth?: number; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. + * */ delayOnPageChanged?: number; /** * Enables/disables paging persistence between states. + * */ persist?: boolean; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired before rendering context row content. * Return false in order to cancel this event. @@ -86595,7 +101395,6 @@ interface IgTreeGridPaging { /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. */ pageSizeChanging?: PageSizeChangingEvent; @@ -86621,6 +101420,10 @@ interface IgTreeGridPaging { [optionName: string]: any; } interface IgTreeGridPagingMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtreegridpaging#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtreegridpaging#options:language) or [locale](ui.igtreegridpaging#options:locale) option setter + */ changeLocale(): void; /** @@ -86637,6 +101440,8 @@ interface IgTreeGridPagingMethods { * Get jQuery representation of element that holds text area of the context row. If there isn't such element - creates it. */ getContextRowTextArea(): Object; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Gets/Sets the current page index, delegates data binding and paging to [$.ig.DataSource](ig.datasource). @@ -86661,11 +101466,14 @@ interface JQuery { igTreeGridPaging(methodName: "destroy"): void; igTreeGridPaging(methodName: "getContextRow"): Object; igTreeGridPaging(methodName: "getContextRowTextArea"): Object; + igTreeGridPaging(methodName: "changeGlobalLanguage"): void; + igTreeGridPaging(methodName: "changeGlobalRegional"): void; igTreeGridPaging(methodName: "pageIndex", index?: number): number; igTreeGridPaging(methodName: "pageSize", size?: number): number; /** * Sets gets paging mode. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "mode"): string; @@ -86673,6 +101481,7 @@ interface JQuery { /** * Sets gets paging mode. * + * * @optionValue New value to be set. */ @@ -86680,6 +101489,7 @@ interface JQuery { /** * When data flows to the next page there are a couple of different modes that can help communicate the context of a leaf level row. When mode option is "rootLevelOnly" then the context row always shows the value of the contextRowRootText option. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "contextRowMode"): string; @@ -86687,6 +101497,7 @@ interface JQuery { /** * When data flows to the next page there are a couple of different modes that can help communicate the context of a leaf level row. When mode option is "rootLevelOnly" then the context row always shows the value of the contextRowRootText option. * + * * @optionValue New value to be set. */ @@ -86726,30 +101537,35 @@ interface JQuery { /** * Sets/gets the column key of ancestor to be shown in the breadcrumb trail. It is used only when contextRowMode is breadcrumb + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "breadcrumbKey"): string; /** * Sets/gets the column key of ancestor to be shown in the breadcrumb trail. It is used only when contextRowMode is breadcrumb * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "breadcrumbKey", optionValue: string): void; /** * Sets/gets (it is set via $.html()) delimiter between ancestors in the breadcrumb trail. It is used only when contextRowMode is breadcrumb + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "breadcrumbDelimiter"): string; /** * Sets/gets (it is set via $.html()) delimiter between ancestors in the breadcrumb trail. It is used only when contextRowMode is breadcrumb * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "breadcrumbDelimiter", optionValue: string): void; /** * Reference to the (or name of )function, called before rendering context row content(rendering loading message/bread crumb/parent row). The function takes 4 arguments- dataRow, $textArea- jQuery representation of the text area of the context row(when mode is loading/breadcrumb then it is otherwise ), array of parent rows and context mode - "loading"|"breadcrumb"|"parent". When the function returns string it is used as html set in $textArea. If the function does not return result or returns false/empty string then rendering of the content of the context row should be handled by the developer(similar to canceling rendering of context row content). + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "renderContextRowFunc"): Function|string; @@ -86757,6 +101573,7 @@ interface JQuery { /** * Reference to the (or name of )function, called before rendering context row content(rendering loading message/bread crumb/parent row). The function takes 4 arguments- dataRow, $textArea- jQuery representation of the text area of the context row(when mode is loading/breadcrumb then it is otherwise ), array of parent rows and context mode - "loading"|"breadcrumb"|"parent". When the function returns string it is used as html set in $textArea. If the function does not return result or returns false/empty string then rendering of the content of the context row should be handled by the developer(similar to canceling rendering of context row content). * + * * @optionValue New value to be set. */ @@ -86764,68 +101581,91 @@ interface JQuery { igTreeGridPaging(optionLiteral: 'option', optionName: "locale"): IgTreeGridPagingLocale; igTreeGridPaging(optionLiteral: 'option', optionName: "locale", optionValue: IgTreeGridPagingLocale): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridPaging(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridPaging(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Number of records loaded and displayed per page. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSize"): number; /** * Number of records loaded and displayed per page. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSize", optionValue: number): void; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "recordCountKey"): string; /** * The property in the response data, when using remote data source, that will hold the total number of records in the data source. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "recordCountKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page size. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeUrlKey", optionValue: string): void; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageIndexUrlKey"): string; /** * Denotes the name of the encoded URL parameter that will state what is the currently requested page index. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageIndexUrlKey", optionValue: string): void; /** * Current page index that's bound in the data source and rendered in the UI. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "currentPageIndex"): number; /** * Current page index that's bound in the data source and rendered in the UI. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "currentPageIndex", optionValue: number): void; /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "type"): string; @@ -86833,6 +101673,7 @@ interface JQuery { /** * Type of paging. Delegates all paging functionality to the [$.ig.DataSource](ig.datasource). * + * * @optionValue New value to be set. */ @@ -86840,12 +101681,14 @@ interface JQuery { /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPageSizeDropDown"): boolean; /** * If false, a dropdown allowing to change the page size will not be rendered in the UI. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPageSizeDropDown", optionValue: boolean): void; @@ -87098,6 +101941,7 @@ interface JQuery { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeDropDownLocation"): string; @@ -87105,6 +101949,7 @@ interface JQuery { /** * Page size dropdown location, when [showPageSizeDropDown](ui.iggridpaging#options:showPageSizeDropDown) is set to true. Can be rendered above the grid header or inside the pager, next to the page links. * + * * @optionValue New value to be set. */ @@ -87112,123 +101957,129 @@ interface JQuery { /** * Option specifying whether to show summary label for the currently rendered records or not. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPagerRecordsLabel"): boolean; /** * Option specifying whether to show summary label for the currently rendered records or not. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPagerRecordsLabel", optionValue: boolean): void; /** * Option specifying whether to render the first and last page navigation buttons. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "showFirstLastPages"): boolean; /** * Option specifying whether to render the first and last page navigation buttons. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "showFirstLastPages", optionValue: boolean): void; /** * Option specifying whether to render the previous and next page navigation buttons. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPrevNextPages"): boolean; /** * Option specifying whether to render the previous and next page navigation buttons. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "showPrevNextPages", optionValue: boolean): void; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeList"): any; /** * Predefined page sizes that are available to the end user to switch their grid paging to, through a drop down in the grid header. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeList", optionValue: any): void; /** * Sets/Gets the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageCountLimit"): number; /** * Sets/ the number of pages which if exceeded a drop down list of page indices is displayed. If the number of pages is less than or equal to this option then buttons for each page are displayed. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageCountLimit", optionValue: number): void; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "visiblePageCount"): number; /** * Number of page buttons, adjacent to and including the [active page](ui.iggridpaging#options:currentPageIndex), that are constantly visible. For the invisible pages, previous and next buttons are used. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "visiblePageCount", optionValue: number): void; /** * Drop down width for the page size and page index drop downs. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "defaultDropDownWidth"): number; /** * Drop down width for the page size and page index drop downs. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "defaultDropDownWidth", optionValue: number): void; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "delayOnPageChanged"): number; /** * Time in milliseconds for which page drop down will wait for keystrokes before changing the page. * + * * @optionValue New value to be set. */ igTreeGridPaging(optionLiteral: 'option', optionName: "delayOnPageChanged", optionValue: number): void; /** * Enables/disables paging persistence between states. + * */ igTreeGridPaging(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables paging persistence between states. * - * @optionValue New value to be set. - */ - igTreeGridPaging(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridPaging(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridPaging(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridPaging(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Event fired before rendering context row content. @@ -87285,14 +102136,12 @@ interface JQuery { /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. */ igTreeGridPaging(optionLiteral: 'option', optionName: "pageSizeChanging"): PageSizeChangingEvent; /** * Event fired when the page size is about to be changed from the page size dropdown. * Return false in order to cancel page size changing. - * Use ui.newPageSize to get new page size. * * @optionValue Define event handler function. */ @@ -87342,31 +102191,35 @@ interface JQuery { igTreeGridPaging(methodName: string, ...methodParams: any[]): any; } interface IgTreeGridResizing { + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * Resize the column to the size of the longest currently visible cell value. + * */ allowDoubleClickToResize?: boolean; /** * Specifies whether the resizing should be deferred until the user finishes resizing or applied immediately. + * */ deferredResizing?: boolean; /** * A list of column settings that specifies resizing options on a per column basis. + * */ columnSettings?: IgGridResizingColumnSetting[]; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. + * */ handleThreshold?: number; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired before a resizing operation is executed. */ @@ -87389,6 +102242,8 @@ interface IgTreeGridResizing { } interface IgTreeGridResizingMethods { destroy(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Resizes a column to a specified width in pixels, percents or auto if no width is specified. @@ -87404,67 +102259,77 @@ interface JQuery { interface JQuery { igTreeGridResizing(methodName: "destroy"): void; + igTreeGridResizing(methodName: "changeGlobalLanguage"): void; + igTreeGridResizing(methodName: "changeGlobalRegional"): void; igTreeGridResizing(methodName: "resize", column: Object, width?: Object): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridResizing(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridResizing(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Resize the column to the size of the longest currently visible cell value. + * */ igTreeGridResizing(optionLiteral: 'option', optionName: "allowDoubleClickToResize"): boolean; /** * Resize the column to the size of the longest currently visible cell value. * + * * @optionValue New value to be set. */ igTreeGridResizing(optionLiteral: 'option', optionName: "allowDoubleClickToResize", optionValue: boolean): void; /** * Gets whether the resizing should be deferred until the user finishes resizing or applied immediately. + * */ igTreeGridResizing(optionLiteral: 'option', optionName: "deferredResizing"): boolean; /** * Sets whether the resizing should be deferred until the user finishes resizing or applied immediately. * + * * @optionValue New value to be set. */ igTreeGridResizing(optionLiteral: 'option', optionName: "deferredResizing", optionValue: boolean): void; /** * A list of column settings that specifies resizing options on a per column basis. + * */ igTreeGridResizing(optionLiteral: 'option', optionName: "columnSettings"): IgGridResizingColumnSetting[]; /** * A list of column settings that specifies resizing options on a per column basis. * + * * @optionValue New value to be set. */ igTreeGridResizing(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridResizingColumnSetting[]): void; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. + * */ igTreeGridResizing(optionLiteral: 'option', optionName: "handleThreshold"): number; /** * The width in pixels of the resizing handle which is position at the right side of each resizeable column header. * - * @optionValue New value to be set. - */ - igTreeGridResizing(optionLiteral: 'option', optionName: "handleThreshold", optionValue: number): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridResizing(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridResizing(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridResizing(optionLiteral: 'option', optionName: "handleThreshold", optionValue: number): void; /** * Event fired before a resizing operation is executed. @@ -87511,6 +102376,7 @@ interface IgTreeGridRowSelectors { /** * Determines row numbering format. * + * * Valid values: * "sequential" Defines numbering format to be the index of the visible records. * "hierarchical" Defines numbering format to be concatenation of the parent and children indexes. @@ -87520,30 +102386,40 @@ interface IgTreeGridRowSelectors { /** * Gets the type of checkboxes rendered in the row selector. Can be set only at initialization. * + * * Valid values: * "biState" Checkboxes are rendered and support two states(checked and unchecked). Checkboxes do not cascade down or up in this mode. * "triState" Checkboxes are rendered and support three states(checked, partial and unchecked). Checkboxes cascade up and down in this mode. */ checkBoxMode?: string; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * Determines whether the row selectors column should contain row numbering + * */ enableRowNumbering?: boolean; /** * Determines whether the row selectors column should contain checkboxes + * */ enableCheckBoxes?: boolean; /** * The seed to be added to the default numbering + * */ rowNumberingSeed?: number; /** * defines width of the row selector`s column in pixels or percentage. * + * * Valid values: * "string" The row selector column width can be set in pixels (px) and percentage (%) * "number" The row selector width can be set as a number @@ -87555,21 +102431,19 @@ interface IgTreeGridRowSelectors { * Determines whether the selection feature is required for the row selectors. If set to "false" * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. + * */ requireSelection?: boolean; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. + * */ showCheckBoxesOnFocus?: boolean; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. + * */ enableSelectAllForPaging?: boolean; @@ -87579,6 +102453,7 @@ interface IgTreeGridRowSelectors { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have selected ${checked} records. Select all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ selectAllForPagingTemplate?: string; @@ -87588,6 +102463,7 @@ interface IgTreeGridRowSelectors { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ deselectAllForPagingTemplate?: string; locale?: IgGridRowSelectorsLocale; @@ -87614,6 +102490,11 @@ interface IgTreeGridRowSelectors { } interface IgTreeGridRowSelectorsMethods { destroy(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtreegridrowselectors#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtreegridrowselectors#options:language) or [locale](ui.igtreegridrowselectors#options:locale) option setter + */ changeLocale(): void; /** @@ -87663,6 +102544,8 @@ interface IgTreeGridRowSelectorsMethods { /** * Returns the check state of the row by id. + * + * @param rowId */ checkStateById(rowId: Object): string; } @@ -87684,6 +102567,7 @@ interface JQuery { /** * Determines row numbering format. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "rowSelectorNumberingMode"): string; @@ -87691,6 +102575,7 @@ interface JQuery { /** * Determines row numbering format. * + * * @optionValue New value to be set. */ @@ -87698,6 +102583,7 @@ interface JQuery { /** * Gets the type of checkboxes rendered in the row selector. Can be set only at initialization. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "checkBoxMode"): string; @@ -87705,49 +102591,69 @@ interface JQuery { /** * The type of checkboxes rendered in the row selector. Can be set only at initialization. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "checkBoxMode", optionValue: string): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridRowSelectors(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridRowSelectors(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Determines whether the row selectors column should contain row numbering + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableRowNumbering"): boolean; /** * Determines whether the row selectors column should contain row numbering * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableRowNumbering", optionValue: boolean): void; /** * Determines whether the row selectors column should contain checkboxes + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableCheckBoxes"): boolean; /** * Determines whether the row selectors column should contain checkboxes * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableCheckBoxes", optionValue: boolean): void; /** * The seed to be added to the default numbering + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "rowNumberingSeed"): number; /** * The seed to be added to the default numbering * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "rowNumberingSeed", optionValue: number): void; /** * Defines width of the row selector`s column in pixels or percentage. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "rowSelectorColumnWidth"): string|number; @@ -87755,6 +102661,7 @@ interface JQuery { /** * Defines width of the row selector`s column in pixels or percentage. * + * * @optionValue New value to be set. */ @@ -87764,6 +102671,7 @@ interface JQuery { * Determines whether the selection feature is required for the row selectors. If set to "false" * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "requireSelection"): boolean; @@ -87772,42 +102680,35 @@ interface JQuery { * the widget will not check for Selection availability. If set to "true" an exception will be thrown if Selection is * not available. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "requireSelection", optionValue: boolean): void; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "showCheckBoxesOnFocus"): boolean; /** * Determines whether checkboxes will be shown only if row selectors are on focus/selected. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "showCheckBoxesOnFocus", optionValue: boolean): void; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridRowSelectors(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - * - * @optionValue New value to be set. - */ - igTreeGridRowSelectors(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; - /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableSelectAllForPaging"): boolean; /** * Enables/disables showing an overlay after clicking on the header checkbox, which allows selecting all records from all pages. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "enableSelectAllForPaging", optionValue: boolean): void; @@ -87818,6 +102719,7 @@ interface JQuery { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have selected ${checked} records. Select all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "selectAllForPagingTemplate"): string; @@ -87828,6 +102730,7 @@ interface JQuery { * The default template is "
You have selected ${checked} records. Select all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "selectAllForPagingTemplate", optionValue: string): void; @@ -87838,6 +102741,7 @@ interface JQuery { * Element with attribute data-rs-close-all is used for closing the overlay * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. + * */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "deselectAllForPagingTemplate"): string; @@ -87848,6 +102752,7 @@ interface JQuery { * The default template is "
You have deselected ${unchecked} records. Deselect all ${totalRecordsCount} records
" * There is also ${allCheckedRecords} parameter which is not used in the default template, but it represents the checked records from all pages. * + * * @optionValue New value to be set. */ igTreeGridRowSelectors(optionLiteral: 'option', optionName: "deselectAllForPagingTemplate", optionValue: string): void; @@ -87898,17 +102803,20 @@ interface JQuery { interface IgTreeGridSelection { /** * Enables / Disables multiple selection of cells and rows - depending on the mode + * */ multipleSelection?: boolean; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection + * */ mouseDragSelect?: boolean; /** * Defines type of the selection. * + * * Valid values: * "row" Defines row selection mode. * "cell" Defines cell selection mode. @@ -87917,36 +102825,43 @@ interface IgTreeGridSelection { /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel + * */ activation?: boolean; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected + * */ wrapAround?: boolean; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid + * */ skipChildren?: boolean; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. + * */ multipleCellSelectOnClick?: boolean; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * */ touchDragSelect?: boolean; /** * Enables / disables selection persistance between states. + * */ persist?: boolean; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' + * */ allowMultipleRangeSelection?: boolean; @@ -88131,30 +103046,35 @@ interface JQuery { /** * Enables / Disables multiple selection of cells and rows - depending on the mode + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "multipleSelection"): boolean; /** * Enables / Disables multiple selection of cells and rows - depending on the mode * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "multipleSelection", optionValue: boolean): void; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "mouseDragSelect"): boolean; /** * Enables / disables selection via dragging with the mouse - only applicable for cell selection * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "mouseDragSelect", optionValue: boolean): void; /** * Defines type of the selection. + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "mode"): string; @@ -88162,6 +103082,7 @@ interface JQuery { /** * Defines type of the selection. * + * * @optionValue New value to be set. */ @@ -88169,59 +103090,69 @@ interface JQuery { /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "activation"): boolean; /** * Enables / disables activation of rows and cells. Activation implies ability to perform navigating through cells and rows via the keyboard, and selecting rows and cells using CTRL / SHIFT - in the way cells/rows are selected in Ms Excel * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "activation", optionValue: boolean): void; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "wrapAround"): boolean; /** * If wrapAround is enabled and selection is on the first or last row or cell, then when the end user tries to go beyond that, the first/last row or cell will be selected * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "wrapAround", optionValue: boolean): void; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "skipChildren"): boolean; /** * If true will basically skip going into child grids with down / up / right / left arrow keys, when in the context of hierarchical grid * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "skipChildren", optionValue: boolean): void; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "multipleCellSelectOnClick"): boolean; /** * If true multiple selection of cells is done as if CTRL is being held. the option is disregarded if mode is set to row. this option is useful for enabling multiple discountinued selection on touch environments. * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "multipleCellSelectOnClick", optionValue: boolean): void; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "touchDragSelect"): boolean; /** - * Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * Deprecated="true" Enables / disables selection via continuous touch event - only applicable for cell selection and touch-supported environments + * * * @optionValue New value to be set. */ @@ -88229,24 +103160,28 @@ interface JQuery { /** * Enables / disables selection persistance between states. + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables / disables selection persistance between states. * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' + * */ igTreeGridSelection(optionLiteral: 'option', optionName: "allowMultipleRangeSelection"): boolean; /** * Enables / disables the ability to ctrl drag multiple selection windows when selection mode is 'cell' * + * * @optionValue New value to be set. */ igTreeGridSelection(optionLiteral: 'option', optionName: "allowMultipleRangeSelection", optionValue: boolean): void; @@ -88363,17 +103298,25 @@ interface JQuery { interface IgTreeGridSorting { /** * Specifies from which data bound level to be applied sorting - 0 is the first level + * */ fromLevel?: number; /** * Specifies to which data bound level to be applied sorting - if -1 sorting should be applied to the last data bound level + * */ toLevel?: number; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * Defines local or remote sorting operations. * + * * Valid values: * "remote" Sorting is performed remotely as a server-side operation. * "local" Sorting is performed locally by the [$.ig.DataSource](ig.datasource) component. @@ -88382,32 +103325,38 @@ interface IgTreeGridSorting { /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. + * */ caseSensitive?: boolean; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. + * */ applySortedColumnCss?: boolean; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc + * */ sortUrlKey?: string; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc + * */ sortUrlKeyAscValue?: string; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc + * */ sortUrlKeyDescValue?: string; /** * Defines single column sorting or multiple column sorting. * + * * Valid values: * "single" Only a single column can be sorted. Previously sorted columns will not preserve their sorting upon sorting a new column. * "multi" If enabled, previous sorted state for columns won't be cleared @@ -88416,12 +103365,14 @@ interface IgTreeGridSorting { /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. + * */ customSortFunction?: Function; /** * Specifies which direction to use on the first click / keydown, if the column is sorted for the first time. * + * * Valid values: * "ascending" The first sort of the column data will be in ascending order. * "descending" The first sort of the column data will be in descending order. @@ -88430,6 +103381,7 @@ interface IgTreeGridSorting { /** * Specifies whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. + * */ modalDialogSortOnClick?: boolean; @@ -88521,6 +103473,7 @@ interface IgTreeGridSorting { /** * Specifies width of multiple sorting dialog. * + * * Valid values: * "string" Specifies the width in pixels as a string ("300px"). * "number" Specifies the width in pixels as a number (300) @@ -88530,6 +103483,7 @@ interface IgTreeGridSorting { /** * Specifies height of multiple sorting dialog. * + * * Valid values: * "string" The widget height can be set in pixels (px) and percentage (%). * "number" The widget height can be set in pixels as a number. @@ -88538,16 +103492,19 @@ interface IgTreeGridSorting { /** * Specifies time of milliseconds for animation duration to show/hide modal dialog. + * */ modalDialogAnimationDuration?: number; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). + * */ columnSettings?: IgGridSortingColumnSetting[]; /** * Enables/disables sorting persistence when the grid is rebound. + * */ persist?: boolean; @@ -88561,14 +103518,10 @@ interface IgTreeGridSorting { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ dialogWidget?: string; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired before sorting is invoked for a certain column. * Return false in order to cancel column sorting. @@ -88646,6 +103599,10 @@ interface IgTreeGridSorting { [optionName: string]: any; } interface IgTreeGridSortingMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtreegridsorting#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtreegridsorting#options:language) or [locale](ui.igtreegridsorting#options:locale) option setter + */ changeLocale(): void; /** @@ -88655,12 +103612,15 @@ interface IgTreeGridSortingMethods { */ isColumnSorted(columnKey: string): boolean; destroy(): void; + changeGlobalLanguage(): void; + changeGlobalRegional(): void; /** * Sorts the data in a grid column and updates the UI. * * @param index Column key (string) or index (number) - for multi-row grid only column key can be used. Specifies the column which we want to sort. If the mode is multiple, previous sorting states are not cleared. * @param direction Specifies sorting direction (ascending or descending) + * @param header */ sortColumn(index: Object, direction: Object, header: Object): void; @@ -88696,6 +103656,8 @@ interface IgTreeGridSortingMethods { /** * Renders content of multiple sorting dialog - sorted and unsorted columns. + * + * @param isToCallEvents */ renderMultipleSortingDialogContent(isToCallEvents: Object): void; @@ -88712,6 +103674,8 @@ interface JQuery { igTreeGridSorting(methodName: "changeLocale"): void; igTreeGridSorting(methodName: "isColumnSorted", columnKey: string): boolean; igTreeGridSorting(methodName: "destroy"): void; + igTreeGridSorting(methodName: "changeGlobalLanguage"): void; + igTreeGridSorting(methodName: "changeGlobalRegional"): void; igTreeGridSorting(methodName: "sortColumn", index: Object, direction: Object, header: Object): void; igTreeGridSorting(methodName: "sortMultiple", exprs?: any[]): void; igTreeGridSorting(methodName: "clearSorting"): void; @@ -88723,30 +103687,47 @@ interface JQuery { /** * Specifies from which data bound level to be applied sorting - 0 is the first level + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "fromLevel"): number; /** * Specifies from which data bound level to be applied sorting - 0 is the first level * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "fromLevel", optionValue: number): void; /** * Specifies to which data bound level to be applied sorting - if -1 sorting should be applied to the last data bound level + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "toLevel"): number; /** * Specifies to which data bound level to be applied sorting - if -1 sorting should be applied to the last data bound level * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "toLevel", optionValue: number): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridSorting(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridSorting(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Defines local or remote sorting operations. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "type"): string; @@ -88754,6 +103735,7 @@ interface JQuery { /** * Defines local or remote sorting operations. * + * * @optionValue New value to be set. */ @@ -88761,66 +103743,77 @@ interface JQuery { /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "caseSensitive"): boolean; /** * Enables or disables the case sensitivity of the sorting. Works only for [local](ui.iggridsorting#options:type) sorting. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "caseSensitive", optionValue: boolean): void; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "applySortedColumnCss"): boolean; /** * Enables/disables special styling for sorted columns. If false, sorted column cells will not have any special sort-related styling. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "applySortedColumnCss", optionValue: boolean): void; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKey"): string; /** * URL param name which specifies how sorting expressions will be encoded in the URL. Uses OData conventions. ex: ?sort(col1)=asc * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKey", optionValue: string): void; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyAscValue"): string; /** * URL param value for ascending type of sorting. Uses OData conventions. Example: ?sort(col1)=asc * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyAscValue", optionValue: string): void; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyDescValue"): string; /** * URL param value for descending type of sorting. Uses OData conventions. Example: ?sort(col1)=desc * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "sortUrlKeyDescValue", optionValue: string): void; /** * Defines single column sorting or multiple column sorting. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "mode"): string; @@ -88828,6 +103821,7 @@ interface JQuery { /** * Defines single column sorting or multiple column sorting. * + * * @optionValue New value to be set. */ @@ -88835,18 +103829,21 @@ interface JQuery { /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "customSortFunction"): Function; /** * Custom sort function(or name of the function as a string) accepting three parameters - the data to be sorted, an array of data source field definitions, and the direction to sort with (optional). The function should return the sorted data array. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "customSortFunction", optionValue: Function): void; /** * Gets which direction to use on the first click / keydown, if the column is sorted for the first time. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "firstSortDirection"): string; @@ -88854,6 +103851,7 @@ interface JQuery { /** * Sets which direction to use on the first click / keydown, if the column is sorted for the first time. * + * * @optionValue New value to be set. */ @@ -88861,12 +103859,14 @@ interface JQuery { /** * Gets whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogSortOnClick"): boolean; /** * Sets whether sorting to be applied immediately when click sort/unsort columns when using the multiple sorting dialog. When it is false Apply button shows and sorting is applied when the button is clicked. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogSortOnClick", optionValue: boolean): void; @@ -89067,6 +104067,7 @@ interface JQuery { /** * Gets width of multiple sorting dialog. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogWidth"): string|number; @@ -89074,6 +104075,7 @@ interface JQuery { /** * Sets width of multiple sorting dialog. * + * * @optionValue New value to be set. */ @@ -89081,6 +104083,7 @@ interface JQuery { /** * Gets height of multiple sorting dialog. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogHeight"): string|number; @@ -89088,6 +104091,7 @@ interface JQuery { /** * Sets height of multiple sorting dialog. * + * * @optionValue New value to be set. */ @@ -89095,36 +104099,42 @@ interface JQuery { /** * Gets time of milliseconds for animation duration to show/hide modal dialog. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogAnimationDuration"): number; /** * Sets time of milliseconds for animation duration to show/hide modal dialog. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "modalDialogAnimationDuration", optionValue: number): void; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "columnSettings"): IgGridSortingColumnSetting[]; /** * A list of custom column settings that specify custom sorting settings for a specific column (whether sorting is enabled / disabled, default sort direction, first sort direction, etc.). * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridSortingColumnSetting[]): void; /** * Enables/disables sorting persistence when the grid is rebound. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "persist"): boolean; /** * Enables/disables sorting persistence when the grid is rebound. * + * * @optionValue New value to be set. */ igTreeGridSorting(optionLiteral: 'option', optionName: "persist", optionValue: boolean): void; @@ -89149,27 +104159,17 @@ interface JQuery { /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. + * */ igTreeGridSorting(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. * - * @optionValue New value to be set. - */ - igTreeGridSorting(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridSorting(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridSorting(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridSorting(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Event fired before sorting is invoked for a certain column. @@ -89348,7 +104348,13 @@ interface JQuery { } interface IgTreeGridTooltips { /** - * determines the tooltip visibility option + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + + /** + * Determines the tooltip visibility option + * * * Valid values: * "always" tooltips always show for hovered elements @@ -89358,7 +104364,8 @@ interface IgTreeGridTooltips { visibility?: string; /** - * controls the tooltip's style + * Controls the tooltip's style + * * * Valid values: * "tooltip" The tooltip will be positioned according to the mouse cursor. Will render the tooltip content as plain text. @@ -89369,40 +104376,41 @@ interface IgTreeGridTooltips { /** * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. + * */ showDelay?: number; /** * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. + * */ hideDelay?: number; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) + * */ columnSettings?: IgGridTooltipsColumnSettings; /** * Sets the time tooltip fades in and out when showing/hiding + * */ fadeTimespan?: number; /** * Sets the left position of the tooltip relative to the mouse cursor + * */ cursorLeftOffset?: number; /** * Sets the top position of the tooltip relative to the mouse cursor + * */ cursorTopOffset?: number; - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired when the mouse has hovered on an element long enough to display a tooltip */ @@ -89444,8 +104452,21 @@ interface JQuery { igTreeGridTooltips(methodName: "destroy"): void; igTreeGridTooltips(methodName: "id"): string; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridTooltips(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridTooltips(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * Determines the tooltip visibility option + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "visibility"): string; @@ -89453,6 +104474,7 @@ interface JQuery { /** * Determines the tooltip visibility option * + * * @optionValue New value to be set. */ @@ -89460,6 +104482,7 @@ interface JQuery { /** * Controls the tooltip's style + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "style"): string; @@ -89467,6 +104490,7 @@ interface JQuery { /** * Controls the tooltip's style * + * * @optionValue New value to be set. */ @@ -89475,6 +104499,7 @@ interface JQuery { /** * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "showDelay"): number; @@ -89482,6 +104507,7 @@ interface JQuery { * The time in milliseconds after which tooltip will show when * mouse cursor is hovered over a cell. * + * * @optionValue New value to be set. */ igTreeGridTooltips(optionLiteral: 'option', optionName: "showDelay", optionValue: number): void; @@ -89489,6 +104515,7 @@ interface JQuery { /** * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "hideDelay"): number; @@ -89496,69 +104523,66 @@ interface JQuery { * Type="integer" The time in milliseconds after which tooltip hides when mouse * cursor gets outside of the cell. * + * * @optionValue New value to be set. */ igTreeGridTooltips(optionLiteral: 'option', optionName: "hideDelay", optionValue: number): void; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "columnSettings"): IgGridTooltipsColumnSettings; /** * A list of custom column settings that specify custom tooltip settings for a specific column (whether tooltips are enabled / disabled) * + * * @optionValue New value to be set. */ igTreeGridTooltips(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridTooltipsColumnSettings): void; /** * The time tooltip fades in and out when showing/hiding + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "fadeTimespan"): number; /** * Sets the time tooltip fades in and out when showing/hiding * + * * @optionValue New value to be set. */ igTreeGridTooltips(optionLiteral: 'option', optionName: "fadeTimespan", optionValue: number): void; /** * The left position of the tooltip relative to the mouse cursor + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "cursorLeftOffset"): number; /** * Sets the left position of the tooltip relative to the mouse cursor * + * * @optionValue New value to be set. */ igTreeGridTooltips(optionLiteral: 'option', optionName: "cursorLeftOffset", optionValue: number): void; /** * The top position of the tooltip relative to the mouse cursor + * */ igTreeGridTooltips(optionLiteral: 'option', optionName: "cursorTopOffset"): number; /** * Sets the top position of the tooltip relative to the mouse cursor * - * @optionValue New value to be set. - */ - igTreeGridTooltips(optionLiteral: 'option', optionName: "cursorTopOffset", optionValue: number): void; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. - */ - igTreeGridTooltips(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts. NOTE: It only applies for igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridTooltips(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridTooltips(optionLiteral: 'option', optionName: "cursorTopOffset", optionValue: number): void; /** * Event fired when the mouse has hovered on an element long enough to display a tooltip @@ -89616,11 +104640,13 @@ interface JQuery { interface IgTreeGridUpdatingLocale { /** * Specifies the add child tooltip text. + * */ addChildTooltip?: string; /** * Specifies the label of the add child button in touch environment. + * */ addChildButtonLabel?: string; @@ -89633,6 +104659,7 @@ interface IgTreeGridUpdatingLocale { interface IgTreeGridUpdating { /** * Specifies whether to enable or disable adding children to rows. + * */ enableAddChild?: boolean; @@ -89649,14 +104676,21 @@ interface IgTreeGridUpdating { addChildButtonLabel?: string; locale?: IgTreeGridUpdatingLocale; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + inherit?: boolean; + /** * A list of custom column options that specify editing and validation settings for a specific column. + * */ columnSettings?: IgGridUpdatingColumnSetting[]; /** * Specifies the edit mode. * + * * Valid values: * "row" Editors are shown for all columns that are not read-only. The editor of the clicked cell receives initial focus. Done and Cancel buttons may be displayed based on the [showDoneCancelButtons](ui.iggridupdating#options:showDoneCancelButtons) property. * "cell" An editor is shown for the cell entering edit mode. The Done and Cancel buttons are not supported for this mode. @@ -89667,16 +104701,19 @@ interface IgTreeGridUpdating { /** * Specifies if deleting rows through the UI is enabled. + * */ enableDeleteRow?: boolean; /** * Specifies if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). + * */ enableAddRow?: boolean; /** * Specifies if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. + * */ validation?: boolean; @@ -89738,64 +104775,70 @@ interface IgTreeGridUpdating { /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. + * */ showDoneCancelButtons?: boolean; /** * Specifies if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. + * */ enableDataDirtyException?: boolean; /** * Specifies how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. + * */ startEditTriggers?: string|Array; /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). + * */ horizontalMoveOnEnter?: boolean; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. + * */ excelNavigationMode?: boolean; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. + * */ saveChangesSuccessHandler?: Function|string; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. + * */ saveChangesErrorHandler?: Function|string; /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. + * */ swipeDistance?: string|number; /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. + * */ wrapAround?: boolean; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. + * */ rowEditDialogOptions?: IgGridUpdatingRowEditDialogOptions; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. + * */ dialogWidget?: string; - /** - * Enables/disables feature inheritance for the child layouts in igHierarchicalGrid. - */ - inherit?: boolean; - /** * Event fired before row editing begins. * Return false in order to cancel editing. @@ -89904,6 +104947,10 @@ interface IgTreeGridUpdating { [optionName: string]: any; } interface IgTreeGridUpdatingMethods { + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igtreegridupdating#options:language) + * Note that this method is for rare scenarios, see [language](ui.igtreegridupdating#options:language) or [locale](ui.igtreegridupdating#options:locale) option setter + */ changeLocale(): void; /** @@ -90016,6 +105063,11 @@ interface IgTreeGridUpdatingMethods { * @param create Requests to create the editor if it has not been created yet. */ editorForCell(cell: string, create?: boolean): Object; + + /** + * Changes the the regional settings of widget element to the language specified in [options.regional](ui.iggridupdating#options:regional) + * Note that this method is for rare scenarios, use [regional](ui.iggridupdating#options:regional) option setter + */ changeRegional(): void; /** @@ -90058,12 +105110,14 @@ interface JQuery { /** * Gets whether to enable or disable adding children to rows. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableAddChild"): boolean; /** * Sets whether to enable or disable adding children to rows. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableAddChild", optionValue: boolean): void; @@ -90098,20 +105152,35 @@ interface JQuery { igTreeGridUpdating(optionLiteral: 'option', optionName: "locale"): IgTreeGridUpdatingLocale; igTreeGridUpdating(optionLiteral: 'option', optionName: "locale", optionValue: IgTreeGridUpdatingLocale): void; + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + */ + igTreeGridUpdating(optionLiteral: 'option', optionName: "inherit"): boolean; + + /** + * This option is inherited from a parent widget and it's not applicable for the igTreeGrid. + * + * @optionValue New value to be set. + */ + igTreeGridUpdating(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + /** * A list of custom column options that specify editing and validation settings for a specific column. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "columnSettings"): IgGridUpdatingColumnSetting[]; /** * A list of custom column options that specify editing and validation settings for a specific column. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "columnSettings", optionValue: IgGridUpdatingColumnSetting[]): void; /** * Gets the edit mode. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "editMode"): string; @@ -90119,6 +105188,7 @@ interface JQuery { /** * Sets the edit mode. * + * * @optionValue New value to be set. */ @@ -90126,36 +105196,42 @@ interface JQuery { /** * Gets if deleting rows through the UI is enabled. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableDeleteRow"): boolean; /** * Sets if deleting rows through the UI is enabled. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableDeleteRow", optionValue: boolean): void; /** * Gets if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableAddRow"): boolean; /** * Sets if adding rows through the UI is enabled. When enabled an additional row is rendered at the bottom of the grid's header that works as a button. When the end-user clicks on it edit mode is initiated either through a dialog (when [editMode](ui.iggridupdating#options:editMode) is 'dialog') or mimicking the look and feel of 'row' [editMode](ui.iggridupdating#options:editMode) (when [editMode](ui.iggridupdating#options:editMode) is 'row' or 'cell'). * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableAddRow", optionValue: boolean): void; /** * Gets if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "validation"): boolean; /** * Sets if the value of each editable column in the grid should be validated. The validation is done based on the rules of their corresponding editors. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "validation", optionValue: boolean): void; @@ -90290,30 +105366,35 @@ interface JQuery { /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "showDoneCancelButtons"): boolean; /** * Determines if the Done and Cancel buttons will be available as means to end edit mode for [editMode](ui.iggridupdating#options:editMode) 'row' and when adding a new row. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "showDoneCancelButtons", optionValue: boolean): void; /** * Gets if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableDataDirtyException"): boolean; /** * Sets if an exception should be thrown when the grid's data view changes while there are pending transactions in the data source. The data view changes when the data source performs a sorting, filtering, groupby or paging operation and the exception thrown will prevent the operation from succeeding. All pending transactions must be committed before a data view operation is able to complete. Committing transactions can be done manually through the grid's [commit](ui.iggrid#methods:commit) function or automatically by setting [autoCommit](ui.iggrid#options:autoCommit) to 'true'. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "enableDataDirtyException", optionValue: boolean): void; /** * Gets how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "startEditTriggers"): string|Array; @@ -90321,6 +105402,7 @@ interface JQuery { /** * Sets how end-users are able to start edit mode. Possible values: "click", "dblclick", "F2", "enter" and their combinations separated by coma or in array. The keyboard triggers have effect only if the grid cells can receive focus (the grid's [tabIndex](ui.iggrid#options:tabIndex) property should not have a negative value) or Selection is enabled. If "dblclick" is included, then "click" has no effect. * + * * @optionValue New value to be set. */ @@ -90328,30 +105410,35 @@ interface JQuery { /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "horizontalMoveOnEnter"): boolean; /** * Determines if pressing Enter to navigate away from the currently edited cell should move the focus horizontally or vertically (default). * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "horizontalMoveOnEnter", optionValue: boolean): void; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "excelNavigationMode"): boolean; /** * Enables excel navigation style. When turned on, the arrow keys can be used for changing the currently edited cell similar to how Tab and Enter behave. When disabled, the arrow keys control the cursor inside editors. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "excelNavigationMode", optionValue: boolean): void; /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "saveChangesSuccessHandler"): Function|string; @@ -90359,6 +105446,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property succeeds. The function will be called with arguments representing the data returned by the server. * + * * @optionValue New value to be set. */ @@ -90366,6 +105454,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "saveChangesErrorHandler"): Function|string; @@ -90373,6 +105462,7 @@ interface JQuery { /** * Sets a custom function to be called when the AJAX request to the URL specified by the [updateUrl](ui.iggrid#options:updateUrl) property fails. The function will be called with arguments representing the data returned by the server. * + * * @optionValue New value to be set. */ @@ -90380,6 +105470,7 @@ interface JQuery { /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "swipeDistance"): string|number; @@ -90387,6 +105478,7 @@ interface JQuery { /** * On touch-enabled devices specifies the swipe distance for the delete button to appear. * + * * @optionValue New value to be set. */ @@ -90394,51 +105486,45 @@ interface JQuery { /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "wrapAround"): boolean; /** * Controls if navigation will wrap around the grid. The feature will never wrap around virtual grids. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "wrapAround", optionValue: boolean): void; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "rowEditDialogOptions"): IgGridUpdatingRowEditDialogOptions; /** * A list of options controlling the rendering behavior of the row edit dialog. If [editMode](ui.iggridupdating#options:editMode) is not 'dialog' these have no effect. * + * * @optionValue New value to be set. */ igTreeGridUpdating(optionLiteral: 'option', optionName: "rowEditDialogOptions", optionValue: IgGridUpdatingRowEditDialogOptions): void; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. + * */ igTreeGridUpdating(optionLiteral: 'option', optionName: "dialogWidget"): string; /** * Name of the dialog widget to be used. It should inherit from $.ui.igGridModalDialog. For more information on how to utilize this property, please refer to the [Extending igGrid Modal Dialog](http://www.igniteui.com/help/extending-iggrid-modal-dialog) topic. * - * @optionValue New value to be set. - */ - igTreeGridUpdating(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; - - /** - * Enables/disables feature inheritance for the child layouts in igHierarchicalGrid. - */ - igTreeGridUpdating(optionLiteral: 'option', optionName: "inherit"): boolean; - - /** - * Enables/disables feature inheritance for the child layouts in igHierarchicalGrid. * * @optionValue New value to be set. */ - igTreeGridUpdating(optionLiteral: 'option', optionName: "inherit", optionValue: boolean): void; + igTreeGridUpdating(optionLiteral: 'option', optionName: "dialogWidget", optionValue: string): void; /** * Event fired before row editing begins. @@ -90717,171 +105803,205 @@ interface JQuery { interface IgUploadLocale { /** * Get or set label for the first shown browse button. When file is selected for the first time this button is hidden. + * */ labelUploadButton?: string; /** * Get or set label for browse button in main container. + * */ labelAddButton?: string; /** * Get or set label for summary Clear all button. It will be shown only in multiple upload mode. + * */ labelClearAllButton?: string; /** * Get or set template for showing summary template. {0} is count of uploaded files. {1} is total count of file to be uploaded. + * */ labelSummaryTemplate?: string; /** * Get or set template for showing uploading information in summary progress bar. It will be shown only in multiple upload mode. {0} uploaded filesize. {1} - total file size. + * */ labelSummaryProgressBarTemplate?: string; /** * Get or set label for show/hide details button when main container is hidden. + * */ labelShowDetails?: string; /** * Get or set label for show/hide details button when main container is shown. + * */ labelHideDetails?: string; /** * Get or set label for button cancelling all files. Shown only in multiple upload mode. + * */ labelSummaryProgressButtonCancel?: string; /** * Get or set label for start upload batch files. Shown only in multiple upload mode and autostartupload is false. + * */ labelSummaryProgressButtonContinue?: string; /** * Get or set label when upload is finished. Shown only in multiple upload mode. + * */ labelSummaryProgressButtonDone?: string; /** * Get or set filename when it could not be shown the whole file name and should be shorten. + * */ labelProgressBarFileNameContinue?: string; /** * Get or set message shown when max file size of the uploaded file exceeds the limit. + * */ errorMessageFileSizeExceeded?: string; /** * Get or set error message when ajax call to get file status throws error. + * */ errorMessageGetFileStatus?: string; /** * Get or set error message when ajax call to send cancel upload command. + * */ errorMessageCancelUpload?: string; /** * Get or set error message when file is not found. + * */ errorMessageNoSuchFile?: string; /** * Get or set error message different from the other messages. + * */ errorMessageOther?: string; /** * Get or set error message when file extension validation failed. + * */ errorMessageValidatingFileExtension?: string; /** * Get or set error message when AJAX Request to get file size throws error. + * */ errorMessageAJAXRequestFileSize?: string; /** * Get or set error message when maximum allowed files exceeded. + * */ errorMessageMaxUploadedFiles?: string; /** * Get or set error message when maximum simultaneous files is less or equal to 0. + * */ errorMessageMaxSimultaneousFiles?: string; /** * Get or set error message when trying to remove non existing file. + * */ errorMessageTryToRemoveNonExistingFile?: string; /** * Get or set error message when trying to start non existing file. + * */ errorMessageTryToStartNonExistingFile?: string; /** * Get or set error message when trying to drop more than 1 file and mode is single. + * */ errorMessageDropMultipleFilesWhenSingleModel?: string; /** * Get or set title for the first shown browse button. When file is selected for the first time this button is hidden. + * */ titleUploadFileButtonInit?: string; /** * Get or set title for browse button in main container. + * */ titleAddFileButton?: string; /** * Get or set title for the cancel upload button. + * */ titleCancelUploadButton?: string; /** * Get or set title for start upload batch files. Shown only in multiple upload mode and autostartupload is false. + * */ titleSummaryProgressButtonContinue?: string; /** * Get or set title for summary Clear all button. It will be shown only in multiple upload mode. + * */ titleClearUploaded?: string; /** * Get or set title for show details button. + * */ titleShowDetailsButton?: string; /** * Get or set title for hide details button. + * */ titleHideDetailsButton?: string; /** * Get or set title for button cancelling all files. Shown only in multiple upload mode. + * */ titleSummaryProgressButtonCancel?: string; /** * Get or set title when upload is finished. Shown only in multiple upload mode. + * */ titleSummaryProgressButtonDone?: string; /** * Get or set title for Continue button. + * */ titleSingleUploadButtonContinue?: string; /** * Get or set title for summary Clear all button. It will be shown only in multiple upload mode. + * */ titleClearAllButton?: string; @@ -91181,16 +106301,19 @@ interface OnFormDataSubmitEventUIParam { interface IgUpload { /** * Get or set width of the main container of the file upload control. Main container contains all buttons, progressbar, etc. + * */ width?: number|string; /** * Get or set height of the main container of the file upload control. Main container contains all buttons, progressbar, etc. + * */ height?: number|string; /** * Get or set whether the file start upload automatically when it is selected. Default is false. + * */ autostartupload?: boolean; @@ -91358,66 +106481,79 @@ interface IgUpload { /** * Get or set URL for uploading. + * */ uploadUrl?: string; /** * Get or set URL of HTTPHandler to get information about file upload, current size and also to get commands + * */ progressUrl?: string; /** * Get or set file allowed file extensions. When this array is empty - it is not made such validation. Example ["gif", "jpg", "bmp"]. + * */ allowedExtensions?: any[]; /** * Get or set whether to show File Extension icon + * */ showFileExtensionIcon?: boolean; /** * Get or set control specific CSS options. For example you can override specific control classes with custom ones. + * */ css?: any; /** * Set icon css classes for specified file extension + * */ fileExtensionIcons?: IgUploadFileExtensionIcons; /** * Get or set multiple or single file upload. In single upload it is possible to upload only one file at the same time. + * */ mode?: any; /** * Get or set a bool setting that allows user to select(for upload) more than 1 file from the browse dialog at once. HTML 5+ - it is supported by Chrome, MOzilla FF, Safar, Opera latest versions and IE10+ + * */ multipleFiles?: boolean; /** * Get or set the maximum number of allowed files to upload. + * */ maxUploadedFiles?: number; /** * Get or set count of files that could be uploaded at the same time. + * */ maxSimultaneousFilesUploads?: number; /** * Get or set file size metrics how to be shown files size. + * */ fileSizeMetric?: any; /** * UniqueId of the control - should not be changed by developer. Set from server-side wrapper. + * */ controlId?: string; /** * The number of digits after the decimal point. + * */ fileSizeDecimalDisplay?: number; @@ -91426,6 +106562,24 @@ interface IgUpload { */ maxFileSize?: any; + /** + * Get or set whether to use only one request for sending data, when you are sending more than one file. + * + */ + useSingleRequest?: boolean; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Defines the name of the file upload selecting event. Fired when browse button is pressed. * Return false in order to cancel selecting file. @@ -91519,7 +106673,7 @@ interface IgUploadMethods { /** * Start uploading file as submitting form with the specified formNumber. * - * @param formNumber id of the upload form + * @param formNumber id of the upload form. If left undefined and useSingleRequest is true all pending files will be uploaded. */ startUpload(formNumber: number): void; @@ -91530,6 +106684,11 @@ interface IgUploadMethods { * @param formNumber id of the form which should be cancelled */ cancelUpload(formNumber: number): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igupload#options:language) + * Note that this method is for rare scenarios, use [language](ui.igupload#options:language) or [locale](ui.igupload#options:locale) option setter + */ changeLocale(): void; /** @@ -91553,6 +106712,16 @@ interface IgUploadMethods { * @param fileIndex unique identifier of the file */ getFileInfo(fileIndex: number): Object; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igUpload"): IgUploadMethods; @@ -91597,9 +106766,12 @@ interface JQuery { igUpload(methodName: "getFileInfoData"): Object; igUpload(methodName: "cancelAll"): void; igUpload(methodName: "getFileInfo", fileIndex: number): Object; + igUpload(methodName: "changeGlobalLanguage"): void; + igUpload(methodName: "changeGlobalRegional"): void; /** * Get or set width of the main container of the file upload control. Main container contains all buttons, progressbar, etc. + * */ igUpload(optionLiteral: 'option', optionName: "width"): number|string; @@ -91607,6 +106779,7 @@ interface JQuery { /** * Get or set width of the main container of the file upload control. Main container contains all buttons, progressbar, etc. * + * * @optionValue New value to be set. */ @@ -91614,6 +106787,7 @@ interface JQuery { /** * Get or set height of the main container of the file upload control. Main container contains all buttons, progressbar, etc. + * */ igUpload(optionLiteral: 'option', optionName: "height"): number|string; @@ -91621,6 +106795,7 @@ interface JQuery { /** * Get or set height of the main container of the file upload control. Main container contains all buttons, progressbar, etc. * + * * @optionValue New value to be set. */ @@ -91628,12 +106803,14 @@ interface JQuery { /** * Get or set whether the file start upload automatically when it is selected. Default is false. + * */ igUpload(optionLiteral: 'option', optionName: "autostartupload"): boolean; /** * Get or set whether the file start upload automatically when it is selected. Default is false. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "autostartupload", optionValue: boolean): void; @@ -92010,156 +107187,182 @@ interface JQuery { /** * Get or set URL for uploading. + * */ igUpload(optionLiteral: 'option', optionName: "uploadUrl"): string; /** * Get or set URL for uploading. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "uploadUrl", optionValue: string): void; /** * Get or set URL of HTTPHandler to get information about file upload, current size and also to get commands + * */ igUpload(optionLiteral: 'option', optionName: "progressUrl"): string; /** * Get or set URL of HTTPHandler to get information about file upload, current size and also to get commands * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "progressUrl", optionValue: string): void; /** * Get or set file allowed file extensions. When this array is empty - it is not made such validation. Example ["gif", "jpg", "bmp"]. + * */ igUpload(optionLiteral: 'option', optionName: "allowedExtensions"): any[]; /** * Get or set file allowed file extensions. When this array is empty - it is not made such validation. Example ["gif", "jpg", "bmp"]. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "allowedExtensions", optionValue: any[]): void; /** * Get or set whether to show File Extension icon + * */ igUpload(optionLiteral: 'option', optionName: "showFileExtensionIcon"): boolean; /** * Get or set whether to show File Extension icon * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "showFileExtensionIcon", optionValue: boolean): void; /** * Get or set control specific CSS options. For example you can override specific control classes with custom ones. + * */ igUpload(optionLiteral: 'option', optionName: "css"): any; /** * Get or set control specific CSS options. For example you can override specific control classes with custom ones. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "css", optionValue: any): void; /** * Set icon css classes for specified file extension + * */ igUpload(optionLiteral: 'option', optionName: "fileExtensionIcons"): IgUploadFileExtensionIcons; /** * Set icon css classes for specified file extension * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "fileExtensionIcons", optionValue: IgUploadFileExtensionIcons): void; /** * Get or set multiple or single file upload. In single upload it is possible to upload only one file at the same time. + * */ igUpload(optionLiteral: 'option', optionName: "mode"): any; /** * Get or set multiple or single file upload. In single upload it is possible to upload only one file at the same time. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "mode", optionValue: any): void; /** * Get or set a bool setting that allows user to select(for upload) more than 1 file from the browse dialog at once. HTML 5+ - it is supported by Chrome, MOzilla FF, Safar, Opera latest versions and IE10+ + * */ igUpload(optionLiteral: 'option', optionName: "multipleFiles"): boolean; /** * Get or set a bool setting that allows user to select(for upload) more than 1 file from the browse dialog at once. HTML 5+ - it is supported by Chrome, MOzilla FF, Safar, Opera latest versions and IE10+ * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "multipleFiles", optionValue: boolean): void; /** * Get or set the maximum number of allowed files to upload. + * */ igUpload(optionLiteral: 'option', optionName: "maxUploadedFiles"): number; /** * Get or set the maximum number of allowed files to upload. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "maxUploadedFiles", optionValue: number): void; /** * Get or set count of files that could be uploaded at the same time. + * */ igUpload(optionLiteral: 'option', optionName: "maxSimultaneousFilesUploads"): number; /** * Get or set count of files that could be uploaded at the same time. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "maxSimultaneousFilesUploads", optionValue: number): void; /** * Get or set file size metrics how to be shown files size. + * */ igUpload(optionLiteral: 'option', optionName: "fileSizeMetric"): any; /** * Get or set file size metrics how to be shown files size. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "fileSizeMetric", optionValue: any): void; /** * UniqueId of the control - should not be changed by developer. Set from server-side wrapper. + * */ igUpload(optionLiteral: 'option', optionName: "controlId"): string; /** * UniqueId of the control - should not be changed by developer. Set from server-side wrapper. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "controlId", optionValue: string): void; /** * The number of digits after the decimal point. + * */ igUpload(optionLiteral: 'option', optionName: "fileSizeDecimalDisplay"): number; /** * The number of digits after the decimal point. * + * * @optionValue New value to be set. */ igUpload(optionLiteral: 'option', optionName: "fileSizeDecimalDisplay", optionValue: number): void; @@ -92176,6 +107379,50 @@ interface JQuery { */ igUpload(optionLiteral: 'option', optionName: "maxFileSize", optionValue: any): void; + /** + * Get or set whether to use only one request for sending data, when you are sending more than one file. + * + */ + igUpload(optionLiteral: 'option', optionName: "useSingleRequest"): boolean; + + /** + * Get or set whether to use only one request for sending data, when you are sending more than one file. + * + * + * @optionValue New value to be set. + */ + igUpload(optionLiteral: 'option', optionName: "useSingleRequest", optionValue: boolean): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igUpload(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igUpload(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igUpload(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igUpload(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Defines the name of the file upload selecting event. Fired when browse button is pressed. * Return false in order to cancel selecting file. @@ -92311,6 +107558,7 @@ interface IgValidatorField { /** * Gets the target element (input or control target) to be validated. This field setting is required. * + * * Valid values: * "string" A valid jQuery selector for the element * "object" A reference to a jQuery object @@ -92749,23 +107997,27 @@ interface IgValidator { * Gets/Sets whether validation is triggered when the text in editor changes. * Note that this is more appropriate for selection controls such as checkbox, combo or rating. * As it can cause excessive messages with text-based fields, the initial validation can be delayed via the [threshold](ui.igvalidator#options:threshold) option. + * */ onchange?: boolean; /** * Gets/Sets whether validation is triggered when the editor loses focus. + * */ onblur?: boolean; /** * Gets/Sets whether validation is triggered when a form containing validation targets is submitting. If any of the validations fail, the submit action will be prevented. * Note that this doesn't apply to the native JavaScript submit function, but will handle the jQuery equivalent and the browser default action. + * */ onsubmit?: boolean; /** * Gets/Sets option to validate if a value was entered (not empty text, selected item, etc.) * + * * Valid values: * "boolean" A boolean value indicating if the field is required. * "object" A configuration object with optional error message (e.g. required: { errorMessage: "Error!"} ) @@ -92775,6 +108027,7 @@ interface IgValidator { /** * Gets/Sets number validation rule options.Default separators for decimals and thousands are '.' and ',' respectively and are defined in the "$.ui.igValidator.defaults" object. * + * * Valid values: * "boolean" A boolean value indicating if the field should be a number. Default separators are used. * "object" A configuration object with errorMessage, decimalSeparator and thousandsSeparator. Those properties are all optional. @@ -92784,6 +108037,7 @@ interface IgValidator { /** * Gets/Sets date validation rule options. This can additionally help guide the [valueRange](ui.igvalidator#options:valueRange) validation.Note: Dependant on JavaScript Date parsing which will accept a wide range of values. * + * * Valid values: * "boolean" A boolean value indicating if the field should be a valid JavaScript Date or can be parsed as one. * "object" A configuration object with optional error message (e.g. date: { errorMessage: "Enter a valid number"} ) @@ -92793,6 +108047,7 @@ interface IgValidator { /** * Gets/Sets email validation rule options. Uses a RegExp defined in the "$.ui.igValidator.defaults" object. * + * * Valid values: * "boolean" A boolean value indicating if the field should be an email. * "object" A configuration object with optional error message (e.g. email: { errorMessage: "Enter a valid email"} ) @@ -92802,6 +108057,7 @@ interface IgValidator { /** * Gets/Sets a minimum and/or maximum length of text or number of selected items. Null or 0 values are ignored. * + * * Valid values: * "array" An array of two numbers, where the first value is the minimum and the second is the maximum. (e.g. lengthRange: [ 1, 10] ) * "object" A configuration object with optional error message. Message strings can contain format items for min and max respectively (e.g. lengthRange: { min: 6, max: 20, errorMessage: "Password must be at least {0} long and no more than {1}." } ) @@ -92811,6 +108067,7 @@ interface IgValidator { /** * Gets/Sets a minimum and/or maximum value. Null values are ignored. * + * * Valid values: * "array" An array of two numbers or dates, where the first is the minimum and the second is the maximum. (e.g. valueRange: [ 1, 10] ) * "object" A configuration object with optional error message. Message strings can contain format items for min and max respectively (e.g. lengthRange: { min: 6, max: 20, errorMessage: "Value must be between {0} and {1}." } ) @@ -92820,6 +108077,7 @@ interface IgValidator { /** * Gets/Sets Credit Card number validation rule options.Note: This rule will only validate the checksum of the number using Luhn algorithm irregardless of card type. * + * * Valid values: * "boolean" A boolean value indicating if the field should be a valid Credit Card number. * "object" A configuration object with optional error message (e.g. creditCard: { errorMessage: "Enter a valid card number"} ) @@ -92829,6 +108087,7 @@ interface IgValidator { /** * Gets/Sets regular expression validation rule options. * + * * Valid values: * "string" A string containing regular expression. * "object" A RegExp object or an object with expression and errorMessage properties. @@ -92838,33 +108097,39 @@ interface IgValidator { /** * Gets/Sets if all rules for a field should be checked, so even if one fails the rest will continue executing. * Note: This will not force checks on an empty field for rules that don't normally execute without a value. + * */ executeAllRules?: boolean; /** * Gets/Sets a custom jQuery element to be used for validation messages. That inner HTML of the target is modified, can be a SPAN, LABEL or DIV. + * */ messageTarget?: Element; /** * Gets/Sets text for an error message to be used if none is set for the particular rule. Overrides default rule-specific error messages. + * */ errorMessage?: string; /** * Gets/Sets text for a success message. Note that since there is no default, setting this message will enable showing success indication. + * */ successMessage?: string; /** * Gets/Sets validation minimum input length. Validation won't be triggered for input before that value is reached on change and focus loss. * Note: This will not affect required fields on form submit. + * */ threshold?: number; /** * Gets/Sets a requirement for the value in this field to be the same as another input element or editor control. * + * * Valid values: * "string" A valid jQuery selector for the target element * "object" A reference to the jQuery object for the target or an object with selector property and custom errorMessage. @@ -92874,6 +108139,7 @@ interface IgValidator { /** * Gets/Sets a custom function to perform validation. Use 'this' to reference the calling validator and the value and optional field settings arguments to determine and return the state of the field. * + * * Valid values: * "function" The function to call * "string" Function name, must be in global namespace (window["name"]) @@ -92884,26 +108150,48 @@ interface IgValidator { /** * Gets a list of target field items describing each with validation options and a required selector. Fields can contain any of the validation rules and triggers but not other fields or event handlers. * Applicable options are also inherited from the global control configuration if not set. + * */ fields?: IgValidatorField[]; /** * Gets/Sets the options for the [igNotifier](ui.ignotifier#options) used to show error messages. + * */ notificationOptions?: any; /** * Gets/Sets the option to show an asterisks indication next to required fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button sets and the igRating control. + * */ requiredIndication?: boolean; /** * Gets/Sets the option to show a label indication next to optional fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button sets and the igRating control. + * */ optionalIndication?: boolean; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event which is raised on validation before default validation logic is applied. * Return false in order to cancel the event and consider the field valid. @@ -93097,6 +108385,24 @@ interface IgValidatorMethods { * Destroys the validator widget. */ destroy(): void; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igValidator"): IgValidatorMethods; @@ -93111,11 +108417,15 @@ class IgValidatorBaseRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93162,6 +108472,8 @@ class IgValidatorRequiredRule { /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93186,6 +108498,8 @@ class IgValidatorControlRule { /** * Returns an error message for the rule from options + * + * @param options */ getRuleMessage(options: Object): void; shouldRun(options: Object, value: Object): void; @@ -93213,11 +108527,15 @@ class IgValidatorNumberRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93251,11 +108569,15 @@ class IgValidatorDateRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93289,6 +108611,8 @@ class IgValidatorLengthRule { /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93335,11 +108659,15 @@ class IgValidatorEqualToRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93373,11 +108701,15 @@ class IgValidatorEmailRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93411,11 +108743,15 @@ class IgValidatorPatternRule { /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93450,6 +108786,8 @@ class IgValidatorCustomRule { /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93475,17 +108813,24 @@ class IgValidatorCreditCardRule { * Based on ASP.NET CreditCardAttribute check, * https://github.com/Microsoft/referencesource/blob/master/System.ComponentModel.DataAnnotations/DataAnnotations/CreditCardAttribute.cs * using Luhn algorithm https://en.wikipedia.org/wiki/Luhn_algorithm + * + * @param options + * @param value */ isValid(options: Object, value: Object): void; /** * Gets the error message type to get from locale settings (matching as "Message>"). Returns the rule name by default. * Only used when there's no errorMessage option available through getRuleMessage. + * + * @param options */ getMessageType(options: Object): string; /** * Gets an errorMessage from either the rule or field/global options. + * + * @param options */ getRuleMessage(options: Object): string; @@ -93520,11 +108865,15 @@ interface JQuery { igValidator(methodName: "removeField", field: Object): void; igValidator(methodName: "updateField", field: Object, fieldOptions?: Object): void; igValidator(methodName: "destroy"): void; + igValidator(methodName: "changeLocale", $container: Object): void; + igValidator(methodName: "changeGlobalLanguage"): void; + igValidator(methodName: "changeGlobalRegional"): void; /** * Gets/Sets whether validation is triggered when the text in editor changes. * Note that this is more appropriate for selection controls such as checkbox, combo or rating. * As it can cause excessive messages with text-based fields, the initial validation can be delayed via the [threshold](ui.igvalidator#options:threshold) option. + * */ igValidator(optionLiteral: 'option', optionName: "onchange"): boolean; @@ -93533,18 +108882,21 @@ interface JQuery { * Note that this is more appropriate for selection controls such as checkbox, combo or rating. * As it can cause excessive messages with text-based fields, the initial validation can be delayed via the [threshold](ui.igvalidator#options:threshold) option. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "onchange", optionValue: boolean): void; /** * Gets/Sets whether validation is triggered when the editor loses focus. + * */ igValidator(optionLiteral: 'option', optionName: "onblur"): boolean; /** * /Sets whether validation is triggered when the editor loses focus. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "onblur", optionValue: boolean): void; @@ -93552,6 +108904,7 @@ interface JQuery { /** * Gets/Sets whether validation is triggered when a form containing validation targets is submitting. If any of the validations fail, the submit action will be prevented. * Note that this doesn't apply to the native JavaScript submit function, but will handle the jQuery equivalent and the browser default action. + * */ igValidator(optionLiteral: 'option', optionName: "onsubmit"): boolean; @@ -93559,12 +108912,14 @@ interface JQuery { * /Sets whether validation is triggered when a form containing validation targets is submitting. If any of the validations fail, the submit action will be prevented. * Note that this doesn't apply to the native JavaScript submit function, but will handle the jQuery equivalent and the browser default action. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "onsubmit", optionValue: boolean): void; /** * Gets/Sets option to validate if a value was entered (not empty text, selected item, etc.) + * */ igValidator(optionLiteral: 'option', optionName: "required"): boolean|Object; @@ -93572,6 +108927,7 @@ interface JQuery { /** * /Sets option to validate if a value was entered (not empty text, selected item, etc.) * + * * @optionValue New value to be set. */ @@ -93579,6 +108935,7 @@ interface JQuery { /** * Gets/Sets number validation rule options.Default separators for decimals and thousands are '.' and ',' respectively and are defined in the "$.ui.igValidator.defaults" object. + * */ igValidator(optionLiteral: 'option', optionName: "number"): boolean|Object; @@ -93586,6 +108943,7 @@ interface JQuery { /** * /Sets number validation rule options.Default separators for decimals and thousands are '.' and ',' respectively and are defined in the "$.ui.igValidator.defaults" object. * + * * @optionValue New value to be set. */ @@ -93593,6 +108951,7 @@ interface JQuery { /** * Gets/Sets date validation rule options. This can additionally help guide the [valueRange](ui.igvalidator#options:valueRange) validation.Note: Dependant on JavaScript Date parsing which will accept a wide range of values. + * */ igValidator(optionLiteral: 'option', optionName: "date"): boolean|Object; @@ -93600,6 +108959,7 @@ interface JQuery { /** * /Sets date validation rule options. This can additionally help guide the [valueRange](ui.igvalidator#options:valueRange) validation.Note: Dependant on JavaScript Date parsing which will accept a wide range of values. * + * * @optionValue New value to be set. */ @@ -93607,6 +108967,7 @@ interface JQuery { /** * Gets/Sets email validation rule options. Uses a RegExp defined in the "$.ui.igValidator.defaults" object. + * */ igValidator(optionLiteral: 'option', optionName: "email"): boolean|Object; @@ -93614,6 +108975,7 @@ interface JQuery { /** * /Sets email validation rule options. Uses a RegExp defined in the "$.ui.igValidator.defaults" object. * + * * @optionValue New value to be set. */ @@ -93621,6 +108983,7 @@ interface JQuery { /** * Gets/Sets a minimum and/or maximum length of text or number of selected items. Null or 0 values are ignored. + * */ igValidator(optionLiteral: 'option', optionName: "lengthRange"): Array|Object; @@ -93628,6 +108991,7 @@ interface JQuery { /** * /Sets a minimum and/or maximum length of text or number of selected items. Null or 0 values are ignored. * + * * @optionValue New value to be set. */ @@ -93635,6 +108999,7 @@ interface JQuery { /** * Gets/Sets a minimum and/or maximum value. Null values are ignored. + * */ igValidator(optionLiteral: 'option', optionName: "valueRange"): Array|Object; @@ -93642,6 +109007,7 @@ interface JQuery { /** * /Sets a minimum and/or maximum value. Null values are ignored. * + * * @optionValue New value to be set. */ @@ -93649,6 +109015,7 @@ interface JQuery { /** * Gets/Sets Credit Card number validation rule options.Note: This rule will only validate the checksum of the number using Luhn algorithm irregardless of card type. + * */ igValidator(optionLiteral: 'option', optionName: "creditCard"): boolean|Object; @@ -93656,6 +109023,7 @@ interface JQuery { /** * /Sets Credit Card number validation rule options.Note: This rule will only validate the checksum of the number using Luhn algorithm irregardless of card type. * + * * @optionValue New value to be set. */ @@ -93663,6 +109031,7 @@ interface JQuery { /** * Gets/Sets regular expression validation rule options. + * */ igValidator(optionLiteral: 'option', optionName: "pattern"): string|Object; @@ -93670,6 +109039,7 @@ interface JQuery { /** * /Sets regular expression validation rule options. * + * * @optionValue New value to be set. */ @@ -93678,6 +109048,7 @@ interface JQuery { /** * Gets/Sets if all rules for a field should be checked, so even if one fails the rest will continue executing. * Note: This will not force checks on an empty field for rules that don't normally execute without a value. + * */ igValidator(optionLiteral: 'option', optionName: "executeAllRules"): boolean; @@ -93685,42 +109056,49 @@ interface JQuery { * /Sets if all rules for a field should be checked, so even if one fails the rest will continue executing. * Note: This will not force checks on an empty field for rules that don't normally execute without a value. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "executeAllRules", optionValue: boolean): void; /** * Gets/Sets a custom jQuery element to be used for validation messages. That inner HTML of the target is modified, can be a SPAN, LABEL or DIV. + * */ igValidator(optionLiteral: 'option', optionName: "messageTarget"): Element; /** * /Sets a custom jQuery element to be used for validation messages. That inner HTML of the target is modified, can be a SPAN, LABEL or DIV. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "messageTarget", optionValue: Element): void; /** * Gets/Sets text for an error message to be used if none is set for the particular rule. Overrides default rule-specific error messages. + * */ igValidator(optionLiteral: 'option', optionName: "errorMessage"): string; /** * /Sets text for an error message to be used if none is set for the particular rule. Overrides default rule-specific error messages. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "errorMessage", optionValue: string): void; /** * Gets/Sets text for a success message. Note that since there is no default, setting this message will enable showing success indication. + * */ igValidator(optionLiteral: 'option', optionName: "successMessage"): string; /** * /Sets text for a success message. Note that since there is no default, setting this message will enable showing success indication. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "successMessage", optionValue: string): void; @@ -93728,6 +109106,7 @@ interface JQuery { /** * Gets/Sets validation minimum input length. Validation won't be triggered for input before that value is reached on change and focus loss. * Note: This will not affect required fields on form submit. + * */ igValidator(optionLiteral: 'option', optionName: "threshold"): number; @@ -93735,12 +109114,14 @@ interface JQuery { * /Sets validation minimum input length. Validation won't be triggered for input before that value is reached on change and focus loss. * Note: This will not affect required fields on form submit. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "threshold", optionValue: number): void; /** * Gets/Sets a requirement for the value in this field to be the same as another input element or editor control. + * */ igValidator(optionLiteral: 'option', optionName: "equalTo"): string|Object; @@ -93748,6 +109129,7 @@ interface JQuery { /** * /Sets a requirement for the value in this field to be the same as another input element or editor control. * + * * @optionValue New value to be set. */ @@ -93755,6 +109137,7 @@ interface JQuery { /** * Gets/Sets a custom function to perform validation. Use 'this' to reference the calling validator and the value and optional field settings arguments to determine and return the state of the field. + * */ igValidator(optionLiteral: 'option', optionName: "custom"): Function|string|Object; @@ -93762,6 +109145,7 @@ interface JQuery { /** * /Sets a custom function to perform validation. Use 'this' to reference the calling validator and the value and optional field settings arguments to determine and return the state of the field. * + * * @optionValue New value to be set. */ @@ -93770,6 +109154,7 @@ interface JQuery { /** * Gets a list of target field items describing each with validation options and a required selector. Fields can contain any of the validation rules and triggers but not other fields or event handlers. * Applicable options are also inherited from the global control configuration if not set. + * */ igValidator(optionLiteral: 'option', optionName: "fields"): IgValidatorField[]; @@ -93777,18 +109162,21 @@ interface JQuery { * A list of target field items describing each with validation options and a required selector. Fields can contain any of the validation rules and triggers but not other fields or event handlers. * Applicable options are also inherited from the global control configuration if not set. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "fields", optionValue: IgValidatorField[]): void; /** * Gets/Sets the options for the [igNotifier](ui.ignotifier#options) used to show error messages. + * */ igValidator(optionLiteral: 'option', optionName: "notificationOptions"): any; /** * /Sets the options for the [igNotifier](ui.ignotifier#options) used to show error messages. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "notificationOptions", optionValue: any): void; @@ -93796,6 +109184,7 @@ interface JQuery { /** * Gets/Sets the option to show an asterisks indication next to required fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button and the igRating control. + * */ igValidator(optionLiteral: 'option', optionName: "requiredIndication"): boolean; @@ -93803,6 +109192,7 @@ interface JQuery { * /Sets the option to show an asterisks indication next to required fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button sets and the igRating control. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "requiredIndication", optionValue: boolean): void; @@ -93810,6 +109200,7 @@ interface JQuery { /** * Gets/Sets the option to show a label indication next to optional fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button and the igRating control. + * */ igValidator(optionLiteral: 'option', optionName: "optionalIndication"): boolean; @@ -93817,10 +109208,55 @@ interface JQuery { * /Sets the option to show a label indication next to optional fields. * Note: Indicators are not supported on grouped controls such as checkbox or radio button sets and the igRating control. * + * * @optionValue New value to be set. */ igValidator(optionLiteral: 'option', optionName: "optionalIndication", optionValue: boolean): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igValidator(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igValidator(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igValidator(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igValidator(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igValidator(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igValidator(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event which is raised on validation before default validation logic is applied. * Return false in order to cancel the event and consider the field valid. @@ -94093,16 +109529,19 @@ interface JQuery { interface IgVideoPlayerBookmark { /** * Gets/Sets where the bookmark will be positioned. Should be between 0 and movie duration in seconds. + * */ time?: number; /** * Gets/Sets bookmark title. It is shown as tooltip on hover. + * */ title?: string; /** * Gets/Sets whether the bookmark is disabled or not. + * */ disabled?: boolean; @@ -94115,36 +109554,43 @@ interface IgVideoPlayerBookmark { interface IgVideoPlayerRelatedVideo { /** * Gets/Sets the URL of the related video image. + * */ imageUrl?: string; /** * Gets/Sets the title of the video. + * */ title?: string; /** * Gets/Sets the width of the related video image. + * */ width?: number; /** * Gets/Sets the height of the related video image. + * */ height?: number; /** * Gets/Sets a link to a page that will play the related video. It will be opened in a new window. If there are sources also, the link property has a priority. + * */ link?: string; /** * Gets/Sets the sources of the related video. + * */ sources?: any[]; /** * Gets/Sets custom CSS class to be applied on the related video element. + * */ css?: string; @@ -94157,61 +109603,73 @@ interface IgVideoPlayerRelatedVideo { interface IgVideoPlayerBanner { /** * Gets/Sets the banner image url. + * */ imageUrl?: string; /** * Gets/Sets an array of numbers. Each number specifies on which second in the movie the banner will pop. + * */ times?: any[]; /** * Gets/Sets whether the user will be able to close the banner or not. + * */ closeBanner?: boolean; /** * Gets/Sets whether to apply animation effects when showing or hiding the banner. If set to true, the animation is played for banner.duration in milliseconds. + * */ animate?: boolean; /** * Gets/Sets whether the banner is visible or not. + * */ visible?: boolean; /** * Gets/Sets the banner animation duration. + * */ duration?: number; /** * Gets/Sets whether to automatically hide the banner. If set to true, the banner is hidden after [hidedelay](ui.igvideoplayer#options:banners.hidedelay) in milliseconds. + * */ autohide?: boolean; /** * Gets/Sets the banner autohide delay in milliseconds. It is taken into account only if the banner.autohide option is set to true. + * */ hidedelay?: number; /** * Gets/Sets the banner link that will open in new window. + * */ link?: string; /** * Gets/Sets the banner width + * */ width?: number|string; /** * Gets/Sets the banner height + * */ height?: number|string; /** * Gets/Sets the banner specific css class, that will be applied on the banner grid. + * */ css?: string; @@ -94224,21 +109682,25 @@ interface IgVideoPlayerBanner { interface IgVideoPlayerCommercialsLinkedCommercial { /** * Gets/Sets the sources of the linked commercial video. + * */ sources?: any[]; /** * Gets/Sets the second in the video at which the linked commercial should play. + * */ startTime?: number; /** * Gets/Sets the link to open on linked commercial click. + * */ link?: string; /** * Gets/Sets the tooltip for the linked commercial bookmark. + * */ title?: string; @@ -94251,21 +109713,25 @@ interface IgVideoPlayerCommercialsLinkedCommercial { interface IgVideoPlayerCommercialsEmbeddedCommercial { /** * Gets/Sets the start second of the embedded commercial. + * */ startTime?: number; /** * Gets/Sets the end second of the embedded commercial. + * */ endTime?: number; /** * Gets/Sets the sponsored link of the embedded commercial. + * */ link?: string; /** * Gets/Sets the tooltip for the bookmark of the embedded commercial. + * */ title?: string; @@ -94278,21 +109744,25 @@ interface IgVideoPlayerCommercialsEmbeddedCommercial { interface IgVideoPlayerCommercialsAdMessage { /** * Gets/Sets whether to apply an animation effect when showing or hiding the ad message. If set to true, the animation is played for [animationDuration](ui.igvideoplayer#options:commercials.adMessage.animationDuration) in milliseconds. + * */ animate?: boolean; /** * Gets/Sets the ad message auto hide of the commercial. + * */ autoHide?: boolean; /** * Gets/Sets the ad message hide delay. + * */ hideDelay?: number; /** * Gets/Sets the ad message animation duration of the commercial. + * */ animationDuration?: number; @@ -94305,26 +109775,31 @@ interface IgVideoPlayerCommercialsAdMessage { interface IgVideoPlayerCommercials { /** * Gets/Sets an array of linked commercial objects. A linked commercial is a separate video file that will be played in the specified position of the original movie clip by [startTime](ui.igvideoplayer#options:commercials.linkedCommercials.startTime). This feature is useful if you have frequently changing outside commercial sources. + * */ linkedCommercials?: IgVideoPlayerCommercialsLinkedCommercial[]; /** * Gets/Sets an array of embedded commercials objects. An embedded commercial is an ad that is contained in the original video file. It is suitable when you want to mark some sections of the video as commercials. + * */ embeddedCommercials?: IgVideoPlayerCommercialsEmbeddedCommercial[]; /** * Gets/Sets whether the commercials will play againg during the repetitive video plays. + * */ alwaysPlayCommercials?: boolean; /** * Gets/Sets whether to show commercial locations or not. + * */ showBookmarks?: boolean; /** * Customizes the ad message settings of the commercial. Ad message shows the duration of the commercial and pops up when the commercial starts playing. + * */ adMessage?: IgVideoPlayerCommercialsAdMessage; @@ -94337,96 +109812,115 @@ interface IgVideoPlayerCommercials { interface IgVideoPlayerLocale { /** * Gets/Sets live stream video title. + * */ liveStream?: boolean; /** * Gets/Sets live video title. + * */ live?: boolean; /** * Gets/Sets paused button title. + * */ paused?: boolean; /** * Gets/Sets playing button title. + * */ playing?: boolean; /** * Gets/Sets play button title. + * */ play?: boolean; /** * Gets/Sets volume button title. + * */ volume?: boolean; /** * Gets/Sets progress label long format. + * */ progressLabelLongFormat?: boolean; /** * Gets/Sets progress label short format. + * */ progressLabelShortFormat?: boolean; /** * Gets/Sets enter fullscreen button title. + * */ enterFullscreen?: boolean; /** * Gets/Sets exit fullscreen button title. + * */ exitFullscreen?: boolean; /** * Gets/Sets skip to button title. + * */ skipTo?: boolean; /** * Gets/Sets buffering label text. + * */ buffering?: boolean; /** * Gets/Sets ad message text. + * */ adMessage?: boolean; /** * Gets/Sets long ad message text. + * */ adMessageLong?: boolean; /** * Gets/Sets ad message text when no duration is specified. + * */ adMessageNoDuration?: boolean; /** * Gets/Sets new ad window title. + * */ adNewWindowTip?: boolean; /** * Gets/Sets related videos text. + * */ relatedVideos?: boolean; /** * Gets/Sets replay button text. + * */ replayButton?: boolean; /** * Gets/Sets replay button tooltip. + * */ replayTooltip?: boolean; @@ -94442,14 +109936,14 @@ interface EndedEvent { interface EndedEventUIParam { /** - * Used to get the url of the playing video. + * Get the video duration in seconds. */ - source?: any; + duration?: number; /** - * Used to get the video duration in seconds. + * Get the url of the playing video. */ - duration?: any; + source?: string; } interface PlayingEvent { @@ -94458,14 +109952,19 @@ interface PlayingEvent { interface PlayingEventUIParam { /** - * Used to get the url of the playing video. + * Get the current time in the video at which the event was fired. */ - source?: any; + currentTime?: number; /** - * Used to get the video duration in seconds. + * Get the video duration in seconds. */ - duration?: any; + duration?: number; + + /** + * Get the url of the playing video. + */ + source?: string; } interface PausedEvent { @@ -94474,14 +109973,19 @@ interface PausedEvent { interface PausedEventUIParam { /** - * Used to get the url of the playing video. + * Get the current time in the video at which the event was fired. */ - source?: any; + currentTime?: number; /** - * Used to get the video duration in seconds. + * Get the video duration in seconds. */ - duration?: any; + duration?: number; + + /** + * Get the url of the playing video. + */ + source?: string; } interface BufferingEvent { @@ -94490,14 +109994,14 @@ interface BufferingEvent { interface BufferingEventUIParam { /** - * Used to get the url of the playing video. + * Get buffered percentage. */ - source?: any; + buffered?: number; /** - * Used to get buffered percentage. + * Get the url of the playing video. */ - buffered?: any; + source?: string; } interface ProgressEvent { @@ -94506,19 +110010,19 @@ interface ProgressEvent { interface ProgressEventUIParam { /** - * Used to get the url of the playing video. + * Get the current time in the video at which the event was fired. */ - source?: any; + currentTime?: number; /** - * Used to get current position in the video at which the event was fired. + * Get the video duration in seconds. */ - currentTime?: any; + duration?: number; /** - * Used to get the video duration in seconds. + * Get the url of the playing video. */ - duration?: any; + source?: string; } interface WaitingEvent { @@ -94527,19 +110031,19 @@ interface WaitingEvent { interface WaitingEventUIParam { /** - * Used to get the url of the playing video. + * Get the current time in the video at which the event was fired. */ - source?: any; + currentTime?: number; /** - * Used to get current position in the video at which the event was fired. + * Get the video duration in seconds. */ - currentTime?: any; + duration?: number; /** - * Used to get the video duration in seconds. + * Get the url of the playing video. */ - duration?: any; + source?: string; } interface EnterFullScreenEvent { @@ -94548,9 +110052,9 @@ interface EnterFullScreenEvent { interface EnterFullScreenEventUIParam { /** - * Used to get the url of the playing video. + * Get the url of the playing video. */ - source?: any; + source?: string; } interface ExitFullScreenEvent { @@ -94559,9 +110063,9 @@ interface ExitFullScreenEvent { interface ExitFullScreenEventUIParam { /** - * Used to get the url of the playing video. + * Get the url of the playing video. */ - source?: any; + source?: string; } interface RelatedVideoClickEvent { @@ -94570,12 +110074,12 @@ interface RelatedVideoClickEvent { interface RelatedVideoClickEventUIParam { /** - * Used to get the relatedVideo object from the relatedVideos array. + * Get the relatedVideo object from the relatedVideos array. */ relatedVideo?: any; /** - * Used to get the relatedVideo html element in the DOM. + * Get the relatedVideo html element in the DOM. */ relatedVideoElement?: any; } @@ -94586,19 +110090,19 @@ interface BannerVisibleEvent { interface BannerVisibleEventUIParam { /** - * Used to get the banner index in the banners array. - */ - index?: any; - - /** - * Used to get the banner object from the banners array. + * Get the banner object from the banners array. */ banner?: any; /** - * Used to get the banner html element in the DOM. + * Get the banner html element in the DOM. */ bannerElement?: any; + + /** + * Get the banner index in the banners array. + */ + index?: number; } interface BannerHiddenEvent { @@ -94607,19 +110111,19 @@ interface BannerHiddenEvent { interface BannerHiddenEventUIParam { /** - * Used to get the banner index in the banners array. - */ - index?: any; - - /** - * Used to get the banner object from the banners array. + * Get the banner object from the banners array. */ banner?: any; /** - * Used to get the banner html element in the DOM. + * Get the banner html element in the DOM. */ bannerElement?: any; + + /** + * Get the banner index in the banners array. + */ + index?: number; } interface BannerClickEvent { @@ -94628,7 +110132,7 @@ interface BannerClickEvent { interface BannerClickEventUIParam { /** - * Used to get the banner html element in the DOM. + * Get the banner html element in the DOM. */ bannerElement?: any; } @@ -94636,116 +110140,147 @@ interface BannerClickEventUIParam { interface IgVideoPlayer { /** * Gets/Sets a list of video sources to choose from. Best coded/format is automatically detected by the control. Supported types are depending on the browser and could be one of the following mov, mp4, webm, ogg. + * */ sources?: any[]; /** * Gets/Sets the width of the control. By default null will stretch the control to fit data, if no other widths are defined. + * */ width?: string|number; /** * Gets/Sets the height of the control. By default null will stretch the control to fit data, if no other heights are defined. + * */ height?: string|number; /** * Gets/Sets a URL to an image to show, when no video data is available. + * */ posterUrl?: string; /** * Gets/Sets whether to preload load initial data for duration of video. If true it may start buffering the video, but this highly depends on the specific browser implementation. + * */ preload?: boolean; /** * Gets/Sets whether the video should start playing immediately after the control is loaded. + * */ autoplay?: boolean; /** * Gets/Sets whether player controls will auto hide when video is not hovered. This is applicable only when Infragistics playback controls are used. + * */ autohide?: boolean; /** * Gets/Sets volume slider auto hide delay. This is applicable only when Infragistics playback controls are used. + * */ volumeAutohideDelay?: number; /** * Gets/Sets the center big button hide delay. + * */ centerButtonHideDelay?: number; /** * Gets/Sets whether the video to start again after it has ended. + * */ loop?: boolean; /** * Gets/Sets whether if you want to use the built in browser controls. By default player uses Infragistics playback controls. Note that you may have different look and feel across different browsers if you use the built in browser controls. When this option is set to true, no [commercials](ui.igvideoplayer#options:commercials) will be displayed as they are not supported. + * */ browserControls?: boolean; /** * Gets/Sets whether the video player to be in full screen or not. This is not a pure full screen, because browsers do not allow that. It just sets 100% width and height to the control. + * */ fullscreen?: boolean; /** * Gets/Sets the video volume. It can be between 0.0 and 1.0. + * */ volume?: number; /** * Gets/Sets whether the video volume is muted. + * */ muted?: boolean; /** * Gets/Sets video title. + * */ title?: string; /** * Gets/Sets whether the control seek tool tip will be shown when hovering the video progress bar. + * */ showSeekTime?: boolean; /** * Gets/Sets the format of the video progress label. You should use ${currentTime} to represent current playback position and ${duration} to represent video duration. + * */ progressLabelFormat?: string; /** * Gets/Sets an array of bookmarks that will be displayed in the video player control. + * */ bookmarks?: IgVideoPlayerBookmark[]; /** * Gets/Sets an array of related videos that will be displayed when video playback has ended. + * */ relatedVideos?: IgVideoPlayerRelatedVideo[]; /** * Gets/Sets an array of banner objects that will show the banners when the video clip is played. + * */ banners?: IgVideoPlayerBanner[]; /** * Gets/Sets an array of commercials objects that will be displayed when the video is playing. Note that [broswerControls](ui.igvideoplayer#options:browserControls) doesn't support commercials. + * */ commercials?: IgVideoPlayerCommercials; locale?: IgVideoPlayerLocale; /** - * Occurs when video has ended. + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + + /** + * Occurs when the video has ended. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ ended?: EndedEvent; @@ -94753,17 +110288,13 @@ interface IgVideoPlayer { * Occurs when video gets playing. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ playing?: PlayingEvent; /** - * Occurs when video is paused. + * Occurs when the video is paused. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ paused?: PausedEvent; @@ -94771,18 +110302,13 @@ interface IgVideoPlayer { * Occurs when a chunk of data is buffered. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.buffered to get buffered percentage. */ buffering?: BufferingEvent; /** - * Occurs when video has advanced the playback position. + * Occurs when the video has advanced the playback position. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. */ progress?: ProgressEvent; @@ -94790,28 +110316,20 @@ interface IgVideoPlayer { * Occurs when igVideoPlayer is waiting for data from the server. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. */ waiting?: WaitingEvent; /** - * Occurs when the bookmark is hit. + * Occurs when a bookmark is hit. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. */ bookmarkHit?: BookmarkHitEvent; /** - * Occurs when the bookmark is clicked. + * Occurs when a bookmark is clicked. * * Function takes arguments evt and ui. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. */ bookmarkClick?: BookmarkClickEvent; @@ -94819,7 +110337,6 @@ interface IgVideoPlayer { * Occurs when igVideoPlayer enters full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. */ enterFullScreen?: EnterFullScreenEvent; @@ -94827,16 +110344,13 @@ interface IgVideoPlayer { * Occurs when igVideoPlayer exits full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. */ exitFullScreen?: ExitFullScreenEvent; /** - * Occurs when related video is clicked. + * Occurs when a related video is clicked. * * Function takes arguments evt and ui. - * Use ui.relatedVideo to get the relatedVideo object from the relatedVideos array. - * Use ui.relatedVideoElement to get the relatedVideo html element in the DOM. */ relatedVideoClick?: RelatedVideoClickEvent; @@ -94844,9 +110358,6 @@ interface IgVideoPlayer { * Defines the name of the player banner visible event. Fired when the banner has been displayed. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. */ bannerVisible?: BannerVisibleEvent; @@ -94854,9 +110365,6 @@ interface IgVideoPlayer { * Occurs when the banner is hidden. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. */ bannerHidden?: BannerHiddenEvent; @@ -94864,7 +110372,6 @@ interface IgVideoPlayer { * Occurs when the banner is clicked. * * Function takes arguments evt and ui. - * Use ui.bannerElement to get the banner html element in the DOM. */ bannerClick?: BannerClickEvent; @@ -94914,6 +110421,11 @@ interface IgVideoPlayerMethods { * Resets the commercials, to be shown again. */ resetCommercialsShow(): void; + + /** + * Changes the all locales into the widget element to the language specified in [options.language](ui.igvideoplayer#options:language) + * Note that this method is for rare scenarios, use [language](ui.igvideoplayer#options:language) or [locale](ui.igvideoplayer#options:locale) option setter + */ changeLocale(): void; /** @@ -94989,6 +110501,16 @@ interface IgVideoPlayerMethods { * Destroys the widget. */ destroy(): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igVideoPlayer"): IgVideoPlayerMethods; @@ -95016,21 +110538,26 @@ interface JQuery { igVideoPlayer(methodName: "duration"): number; igVideoPlayer(methodName: "seeking"): boolean; igVideoPlayer(methodName: "destroy"): void; + igVideoPlayer(methodName: "changeGlobalLanguage"): void; + igVideoPlayer(methodName: "changeGlobalRegional"): void; /** * Gets/Sets a list of video sources to choose from. Best coded/format is automatically detected by the control. Supported types are depending on the browser and could be one of the following mov, mp4, webm, ogg. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "sources"): any[]; /** * /Sets a list of video sources to choose from. Best coded/format is automatically detected by the control. Supported types are depending on the browser and could be one of the following mov, mp4, webm, ogg. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "sources", optionValue: any[]): void; /** * Gets/Sets the width of the control. By default null will stretch the control to fit data, if no other widths are defined. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "width"): string|number; @@ -95038,6 +110565,7 @@ interface JQuery { /** * /Sets the width of the control. By default null will stretch the control to fit data, if no other widths are defined. * + * * @optionValue New value to be set. */ @@ -95045,6 +110573,7 @@ interface JQuery { /** * Gets/Sets the height of the control. By default null will stretch the control to fit data, if no other heights are defined. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "height"): string|number; @@ -95052,6 +110581,7 @@ interface JQuery { /** * /Sets the height of the control. By default null will stretch the control to fit data, if no other heights are defined. * + * * @optionValue New value to be set. */ @@ -95059,216 +110589,252 @@ interface JQuery { /** * Gets/Sets a URL to an image to show, when no video data is available. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "posterUrl"): string; /** * /Sets a URL to an image to show, when no video data is available. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "posterUrl", optionValue: string): void; /** * Gets/Sets whether to preload load initial data for duration of video. If true it may start buffering the video, but this highly depends on the specific browser implementation. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "preload"): boolean; /** * /Sets whether to preload load initial data for duration of video. If true it may start buffering the video, but this highly depends on the specific browser implementation. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "preload", optionValue: boolean): void; /** * Gets/Sets whether the video should start playing immediately after the control is loaded. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "autoplay"): boolean; /** * /Sets whether the video should start playing immediately after the control is loaded. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "autoplay", optionValue: boolean): void; /** * Gets/Sets whether player controls will auto hide when video is not hovered. This is applicable only when Infragistics playback controls are used. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "autohide"): boolean; /** * /Sets whether player controls will auto hide when video is not hovered. This is applicable only when Infragistics playback controls are used. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "autohide", optionValue: boolean): void; /** * Gets/Sets volume slider auto hide delay. This is applicable only when Infragistics playback controls are used. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "volumeAutohideDelay"): number; /** * /Sets volume slider auto hide delay. This is applicable only when Infragistics playback controls are used. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "volumeAutohideDelay", optionValue: number): void; /** * Gets/Sets the center big button hide delay. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "centerButtonHideDelay"): number; /** * /Sets the center big button hide delay. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "centerButtonHideDelay", optionValue: number): void; /** * Gets/Sets whether the video to start again after it has ended. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "loop"): boolean; /** * /Sets whether the video to start again after it has ended. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "loop", optionValue: boolean): void; /** * Gets/Sets whether if you want to use the built in browser controls. By default player uses Infragistics playback controls. Note that you may have different look and feel across different browsers if you use the built in browser controls. When this option is set to true, no [commercials](ui.igvideoplayer#options:commercials) will be displayed as they are not supported. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "browserControls"): boolean; /** * /Sets whether if you want to use the built in browser controls. By default player uses Infragistics playback controls. Note that you may have different look and feel across different browsers if you use the built in browser controls. When this option is set to true, no [commercials](ui.igvideoplayer#options:commercials) will be displayed as they are not supported. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "browserControls", optionValue: boolean): void; /** * Gets/Sets whether the video player to be in full screen or not. This is not a pure full screen, because browsers do not allow that. It just 100% width and height to the control. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "fullscreen"): boolean; /** * /Sets whether the video player to be in full screen or not. This is not a pure full screen, because browsers do not allow that. It just sets 100% width and height to the control. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "fullscreen", optionValue: boolean): void; /** * Gets/Sets the video volume. It can be between 0.0 and 1.0. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "volume"): number; /** * /Sets the video volume. It can be between 0.0 and 1.0. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "volume", optionValue: number): void; /** * Gets/Sets whether the video volume is muted. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "muted"): boolean; /** * /Sets whether the video volume is muted. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "muted", optionValue: boolean): void; /** * Gets/Sets video title. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "title"): string; /** * /Sets video title. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "title", optionValue: string): void; /** * Gets/Sets whether the control seek tool tip will be shown when hovering the video progress bar. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "showSeekTime"): boolean; /** * /Sets whether the control seek tool tip will be shown when hovering the video progress bar. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "showSeekTime", optionValue: boolean): void; /** * Gets/Sets the format of the video progress label. You should use ${currentTime} to represent current playback position and ${duration} to represent video duration. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "progressLabelFormat"): string; /** * /Sets the format of the video progress label. You should use ${currentTime} to represent current playback position and ${duration} to represent video duration. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "progressLabelFormat", optionValue: string): void; /** * Gets/Sets an array of bookmarks that will be displayed in the video player control. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "bookmarks"): IgVideoPlayerBookmark[]; /** * /Sets an array of bookmarks that will be displayed in the video player control. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "bookmarks", optionValue: IgVideoPlayerBookmark[]): void; /** * Gets/Sets an array of related videos that will be displayed when video playback has ended. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "relatedVideos"): IgVideoPlayerRelatedVideo[]; /** * /Sets an array of related videos that will be displayed when video playback has ended. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "relatedVideos", optionValue: IgVideoPlayerRelatedVideo[]): void; /** * Gets/Sets an array of banner objects that will show the banners when the video clip is played. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "banners"): IgVideoPlayerBanner[]; /** * /Sets an array of banner objects that will show the banners when the video clip is played. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "banners", optionValue: IgVideoPlayerBanner[]): void; /** * Gets/Sets an array of commercials objects that will be displayed when the video is playing. Note that [broswerControls](ui.igvideoplayer#options:browserControls) doesn't support commercials. + * */ igVideoPlayer(optionLiteral: 'option', optionName: "commercials"): IgVideoPlayerCommercials; /** * /Sets an array of commercials objects that will be displayed when the video is playing. Note that [broswerControls](ui.igvideoplayer#options:browserControls) doesn't support commercials. * + * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "commercials", optionValue: IgVideoPlayerCommercials): void; @@ -95276,20 +110842,46 @@ interface JQuery { igVideoPlayer(optionLiteral: 'option', optionName: "locale", optionValue: IgVideoPlayerLocale): void; /** - * Occurs when video has ended. + * Set/Get the locale language setting for the widget. + * + */ + igVideoPlayer(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igVideoPlayer(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igVideoPlayer(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igVideoPlayer(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + + /** + * Occurs when the video has ended. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ igVideoPlayer(optionLiteral: 'option', optionName: "ended"): EndedEvent; /** - * Occurs when video has ended. + * Occurs when the video has ended. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. * * @optionValue New value to be set. */ @@ -95299,8 +110891,6 @@ interface JQuery { * Occurs when video gets playing. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ igVideoPlayer(optionLiteral: 'option', optionName: "playing"): PlayingEvent; @@ -95308,28 +110898,22 @@ interface JQuery { * Occurs when video gets playing. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "playing", optionValue: PlayingEvent): void; /** - * Occurs when video is paused. + * Occurs when the video is paused. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. */ igVideoPlayer(optionLiteral: 'option', optionName: "paused"): PausedEvent; /** - * Occurs when video is paused. + * Occurs when the video is paused. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.duration to get the video duration in seconds. * * @optionValue New value to be set. */ @@ -95339,8 +110923,6 @@ interface JQuery { * Occurs when a chunk of data is buffered. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.buffered to get buffered percentage. */ igVideoPlayer(optionLiteral: 'option', optionName: "buffering"): BufferingEvent; @@ -95348,30 +110930,22 @@ interface JQuery { * Occurs when a chunk of data is buffered. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.buffered to get buffered percentage. * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "buffering", optionValue: BufferingEvent): void; /** - * Occurs when video has advanced the playback position. + * Occurs when the video has advanced the playback position. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. */ igVideoPlayer(optionLiteral: 'option', optionName: "progress"): ProgressEvent; /** - * Occurs when video has advanced the playback position. + * Occurs when the video has advanced the playback position. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. * * @optionValue New value to be set. */ @@ -95381,9 +110955,6 @@ interface JQuery { * Occurs when igVideoPlayer is waiting for data from the server. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. */ igVideoPlayer(optionLiteral: 'option', optionName: "waiting"): WaitingEvent; @@ -95391,51 +110962,38 @@ interface JQuery { * Occurs when igVideoPlayer is waiting for data from the server. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.currentTime to get current position in the video at which the event was fired. - * Use ui.duration to get the video duration in seconds. * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "waiting", optionValue: WaitingEvent): void; /** - * Occurs when the bookmark is hit. + * Occurs when a bookmark is hit. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "bookmarkHit"): BookmarkHitEvent; /** - * Occurs when the bookmark is hit. + * Occurs when a bookmark is hit. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "bookmarkHit", optionValue: BookmarkHitEvent): void; /** - * Occurs when the bookmark is clicked. + * Occurs when a bookmark is clicked. * * Function takes arguments evt and ui. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "bookmarkClick"): BookmarkClickEvent; /** - * Occurs when the bookmark is clicked. + * Occurs when a bookmark is clicked. * * Function takes arguments evt and ui. - * Use ui.bookmark to get the bookmark object from the bookmarks array. - * Use ui.bookmarkElement to get the html element in the DOM. * * @optionValue New value to be set. */ @@ -95445,7 +111003,6 @@ interface JQuery { * Occurs when igVideoPlayer enters full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. */ igVideoPlayer(optionLiteral: 'option', optionName: "enterFullScreen"): EnterFullScreenEvent; @@ -95453,7 +111010,6 @@ interface JQuery { * Occurs when igVideoPlayer enters full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. * * @optionValue New value to be set. */ @@ -95463,7 +111019,6 @@ interface JQuery { * Occurs when igVideoPlayer exits full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. */ igVideoPlayer(optionLiteral: 'option', optionName: "exitFullScreen"): ExitFullScreenEvent; @@ -95471,27 +111026,22 @@ interface JQuery { * Occurs when igVideoPlayer exits full screen mode. * * Function takes arguments evt and ui. - * Use ui.source to get the url of the playing video. * * @optionValue New value to be set. */ igVideoPlayer(optionLiteral: 'option', optionName: "exitFullScreen", optionValue: ExitFullScreenEvent): void; /** - * Occurs when related video is clicked. + * Occurs when a related video is clicked. * * Function takes arguments evt and ui. - * Use ui.relatedVideo to get the relatedVideo object from the relatedVideos array. - * Use ui.relatedVideoElement to get the relatedVideo html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "relatedVideoClick"): RelatedVideoClickEvent; /** - * Occurs when related video is clicked. + * Occurs when a related video is clicked. * * Function takes arguments evt and ui. - * Use ui.relatedVideo to get the relatedVideo object from the relatedVideos array. - * Use ui.relatedVideoElement to get the relatedVideo html element in the DOM. * * @optionValue New value to be set. */ @@ -95501,9 +111051,6 @@ interface JQuery { * Defines the name of the player banner visible event. Fired when the banner has been displayed. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "bannerVisible"): BannerVisibleEvent; @@ -95511,9 +111058,6 @@ interface JQuery { * Defines the name of the player banner visible event. Fired when the banner has been displayed. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. * * @optionValue New value to be set. */ @@ -95523,9 +111067,6 @@ interface JQuery { * Occurs when the banner is hidden. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "bannerHidden"): BannerHiddenEvent; @@ -95533,9 +111074,6 @@ interface JQuery { * Occurs when the banner is hidden. * * Function takes arguments evt and ui. - * Use ui.index to get the banner index in the banners array. - * Use ui.banner to get the banner object from the banners array. - * Use ui.bannerElement to get the banner html element in the DOM. * * @optionValue New value to be set. */ @@ -95545,7 +111083,6 @@ interface JQuery { * Occurs when the banner is clicked. * * Function takes arguments evt and ui. - * Use ui.bannerElement to get the banner html element in the DOM. */ igVideoPlayer(optionLiteral: 'option', optionName: "bannerClick"): BannerClickEvent; @@ -95553,7 +111090,6 @@ interface JQuery { * Occurs when the banner is clicked. * * Function takes arguments evt and ui. - * Use ui.bannerElement to get the banner html element in the DOM. * * @optionValue New value to be set. */ @@ -95579,16 +111115,19 @@ interface JQuery { interface IgWidget { /** * Set/Get the locale setting for the widget. + * */ locale?: any; /** * Set/Get the locale language setting for the widget. + * */ language?: string; /** * Set/Get the regional setting for the widget. + * */ regional?: string|Object; @@ -95598,9 +111137,30 @@ interface IgWidget { [optionName: string]: any; } interface IgWidgetMethods { + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ changeGlobalRegional(): void; + + /** + * Destroy is part of the jQuery UI widget API and does the following: + * 1. Remove custom CSS classes that were added. + * 2. Unwrap any wrapping elements such as scrolling divs and other containers. + * 3. Unbind all events that were bound. + */ destroy(): void; } interface JQuery { @@ -95615,30 +111175,35 @@ interface JQuery { /** * Set/Get the locale setting for the widget. + * */ igWidget(optionLiteral: 'option', optionName: "locale"): any; /** * Set/Get the locale setting for the widget. * + * * @optionValue New value to be set. */ igWidget(optionLiteral: 'option', optionName: "locale", optionValue: any): void; /** * Set/Get the locale language setting for the widget. + * */ igWidget(optionLiteral: 'option', optionName: "language"): string; /** * Set/Get the locale language setting for the widget. * + * * @optionValue New value to be set. */ igWidget(optionLiteral: 'option', optionName: "language", optionValue: string): void; /** * Set/Get the regional setting for the widget. + * */ igWidget(optionLiteral: 'option', optionName: "regional"): string|Object; @@ -95646,6 +111211,7 @@ interface JQuery { /** * Set/Get the regional setting for the widget. * + * * @optionValue New value to be set. */ @@ -95659,11 +111225,13 @@ interface JQuery { interface IgZoombarDefaultZoomWindow { /** * The left component of the zoom window in percentages. + * */ left?: number; /** * The width of the zoom window in percentages. + * */ width?: string; @@ -95787,6 +111355,7 @@ interface IgZoombar { /** * Specifies the element on which the widget the Zoombar is attached to is initialized. * object A valid jQuery object, the first element of which is that element. + * */ target?: string|Object; @@ -95794,6 +111363,7 @@ interface IgZoombar { * Specifies how the target widget's clone is rendered inside the Zoombar. * object A valid set of properties to initialize the clone with. * + * * Valid values: * "auto" Options for initializing the clone will be inferred from the target widget. Certain properties will be altered to make the clone more suitable for using inside the Zoombar. * "none" No clone of the target widget will be initialized inside the Zoombar. @@ -95803,8 +111373,11 @@ interface IgZoombar { /** * Specifies the width of the Zoombar. * + * * Valid values: * "auto" The width of the Zoombar will be the same as the widget it is attached to. + * "number" The widget width in pixels (px). + * "string" The widget width can be set in pixels (px) and percentage (%). * "null" The Zoombar will stretch horizontally to fit its container if it has width set, otherwise assumes auto. */ width?: string|number; @@ -95812,6 +111385,7 @@ interface IgZoombar { /** * Specifies the height of the Zoombar. * + * * Valid values: * "null" The Zoombar will stretch vertically to fit its container if it has height set, otherwise assumes 70px. */ @@ -95820,6 +111394,7 @@ interface IgZoombar { /** * Specifies when the zoom effect is applied. * + * * Valid values: * "immediate" The zoom action is applied as the end-user interacts with the zoom window. * "deferred" The zoom action is applied after the interaction with the zoom window completes. @@ -95828,34 +111403,58 @@ interface IgZoombar { /** * Specifies the distance (in percents) the zoom window moves when the left or right scroll bar buttons are clicked. + * */ zoomWindowMoveDistance?: number; /** * Specifies the default zoom in percentages. + * */ defaultZoomWindow?: IgZoombarDefaultZoomWindow; /** * The minimal width the zoom window can have in percentages. + * */ zoomWindowMinWidth?: number; /** * Specifies the animation duration (in milliseconds) when hover style is applied or removed from elements. + * */ hoverStyleAnimationDuration?: number; /** * Specifies the pan duration (in milliseconds) when the window changes position. Set to 0 for snap. + * */ windowPanDuration?: number; /** * Initial tabIndex for the Zoombar container elements. + * */ tabIndex?: number; + /** + * Set/Get the locale setting for the widget. + * + */ + locale?: any; + + /** + * Set/Get the locale language setting for the widget. + * + */ + language?: string; + + /** + * Set/Get the regional setting for the widget. + * + */ + regional?: string|Object; + /** * Event fired before a zoom action is applied */ @@ -95945,6 +111544,24 @@ interface IgZoombarMethods { * @param width The width parameter of the new zoom window in percentages */ zoom(left?: number, width?: number): Object; + + /** + * Changes the all locales contained into a specified container to the language specified in [options.language](ui.igwidget#options:language) + * Note that this method is for rare scenarios, use [language](ui.igwidget#options:language) or [locale](ui.igwidget#options:locale) option setter + * + * @param $container Optional parameter - if not set it would use the element of the widget as $container + */ + changeLocale($container: Object): void; + + /** + * Changes the widget language to global language. Global language is the value in $.ig.util.language + */ + changeGlobalLanguage(): void; + + /** + * Changes the widget regional settins to global regional settings. Global regional settings are container in $.ig.util.regional + */ + changeGlobalRegional(): void; } interface JQuery { data(propertyName: "igZoombar"): IgZoombarMethods; @@ -96041,6 +111658,9 @@ class ZoombarProviderDefault { /** * Jshint ignore:line + * + * @param a + * @param b */ update(a: Object, b: Object): void; } @@ -96075,6 +111695,9 @@ interface JQuery { igZoombar(methodName: "container"): Element; igZoombar(methodName: "clone"): Element; igZoombar(methodName: "zoom", left?: number, width?: number): Object; + igZoombar(methodName: "changeLocale", $container: Object): void; + igZoombar(methodName: "changeGlobalLanguage"): void; + igZoombar(methodName: "changeGlobalRegional"): void; /** * Gets a provider class which interfaces the widget that is being zoomed. @@ -96093,6 +111716,7 @@ interface JQuery { /** * Gets the element on which the widget the Zoombar is attached to is initialized. * object A valid jQuery object, the first element of which is that element. + * */ igZoombar(optionLiteral: 'option', optionName: "target"): string|Object; @@ -96101,6 +111725,7 @@ interface JQuery { * Sets the element on which the widget the Zoombar is attached to is initialized. * object A valid jQuery object, the first element of which is that element. * + * * @optionValue New value to be set. */ @@ -96109,6 +111734,7 @@ interface JQuery { /** * Gets how the target widget's clone is rendered inside the Zoombar. * object A valid set of properties to initialize the clone with. + * */ igZoombar(optionLiteral: 'option', optionName: "clone"): string|Object; @@ -96117,6 +111743,7 @@ interface JQuery { * Sets how the target widget's clone is rendered inside the Zoombar. * object A valid set of properties to initialize the clone with. * + * * @optionValue New value to be set. */ @@ -96124,6 +111751,7 @@ interface JQuery { /** * Gets the width of the Zoombar. + * */ igZoombar(optionLiteral: 'option', optionName: "width"): string|number; @@ -96131,6 +111759,7 @@ interface JQuery { /** * Sets the width of the Zoombar. * + * * @optionValue New value to be set. */ @@ -96138,6 +111767,7 @@ interface JQuery { /** * Gets the height of the Zoombar. + * */ igZoombar(optionLiteral: 'option', optionName: "height"): number|string; @@ -96145,6 +111775,7 @@ interface JQuery { /** * Sets the height of the Zoombar. * + * * @optionValue New value to be set. */ @@ -96152,6 +111783,7 @@ interface JQuery { /** * Gets when the zoom effect is applied. + * */ igZoombar(optionLiteral: 'option', optionName: "zoomAction"): string; @@ -96159,6 +111791,7 @@ interface JQuery { /** * Sets when the zoom effect is applied. * + * * @optionValue New value to be set. */ @@ -96166,76 +111799,132 @@ interface JQuery { /** * Gets the distance (in percents) the zoom window moves when the left or right scroll bar buttons are clicked. + * */ igZoombar(optionLiteral: 'option', optionName: "zoomWindowMoveDistance"): number; /** * Sets the distance (in percents) the zoom window moves when the left or right scroll bar buttons are clicked. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "zoomWindowMoveDistance", optionValue: number): void; /** * Gets the default zoom in percentages. + * */ igZoombar(optionLiteral: 'option', optionName: "defaultZoomWindow"): IgZoombarDefaultZoomWindow; /** * Sets the default zoom in percentages. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "defaultZoomWindow", optionValue: IgZoombarDefaultZoomWindow): void; /** * The minimal width the zoom window can have in percentages. + * */ igZoombar(optionLiteral: 'option', optionName: "zoomWindowMinWidth"): number; /** * The minimal width the zoom window can have in percentages. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "zoomWindowMinWidth", optionValue: number): void; /** * Gets the animation duration (in milliseconds) when hover style is applied or removed from elements. + * */ igZoombar(optionLiteral: 'option', optionName: "hoverStyleAnimationDuration"): number; /** * Sets the animation duration (in milliseconds) when hover style is applied or removed from elements. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "hoverStyleAnimationDuration", optionValue: number): void; /** * Gets the pan duration (in milliseconds) when the window changes position. Set to 0 for snap. + * */ igZoombar(optionLiteral: 'option', optionName: "windowPanDuration"): number; /** * Sets the pan duration (in milliseconds) when the window changes position. Set to 0 for snap. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "windowPanDuration", optionValue: number): void; /** * Initial tabIndex for the Zoombar container elements. + * */ igZoombar(optionLiteral: 'option', optionName: "tabIndex"): number; /** * Initial tabIndex for the Zoombar container elements. * + * * @optionValue New value to be set. */ igZoombar(optionLiteral: 'option', optionName: "tabIndex", optionValue: number): void; + /** + * Set/Get the locale setting for the widget. + * + */ + igZoombar(optionLiteral: 'option', optionName: "locale"): any; + + /** + * Set/Get the locale setting for the widget. + * + * + * @optionValue New value to be set. + */ + igZoombar(optionLiteral: 'option', optionName: "locale", optionValue: any): void; + + /** + * Set/Get the locale language setting for the widget. + * + */ + igZoombar(optionLiteral: 'option', optionName: "language"): string; + + /** + * Set/Get the locale language setting for the widget. + * + * + * @optionValue New value to be set. + */ + igZoombar(optionLiteral: 'option', optionName: "language", optionValue: string): void; + + /** + * Set/Get the regional setting for the widget. + * + */ + + igZoombar(optionLiteral: 'option', optionName: "regional"): string|Object; + + /** + * Set/Get the regional setting for the widget. + * + * + * @optionValue New value to be set. + */ + + igZoombar(optionLiteral: 'option', optionName: "regional", optionValue: string|Object): void; + /** * Event fired before a zoom action is applied */ @@ -96363,6 +112052,233 @@ interface JQuery { igZoombar(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; igZoombar(methodName: string, ...methodParams: any[]): any; } +interface ResolvingAxisValueEvent { + (event: Event, ui: ResolvingAxisValueEventUIParam): void; +} + +interface ResolvingAxisValueEventUIParam {} + +interface IgZoomSlider { + /** + * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + */ + width?: string|number; + + /** + * The height of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + */ + height?: string|number; + panTransitionDuration?: number; + maxZoomWidth?: number; + pixelScalingRatio?: number; + actualPixelScalingRatio?: number; + windowRect?: any; + minZoomWidth?: number; + startInset?: number; + endInset?: number; + trackStartInset?: number; + trackEndInset?: number; + barExtent?: number; + orientation?: string; + lowerThumbBrush?: any; + lowerThumbStrokeThickness?: number; + higherThumbStrokeThickness?: number; + higherThumbBrush?: any; + lowerThumbOutline?: any; + higherThumbOutline?: any; + lowerThumbRidgesBrush?: any; + higherThumbRidgesBrush?: any; + lowerThumbWidth?: number; + higherThumbWidth?: number; + lowerThumbHeight?: number; + higherThumbHeight?: number; + lowerShadeBrush?: any; + lowerShadeOutline?: any; + lowerShadeStrokeThickness?: number; + higherShadeBrush?: any; + higherShadeOutline?: any; + higherShadeStrokeThickness?: number; + barBrush?: any; + barOutline?: any; + barStrokeThickness?: number; + rangeThumbBrush?: any; + rangeThumbOutline?: any; + rangeThumbStrokeThickness?: number; + rangeThumbRidgesBrush?: any; + lowerCalloutBrush?: any; + lowerCalloutTextColor?: any; + lowerCalloutOutline?: any; + lowerCalloutStrokeThickness?: number; + higherCalloutBrush?: any; + higherCalloutTextColor?: any; + higherCalloutOutline?: any; + higherCalloutStrokeThickness?: number; + areThumbCalloutsEnabled?: boolean; + thumbCalloutTextStyle?: any; + propertyChanged?: PropertyChangedEvent; + resolvingAxisValue?: ResolvingAxisValueEvent; + windowRectChanged?: WindowRectChangedEvent; + + /** + * Option for igZoomSlider + */ + [optionName: string]: any; +} +interface IgZoomSliderMethods { + notifySizeChanged(): void; + + /** + * Flushes the gauge. + */ + flush(): void; + + /** + * Destroys widget. + */ + destroy(): void; +} +interface JQuery { + data(propertyName: "igZoomSlider"): IgZoomSliderMethods; +} + +interface JQuery { + igZoomSlider(methodName: "notifySizeChanged"): void; + igZoomSlider(methodName: "flush"): void; + igZoomSlider(methodName: "destroy"): void; + + /** + * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + */ + + igZoomSlider(optionLiteral: 'option', optionName: "width"): string|number; + + /** + * The width of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + * + * @optionValue New value to be set. + */ + + igZoomSlider(optionLiteral: 'option', optionName: "width", optionValue: string|number): void; + + /** + * The height of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + */ + + igZoomSlider(optionLiteral: 'option', optionName: "height"): string|number; + + /** + * The height of the gauge. It can be set as a number in pixels, string (px) or percentage (%). + * + * @optionValue New value to be set. + */ + + igZoomSlider(optionLiteral: 'option', optionName: "height", optionValue: string|number): void; + igZoomSlider(optionLiteral: 'option', optionName: "panTransitionDuration"): number; + igZoomSlider(optionLiteral: 'option', optionName: "panTransitionDuration", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "maxZoomWidth"): number; + igZoomSlider(optionLiteral: 'option', optionName: "maxZoomWidth", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "pixelScalingRatio"): number; + igZoomSlider(optionLiteral: 'option', optionName: "pixelScalingRatio", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "actualPixelScalingRatio"): number; + igZoomSlider(optionLiteral: 'option', optionName: "actualPixelScalingRatio", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "windowRect"): any; + igZoomSlider(optionLiteral: 'option', optionName: "windowRect", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "minZoomWidth"): number; + igZoomSlider(optionLiteral: 'option', optionName: "minZoomWidth", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "startInset"): number; + igZoomSlider(optionLiteral: 'option', optionName: "startInset", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "endInset"): number; + igZoomSlider(optionLiteral: 'option', optionName: "endInset", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "trackStartInset"): number; + igZoomSlider(optionLiteral: 'option', optionName: "trackStartInset", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "trackEndInset"): number; + igZoomSlider(optionLiteral: 'option', optionName: "trackEndInset", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "barExtent"): number; + igZoomSlider(optionLiteral: 'option', optionName: "barExtent", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "orientation"): string; + igZoomSlider(optionLiteral: 'option', optionName: "orientation", optionValue: string): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbRidgesBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbRidgesBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbRidgesBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbRidgesBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbWidth"): number; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbWidth", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbWidth"): number; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbWidth", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbHeight"): number; + igZoomSlider(optionLiteral: 'option', optionName: "lowerThumbHeight", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbHeight"): number; + igZoomSlider(optionLiteral: 'option', optionName: "higherThumbHeight", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "lowerShadeStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "higherShadeStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "barBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "barBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "barOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "barOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "barStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "barStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbRidgesBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "rangeThumbRidgesBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutTextColor"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutTextColor", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "lowerCalloutStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutBrush"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutBrush", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutTextColor"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutTextColor", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutOutline"): any; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutOutline", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutStrokeThickness"): number; + igZoomSlider(optionLiteral: 'option', optionName: "higherCalloutStrokeThickness", optionValue: number): void; + igZoomSlider(optionLiteral: 'option', optionName: "areThumbCalloutsEnabled"): boolean; + igZoomSlider(optionLiteral: 'option', optionName: "areThumbCalloutsEnabled", optionValue: boolean): void; + igZoomSlider(optionLiteral: 'option', optionName: "thumbCalloutTextStyle"): any; + igZoomSlider(optionLiteral: 'option', optionName: "thumbCalloutTextStyle", optionValue: any): void; + igZoomSlider(optionLiteral: 'option', optionName: "propertyChanged"): PropertyChangedEvent; + igZoomSlider(optionLiteral: 'option', optionName: "propertyChanged", optionValue: PropertyChangedEvent): void; + igZoomSlider(optionLiteral: 'option', optionName: "resolvingAxisValue"): ResolvingAxisValueEvent; + igZoomSlider(optionLiteral: 'option', optionName: "resolvingAxisValue", optionValue: ResolvingAxisValueEvent): void; + igZoomSlider(optionLiteral: 'option', optionName: "windowRectChanged"): WindowRectChangedEvent; + igZoomSlider(optionLiteral: 'option', optionName: "windowRectChanged", optionValue: WindowRectChangedEvent): void; + igZoomSlider(options: IgZoomSlider): JQuery; + igZoomSlider(optionLiteral: 'option', optionName: string): any; + igZoomSlider(optionLiteral: 'option', options: IgZoomSlider): JQuery; + igZoomSlider(optionLiteral: 'option', optionName: string, optionValue: any): JQuery; + igZoomSlider(methodName: string, ...methodParams: any[]): any; +} interface IgLoader { scriptPath: string; diff --git a/types/in-app-purchase/in-app-purchase-tests.ts b/types/in-app-purchase/in-app-purchase-tests.ts new file mode 100644 index 0000000000..4e142e53e2 --- /dev/null +++ b/types/in-app-purchase/in-app-purchase-tests.ts @@ -0,0 +1,38 @@ +import * as iap from 'in-app-purchase'; + +iap.config({ + /* Configurations for Amazon Store */ + amazonAPIVersion: 2, // tells the module to use API version 2 + secret: 'abcdefghijklmnoporstuvwxyz', // this comes from Amazon + + /* Configurations for Apple */ + applePassword: 'abcdefg...', // this comes from iTunes Connect (You need this to valiate subscriptions) + + /* Configurations for Google Play */ + googlePublicKeyPath: 'path/to/public/key/directory/', // this is the path to the directory containing iap-sanbox/iap-live files + googleAccToken: 'abcdef...', // optional, for Google Play subscriptions + googleRefToken: 'dddd...', // optional, for Google Play subscritions + clientId: 'aaaa', // optional, for Google Play subscriptions + clientSecret: 'bbbb', // optional, for Google Play subscriptions + refreshToken: 'cccc', // optional, for Google Play subscriptions + + /* Configurations for Roku */ + rokuApiKey: 'aaaa...', // this comes from Roku Developer Dashboard + + /* Configurations all platforms */ + test: true, // For Apple and Googl Play to force Sandbox validation only + verbose: true // Output debug logs to stdout stream +}); +iap.setup() + .then(() => iap.validate('abcdef')) + .then((validatedData) => { + const options = { + ignoreCanceled: true, // Apple ONLY (for now...): purchaseData will NOT contain cancceled items + ignoreExpired: true // purchaseData will NOT contain exipired subscription items + }; + + const purchaseData = iap.getPurchaseData(validatedData, options); + }) + .catch((error) => { + // error... + }); diff --git a/types/in-app-purchase/index.d.ts b/types/in-app-purchase/index.d.ts new file mode 100644 index 0000000000..b27daf2c20 --- /dev/null +++ b/types/in-app-purchase/index.d.ts @@ -0,0 +1,107 @@ +// Type definitions for in-app-purchase 1.9 +// Project: https://github.com/voltrue2/in-app-purchase#readme +// Definitions by: Jonas Lochmann +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +export const UNITY = 'unity'; +export const APPLE = 'apple'; +export const GOOGLE = 'google'; +export const WINDOWS = 'windows'; +export const AMAZON = 'amazon'; +export const ROKU = 'roku'; + +export function config(params: Config): void; +export function setup(): Promise; +export function setup(callback: (err: any) => void): void; +export function getService(receipt: Receipt): Service; + +export function validate(receipt: Receipt): Promise; +export function validate(receipt: Receipt, callback: (err: any, res: ValidationResponse) => void): void; +export function validate(service: Service, receipt: Receipt, callback: (err: any, res: ValidationResponse) => void): void; + +export function validateOnce(receipt: Receipt, secretOrPubKey: any): Promise; +export function validateOnce(receipt: Receipt, secretOrPubKey: any, callback: (err: any, res: ValidationResponse) => void): void; +export function validateOnce(service: Service, secretOrPubKey: any, receipt: Receipt, callback: (err: any, res: ValidationResponse) => void): void; + +export function isValidated(response: ValidationResponse): boolean; +export function isExpired(item: PurchasedItem): boolean; +export function getPurchaseData(purchaseData?: ValidationResponse, options?: { + ignoreCanceled: boolean; + ignoreExpired: boolean; +}): PurchasedItem[] | null; + +export function refreshGoogleToken(): Promise; +export function refreshGoogleToken(callback: (err: any) => void): void; + +// for test use only, resets the google setup +export function reset(): void; + +export interface Config { + /* Configurations for Amazon Store */ + amazonAPIVersion?: number; + secret?: string; + + /* Configurations for Apple */ + + // this comes from iTunes Connect (You need this to valiate subscriptions) + applePassword?: string; + + /* Configurations for Google Play */ + // this is the path to the directory containing iap-sanbox/iap-live files + googlePublicKeyPath?: string; + // optional, for Google Play subscriptions + googleAccToken?: string; + // optional, for Google Play subscritions + googleRefToken?: string; + // optional, for Google Play subscriptions + clientId?: string; + // optional, for Google Play subscriptions + clientSecret?: string; + // optional, for Google Play subscriptions + refreshToken?: string; + + /* Configurations for Roku */ + // this comes from Roku Developer Dashboard + rokuApiKey?: string; + + /* Configurations all platforms */ + // For Apple and Googl Play to force Sandbox validation only + test?: boolean; + // Output debug logs to stdout stream + verbose?: boolean; +} + +export type Service = typeof UNITY | typeof APPLE | typeof GOOGLE | typeof WINDOWS | typeof AMAZON | typeof ROKU; + +export type UnityReceipt = object | string; +export type AppleReceipt = string; +export type GoogleReceipt = { + date: string; + signature: string; +} | string; +export type WindowsReceipt = string; +export type AmazonReceipt = object | string; +export type RokuReceipt = string; + +export type Receipt = UnityReceipt | AppleReceipt | GoogleReceipt | WindowsReceipt | AmazonReceipt | RokuReceipt; + +export interface ValidationResponse { + service: Service; + status: number; + // there are more fields depending on the used service +} + +export interface PurchasedItem { + bundleId?: string; // only Apple + orderId?: string; // only Google + transactionId: string; + productId: string; + purchaseDate: number; + // iTunes, windows and amazon subscription only + // Google subscriptions only with google play store api info + expirationDate?: number; + quantity: number; + // this was created based on the source code of in-app-purchase + // eventually there are more fields +} diff --git a/types/in-app-purchase/tsconfig.json b/types/in-app-purchase/tsconfig.json new file mode 100644 index 0000000000..7752182f8a --- /dev/null +++ b/types/in-app-purchase/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "in-app-purchase-tests.ts" + ] +} diff --git a/types/in-app-purchase/tslint.json b/types/in-app-purchase/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/in-app-purchase/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/inquirer/index.d.ts b/types/inquirer/index.d.ts index b793673215..d9258f7a48 100644 --- a/types/inquirer/index.d.ts +++ b/types/inquirer/index.d.ts @@ -17,7 +17,7 @@ import through = require('through'); declare namespace inquirer { type Prompts = { [name: string]: PromptModule }; type ChoiceType = string | objects.ChoiceOption | objects.Separator; - type Questions = + type Questions = | Question | ReadonlyArray> | Rx.Observable>; diff --git a/types/intercom-client/index.d.ts b/types/intercom-client/index.d.ts new file mode 100644 index 0000000000..b68dc87e71 --- /dev/null +++ b/types/intercom-client/index.d.ts @@ -0,0 +1,13 @@ +// Type definitions for intercom-client 2.9 +// Project: https://github.com/intercom/intercom-node +// Definitions by: Jinesh Shah +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export interface IdentityVerificationOptions { + secretKey: string; + identifier: string; +} + +export const IdentityVerification: { + userHash(opts: IdentityVerificationOptions): string; +}; diff --git a/types/intercom-client/intercom-client-tests.ts b/types/intercom-client/intercom-client-tests.ts new file mode 100644 index 0000000000..e74dab4f53 --- /dev/null +++ b/types/intercom-client/intercom-client-tests.ts @@ -0,0 +1,3 @@ +import * as intercom from "intercom-client"; + +intercom.IdentityVerification.userHash({ secretKey: "", identifier: "" }); // $ExpectType string diff --git a/types/intercom-client/tsconfig.json b/types/intercom-client/tsconfig.json new file mode 100644 index 0000000000..a74d113775 --- /dev/null +++ b/types/intercom-client/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "strictFunctionTypes": true + }, + "files": ["index.d.ts", "intercom-client-tests.ts"] +} diff --git a/types/intercom-client/tslint.json b/types/intercom-client/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/intercom-client/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/intercom-web/index.d.ts b/types/intercom-web/index.d.ts index a0b4e71015..563d241c31 100755 --- a/types/intercom-web/index.d.ts +++ b/types/intercom-web/index.d.ts @@ -4,6 +4,7 @@ // customize-the-intercom-messenger/the-intercom-javascript-api // Definitions by: Andrew Fong // Samer Albahra +// Onat Yigit Mercan // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace Intercom_ { @@ -27,6 +28,8 @@ declare namespace Intercom_ { monthly_spend?: number, [index: string]: any; }; + vertical_padding?: number; + horizontal_padding?: number; } type IntercomCommand = 'boot' diff --git a/types/intercom-web/intercom-web-tests.ts b/types/intercom-web/intercom-web-tests.ts index 22eeddc8fa..b07013322d 100755 --- a/types/intercom-web/intercom-web-tests.ts +++ b/types/intercom-web/intercom-web-tests.ts @@ -60,3 +60,15 @@ intercomSettings = { user_id: "12345", user_hash: "775c502lcc1087d12398571837c" }; + +/* + From https://docs.intercom.com/configure-intercom-for-your-product-or-site/ + customize-the-intercom-messenger/ + customize-the-intercom-messenger-technical +*/ +intercomSettings = { + app_id: "pi3243fa", + alignment: "left", + horizontal_padding: 20, + vertical_padding: 20 +}; diff --git a/types/intl-tel-input/index.d.ts b/types/intl-tel-input/index.d.ts index b0a6bf5721..34493a8b75 100644 --- a/types/intl-tel-input/index.d.ts +++ b/types/intl-tel-input/index.d.ts @@ -171,16 +171,27 @@ declare namespace IntlTelInput { * that way as it provides a better experience for the user. */ nationalMode?: boolean; - /** - * Specify one of the keys from the global enum intlTelInputUtils.numberType - * e.g. "FIXED_LINE" to tell the plugin you're expecting that type of number. - * Currently this is only used to set the placeholder to the right type of number. - */ - numberType?: string; /** * Display only the countries you specify. */ onlyCountries?: Array; + /** + * Specify one of the keys from the global enum intlTelInputUtils.numberType + * e.g. "FIXED_LINE" to set the number type to use for the placeholder. + */ + placeholderNumberType?: + | "FIXED_LINE_OR_MOBILE" + | "FIXED_LINE" + | "MOBILE" + | "PAGER" + | "PERSONAL_NUMBER" + | "PREMIUM_RATE" + | "SHARED_COST" + | "TOLL_FREE" + | "UAN" + | "UNKNOWN" + | "VOICEMAIL" + | "VOIP"; /** * Specify the countries to appear at the top of the list. */ diff --git a/types/intl-tel-input/intl-tel-input-tests.ts b/types/intl-tel-input/intl-tel-input-tests.ts index 0d23c40d75..e91a5deef1 100644 --- a/types/intl-tel-input/intl-tel-input-tests.ts +++ b/types/intl-tel-input/intl-tel-input-tests.ts @@ -6,6 +6,10 @@ $('#phone').intlTelInput({ } }); +$('#phone').intlTelInput({ + placeholderNumberType: "MOBILE", +}); + $('#phone').intlTelInput({ geoIpLookup: function(callback) { $.get('http://ipinfo.io', function() {}, 'jsonp').always(function(resp) { diff --git a/types/ip/index.d.ts b/types/ip/index.d.ts index 602a71eed9..c51a8d37f5 100644 --- a/types/ip/index.d.ts +++ b/types/ip/index.d.ts @@ -3,7 +3,7 @@ // Definitions by: Peter Harris // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -interface NodeBuffer { } +/// interface SubnetInfo { networkAddress: string; @@ -26,16 +26,16 @@ declare module "ip" { /** * Convert an IP string into a buffer. **/ - export function toBuffer(ip: string, buffer?: number, offset?: number): NodeBuffer; + export function toBuffer(ip: string, buffer?: number, offset?: number): Buffer; /** * Convert an IP buffer into a string. **/ - export function toString(ip: NodeBuffer, offset?: number, length?: number): string; + export function toString(ip: Buffer, offset?: number, length?: number): string; /** * Get the subnet mask from a CIDR prefix length. - * + * * @param family The IP family is infered from the prefixLength, but can be explicity specified as either "ipv4" or "ipv6". **/ export function fromPrefixLen(prefixLength: number, family?:string): string; @@ -79,15 +79,15 @@ declare module "ip" { * Check whether an IP is a IPv4 address. **/ export function isV4Format(ip: string): boolean; - + /** * Check whether an IP is a IPv6 address. **/ export function isV6Format(ip: string): boolean; - + /** * Get the loopback address for an IP family. - * + * * @param family The family can be either "ipv4" or "ipv6". Default: "ipv4". **/ export function loopback(family?: string): string; @@ -95,7 +95,7 @@ declare module "ip" { /** * Get the address for the network interface on the current system with the specified 'name'. * If no interface name is specified, the first IPv4 address or loopback address is returned. - * + * * @param name The name can be any named interface, or 'public' or 'private'. * @param family The family can be either "ipv4" or "ipv6". Default: "ipv4". **/ diff --git a/types/is-ci/index.d.ts b/types/is-ci/index.d.ts new file mode 100644 index 0000000000..6e9e3a7b5b --- /dev/null +++ b/types/is-ci/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for is-ci 1.1 +// Project: https://github.com/watson/is-ci +// Definitions by: Arne Schubert +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = is_ci; + +declare const is_ci: boolean; diff --git a/types/is-ci/is-ci-tests.ts b/types/is-ci/is-ci-tests.ts new file mode 100644 index 0000000000..a4f5a7c32c --- /dev/null +++ b/types/is-ci/is-ci-tests.ts @@ -0,0 +1,5 @@ +import isCi = require('is-ci'); + +let booleanValue: boolean; + +booleanValue = isCi; diff --git a/types/is-ci/tsconfig.json b/types/is-ci/tsconfig.json new file mode 100644 index 0000000000..5fed6d1779 --- /dev/null +++ b/types/is-ci/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "is-ci-tests.ts" + ] +} diff --git a/types/is-ci/tslint.json b/types/is-ci/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/is-ci/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/is/index.d.ts b/types/is/index.d.ts index 3b70472d65..37b485e0a0 100644 --- a/types/is/index.d.ts +++ b/types/is/index.d.ts @@ -87,6 +87,11 @@ interface IsStatic { */ undefined(value: any): boolean; + /** + * Checks if the given value type is defined. + */ + defined(value: any): boolean; + /** * Checks if the given value types are same type. */ @@ -748,6 +753,16 @@ interface IsStaticApi { */ undefined(value: any[]): boolean; + /** + * Checks if the given value type is defined. + */ + defined(...value: any[]): boolean; + + /** + * Checks if the given value type is defined. + */ + defined(value: any[]): boolean; + //#endregion //#region Presence checks diff --git a/types/is/is-tests.ts b/types/is/is-tests.ts index 0084de8990..77a88a81b3 100644 --- a/types/is/is-tests.ts +++ b/types/is/is-tests.ts @@ -104,6 +104,12 @@ is.all.undefined(undefined, 1); is.any.undefined(undefined, 2); is.all.undefined([{}, undefined]); +is.defined(undefined); +is.not.defined(null); +is.all.defined(undefined, 1); +is.any.defined(undefined, 2); +is.all.defined([{}, undefined]); + is.sameType(42, 7); is.sameType(42, '7'); is.not.sameType(42, 7); diff --git a/types/iscroll/index.d.ts b/types/iscroll/index.d.ts index 13cd83cf99..1ba48227fe 100644 --- a/types/iscroll/index.d.ts +++ b/types/iscroll/index.d.ts @@ -1,6 +1,6 @@ // Type definitions for iScroll 5.2 // Project: http://cubiq.org/iscroll-5-ready-for-beta-test -// Definitions by: Christiaan Rakowski +// Definitions by: Christiaan Rakowski , Denis Tokarev // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped interface IScrollOptions { @@ -81,6 +81,7 @@ declare class IScroll { x: number; y: number; + scale: number; destroy(): void; refresh(): void; @@ -92,7 +93,7 @@ declare class IScroll { disable(): void; enable(): void; stop(): void; - zoom(x: number, y: number, scale: number, time?: number): void; + zoom(scale: number, x?: number, y?: number, time?: number): void; isReady(): boolean; // Events diff --git a/types/iscroll/iscroll-tests.ts b/types/iscroll/iscroll-tests.ts index 7bb8604937..4d7b71f93a 100644 --- a/types/iscroll/iscroll-tests.ts +++ b/types/iscroll/iscroll-tests.ts @@ -24,6 +24,11 @@ myScroll1.scrollTo(0, 100); myScroll1.scrollTo(0, 100, 200); myScroll1.scrollTo(0, 100, 200, true); +myScroll1.zoom(1); +myScroll1.zoom(-1); +myScroll1.zoom(1, 100, 200); +myScroll1.zoom(1, 200, 250, 100); + myScroll1.scrollToElement('selectedElement'); myScroll1.scrollToElement('selectedElement', 250); diff --git a/types/jackrabbit/index.d.ts b/types/jackrabbit/index.d.ts new file mode 100644 index 0000000000..ec0ff27fa9 --- /dev/null +++ b/types/jackrabbit/index.d.ts @@ -0,0 +1,66 @@ +// Type definitions for jackrabbit 4.3 +// Project: https://github.com/hunterloftis/jackrabbit +// Definitions by: Elvis Adomnica +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +import { Connection, Options, Message } from 'amqplib'; + +declare namespace jackrabbit { + function jackrabbit(url: string): JackRabbit; + + interface JackRabbit extends NodeJS.EventEmitter { + default(): Exchange; + direct(name?: string): Exchange; + fanout(name?: string): Exchange; + topic(name?: string): Exchange; + close(callback: (e: Error) => any): void; + getInternals: () => { + amqp: any; + connection: Connection; + }; + } + + enum exchangeType { + direct = 'direct', + fanout = 'fanout', + topic = 'topic', + } + + interface Exchange extends NodeJS.EventEmitter { + name: string; + type: exchangeType; + options: Options.AssertExchange; + queue(options: QueueOptions): Queue; + connect(con: Connection): Exchange; + publish(message: any, options?: PublishOptions): Exchange; + } + + type PublishOptions = Options.Publish & { + key: string; + reply?: AckCallback; + }; + + type QueueOptions = Options.AssertQueue & { + name?: string; + key?: string; + keys?: ReadonlyArray; + prefetch?: number; + }; + + type AckCallback = (data?: any) => void; + + interface Queue extends NodeJS.EventEmitter { + name: string; + options: QueueOptions; + connect(con: Connection): void; + consume: ( + callback: (data: any, ack: AckCallback, nack: () => void, msg: Message) => void, + options?: Options.Consume + ) => void; + cancel(done: any): void; + purge(done: any): void; + } +} + +export default jackrabbit.jackrabbit; diff --git a/types/jackrabbit/jackrabbit-tests.ts b/types/jackrabbit/jackrabbit-tests.ts new file mode 100644 index 0000000000..57bd961259 --- /dev/null +++ b/types/jackrabbit/jackrabbit-tests.ts @@ -0,0 +1,62 @@ +import jackrabbit from 'jackrabbit'; + +const RABBIT_URL = 'amqp://localhost'; + +function onMessage(data: any) {} +function ack() {} + +// $ExpectError +jackrabbit(); +// $ExpectError +jackrabbit(1); + +const rabbit = jackrabbit(RABBIT_URL); + +// test default exchange based on '1-hello-world' example +const defaultExchange = rabbit.default(); +const hello = defaultExchange.queue({ name: 'hello' }); + +defaultExchange.publish('Hello World!', { key: 'hello' }); + +hello.consume(onMessage, { noAck: true }); + +// test fanout exchange based on '3-pubsub' example +const fanoutExchange = rabbit.fanout(); + +fanoutExchange.publish('this is a log'); + +const fanoutQueue = fanoutExchange.queue({ exclusive: true }); +fanoutQueue.consume(onMessage, { noAck: true }); + +// test direct exchange based on '4-routing' example +const directExchange = rabbit.direct('direct_logs'); + +directExchange.publish({ text: 'this is a harmless log' }, { key: 'info' }); +directExchange.publish({ text: 'this one is more important' }, { key: 'warning' }); +directExchange.publish({ text: 'pay attention to me!' }, { key: 'error' }); + +const errorsQueue = directExchange.queue({ exclusive: true, key: 'error' }); +const logsQueue = directExchange.queue({ exclusive: true, keys: ['info', 'warning'] }); + +errorsQueue.consume((onMessage, ack) => {}); +logsQueue.consume((onMessage, ack) => {}); + +// test reply based on '6-rpc' example +const exchange = rabbit.default(); +const rpc = exchange.queue({ name: 'rpc_queue', prefetch: 1, durable: false }); + +exchange.publish( + { n: 40 }, + { + key: 'rpc_queue', + reply: onReply, + } +); + +function onReply(data: any) {} + +rpc.consume(onRequest); + +function onRequest(data: any, reply: (data: any) => void) { + reply({ field: 'value' }); +} diff --git a/types/jackrabbit/tsconfig.json b/types/jackrabbit/tsconfig.json new file mode 100644 index 0000000000..3d053557b2 --- /dev/null +++ b/types/jackrabbit/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": ["es6"], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": ["index.d.ts", "jackrabbit-tests.ts"] +} diff --git a/types/jackrabbit/tslint.json b/types/jackrabbit/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jackrabbit/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jasmine/index.d.ts b/types/jasmine/index.d.ts index f3e0407bab..cd1d5de31e 100644 --- a/types/jasmine/index.d.ts +++ b/types/jasmine/index.d.ts @@ -130,6 +130,7 @@ declare function waits(timeout?: number): void; declare namespace jasmine { type Expected = T | ObjectContaining | Any | Spy; + type SpyObjMethodNames = string[] | {[methodName: string]: any}; var clock: () => Clock; @@ -144,12 +145,11 @@ declare namespace jasmine { function objectContaining(sample: Partial): ObjectContaining; function createSpy(name?: string, originalFn?: Function): Spy; - function createSpyObj(baseName: string, methodNames: any[] | {[methodName: string]: any}): any; - function createSpyObj(baseName: string, methodNames: any[] | {[methodName: string]: any}): SpyObj; + function createSpyObj(baseName: string, methodNames: SpyObjMethodNames): any; + function createSpyObj(baseName: string, methodNames: SpyObjMethodNames): SpyObj; - function createSpyObj(baseName: string, methodNames: any): any; - function createSpyObj(methodNames: any[]): any; - function createSpyObj(methodNames: any): any; + function createSpyObj(methodNames: SpyObjMethodNames): any; + function createSpyObj(methodNames: SpyObjMethodNames): SpyObj; function pp(value: any): string; diff --git a/types/jasmine/jasmine-tests.ts b/types/jasmine/jasmine-tests.ts index b54269aa61..54e97ed73e 100644 --- a/types/jasmine/jasmine-tests.ts +++ b/types/jasmine/jasmine-tests.ts @@ -1109,7 +1109,17 @@ describe("createSpyObj", function () { expect(spyObj.method2.and.identity()).toEqual('BaseName.method2'); }); - it("should allow you to omit the baseName", function () { + it("should allow you to omit the baseName and takes only an object", function () { + var spyObj = jasmine.createSpyObj({ 'method1': 42, 'method2': 'special sauce' }); + + expect(spyObj.method1()).toEqual(42); + expect(spyObj.method1.and.identity()).toEqual('unknown.method1'); + + expect(spyObj.method2()).toEqual('special sauce'); + expect(spyObj.method2.and.identity()).toEqual('unknown.method2'); + }); + + it("should allow you to omit the baseName and takes only a list of methods", function () { var spyObj = jasmine.createSpyObj(['method1', 'method2']); expect(spyObj).toEqual({ method1: jasmine.any(Function), method2: jasmine.any(Function) }); @@ -1117,12 +1127,6 @@ describe("createSpyObj", function () { expect(spyObj.method2.and.identity()).toEqual('unknown.method2'); }); - it("should throw if you do not pass an array or object argument", function () { - expect(function () { - jasmine.createSpyObj('BaseName'); - }).toThrow("createSpyObj requires a non-empty array or object of method names to create spies for"); - }); - it("should throw if you pass an empty array argument", function () { expect(function () { jasmine.createSpyObj('BaseName', []); diff --git a/types/jest-axe/index.d.ts b/types/jest-axe/index.d.ts new file mode 100644 index 0000000000..f16f4e7651 --- /dev/null +++ b/types/jest-axe/index.d.ts @@ -0,0 +1,85 @@ +// Type definitions for jest-axe 2.2 +// Project: https://github.com/nickcolley/jest-axe +// Definitions by: Josh Goldberg +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.4 + +/// + +import { AxeResults, Result, RunOnly } from "axe-core"; + +/** + * Version of the aXe verifier with defaults set. + * + * @remarks You can still pass additional options to this new instance; + * they will be merged with the defaults. + */ +export const axe: JestAxe; + +/** + * Core options to run aXe. + */ +export interface AxeOptions { + elementRef?: boolean; + iframes?: boolean; + rules?: object; + runOnly?: RunOnly; + selectors?: boolean; +} + +/** + * Runs aXe on HTML. + * + * @param html Raw HTML string to verify with aXe. + * @param options Options to run aXe. + * @returns Promise for the results of running aXe. + */ +export type JestAxe = (html: string, options?: AxeOptions) => Promise; + +/** + * Creates a new aXe verifier function. + * + * @param options Options to run aXe. + * @returns New aXe verifier function. + */ +export function configureAxe(options?: AxeOptions): JestAxe; + +/** + * Results from asserting whether aXe verification passed. + */ +export interface AssertionsResult { + /** + * Actual checked aXe verification results. + */ + actual: Result[]; + + /** + * @returns Message from the Jest assertion. + */ + message(): string; + + /** + * Whether the assertion passed. + */ + pass: boolean; +} + +/** + * Asserts an aXe-verified result has no violations. + * + * @param results aXe verification result, if not running via expect(). + * @returns Jest expectations for the aXe result. + */ +export type IToHaveNoViolations = (results?: Partial) => AssertionsResult; + +export const toHaveNoViolations: { + toHaveNoViolations: IToHaveNoViolations; +}; + +declare global { + namespace jest { + interface Matchers { + toHaveNoViolations: IToHaveNoViolations; + } + } +} diff --git a/types/jest-axe/jest-axe-tests.ts b/types/jest-axe/jest-axe-tests.ts new file mode 100644 index 0000000000..38caeb88eb --- /dev/null +++ b/types/jest-axe/jest-axe-tests.ts @@ -0,0 +1,19 @@ +import { configureAxe, axe, toHaveNoViolations, JestAxe } from "jest-axe"; + +expect.extend(toHaveNoViolations); + +const newJestWithDefaults: JestAxe = configureAxe(); + +const newJestWithOptions: JestAxe = configureAxe({ + elementRef: false, + iframes: false, + rules: {}, + runOnly: { + type: "rules", + }, + selectors: false, +}); + +const sameJest: JestAxe = axe; + +expect("").toHaveNoViolations(); diff --git a/types/jest-axe/package.json b/types/jest-axe/package.json new file mode 100644 index 0000000000..d9427293a7 --- /dev/null +++ b/types/jest-axe/package.json @@ -0,0 +1,6 @@ +{ + "private": true, + "dependencies": { + "axe-core": "^2.6.1" + } +} diff --git a/types/jest-axe/tsconfig.json b/types/jest-axe/tsconfig.json new file mode 100644 index 0000000000..887813c869 --- /dev/null +++ b/types/jest-axe/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jest-axe-tests.ts" + ] +} diff --git a/types/jest-axe/tslint.json b/types/jest-axe/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jest-axe/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jest-each/index.d.ts b/types/jest-each/index.d.ts new file mode 100644 index 0000000000..01d13db0e4 --- /dev/null +++ b/types/jest-each/index.d.ts @@ -0,0 +1,42 @@ +// Type definitions for jest-each 0.3 +// Project: https://github.com/mattphillips/jest-each +// Definitions by: Michael Utz +// Definitions: +// TypeScript Version: 2.1 + +export = JestEach; + +declare function JestEach(parameters: any[][]): JestEach.ReturnType; + +declare namespace JestEach { + type SyncCallback = (...args: string[]) => void; + type AsyncCallback = () => void; + + type TestCallback = SyncCallback | AsyncCallback; + + type TestFn = (name: string, fn: TestCallback) => void; + type DescribeFn = (name: string, fn: SyncCallback) => void; + + interface TestObj { + (name: string, fn: TestCallback): void; + only: TestFn; + skip: TestFn; + } + + interface DescribeObj { + (name: string, fn: DescribeFn): void; + only: DescribeFn; + skip: DescribeFn; + } + + interface ReturnType { + test: TestObj; + it: TestObj; + fit: TestFn; + xit: TestFn; + xtest: TestFn; + describe: DescribeObj; + fdescribe: DescribeFn; + xdescribe: DescribeFn; + } +} diff --git a/types/jest-each/jest-each-tests.ts b/types/jest-each/jest-each-tests.ts new file mode 100644 index 0000000000..bbfbcabe05 --- /dev/null +++ b/types/jest-each/jest-each-tests.ts @@ -0,0 +1,19 @@ +import * as each from 'jest-each'; + +const params = [[1, 0, 1], [1, 1, 0], ['1', 'two', 'three']]; + +each(params).test('', () => {}); +each(params).it('', () => {}); +each(params).test.only('', () => {}); +each(params).it.only('', () => {}); +each(params).fit('', () => {}); +each(params).test.skip('', () => {}); +each(params).it.skip('', () => {}); +each(params).xit('', () => {}); +each(params).xtest('', () => {}); + +each(params).describe('', () => {}); +each(params).describe.only('', () => {}); +each(params).fdescribe('', () => {}); +each(params).describe.skip('', () => {}); +each(params).xdescribe('', () => {}); diff --git a/types/jest-each/tsconfig.json b/types/jest-each/tsconfig.json new file mode 100644 index 0000000000..62a3193837 --- /dev/null +++ b/types/jest-each/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jest-each-tests.ts" + ] +} diff --git a/types/jest-each/tslint.json b/types/jest-each/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jest-each/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jest-environment-puppeteer/index.d.ts b/types/jest-environment-puppeteer/index.d.ts new file mode 100644 index 0000000000..e22bee2f7d --- /dev/null +++ b/types/jest-environment-puppeteer/index.d.ts @@ -0,0 +1,14 @@ +// Type definitions for jest-environment-puppeteer 2.2 +// Project: https://github.com/smooth-code/jest-puppeteer/tree/master/packages/jest-environment-puppeteer +// Definitions by: Josh Goldberg +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import { Browser, Page } from "puppeteer"; + +declare global { + const browser: Browser; + const page: Page; +} + +export { }; diff --git a/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts b/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts new file mode 100644 index 0000000000..3de8c3661a --- /dev/null +++ b/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts @@ -0,0 +1,4 @@ +import * as puppeteer from "puppeteer"; + +const myBrowser: puppeteer.Browser = browser; +const myPage: puppeteer.Page = page; diff --git a/types/jest-environment-puppeteer/tsconfig.json b/types/jest-environment-puppeteer/tsconfig.json new file mode 100644 index 0000000000..ed53d60edd --- /dev/null +++ b/types/jest-environment-puppeteer/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jest-environment-puppeteer-tests.ts" + ] +} diff --git a/types/jest-environment-puppeteer/tslint.json b/types/jest-environment-puppeteer/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jest-environment-puppeteer/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jest-image-snapshot/index.d.ts b/types/jest-image-snapshot/index.d.ts new file mode 100644 index 0000000000..c15e435cc9 --- /dev/null +++ b/types/jest-image-snapshot/index.d.ts @@ -0,0 +1,75 @@ +// Type definitions for jest-image-snapshot 2.4 +// Project: https://github.com/americanexpress/jest-image-snapshot#readme +// Definitions by: Janeene Beeforth +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +/** + * Options to be passed to the 'pixelmatch' image diffing function. + */ +export interface PixelmatchOptions { + /** Matching threshold, ranges from 0 to 1. Smaller values make the comparison more sensitive. 0.1 by default. */ + readonly threshold?: number; + /** If true, disables detecting and ignoring anti-aliased pixels. false by default. */ + readonly includeAA?: boolean; +} + +export interface MatchImageSnapshotOptions { + /** + * Custom config passed to 'pixelmatch' + */ + customDiffConfig?: PixelmatchOptions; + /** + * Custom snapshots directory. + * Absolute path of a directory to keep the snapshot in. + */ + customSnapshotsDir?: string; + /** + * A custom name to give this snapshot. If not provided, one is computed automatically. + */ + customSnapshotIdentifier?: string; + /** + * Removes coloring from the console output, useful if storing the results to a file. + * Defaults to false. + */ + noColors?: boolean; + /** + * Sets the threshold that would trigger a test failure based on the failureThresholdType selected. This is different + * to the customDiffConfig.threshold above - the customDiffConfig.threshold is the per pixel failure threshold, whereas + * this is the failure threshold for the entire comparison. + * Defaults to 0. + */ + failureThreshold?: number; + /** + * Sets the type of threshold that would trigger a failure. + * Defaults to 'pixel'. + */ + failureThresholdType?: 'pixel' | 'percent'; +} + +/** + * Function to be passed to jest's expect.extend. + * Example: + * import { toMatchImageSnapshot } from 'jest-image-snapshot'; + * expect.extend({ toMatchImageSnapshot }); + */ +export function toMatchImageSnapshot(): { message(): string; pass: boolean; }; + +/** + * Configurable function that can be passed to jest's expect.extend. + * Example: + * import { configureToMatchImageSnapshot } from 'jest-image-snapshot'; + * const toMatchImageSnapshot = configureToMatchImageSnapshot({ noColors: true }); + * expect.extend({ toMatchImageSnapshot }); + */ +export function configureToMatchImageSnapshot(options: MatchImageSnapshotOptions): () => { message(): string; pass: boolean; }; + +declare global { + namespace jest { + interface Matchers { + toMatchImageSnapshot(): R; + } + } +} diff --git a/types/jest-image-snapshot/jest-image-snapshot-tests.ts b/types/jest-image-snapshot/jest-image-snapshot-tests.ts new file mode 100644 index 0000000000..a2ccb8c777 --- /dev/null +++ b/types/jest-image-snapshot/jest-image-snapshot-tests.ts @@ -0,0 +1,23 @@ +// Typescript Version: 2.3 +import { toMatchImageSnapshot, configureToMatchImageSnapshot } from 'jest-image-snapshot'; + +it('should be able to use toMatchImageSnapshot in a test', () => { + expect.extend({ toMatchImageSnapshot }); + + expect(400).toMatchImageSnapshot(); +}); + +it('should be able to use configureToMatchImageSnapshot in a test', () => { + const matchFn = configureToMatchImageSnapshot({ + noColors: true, + customDiffConfig: { + threshold: 5, + includeAA: false + }, + failureThreshold: 10, + failureThresholdType: 'percent' + }); + expect.extend({ toMatchImageSnapshot: matchFn }); + + expect('Me').toMatchImageSnapshot(); +}); diff --git a/types/jest-image-snapshot/tsconfig.json b/types/jest-image-snapshot/tsconfig.json new file mode 100644 index 0000000000..5bf932371d --- /dev/null +++ b/types/jest-image-snapshot/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jest-image-snapshot-tests.ts" + ] +} diff --git a/types/jest-image-snapshot/tslint.json b/types/jest-image-snapshot/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jest-image-snapshot/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jest-specific-snapshot/index.d.ts b/types/jest-specific-snapshot/index.d.ts new file mode 100644 index 0000000000..ef0e7f4225 --- /dev/null +++ b/types/jest-specific-snapshot/index.d.ts @@ -0,0 +1,27 @@ +// Type definitions for jest-specific-snapshot 0.5 +// Project: https://github.com/igor-dv/jest-specific-snapshot#readme +// Definitions by: Janeene Beeforth +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.6 + +/// + +declare global { + namespace jest { + interface Matchers { + toMatchSpecificSnapshot(snapshotFilename: string): R; + } + } +} + +/** + * Specify the serializer that should be used by toMatchSpecificSnapshot. + * Note: toMatchSpecificSnapshot ignores the existing jest snapshot serializer settings. If you want to use a custom serializer, + * you need to set it via this addSerializer function. + */ +export function addSerializer(serializer: any): void; + +/** + * This is used to create a customized version of toMatchSpecificSnapshot. + */ +export function toMatchSpecificSnapshot(data: any, snapshotFile: string, testName: string): () => { message(): string; pass: boolean; }; diff --git a/types/jest-specific-snapshot/jest-specific-snapshot-tests.ts b/types/jest-specific-snapshot/jest-specific-snapshot-tests.ts new file mode 100644 index 0000000000..046a563c9e --- /dev/null +++ b/types/jest-specific-snapshot/jest-specific-snapshot-tests.ts @@ -0,0 +1,16 @@ +import { addSerializer, toMatchSpecificSnapshot } from 'jest-specific-snapshot'; +import toJson from 'enzyme-to-json'; + +expect(100).toMatchSpecificSnapshot('mySnapshotFile.snap'); + +addSerializer(toJson); + +function doSomeThing(received: any) { + return received; +} +expect.extend({ + toMatchDecoratedSpecificSnapshot(received, snapshotFile) { + const data = doSomeThing(received); + return toMatchSpecificSnapshot.call(this, data, snapshotFile); + } +}); diff --git a/types/jest-specific-snapshot/tsconfig.json b/types/jest-specific-snapshot/tsconfig.json new file mode 100644 index 0000000000..e4156ae2ff --- /dev/null +++ b/types/jest-specific-snapshot/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jest-specific-snapshot-tests.ts" + ] +} diff --git a/types/jest-specific-snapshot/tslint.json b/types/jest-specific-snapshot/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jest-specific-snapshot/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jest/index.d.ts b/types/jest/index.d.ts index 3dc26955e6..4520247216 100644 --- a/types/jest/index.d.ts +++ b/types/jest/index.d.ts @@ -560,7 +560,7 @@ declare namespace jest { // Relevant parts of Jasmine's API are below so they can be changed and removed over time. // This file can't reference jasmine.d.ts since the globals aren't compatible. -declare function spyOn(object: any, method: string): jasmine.Spy; +declare function spyOn(object: T, method: keyof T): jasmine.Spy; /** * If you call the function pending anywhere in the spec body, * no matter the expectations, the spec will be marked pending. diff --git a/types/jest/jest-tests.ts b/types/jest/jest-tests.ts index 786dccb641..a90a7a9e5a 100644 --- a/types/jest/jest-tests.ts +++ b/types/jest/jest-tests.ts @@ -367,6 +367,11 @@ describe('missing tests', () => { expect(mock.getMockName()).toBe('Carrot'); }); + it('tests mock name functionality', () => { + const mock = spyOn(console, 'warn'); + expect(mock).toHaveBeenCalled(); + }); + it('creates snapshoter', () => { jest.disableAutomock().mock('./render', () => jest.fn((): string => "{Link to: \"facebook\"}"), { virtual: true }); const render: () => string = require('./render'); diff --git a/types/johnny-five/index.d.ts b/types/johnny-five/index.d.ts index 297069f0f1..5f0f6a9f37 100644 --- a/types/johnny-five/index.d.ts +++ b/types/johnny-five/index.d.ts @@ -102,6 +102,7 @@ export interface BoardOption { repl?: boolean; debug?: boolean; timeout?: number; + io?: any; } export declare class Board { diff --git a/types/joi/index.d.ts b/types/joi/index.d.ts index 2b6d264b3e..48e2a0327c 100644 --- a/types/joi/index.d.ts +++ b/types/joi/index.d.ts @@ -11,6 +11,7 @@ // Dan Kraus // Anjun Wang // Rafael Kallis +// Conan Lai // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 @@ -152,6 +153,17 @@ export interface WhenOptions { otherwise?: SchemaLike; } +export interface WhenSchemaOptions { + /** + * the alternative schema type if the condition is true. Required if otherwise is missing. + */ + then?: SchemaLike; + /** + * the alternative schema type if the condition is false. Required if then is missing + */ + otherwise?: SchemaLike; +} + export interface ReferenceOptions { separator?: string; contextPrefix?: string; @@ -347,6 +359,7 @@ export interface AnySchema extends JoiObject { */ when(ref: string, options: WhenOptions): AlternativesSchema; when(ref: Reference, options: WhenOptions): AlternativesSchema; + when(ref: Schema, options: WhenSchemaOptions): AlternativesSchema; /** * Overrides the key name in error messages. @@ -922,6 +935,7 @@ export interface AlternativesSchema extends AnySchema { try(...types: SchemaLike[]): this; when(ref: string, options: WhenOptions): this; when(ref: Reference, options: WhenOptions): this; + when(ref: Schema, options: WhenSchemaOptions): this; } export interface LazySchema extends AnySchema { @@ -1218,6 +1232,7 @@ export function concat(schema: T): T; */ export function when(ref: string, options: WhenOptions): AlternativesSchema; export function when(ref: Reference, options: WhenOptions): AlternativesSchema; +export function when(ref: Schema, options: WhenSchemaOptions): AlternativesSchema; /** * Overrides the key name in error messages. diff --git a/types/joi/joi-tests.ts b/types/joi/joi-tests.ts index 1ab3316eb8..5ea9088a74 100644 --- a/types/joi/joi-tests.ts +++ b/types/joi/joi-tests.ts @@ -128,6 +128,14 @@ whenOpts = { is: schemaLike, then: schemaLike, otherwise: schemaLike }; // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- +let whenSchemaOpts: Joi.WhenSchemaOptions = null; + +whenSchemaOpts = { then: schema }; +whenSchemaOpts = { otherwise: schema }; +whenSchemaOpts = { then: schemaLike, otherwise: schemaLike }; + +// --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- + let refOpts: Joi.ReferenceOptions = null; refOpts = { separator: str }; @@ -276,6 +284,7 @@ namespace common { altSchema = anySchema.when(str, whenOpts); altSchema = anySchema.when(ref, whenOpts); + altSchema = anySchema.when(schema, whenSchemaOpts); anySchema = anySchema.label(str); anySchema = anySchema.raw(); @@ -363,6 +372,7 @@ namespace common_copy_paste { altSchema = arrSchema.when(str, whenOpts); altSchema = arrSchema.when(ref, whenOpts); + altSchema = arrSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -433,6 +443,7 @@ namespace common_copy_paste { altSchema = boolSchema.when(str, whenOpts); altSchema = boolSchema.when(ref, whenOpts); + altSchema = boolSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -489,6 +500,7 @@ namespace common { altSchema = binSchema.when(str, whenOpts); altSchema = binSchema.when(ref, whenOpts); + altSchema = binSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -561,6 +573,7 @@ namespace common { altSchema = dateSchema.when(str, whenOpts); altSchema = dateSchema.when(ref, whenOpts); + altSchema = dateSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -635,6 +648,7 @@ namespace common { altSchema = numSchema.when(str, whenOpts); altSchema = numSchema.when(ref, whenOpts); + altSchema = numSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -749,6 +763,7 @@ namespace common { altSchema = objSchema.when(str, whenOpts); altSchema = objSchema.when(ref, whenOpts); + altSchema = objSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -843,6 +858,7 @@ namespace common { altSchema = strSchema.when(str, whenOpts); altSchema = strSchema.when(ref, whenOpts); + altSchema = strSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -1049,6 +1065,7 @@ schema = Joi.concat(x); schema = Joi.when(str, whenOpts); schema = Joi.when(ref, whenOpts); +schema = Joi.when(schema, whenSchemaOpts); schema = Joi.label(str); schema = Joi.raw(); @@ -1102,6 +1119,7 @@ schema = Joi.concat(x); schema = Joi.when(str, whenOpts); schema = Joi.when(ref, whenOpts); +schema = Joi.when(schema, whenSchemaOpts); schema = Joi.label(str); schema = Joi.raw(); diff --git a/types/joi/v10/index.d.ts b/types/joi/v10/index.d.ts index 9270c411aa..e21edda875 100644 --- a/types/joi/v10/index.d.ts +++ b/types/joi/v10/index.d.ts @@ -8,6 +8,7 @@ // Rytis Alekna // Pavel Ivanov // Youngrok Kim +// Conan Lai // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 @@ -142,6 +143,17 @@ export interface WhenOptions { otherwise?: SchemaLike; } +export interface WhenSchemaOptions { + /** + * the alternative schema type if the condition is true. Required if otherwise is missing. + */ + then?: SchemaLike; + /** + * the alternative schema type if the condition is false. Required if then is missing + */ + otherwise?: SchemaLike; +} + export interface ReferenceOptions { separator?: string; contextPrefix?: string; @@ -327,6 +339,7 @@ export interface AnySchema extends JoiObject { */ when(ref: string, options: WhenOptions): AlternativesSchema; when(ref: Reference, options: WhenOptions): AlternativesSchema; + when(ref: Schema, options: WhenSchemaOptions): AlternativesSchema; /** * Overrides the key name in error messages. @@ -878,6 +891,7 @@ export interface AlternativesSchema extends AnySchema { try(...types: SchemaLike[]): this; when(ref: string, options: WhenOptions): this; when(ref: Reference, options: WhenOptions): this; + when(ref: Schema, options: WhenSchemaOptions): this; } export interface LazySchema extends AnySchema { @@ -1160,6 +1174,7 @@ export function concat(schema: T): T; */ export function when(ref: string, options: WhenOptions): AlternativesSchema; export function when(ref: Reference, options: WhenOptions): AlternativesSchema; +export function when(ref: Schema, options: WhenSchemaOptions): AlternativesSchema; /** * Overrides the key name in error messages. diff --git a/types/joi/v10/joi-tests.ts b/types/joi/v10/joi-tests.ts index bfc6268ef7..b1f125a6ea 100644 --- a/types/joi/v10/joi-tests.ts +++ b/types/joi/v10/joi-tests.ts @@ -122,6 +122,14 @@ whenOpts = { is: schemaLike, then: schemaLike, otherwise: schemaLike }; // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- +var whenSchemaOpts: Joi.WhenSchemaOptions = null; + +whenSchemaOpts = { then: schema }; +whenSchemaOpts = { otherwise: schema }; +whenSchemaOpts = { then: schemaLike, otherwise: schemaLike }; + +// --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- + var refOpts: Joi.ReferenceOptions = null; refOpts = { separator: str }; @@ -263,6 +271,7 @@ namespace common { altSchema = anySchema.when(str, whenOpts); altSchema = anySchema.when(ref, whenOpts); + altSchema = anySchema.when(schema, whenSchemaOpts); anySchema = anySchema.label(str); anySchema = anySchema.raw(); @@ -350,6 +359,7 @@ namespace common_copy_paste { altSchema = arrSchema.when(str, whenOpts); altSchema = arrSchema.when(ref, whenOpts); + altSchema = arrSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -420,6 +430,7 @@ namespace common_copy_paste { altSchema = boolSchema.when(str, whenOpts); altSchema = boolSchema.when(ref, whenOpts); + altSchema = boolSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -476,6 +487,7 @@ namespace common { altSchema = binSchema.when(str, whenOpts); altSchema = binSchema.when(ref, whenOpts); + altSchema = binSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -548,6 +560,7 @@ namespace common { altSchema = dateSchema.when(str, whenOpts); altSchema = dateSchema.when(ref, whenOpts); + altSchema = dateSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -622,6 +635,7 @@ namespace common { altSchema = numSchema.when(str, whenOpts); altSchema = numSchema.when(ref, whenOpts); + altSchema = numSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -732,6 +746,7 @@ namespace common { altSchema = objSchema.when(str, whenOpts); altSchema = objSchema.when(ref, whenOpts); + altSchema = objSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -823,6 +838,7 @@ namespace common { altSchema = strSchema.when(str, whenOpts); altSchema = strSchema.when(ref, whenOpts); + altSchema = strSchema.when(schema, whenSchemaOpts); } // --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- @@ -1007,6 +1023,7 @@ schema = Joi.concat(x); schema = Joi.when(str, whenOpts); schema = Joi.when(ref, whenOpts); +schema = Joi.when(schema, whenSchemaOpts); schema = Joi.label(str); schema = Joi.raw(); diff --git a/types/jpegtran-bin/index.d.ts b/types/jpegtran-bin/index.d.ts new file mode 100644 index 0000000000..b946d056b7 --- /dev/null +++ b/types/jpegtran-bin/index.d.ts @@ -0,0 +1,9 @@ +// Type definitions for jpegtran-bin 3.2 +// Project: https://github.com/imagemin/jpegtran-bin#readme +// Definitions by: Hirotaka Ikoma +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/// + +declare const jpegtran: string; +export = jpegtran; diff --git a/types/jpegtran-bin/jpegtran-bin-tests.ts b/types/jpegtran-bin/jpegtran-bin-tests.ts new file mode 100644 index 0000000000..9f3e8318fd --- /dev/null +++ b/types/jpegtran-bin/jpegtran-bin-tests.ts @@ -0,0 +1,6 @@ +import { execFile } from "child_process"; +import * as jpegtran from "jpegtran-bin"; + +execFile(jpegtran, ["-outfile", "output.jpg", "input.jpg"], { encoding: "utf-8" }, (err: Error | null) => { + console.log("Image minified!"); +}); diff --git a/types/jpegtran-bin/tsconfig.json b/types/jpegtran-bin/tsconfig.json new file mode 100644 index 0000000000..5f260cfaed --- /dev/null +++ b/types/jpegtran-bin/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jpegtran-bin-tests.ts" + ] +} diff --git a/types/jpegtran-bin/tslint.json b/types/jpegtran-bin/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jpegtran-bin/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jquery-countto/index.d.ts b/types/jquery-countto/index.d.ts new file mode 100644 index 0000000000..babeb7741b --- /dev/null +++ b/types/jquery-countto/index.d.ts @@ -0,0 +1,57 @@ +// Type definitions for JQuery CountTo 1.2 +// Project: https://github.com/mhuggins/jquery-countTo +// Definitions by: Anderson Friaça +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +export type Options = Partial<{ + /** + * The number to start counting from + */ + from: number; + + /** + * The number to stop counting at + */ + to: number; + + /** + * The number of milliseconds it should take to finish counting + */ + speed: number; + + /** + * The number of milliseconds to wait between refreshing the counter + */ + refreshInterval: number; + + /** + * The number of decimal places to show when using the default formatter + */ + decimals: number; + + /** + * A handler that is used to format the current value before rendering to the DOM + */ + formatter: (value: number, options: Options) => string; + + /** + * A callback function that is triggered for every iteration that the counter updates + */ + onUpdate: (value: number) => void; + + /** + * A callback function that is triggered when counting finishes + */ + onComplete: (value: number) => void; +}>; + +export type Method = 'start' | 'stop' | 'toggle' | 'restart'; + +declare global { + interface JQuery { + countTo(methodOrOptions?: Method | Options): JQuery; + } +} diff --git a/types/jquery-countto/jquery-countto-tests.ts b/types/jquery-countto/jquery-countto-tests.ts new file mode 100644 index 0000000000..07ec15518b --- /dev/null +++ b/types/jquery-countto/jquery-countto-tests.ts @@ -0,0 +1,30 @@ +import { Options } from "jquery-countto"; + +// Basic usage +$('.timer').countTo(); + +// With options +const options: Options = { + from: 50, + to: 2500, + speed: 1000, + refreshInterval: 50, + formatter: (value: number, options: Options) => { + return value.toFixed(options.decimals); + }, + onUpdate: (value: number) => { + console.log(value); + }, + onComplete: (value: number) => { + console.log(value); + } + }; + +$('.timer').countTo(options); +$('.timer').countTo({from: 50}); + +// Controls +$('.timer').countTo('start'); +$('.timer').countTo('stop'); +$('.timer').countTo('restart'); +$('.timer').countTo('toggle'); diff --git a/types/react-native-linear-gradient/tsconfig.json b/types/jquery-countto/tsconfig.json similarity index 85% rename from types/react-native-linear-gradient/tsconfig.json rename to types/jquery-countto/tsconfig.json index 60d93ae024..3d5cf520dd 100644 --- a/types/react-native-linear-gradient/tsconfig.json +++ b/types/jquery-countto/tsconfig.json @@ -16,10 +16,10 @@ "types": [], "noEmit": true, "forceConsistentCasingInFileNames": true, - "jsx": "react-native" + "esModuleInterop": true }, "files": [ "index.d.ts", - "react-native-linear-gradient-tests.tsx" + "jquery-countto-tests.ts" ] } \ No newline at end of file diff --git a/types/jquery-countto/tslint.json b/types/jquery-countto/tslint.json new file mode 100644 index 0000000000..d04fe2e1fa --- /dev/null +++ b/types/jquery-countto/tslint.json @@ -0,0 +1 @@ +{"extends": "dtslint/dt.json"} \ No newline at end of file diff --git a/types/jquery-drawer/index.d.ts b/types/jquery-drawer/index.d.ts new file mode 100644 index 0000000000..6c96e711aa --- /dev/null +++ b/types/jquery-drawer/index.d.ts @@ -0,0 +1,29 @@ +// Type definitions for jquery-drawer 3.2 +// Project: http://git.blivesta.com/drawer +// Definitions by: Pine Mizune +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// +/// + +interface JQueryDrawerClassOptions { + nav?: string; + toggle?: string; + overlay?: string; + open?: string; + close?: string; + dropdown?: string; +} + +interface JQueryDrawerOptions { + class?: JQueryDrawerClassOptions; + iscroll?: IScrollOptions; + showOverlay?: boolean; +} + +interface JQuery { + drawer(options?: JQueryDrawerOptions): JQuery; + drawer(method: 'open'|'close'|'toggle'|'destroy'): JQuery; + on(event: 'drawer.opened'|'drawer.closed', handler: () => void): JQuery; +} diff --git a/types/jquery-drawer/jquery-drawer-tests.ts b/types/jquery-drawer/jquery-drawer-tests.ts new file mode 100644 index 0000000000..b0249f8618 --- /dev/null +++ b/types/jquery-drawer/jquery-drawer-tests.ts @@ -0,0 +1,46 @@ +const elem = $('foo'); + +elem.drawer(); +elem.drawer({}); +elem.drawer({ + class: { + nav: 'drawer-nav', + toggle: 'drawer-toggle', + overlay: 'drawer-overlay', + open: 'drawer-open', + close: 'drawer-close', + dropdown: 'drawer-dropdown' + }, + iscroll: { + mouseWheel: true, + preventDefault: false, + }, + showOverlay: true, +}); +elem.drawer({ class: {} }); +elem.drawer({ + class: { + nav: 'drawer-nav', + toggle: 'drawer-toggle', + overlay: 'drawer-overlay', + open: 'drawer-open', + close: 'drawer-close', + dropdown: 'drawer-dropdown' + }, +}); +elem.drawer({ iscroll: {} }); +elem.drawer({ + iscroll: { + mouseWheel: true, + preventDefault: false, + }, +}); +elem.drawer({ showOverlay: true }); + +elem.on('drawer.opened', () => {}); +elem.on('drawer.closed', () => {}); + +elem.drawer('open'); +elem.drawer('close'); +elem.drawer('toggle'); +elem.drawer('destroy'); diff --git a/types/jquery-drawer/tsconfig.json b/types/jquery-drawer/tsconfig.json new file mode 100644 index 0000000000..a22a6dec91 --- /dev/null +++ b/types/jquery-drawer/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jquery-drawer-tests.ts" + ] +} diff --git a/types/jquery-drawer/tslint.json b/types/jquery-drawer/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jquery-drawer/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jquery-focus-exit/index.d.ts b/types/jquery-focus-exit/index.d.ts new file mode 100644 index 0000000000..8787136a4e --- /dev/null +++ b/types/jquery-focus-exit/index.d.ts @@ -0,0 +1,20 @@ +// Type definitions for JQuery Focus Exit 1.0 +// Project: https://github.com/makeup-jquery/jquery-focus-exit +// Definitions by: Anderson Friaça +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +export interface FocusElements { + lostFocus?: HTMLElement; + gainedFocus: HTMLElement; +} + +declare global { + interface JQuery { + focusExit(options?: { debug: boolean }): JQuery; + on(event: 'focusExit', handler: ((event: JQuery.Event, data: FocusElements) => void)): JQuery; + one(event: 'focusin', handler: ((event: JQuery.Event) => void)): JQuery; + } +} diff --git a/types/jquery-focus-exit/jquery-focus-exit-tests.ts b/types/jquery-focus-exit/jquery-focus-exit-tests.ts new file mode 100644 index 0000000000..497e44dd97 --- /dev/null +++ b/types/jquery-focus-exit/jquery-focus-exit-tests.ts @@ -0,0 +1,8 @@ +$('.test').one('focusin', e => { + $(e.currentTarget).addClass('focusin'); +}); + +$('.test').focusExit({debug: true}).on('focusExit', (e, data) => { + console.log(e, data); + $(e.currentTarget).removeClass('focusin'); +}); diff --git a/types/jquery-focus-exit/tsconfig.json b/types/jquery-focus-exit/tsconfig.json new file mode 100644 index 0000000000..b9448645b8 --- /dev/null +++ b/types/jquery-focus-exit/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true + }, + "files": [ + "index.d.ts", + "jquery-focus-exit-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jquery-focus-exit/tslint.json b/types/jquery-focus-exit/tslint.json new file mode 100644 index 0000000000..d04fe2e1fa --- /dev/null +++ b/types/jquery-focus-exit/tslint.json @@ -0,0 +1 @@ +{"extends": "dtslint/dt.json"} \ No newline at end of file diff --git a/types/jquery-focusable/index.d.ts b/types/jquery-focusable/index.d.ts new file mode 100644 index 0000000000..b65fd23d38 --- /dev/null +++ b/types/jquery-focusable/index.d.ts @@ -0,0 +1,25 @@ +// Type definitions for JQuery Focusable 1.0 +// Project: https://github.com/makeup-jquery/jquery-focusable +// Definitions by: Anderson Friaça +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +export type Options = Partial<{ + /** + * Find elements with tabindex equal to -1 + */ + findNegativeTabindex: boolean; + + /** + * Find elements with tabindex greater than 0 + */ + findPositiveTabindex: true; +}>; + +declare global { + interface JQuery { + focusable(options?: Options): JQuery; + } +} diff --git a/types/jquery-focusable/jquery-focusable-tests.ts b/types/jquery-focusable/jquery-focusable-tests.ts new file mode 100644 index 0000000000..2935d5f38f --- /dev/null +++ b/types/jquery-focusable/jquery-focusable-tests.ts @@ -0,0 +1,12 @@ +import { Options } from "jquery-focusable"; + +// Basic usage +$('body').focusable(); + +// With options +const options: Options = { + findNegativeTabindex: true, + findPositiveTabindex: true + }; + +$('body').focusable(options); diff --git a/types/jquery-focusable/tsconfig.json b/types/jquery-focusable/tsconfig.json new file mode 100644 index 0000000000..d216e5326b --- /dev/null +++ b/types/jquery-focusable/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true + }, + "files": [ + "index.d.ts", + "jquery-focusable-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jquery-focusable/tslint.json b/types/jquery-focusable/tslint.json new file mode 100644 index 0000000000..d04fe2e1fa --- /dev/null +++ b/types/jquery-focusable/tslint.json @@ -0,0 +1 @@ +{"extends": "dtslint/dt.json"} \ No newline at end of file diff --git a/types/jquery-lazyload/index.d.ts b/types/jquery-lazyload/index.d.ts index 5505c247f5..28563a774d 100644 --- a/types/jquery-lazyload/index.d.ts +++ b/types/jquery-lazyload/index.d.ts @@ -15,7 +15,7 @@ declare namespace JQueryLazyLoad { container?: JQuery; data_attribute?: string; skip_invisible?: boolean; - appear?: null; + appear?: ((elementsLeft: number, options: Options) => void) | null; load?: (elementsLeft?: number, options?: Options) => void; placeholder?: string; } diff --git a/types/jquery-lazyload/jquery-lazyload-tests.ts b/types/jquery-lazyload/jquery-lazyload-tests.ts index 086069d11d..105bbe094a 100644 --- a/types/jquery-lazyload/jquery-lazyload-tests.ts +++ b/types/jquery-lazyload/jquery-lazyload-tests.ts @@ -9,7 +9,10 @@ $(document).ready(() => { effect: 'fadeIn', container: $('#container'), failure_limit: 10, - skip_invisible: true + skip_invisible: true, + appear: (elementsLeft: number, settings: JQueryLazyLoad.Options) => { + console.log(elementsLeft); + } }; $('.lazyload').lazyload(options); diff --git a/types/jquery-loading-overlay/index.d.ts b/types/jquery-loading-overlay/index.d.ts new file mode 100644 index 0000000000..ff5fa59976 --- /dev/null +++ b/types/jquery-loading-overlay/index.d.ts @@ -0,0 +1,46 @@ +// Type definitions for JQuery Loading Overlay 1.0 +// Project: https://github.com/jgerigmeyer/jquery-loading-overlay +// Definitions by: Anderson Friaça +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +export type Options = Partial<{ + /** + * Class added to target while loading + */ + loadingClass: string; + + /** + * Class added to overlay (style with CSS) + */ + overlayClass: string; + + /** + * Class added to loading overlay spinner + */ + spinnerClass: string; + + /** + * Class added to loading overlay spinner + */ + iconClass: string; + + /** + * Class added to loading overlay spinner + */ + textClass: string; + + /** + * Text within loading overlay + */ + loadingText: string; +}>; + +declare global { + interface JQuery { + loadingOverlay(options?: Options): JQuery; + loadingOverlay(method: 'remove', options?: Options): JQuery; + } +} diff --git a/types/jquery-loading-overlay/jquery-loading-overlay-tests.ts b/types/jquery-loading-overlay/jquery-loading-overlay-tests.ts new file mode 100644 index 0000000000..a4d2afec9a --- /dev/null +++ b/types/jquery-loading-overlay/jquery-loading-overlay-tests.ts @@ -0,0 +1,23 @@ +import { Options } from "jquery-loading-overlay"; + +// Basic usage +$('#target').loadingOverlay(); + +$('#target').loadingOverlay('remove'); + +// With options +const options: Options = { + loadingClass: 'loading', + overlayClass: 'loading-overlay', + spinnerClass: 'loading-spinner', + iconClass: 'loading-icon', + textClass: 'loading-text', + loadingText: 'loading' +}; + +$('#target').loadingOverlay(options); + +$('#target').loadingOverlay('remove', { + loadingClass: 'loading', + overlayClass: 'loading-overlay' +}); diff --git a/types/jquery-loading-overlay/tsconfig.json b/types/jquery-loading-overlay/tsconfig.json new file mode 100644 index 0000000000..cb40c55c09 --- /dev/null +++ b/types/jquery-loading-overlay/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true + }, + "files": [ + "index.d.ts", + "jquery-loading-overlay-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jquery-loading-overlay/tslint.json b/types/jquery-loading-overlay/tslint.json new file mode 100644 index 0000000000..d04fe2e1fa --- /dev/null +++ b/types/jquery-loading-overlay/tslint.json @@ -0,0 +1 @@ +{"extends": "dtslint/dt.json"} \ No newline at end of file diff --git a/types/jquery-next-id/index.d.ts b/types/jquery-next-id/index.d.ts new file mode 100644 index 0000000000..bdb573dfa1 --- /dev/null +++ b/types/jquery-next-id/index.d.ts @@ -0,0 +1,22 @@ +// Type definitions for jquery-next-id 1.0 +// Project: https://github.com/makeup-jquery/jquery-next-id +// Definitions by: Anderson Friaça +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +export interface JQueryNextId { + (prefix?: string): JQuery; + + defaults: { + prefix: string; + separator: string; + }; +} + +declare global { + interface JQuery { + nextId: JQueryNextId; + } +} diff --git a/types/jquery-next-id/jquery-next-id-tests.ts b/types/jquery-next-id/jquery-next-id-tests.ts new file mode 100644 index 0000000000..663dfbabe3 --- /dev/null +++ b/types/jquery-next-id/jquery-next-id-tests.ts @@ -0,0 +1,6 @@ +$('div').nextId('my-prefix'); + +$.fn.nextId.defaults = { + prefix: 'id', + separator: '-' +}; diff --git a/types/jquery-next-id/tsconfig.json b/types/jquery-next-id/tsconfig.json new file mode 100644 index 0000000000..a8bd98da54 --- /dev/null +++ b/types/jquery-next-id/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true + }, + "files": [ + "index.d.ts", + "jquery-next-id-tests.ts" + ] +} \ No newline at end of file diff --git a/types/jquery-next-id/tslint.json b/types/jquery-next-id/tslint.json new file mode 100644 index 0000000000..d04fe2e1fa --- /dev/null +++ b/types/jquery-next-id/tslint.json @@ -0,0 +1 @@ +{"extends": "dtslint/dt.json"} \ No newline at end of file diff --git a/types/jquery/jquery-tests.ts b/types/jquery/jquery-tests.ts index 6773f923ef..5d6aaf0680 100644 --- a/types/jquery/jquery-tests.ts +++ b/types/jquery/jquery-tests.ts @@ -655,9 +655,9 @@ function JQueryStatic() { } function isNumeric() { - function type_guard(obj: boolean) { + function type_guard(obj: boolean | number) { if ($.isNumeric(obj)) { - // $ExpectType (true & number) | (false & number) + // $ExpectType number obj; } else { // $ExpectType boolean diff --git a/types/jquery/test/longdesc-tests.ts b/types/jquery/test/longdesc-tests.ts index 23ff500d24..3405bb83b5 100644 --- a/types/jquery/test/longdesc-tests.ts +++ b/types/jquery/test/longdesc-tests.ts @@ -1437,7 +1437,7 @@ function longdesc() { $.getJSON('ajax/test.json', function(data) { var items: string[] = []; $.each(data, function(key, val) { - items.push('
  • ' + val + '
  • '); + items.push('
  • ' + val + '
  • '); }); $('