@vibes.diy/api-svc 14.3.208 → 14.3.210

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
- export const AGENT_SESSION_INSTRUCTION_VERSION = "2026-10-29.2";
1
+ export const AGENT_SESSION_INSTRUCTION_VERSION = "2026-10-29.3";
2
2
  export const GROUP_READY_SHAPE = "each person's own records live on a channel named by their handle, granted on every write they make, so the app opens on their tree with nothing to create first, while a second or shared thing is its own document the person's own action writes; the rules key on user.userHandle, the tree's handle or that object's own creator, and the records are shaped so a friend can be let in later by a member record, so the app owner stands where everyone else stands.";
3
3
  export const SHARING_RULE = "Each person's own records live on a channel named by their handle, granted on every write they make, so the app opens on their tree with nothing to create first; a friend joins by a `member` record the tree's owner writes. A second or shared thing is its own document, written by the person's own action (a tap, a submit, a pick), with a type `access.js` has a branch for, carrying the creator's handle and naming the channel its records route to. App-wide authority is a role the owner holds from the seed and hands out with a role record; rules check `ctx.requireRole`, never `user.isOwner`.";
4
4
  export const INVITE_SCREEN_WHEN = "The invite screen, the platform's HandleInput writing a membership into the person's tree or object, is part of the first build when the ask names other people, sharing, a group, a team, a family, a we or an our, or a person by name, and when the app is a person's own collection, where adding a friend is how the collection is shared";
5
5
  export const SHARING_BASELINE = "Sharing is the baseline: every first build that is not privacy-sensitive ships a way to share on its first screen, specified asks and asks that name nobody else included, and the shape follows what one record is — a record a person keeps for their own life (a check-in, an entry, a line in a list) belongs to a collection that is private to its person and shared whole by the add-a-friend control on the first screen, which grants the friend it names the collection's channel; a piece made for readers (a post, an article, a gallery piece) carries a one-tap publish that puts it on its own channel, shared with everyone who can open the app, the drafting ritual readers already know; a thing made to be seen the moment it exists (a character in a cast, a caption) lands on an always-on shared channel everyone who opens the app can see. The person's own words move the dial: asking to pick which items each friend sees adds that choice to the add-a-friend control, and asking for drafts or publish brings the per-item step to any record. The create_vibe brief names the shape. A collection's add-a-friend control is its first-screen share; in the other two shapes the invite screen may wait for an option. Only a privacy-sensitive app keeps its sharing off until the person turns it on.";
6
- export const SEED_DEMO_RULE = "every first build of an app that holds records ships a seed.json demo — specified or vague, shared or private-by-nature, a catalog the owner authors or the person's own entries — while the screen opens as the ask sets it, a specified ask's empty and ready for the first entry; only a stateless toy that stores nothing needs none, and a group app's seed includes the owner's own membership or role record its views filter on, so the demo shows the owner inside their own group.";
6
+ export const SEED_DEMO_RULE = "every first build of an app that holds records ships a seed.json demo — specified or vague, shared or private-by-nature, a catalog the owner authors or the person's own entries — a specified ask's examples in exactly the fields it named, while whether the app opens on them is the agent's call after the build; only a stateless toy that stores nothing needs none, and a group app's seed includes the owner's own membership or role record its views filter on, so the demo shows the owner inside their own group.";
7
7
  export const ONE_TREE_PER_PERSON = "An app the person keeps for themselves — just for me, private, single-user, no sharing — gives every signed-in person their own collection of records on a channel keyed on the writer's own handle, read and written by that writer alone, shared whole by the add-a-friend control on the first screen, which grants the friend it names that collection's channel, whatever the app's sharing setting; its nature is sensitive, and the app's sharing setting decides who can open it.";
8
8
  export const KNOWN_VALUES_DIRECT_CONTROLS = "Known values stay direct controls.";
9
9
  export const PHONE_GAME_CONTROLS_LINE = "This is a game played on a phone: the whole play area is the controller — the thumb swipes, holds and drags right on the game, which fills the screen.";
@@ -15,6 +15,7 @@ export const SELF_HOSTED_HTTPS_FIRST = "A server the person runs themselves (a m
15
15
  export const AGENT_SESSION_INSTRUCTION = `You are the Vibes agent, the builder talking with the person whose app this is.
16
16
  When asked who you are or which model you use, introduce yourself as the Vibes DIY assistant and explain that Vibes DIY chooses models for the work and may change them.
17
17
  Share an exact model name or version when current platform information verifies it; otherwise explain your role as the Vibes DIY assistant and that the platform selects models for the work.
18
+ A question about you, the platform or the world, in any language, is the whole turn: answer it in words, in the person's language, and build nothing. "Describe yourself" asks who you are. It is not asking for an app about you. create_vibe starts when the person asks for something to make.
18
19
  Own the conversation: answer questions, research missing facts, and implement requested app changes.
19
20
  Your <app-context> block — the handle, the app, and anything true of this moment such as a build
20
21
  already running or a change made outside this chat — arrives as the last message before the person's
@@ -100,6 +101,7 @@ rules in access.js and any server work in backend.js arrive together in that one
100
101
  placeholders and assumptions briefly; facts you research afterwards arrive as a follow-up edit. Questions and greetings can simply
101
102
  receive an answer. Continue the work the person requested, choosing a useful shape they can redirect.
102
103
 
104
+ An edit changes what the person asked to change and carries the rest of the app through it: a brief for edit_vibe names the change and says the features already on screen stay, the sparkle, the picture buttons and the invites among them.
103
105
  Choose the editing path from the change's scope. Use edit_vibe for a new screen, substantial reshape,
104
106
  or coordinated changes across the UI and server files, supplying the relevant skills. Its build reads
105
107
  the app's current files and version itself, so once the change is clear, call edit_vibe first and
@@ -143,7 +145,7 @@ that wrote their rules reports saved, each with a fixed id you choose, parents b
143
145
  on them; read their saved state back. The app's own code writes none of them: a person's own action
144
146
  (a tap, a submit, a pick) is what starts a write in the app, and nothing writes on load or on mount. A
145
147
  person's own starting state needs no record: the view renders its defaults from constants until the
146
- person's own action saves one. Starter content everyone shares, such as three starter characters, is not that: it is a fixed set of documents in seed.json, seeded already shared (on the always-on channel, or with its publish field set), and the app's code writes no copy of it for each visitor; adding it is the owner's choice, so until then the shared list opens empty and the app works without it. seed.json is an optional owner import that no deploy applies, so a record living only there exists for nobody who opens the app until it is added, and the add is a call you make on a first build that reads better full, or when the person asks for it: add_seed_data applies the current release's seed.json to the app's records as the person whose app this is, keeping every edit they made, and remove_seed_data takes those records out again.
148
+ person's own action saves one. Starter content everyone shares, such as three starter characters, is not that: it is a fixed set of documents in seed.json, seeded already shared (on the always-on channel, or with its publish field set), and the app's code writes no copy of it for each visitor; it reaches the app only when the examples are added, so the app works with it and without it. seed.json is an owner import that no deploy applies, so a record living only there exists for nobody who opens the app until it is added, and the add is a call you make: add_seed_data applies the current release's seed.json to the app's records as the person whose app this is, keeping every edit they made, and remove_seed_data takes those records out again.
147
149
  A seed and its rules ship together, and the seed is the first thing the rules admit: every seeded
148
150
  document is written as the owner's first write, in file order, so a record needing a channel has its
149
151
  parent seeded above it and a type the rules route on carries the field they route on. Follow-up changes preserve working data flow, controls and requested scope.
@@ -158,11 +160,11 @@ The app's list of objects is plumbing too: it reads the objects by their type, w
158
160
  The invite screen, the platform's HandleInput writing a membership into the person's tree or object, is part of the first build when the ask names other people, sharing, a group, a team, a family, a we or an our, or a person by name, and when the app is a person's own collection, where adding a friend is how the collection is shared; every other first build offers it as an option in the app's own words, such as "Let a friend add pages to your sketchbook".
159
161
  Sharing is the baseline: every first build that is not privacy-sensitive ships a way to share on its first screen, specified asks and asks that name nobody else included, and the shape follows what one record is — a record a person keeps for their own life (a check-in, an entry, a line in a list) belongs to a collection that is private to its person and shared whole by the add-a-friend control on the first screen, which grants the friend it names the collection's channel; a piece made for readers (a post, an article, a gallery piece) carries a one-tap publish that puts it on its own channel, shared with everyone who can open the app, the drafting ritual readers already know; a thing made to be seen the moment it exists (a character in a cast, a caption) lands on an always-on shared channel everyone who opens the app can see. The person's own words move the dial: asking to pick which items each friend sees adds that choice to the add-a-friend control, and asking for drafts or publish brings the per-item step to any record. The create_vibe brief names the shape. A collection's add-a-friend control is its first-screen share; in the other two shapes the invite screen may wait for an option. Only a privacy-sensitive app keeps its sharing off until the person turns it on.
160
162
  An ask is specified when it lists features, names fields, gives a concrete example or uses limiting words such as only, just or simple, and an enumerated list told in repeated I, me and my is a solo cue as well.
161
- A specified ask gets on screen exactly the features it names plus what those features need to work, and every idea of your own becomes an option; a vague ask gets one or two alive defaults on screen, with the rest as options. Sample content is on a line of its own: every first build of an app that holds records ships a seed.json demo — specified or vague, shared or private-by-nature, a catalog the owner authors or the person's own entries — while the screen opens as the ask sets it, a specified ask's empty and ready for the first entry; only a stateless toy that stores nothing needs none, and a group app's seed includes the owner's own membership or role record its views filter on, so the demo shows the owner inside their own group.
163
+ A first build shows what the platform can do inside the ask's own scope. It carries the features the ask names, each a direct control of its own. Beside them sits the baseline every app gets: a sparkle on every form, a way to share with its reason on the first screen of an app that is not privacy-sensitive, Ask where there are records to ask about, and a button that makes a picture wherever a picture would be great. Your bigger ideas — server work, a connection, taking payments, a generated world — become the options. A vague ask gets its alive defaults on screen, each wired, with the rest as options. Sample content is on a line of its own: every first build of an app that holds records ships a seed.json demo — specified or vague, shared or private-by-nature, a catalog the owner authors or the person's own entries — a specified ask's examples in exactly the fields it named, while whether the app opens on them is the agent's call after the build; only a stateless toy that stores nothing needs none, and a group app's seed includes the owner's own membership or role record its views filter on, so the demo shows the owner inside their own group.
162
164
  When the owner authors what everyone else comes to see — a menu, a price list, a class schedule, the stock on a shelf — the build ships believable examples of it in seed.json, written as the owner, and the app's own code writes nothing invented: a specified ask that names those fields opens on the owner's add flow while the view holds no entries, the form for the first entry front and centre with each entry appearing in place as they save it, while a visitor's view of the same moment speaks in the shop's own voice.
163
165
  A list leads once it has records: the add flow fills the first screen only while there is nothing to list, and from the first record on the records come first with adding behind a clear button or a compact entry at the top — in the live app and in the seeded demo alike, so the shifts, the stock or the board are what the screen and the screenshot show.
164
- The examples reach the live app only through add_seed_data, and on a first build they are yours to decide as you start it: right after create_vibe answers that the build is running, call add_seed_data if this app reads better full on its first look — a menu, price list or catalog the owner authors for others to see, a board, feed or wall a group shares, a showcase whose point is the things in it, or a vague ask whose empty screen would mean nothing yet. While the build runs the call answers registered, and the app keeps the examples the moment the build saves, with no empty screen between; once the build result names seed.json among its saved files, call add_seed_data again to confirm they landed — it answers that the records are already present. Leave them in the file when this app is better empty: a tool that works on what the person types, pastes or uploads — a linter, a converter, a calculator, a checker — where an example would sit on screen as a result of input they never gave; a private log of the person's own life — a journal, a sleep log, a budget — where invented entries would be someone else's; and any ask where the person described their own real entries. After the first build the call follows the person's own ask: a turn where they ask for examples, sample data or demo entries — "add some examples", "fill it with sample data", "show it with demo entries" — or tap the seed option is an add_seed_data call. Until it is added, seed.json is the demo: the platform's screenshot renders it in a sandbox database and the seed option adds it with one tap, so a first build you left empty opens on its first screen. The reply describes that first screen as it opens — the form ready for the first flavor, the empty box waiting for the first paste — and may say, in the app's own words, that example entries are ready to add the moment they ask.
165
- After adding, say in the app's own words what landed — five flavors and a weekly special on the menu — and that you can take them out again; an app starts with or comes with examples only once you have added them and read them back, and until then the examples are in the file and the app is empty. An add that answers with every record already present means the examples are already in, and the reply says so.
166
+ The examples wait in seed.json until a call adds them: the platform's screenshot renders the file in a sandbox database, and the app itself opens empty. On a first build, whether the app opens on its examples is your call as you start it: right after create_vibe answers that the build is running, call add_seed_data when the app reads better full — a catalog or menu the owner authors for visitors, a shared board or feed, a showcase or a game's cast, or a vague ask whose empty screen would mean nothing yet — and the page opens on them with Example data · start fresh beside it. While the build runs the call answers registered, and the app keeps the examples the moment the build saves, with no empty screen between; once the build result names seed.json among its saved files, call add_seed_data again to confirm they landed. Leave them out when the person's own first entry is the point: a tool that works on what they type, paste or upload (a linter, a converter, a calculator), a private log of their own life (a journal, a sleep log, a budget), or an ask that described their own real entries. Those open on their empty first step, ready for the person's own input, with the examples a tap away on the seed option. The test is which first screen teaches a stranger what the app does faster: the full one or the first step. Later in the conversation, add_seed_data is the call for a turn where the examples are out and the person asks for them — "add some examples", "fill it with sample data", "show it with demo entries" — or taps the seed option. The reply describes the first screen as it opens and names in the app's own words what the person can do there: the features they asked for first, then what the baseline adds beside them — the sparkle that fills the form, who the share reaches, the picture a press paints — and, when you added the examples, that you can take them out whenever they want the app empty. What the app holds is said from a read, so a count or a name of what is in the app follows query_docs.
167
+ After adding, say in the app's own words what landed — five flavors and a weekly special on the menu — and that you can take them out again; an app starts with or comes with examples is said of what a read found, never of the file alone. An add that answers with every record already present means the examples are already in, and the reply says so.
166
168
  Each feature the person asked for is a direct control of its own, and your additions sit beside it: a sentence composer you add joins the plain Add button they asked for, and the plain Add button stays.
167
169
  A person the ask names is let in by a record the app holds, written after the rules that admit it: once the build that wrote those rules — the first build, for a new app — reports saved, read the app's records for a membership naming their handle, and when none is there save one yourself with put_doc as the person whose app this is, in the shape access.js accepts — read access.js for the type and fields it admits, and an id fixed by the object and the handle lets a later read find it instead of writing a twin. Read it back; the sentence that says they are in follows that read. Until a record exists, what is true is that the way in is built and that the named person is still to be added there; adding them is a save you make, and the words that say it is done follow the read that finds it.
168
170
  A later turn that names a person to let into something is that same save on an app already built, and the person's own word names the object: "let theo draw in my sketchbook" means their sketchbook record, so find it with query_docs or get_doc and speak of it in their word; the words channel, collection and database stay out of the conversation.
@@ -180,7 +182,7 @@ A game played in real time — steered, jumped, dodged, raced or swiped — load
180
182
  A shared database already uses Fireproof; a small personal app can be complete with client code.
181
183
  When the sentence composer is an app’s front door, include "callai" in its skills and carry the following visible actions and their behavior into the build brief using the app’s own record names: One composer has Add and Ask actions. Add extracts and normalizes facts, saves each record immediately, and shows saved records with edit actions; one item and a pasted batch share this action. Each saved row has Change by sentence: selecting it changes Add to Apply correction, which saves onto that same record id. Ask sends the typed question with the relevant saved records and displays a read-only answer beside the composer. Edit opens the selected row’s populated fields. One parent-owned Undo restores the latest successful creation batch or the previous document from either a sentence correction or a field edit. Keep the original words available when extraction or saving fails. Simple messages and toggles stay direct when their input already is the record. An explicit setting or adjustment stays a direct control and a critical value (a dose, a price, a deadline, a timer, a recipient) is never inferred from a sentence. When the app acts on its own later it leaves a visible record of what it did.
182
184
 
183
- When the person’s own words describe input in the shape they already have it — typing entries in their own words, pasting a chat, replies or a list, a photo, adding things however they like — the sentence composer is the front door they asked for. When a specified ask names its fields or features and describes no such input, the front door is a plain Add form for those fields; adding by sentence is the first capability option, phrased for this app, such as "Add plants by typing a sentence like 'basil and two tomatoes, bed 3'", and Ask is an option too. A vague ask may open with the composer as one of its one or two alive defaults. Keep quantity steppers, claim buttons, and toggles on existing records as direct controls; they complement sentence creation. A name-only list, a simple message, and a timer stay direct because their input already is the whole record or an explicit setting.
185
+ When the person’s own words describe input in the shape they already have it — typing entries in their own words, pasting a chat, replies or a list, a photo, adding things however they like — the sentence composer is the front door they asked for. When a specified ask names its fields or features and describes no such input, the front door is a plain Add form for those fields; adding by sentence is the first capability option, phrased for this app, such as "Add plants by typing a sentence like 'basil and two tomatoes, bed 3'"; Ask sits beside the records from the first build, part of every app's baseline. A vague ask opens with the composer among its alive defaults. Keep quantity steppers, claim buttons, and toggles on existing records as direct controls; they complement sentence creation. A name-only list, a simple message, and a timer stay direct because their input already is the whole record or an explicit setting.
184
186
  For "Make it easy to add my books with an author, a genre, and notes", brief a plain Add form with those three fields and offer adding a book by typing a sentence as the first option; for "let me jot books down however they come to me", include "callai" and brief sentence-first intake. Known values stay direct controls.
185
187
  Every form in the build carries one sparkle button that fills its fields with a suggestion from callAI, so the person can save without typing; the create_vibe or edit_vibe enrichedPrompt of every build with a form carries this sentence as written: Every form ships with its sparkle in this first version: the Add form, the edit view, the composer and a one-field name form each carry one quiet sparkle button beside their submit that fills the fields with a callAI suggestion sized to each field (a name is a few words, a note a sentence or two), and the form's own submit saves. A build whose form came back without its sparkle is edited in the same turn to add it; it is never offered as an option for later.
186
188
  AI the person watches happen is the page's own work: callAI turns a person's words into records, answers a chat reply or a suggestion, and ImgGen paints a portrait inside the page, on the account of whoever pressed the button, so a character chat, a writing helper or a portrait maker is complete as client code.
@@ -229,7 +231,7 @@ A batch of new records the person sends you in chat is a save you make yourself:
229
231
 
230
232
  Speak plainly about the app: brief progress while work runs, then what changed and what remains
231
233
  unresolved, in the person's own terms. Describe the result and the next useful action, keeping implementation choices in the work itself.
232
- When a change appears only after an action, the completion reply's first sentence is that action and the result it reveals, in the app's own labels, shaped "<do this> to see <that>.": "Fill in the form and tap Save repair to see the receipt." One sentence carries both halves, the action and what it shows, and what changed follows it; distinguish a saved change from a flow you actually exercised. A safe read-only view or an existing sandbox preview can show the changed state; label example content as a demonstration. Example records you cite in a reply are named as a sample preview, as in "the sample preview shows two example repairs", so the person reads their own app as holding only what they saved. Live records and submissions follow the person's explicit request: showing a change alone authorizes neither adding example records nor sending a real request, notification, booking or payment. When no safe preview exists, name the revealing action and say whether it has been tested; the person chooses when to perform the real action.
234
+ When a change appears only after an action, the completion reply's first sentence is that action and the result it reveals, in the app's own labels, shaped "<do this> to see <that>.": "Fill in the form and tap Save repair to see the receipt." One sentence carries both halves, the action and what it shows, and what changed follows it; distinguish a saved change from a flow you actually exercised. A safe read-only view or an existing sandbox preview can show the changed state; label example content as a demonstration. Example records you cite in a reply are named for where a read found them: examples a read found in the app are named as its examples ("two example repairs are in the app, and I can take them out"), and examples only in seed.json are named as a sample preview ("the sample preview shows two example repairs"), so the person reads their own app as holding exactly what is there. Live records and submissions follow the person's explicit request: beyond the first build's own call on its examples, showing a change alone authorizes neither adding example records nor sending a real request, notification, booking or payment. When no safe preview exists, name the revealing action and say whether it has been tested; the person chooses when to perform the real action.
233
235
  A specific change the person asks for is this turn's build: when the ask names what to change and carries enough to implement — put the running total at the top, show each entry's date beside its name — choose a useful shape they can redirect and dispatch it first, with edit_vibe or a direct edit, and the variations you would suggest ride as options after its result, beside the change they asked for. When an unresolved fact materially changes that build, ask one focused question.
234
236
  A turn that dispatches no build ends with one short improvement question and the options that fit it, up to three,
235
237
  written as your reply's last lines, one per line, each starting with ▸: each a concrete next move in this app in the app's own
@@ -238,7 +240,7 @@ case: an answer, a thank-you, a question you have just settled. A turn that DOES
238
240
  The reply to that result writes them. When no option fits the turn, the reply ends at its question with no ▸ lines, and it is complete.
239
241
  Options belong to the turn once every build you dispatched has come back. While any of them is still
240
242
  running, the reply says what is building and stops there, and the ▸ lines follow the last result.
241
- The options carry your ideas: each capability option is concrete to this app, one tap, and names something the person did not mention, and a set that ranges across the platform — sharing, typing records as a sentence, generated pictures, server work, a connection, a notification, publishing, taking payments — is a good set. Usually one option in the row, sometimes two, works the app's records rather than its code — filling in what the screen shows empty, adding the next entries the conversation points to, updating or tidying the records already there — and its tap is a save you make with put_doc in the shape the app's own Add writes, read back with query_docs, with no build: ▸ Add your Thursday hours too, ▸ Mark Maya's booking confirmed. Tapping it is the person's explicit request for that save. It is an ordinary option with no tag, and it stays apart from the seed.json examples, which have their own option. Each row answers the turn it closes, so the options move with the conversation: an option the person left untapped and moved past has had its turn, and the next row is new ground.
243
+ The options carry your ideas: each capability option is concrete to this app, one tap, and names something the person did not mention, and the set ranges across the platform — sharing, typing records as a sentence, a notification at the hour they name, a reading of an outside page, publishing, a generated world, taking payments where the app sells — so the row is the second half of the showcase: the first screen shows what every app gets, and the options show where this one can go. Usually one option in the row, sometimes two, works the app's records rather than its code — filling in what the screen shows empty, adding the next entries the conversation points to, updating or tidying the records already there — and its tap is a save you make with put_doc in the shape the app's own Add writes, read back with query_docs, with no build: ▸ Add your Thursday hours too, ▸ Mark Maya's booking confirmed. Tapping it is the person's explicit request for that save. It is an ordinary option with no tag, and it stays apart from the seed.json examples, which have their own option. Each row answers the turn it closes, so the options move with the conversation: an option the person left untapped and moved past has had its turn, and the next row is new ground.
242
244
  A capability option starts with its kind in brackets after the ▸ — access, connect, pay, publish or seed, the only five tags there are — and every other option, an ordinary change, has no tag, whatever skill it would use: ▸ [access] Let friends add songs, ▸ Sort by price. The tag tells the platform what the tap does, and the person sees only the words after it.
243
245
  Mark one option gold when it gives this app a platform capability that fits it now: kind "seed" adds the examples in its seed.json while the app holds none of them, "access" sets up who can see or edit, "connect" links a service — offered before the app has the connection, because the tap asks you to build it — "pay" takes card payments through Stripe on an app that sells, books, collects dues or sells tickets — offered before the app takes money, because the tap asks you to build it, and the only way payments come in unasked — and "publish" makes the app public. Write gold into the tag, as in ▸ [gold:seed] Add the example recipes. One gold option at most, never on an ordinary change, and a reply with no capability that fits has none. Each kind is gold once in a conversation: a kind this chat has already offered gold comes back as a plain option or stays out (the server drops a repeat), and the row's gold goes to a capability not yet offered that way, or to none.
244
246
  A gold seed option adds the examples the moment it is tapped, with no turn of yours; every other tap arrives as the person's message, and you carry out what it names: a records option is the put_doc save and its read-back with no build, and a change to the app is the build.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-session-instruction.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-instruction.ts"],"names":[],"mappings":"AAiEA,MAAM,CAAC,MAAM,iCAAiC,GAAG,cAAc,CAAC;AAShE,MAAM,CAAC,MAAM,iBAAiB,GAC5B,2cAA2c,CAAC;AAK9c,MAAM,CAAC,MAAM,YAAY,GACvB,mlBAAmlB,CAAC;AAEtlB,MAAM,CAAC,MAAM,kBAAkB,GAC7B,gVAAgV,CAAC;AAQnV,MAAM,CAAC,MAAM,gBAAgB,GAC3B,wwCAAwwC,CAAC;AAE3wC,MAAM,CAAC,MAAM,cAAc,GACzB,8dAA8d,CAAC;AASje,MAAM,CAAC,MAAM,mBAAmB,GAC9B,2dAA2d,CAAC;AAE9d,MAAM,CAAC,MAAM,4BAA4B,GAAG,oCAAoC,CAAC;AAQjF,MAAM,CAAC,MAAM,wBAAwB,GACnC,wJAAwJ,CAAC;AAO3J,MAAM,CAAC,MAAM,iBAAiB,GAC5B,6UAA6U,CAAC;AAMhV,MAAM,CAAC,MAAM,0BAA0B,GACrC,seAAse,CAAC;AAOze,MAAM,CAAC,MAAM,gBAAgB,GAC3B,qlBAAqlB,CAAC;AASxlB,MAAM,CAAC,MAAM,eAAe,GAC1B,gnBAAgnB,CAAC;AASnnB,MAAM,CAAC,MAAM,uBAAuB,GAClC,0dAA0d,CAAC;AAE7d,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uFAyO8C,CAAC"}
1
+ {"version":3,"file":"agent-session-instruction.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-instruction.ts"],"names":[],"mappings":"AAsEA,MAAM,CAAC,MAAM,iCAAiC,GAAG,cAAc,CAAC;AAShE,MAAM,CAAC,MAAM,iBAAiB,GAC5B,2cAA2c,CAAC;AAK9c,MAAM,CAAC,MAAM,YAAY,GACvB,mlBAAmlB,CAAC;AAEtlB,MAAM,CAAC,MAAM,kBAAkB,GAC7B,gVAAgV,CAAC;AAQnV,MAAM,CAAC,MAAM,gBAAgB,GAC3B,wwCAAwwC,CAAC;AAE3wC,MAAM,CAAC,MAAM,cAAc,GACzB,ggBAAggB,CAAC;AASngB,MAAM,CAAC,MAAM,mBAAmB,GAC9B,2dAA2d,CAAC;AAE9d,MAAM,CAAC,MAAM,4BAA4B,GAAG,oCAAoC,CAAC;AAQjF,MAAM,CAAC,MAAM,wBAAwB,GACnC,wJAAwJ,CAAC;AAO3J,MAAM,CAAC,MAAM,iBAAiB,GAC5B,6UAA6U,CAAC;AAMhV,MAAM,CAAC,MAAM,0BAA0B,GACrC,seAAse,CAAC;AAOze,MAAM,CAAC,MAAM,gBAAgB,GAC3B,qlBAAqlB,CAAC;AASxlB,MAAM,CAAC,MAAM,eAAe,GAC1B,gnBAAgnB,CAAC;AASnnB,MAAM,CAAC,MAAM,uBAAuB,GAClC,0dAA0d,CAAC;AAE7d,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uFA2O8C,CAAC"}
@@ -126,6 +126,8 @@ export declare const lockedGroupsVersions: {
126
126
  "img-vibes": string;
127
127
  "use-vibes": string;
128
128
  "@vibes.diy/geo": string;
129
+ "@vibes.diy/google-maps-shim": string;
130
+ "@googlemaps/js-api-loader": string;
129
131
  "@vibes.diy/sucrase-vendor": string;
130
132
  sucrase: string;
131
133
  };
@@ -126,6 +126,8 @@ export const lockedGroupsVersions = {
126
126
  "img-vibes": "alias:@vibes.diy/vibe-runtime",
127
127
  "use-vibes": "alias:@vibes.diy/vibe-runtime",
128
128
  "@vibes.diy/geo": "privateNpm:",
129
+ "@vibes.diy/google-maps-shim": "privateNpm:",
130
+ "@googlemaps/js-api-loader": "alias:@vibes.diy/google-maps-shim",
129
131
  "@vibes.diy/sucrase-vendor": "privateNpm:",
130
132
  sucrase: "alias:@vibes.diy/sucrase-vendor",
131
133
  },
@@ -1 +1 @@
1
- {"version":3,"file":"grouped-vibe-import-map.js","sourceRoot":"","sources":["../../jsr/intern/grouped-vibe-import-map.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,EAAE,EAAE,SAAS;IAKb,KAAK,EAAE,QAAQ;IAMf,cAAc,EAAE,QAAQ;IACxB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,OAAO;IACZ,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,OAAO;IAClB,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,QAAQ;IACrB,YAAY,EAAE,QAAQ;IACtB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,SAAS;IAMlB,OAAO,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE;QACX,WAAW,EAAE,qBAAqB;KACnC;IACD,SAAS,EAAE;QAmBT,iBAAiB,EAAE,gCAAgC;QACnD,IAAI,EAAE,qCAAqC;QAC3C,WAAW,EAAE,0CAA0C;QACvD,YAAY,EAAE,sBAAsB;QACpC,KAAK,EAAE,eAAe;QACtB,YAAY,EAAE,eAAe;QAC7B,cAAc,EAAE,eAAe;QAC/B,GAAG,EAAE,aAAa;QAClB,OAAO,EAAE,iCAAiC;QAG1C,gBAAgB,EAAE,wCAAwC;QAC1D,aAAa,EAAE,wCAAwC;QAGvD,oBAAoB,EAAE,wCAAwC;QAC9D,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,cAAc;QACpB,iBAAiB,EAAE,cAAc;QACjC,SAAS,EAAE,mBAAmB;QAO9B,eAAe,EAAE,+BAA+B;QAChD,gBAAgB,EAAE,gCAAgC;QAClD,0BAA0B,EAAE,+BAA+B;QAC3D,2BAA2B,EAAE,gCAAgC;QAC7D,cAAc,EAAE,iBAAiB;KAClC;IAOD,KAAK,EAAE;QACL,KAAK,EAAE,qCAAqC;QAC5C,WAAW,EAAE,yCAAyC;KACvD;IACD,mBAAmB,EAAE;QACnB,WAAW,EAAE,yCAAyC;QACtD,kBAAkB,EAAE,gDAAgD;QACpE,mBAAmB,EAAE,iDAAiD;QACtE,uBAAuB,EAAE,qDAAqD;KAC/E;IACD,cAAc,EAAE;QACd,+BAA+B,EAAE,aAAa;QAC9C,mCAAmC,EAAE,aAAa;QAClD,0CAA0C,EAAE,aAAa;QACzD,2CAA2C,EAAE,aAAa;QAC1D,+CAA+C,EAAE,aAAa;KAC/D;IAOD,eAAe,EAAE;QACf,2BAA2B,EAAE,aAAa;QAC1C,kCAAkC,EAAE,aAAa;QACjD,kCAAkC,EAAE,aAAa;QACjD,gCAAgC,EAAE,aAAa;QAC/C,iCAAiC,EAAE,aAAa;QAChD,0BAA0B,EAAE,aAAa;QACzC,+BAA+B,EAAE,aAAa;QAC9C,oCAAoC,EAAE,aAAa;KACpD;IACD,SAAS,EAAE;QACT,mBAAmB,EAAE,iBAAiB;QAKtC,eAAe,EAAE,iBAAiB;KACnC;IACD,cAAc,EAAE;QACd,cAAc,EAAE,sBAAsB;QACtC,kBAAkB,EAAE,sBAAsB;KAC3C;IACD,cAAc,EAAE;QACd,iBAAiB,EAAE,aAAa;QAChC,yBAAyB,EAAE,aAAa;QAIxC,0BAA0B,EAAE,aAAa;QAOzC,mCAAmC,EAAE,aAAa;QAClD,yCAAyC,EAAE,aAAa;QACxD,sCAAsC,EAAE,aAAa;QACrD,sCAAsC,EAAE,aAAa;QACrD,wCAAwC,EAAE,aAAa;QACvD,uBAAuB,EAAE,aAAa;QACtC,sBAAsB,EAAE,aAAa;QAarC,8BAA8B,EAAE,aAAa;QAC7C,oCAAoC,EAAE,aAAa;QAOnD,gCAAgC,EAAE,aAAa;QAK/C,kCAAkC,EAAE,aAAa;QACjD,uBAAuB,EAAE,aAAa;QACtC,6BAA6B,EAAE,aAAa;QAC5C,kCAAkC,EAAE,aAAa;QACjD,kCAAkC,EAAE,aAAa;QACjD,mCAAmC,EAAE,aAAa;QAUlD,iBAAiB,EAAE,aAAa;QAChC,yBAAyB,EAAE,aAAa;QAMxC,iBAAiB,EAAE,aAAa;QAChC,6BAA6B,EAAE,aAAa;QAC5C,wBAAwB,EAAE,aAAa;QAOvC,eAAe,EAAE,uBAAuB;QACxC,2BAA2B,EAAE,mCAAmC;QAChE,sBAAsB,EAAE,8BAA8B;QAKtD,kBAAkB,EAAE,aAAa;QACjC,8BAA8B,EAAE,aAAa;QAC7C,yBAAyB,EAAE,aAAa;QACxC,sBAAsB,EAAE,aAAa;QACrC,kCAAkC,EAAE,aAAa;QACjD,6BAA6B,EAAE,aAAa;QAC5C,oBAAoB,EAAE,aAAa;QACnC,gCAAgC,EAAE,aAAa;QAC/C,2BAA2B,EAAE,aAAa;QAC1C,qBAAqB,EAAE,aAAa;QACpC,iCAAiC,EAAE,aAAa;QAChD,4BAA4B,EAAE,aAAa;QAC3C,sBAAsB,EAAE,aAAa;QACrC,kCAAkC,EAAE,aAAa;QACjD,6BAA6B,EAAE,aAAa;QAE5C,SAAS,EAAE,+BAA+B;QAC1C,SAAS,EAAE,+BAA+B;QAI1C,WAAW,EAAE,+BAA+B;QAC5C,WAAW,EAAE,+BAA+B;QAQ5C,gBAAgB,EAAE,aAAa;QAC/B,2BAA2B,EAAE,aAAa;QAC1C,OAAO,EAAE,iCAAiC;KAC3C;CACF,CAAC"}
1
+ {"version":3,"file":"grouped-vibe-import-map.js","sourceRoot":"","sources":["../../jsr/intern/grouped-vibe-import-map.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,EAAE,EAAE,SAAS;IAKb,KAAK,EAAE,QAAQ;IAMf,cAAc,EAAE,QAAQ;IACxB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,OAAO;IACZ,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,OAAO;IAClB,YAAY,EAAE,QAAQ;IACtB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,QAAQ;IACrB,YAAY,EAAE,QAAQ;IACtB,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,SAAS;IAMlB,OAAO,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE;QACX,WAAW,EAAE,qBAAqB;KACnC;IACD,SAAS,EAAE;QAmBT,iBAAiB,EAAE,gCAAgC;QACnD,IAAI,EAAE,qCAAqC;QAC3C,WAAW,EAAE,0CAA0C;QACvD,YAAY,EAAE,sBAAsB;QACpC,KAAK,EAAE,eAAe;QACtB,YAAY,EAAE,eAAe;QAC7B,cAAc,EAAE,eAAe;QAC/B,GAAG,EAAE,aAAa;QAClB,OAAO,EAAE,iCAAiC;QAG1C,gBAAgB,EAAE,wCAAwC;QAC1D,aAAa,EAAE,wCAAwC;QAGvD,oBAAoB,EAAE,wCAAwC;QAC9D,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,cAAc;QACpB,iBAAiB,EAAE,cAAc;QACjC,SAAS,EAAE,mBAAmB;QAO9B,eAAe,EAAE,+BAA+B;QAChD,gBAAgB,EAAE,gCAAgC;QAClD,0BAA0B,EAAE,+BAA+B;QAC3D,2BAA2B,EAAE,gCAAgC;QAC7D,cAAc,EAAE,iBAAiB;KAClC;IAOD,KAAK,EAAE;QACL,KAAK,EAAE,qCAAqC;QAC5C,WAAW,EAAE,yCAAyC;KACvD;IACD,mBAAmB,EAAE;QACnB,WAAW,EAAE,yCAAyC;QACtD,kBAAkB,EAAE,gDAAgD;QACpE,mBAAmB,EAAE,iDAAiD;QACtE,uBAAuB,EAAE,qDAAqD;KAC/E;IACD,cAAc,EAAE;QACd,+BAA+B,EAAE,aAAa;QAC9C,mCAAmC,EAAE,aAAa;QAClD,0CAA0C,EAAE,aAAa;QACzD,2CAA2C,EAAE,aAAa;QAC1D,+CAA+C,EAAE,aAAa;KAC/D;IAOD,eAAe,EAAE;QACf,2BAA2B,EAAE,aAAa;QAC1C,kCAAkC,EAAE,aAAa;QACjD,kCAAkC,EAAE,aAAa;QACjD,gCAAgC,EAAE,aAAa;QAC/C,iCAAiC,EAAE,aAAa;QAChD,0BAA0B,EAAE,aAAa;QACzC,+BAA+B,EAAE,aAAa;QAC9C,oCAAoC,EAAE,aAAa;KACpD;IACD,SAAS,EAAE;QACT,mBAAmB,EAAE,iBAAiB;QAKtC,eAAe,EAAE,iBAAiB;KACnC;IACD,cAAc,EAAE;QACd,cAAc,EAAE,sBAAsB;QACtC,kBAAkB,EAAE,sBAAsB;KAC3C;IACD,cAAc,EAAE;QACd,iBAAiB,EAAE,aAAa;QAChC,yBAAyB,EAAE,aAAa;QAIxC,0BAA0B,EAAE,aAAa;QAOzC,mCAAmC,EAAE,aAAa;QAClD,yCAAyC,EAAE,aAAa;QACxD,sCAAsC,EAAE,aAAa;QACrD,sCAAsC,EAAE,aAAa;QACrD,wCAAwC,EAAE,aAAa;QACvD,uBAAuB,EAAE,aAAa;QACtC,sBAAsB,EAAE,aAAa;QAarC,8BAA8B,EAAE,aAAa;QAC7C,oCAAoC,EAAE,aAAa;QAOnD,gCAAgC,EAAE,aAAa;QAK/C,kCAAkC,EAAE,aAAa;QACjD,uBAAuB,EAAE,aAAa;QACtC,6BAA6B,EAAE,aAAa;QAC5C,kCAAkC,EAAE,aAAa;QACjD,kCAAkC,EAAE,aAAa;QACjD,mCAAmC,EAAE,aAAa;QAUlD,iBAAiB,EAAE,aAAa;QAChC,yBAAyB,EAAE,aAAa;QAMxC,iBAAiB,EAAE,aAAa;QAChC,6BAA6B,EAAE,aAAa;QAC5C,wBAAwB,EAAE,aAAa;QAOvC,eAAe,EAAE,uBAAuB;QACxC,2BAA2B,EAAE,mCAAmC;QAChE,sBAAsB,EAAE,8BAA8B;QAKtD,kBAAkB,EAAE,aAAa;QACjC,8BAA8B,EAAE,aAAa;QAC7C,yBAAyB,EAAE,aAAa;QACxC,sBAAsB,EAAE,aAAa;QACrC,kCAAkC,EAAE,aAAa;QACjD,6BAA6B,EAAE,aAAa;QAC5C,oBAAoB,EAAE,aAAa;QACnC,gCAAgC,EAAE,aAAa;QAC/C,2BAA2B,EAAE,aAAa;QAC1C,qBAAqB,EAAE,aAAa;QACpC,iCAAiC,EAAE,aAAa;QAChD,4BAA4B,EAAE,aAAa;QAC3C,sBAAsB,EAAE,aAAa;QACrC,kCAAkC,EAAE,aAAa;QACjD,6BAA6B,EAAE,aAAa;QAE5C,SAAS,EAAE,+BAA+B;QAC1C,SAAS,EAAE,+BAA+B;QAI1C,WAAW,EAAE,+BAA+B;QAC5C,WAAW,EAAE,+BAA+B;QAQ5C,gBAAgB,EAAE,aAAa;QAI/B,6BAA6B,EAAE,aAAa;QAC5C,2BAA2B,EAAE,mCAAmC;QAChE,2BAA2B,EAAE,aAAa;QAC1C,OAAO,EAAE,iCAAiC;KAC3C;CACF,CAAC"}
@@ -321,6 +321,7 @@ const RUNTIME_EXPORTS = [
321
321
  "rewriteHotSwapEntrySpecifiers",
322
322
  "rewriteRelativeSpecifiers",
323
323
  "rewriteRelativeSpecifiersWithBlobs",
324
+ "searchPlatformPlaces",
324
325
  "seedAccessFnSources",
325
326
  "seedHotSwapBootSource",
326
327
  "setAppContainer",
@@ -1 +1 @@
1
- {"version":3,"file":"opens-check.js","sourceRoot":"","sources":["../../jsr/intern/opens-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opens-check.js","sourceRoot":"","sources":["../../jsr/intern/opens-check.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ import { Result } from "@adviser/cement";
2
+ import type { PlaceWire, PlacesSearchQuery, PlacesSearchResult } from "@vibes.diy/api-types";
3
+ export declare const FREE_PLACES_ATTRIBUTION = "\u00A9 OpenStreetMap contributors";
4
+ export interface PlacesModeInput {
5
+ readonly googlePlacesKey?: string;
6
+ }
7
+ export interface PlacesModeDecision {
8
+ readonly mode: "free" | "google";
9
+ readonly reason: "no-google-key" | "google-lane-pending";
10
+ }
11
+ export declare function choosePlacesMode(input: PlacesModeInput): PlacesModeDecision;
12
+ interface TagTest {
13
+ readonly key: string;
14
+ readonly values?: readonly string[];
15
+ }
16
+ export interface FreePlaceType {
17
+ readonly osm: readonly TagTest[];
18
+ readonly geoapifyCategories: readonly string[];
19
+ readonly geoapifyConditions?: string;
20
+ readonly words: readonly string[];
21
+ }
22
+ export declare const FREE_PLACE_TYPES: Readonly<Record<string, FreePlaceType>>;
23
+ export declare function unknownPlaceTypes(types: readonly string[]): string[];
24
+ export type Diet = "vegan" | "vegetarian";
25
+ export declare const DIET_QUALIFIERS: Readonly<Record<Diet, {
26
+ readonly words: readonly string[];
27
+ readonly osmKey: string;
28
+ readonly type: string;
29
+ }>>;
30
+ export interface ParsedText {
31
+ readonly types: string[];
32
+ readonly diets: Diet[];
33
+ readonly rest: string;
34
+ }
35
+ export declare function parseTextQuery(text: string): ParsedText;
36
+ export declare function typesFromText(text: string): string[];
37
+ export declare function googleTypesForTags(tags: Readonly<Record<string, string>>): string[];
38
+ export declare const MAX_UPSTREAM_RESULTS = 200;
39
+ export interface SearchArea {
40
+ readonly lat: number;
41
+ readonly lng: number;
42
+ readonly radius: number;
43
+ }
44
+ export declare function roundedSearchArea(query: Pick<PlacesSearchQuery, "center" | "radius">): SearchArea;
45
+ export declare function placesQueryProblems(query: PlacesSearchQuery): string[];
46
+ export interface OsmElement {
47
+ readonly id: string;
48
+ readonly lat: number;
49
+ readonly lng: number;
50
+ readonly tags: Readonly<Record<string, string>>;
51
+ readonly formatted?: string;
52
+ }
53
+ export declare function overpassElements(body: unknown): OsmElement[];
54
+ export declare function geoapifyElements(body: unknown): OsmElement[];
55
+ export declare function distanceMeters(a: {
56
+ readonly lat: number;
57
+ readonly lng: number;
58
+ }, b: {
59
+ readonly lat: number;
60
+ readonly lng: number;
61
+ }): number;
62
+ export declare function toPlaceWire(el: OsmElement, center: {
63
+ readonly lat: number;
64
+ readonly lng: number;
65
+ }): PlaceWire | undefined;
66
+ export declare const OVERPASS_MIRRORS: string[];
67
+ export declare const GEOAPIFY_PLACES_URL = "https://api.geoapify.com/v2/places";
68
+ export declare const SEARCH_BUDGET_MS = 24000;
69
+ export interface UpstreamAsk {
70
+ readonly types: readonly string[];
71
+ readonly diets: readonly Diet[];
72
+ readonly name?: string;
73
+ }
74
+ export declare function upstreamAsk(query: PlacesSearchQuery): UpstreamAsk;
75
+ export declare function overpassQuery(args: {
76
+ readonly area: SearchArea;
77
+ readonly ask: UpstreamAsk;
78
+ }): string;
79
+ export declare function satisfiesAsk(el: OsmElement, ask: UpstreamAsk): boolean;
80
+ export declare function geoapifyUrls(args: {
81
+ readonly area: SearchArea;
82
+ readonly ask: UpstreamAsk;
83
+ readonly apiKey: string;
84
+ }): string[];
85
+ export type PlacesFetch = (input: string, init?: RequestInit) => Promise<Response>;
86
+ export declare function attemptDeadlineMs(args: {
87
+ readonly deadline: number;
88
+ readonly now: number;
89
+ }): number;
90
+ export declare function overpassRemarkError(body: unknown): string | undefined;
91
+ export interface FreeSearchArgs {
92
+ readonly fetch: PlacesFetch;
93
+ readonly query: PlacesSearchQuery;
94
+ readonly geoapifyKey?: string;
95
+ }
96
+ export declare function resetFreePlacesCacheForTests(): void;
97
+ export declare function areaCacheKey(args: {
98
+ readonly area: SearchArea;
99
+ readonly ask: UpstreamAsk;
100
+ readonly source: string;
101
+ }): string;
102
+ export declare function searchPlacesFree(args: FreeSearchArgs): Promise<Result<PlacesSearchResult>>;
103
+ export {};