Classes
References
SourceStatus
Re-exports SourceStatusType Aliases
ArgumentIssueCode
Ƭ ArgumentIssueCode:"type" | "required" | "unexpected" | "literal" | "reference" | "integer_range" | "bound_exceeded"
ArgumentValueIssue
Ƭ ArgumentValueIssue:Object
Type declaration
AppBoardField
Ƭ AppBoardField:Object
A board uses a closed set of at most sixteen text categories. Counts and
cards are the current page’s, never a second query or a global total.
Type declaration
AppBoundRefusal
Ƭ AppBoundRefusal:Object
A refusal of a request past a stated bound. bound names it (see the
module note), limit is the enforced value in the bound’s own unit.
Type declaration
AppInvalidRequest
Ƭ AppInvalidRequest:Object
A request the contract does not take as given (a malformed or unsupported
clause): retrying it unchanged fails again.
Type declaration
AppCadence
Ƭ AppCadence: {kind: "every" ; minutes: number ; anchor: number } | { kind: "daily" ; at: string } | { kind: "weekly" ; weekday: 1 | 2 | 3 | 4 | 5 | 6 | 7 ; at: string } | { kind: "monthly" ; day: number | "last" ; at: string }
When a standing time trigger fires.
every: everyminutes(an integer, at least 1) minutes, on the boundariesanchor + k × minutes(anchorin exact epoch milliseconds); no calendar or time zone applies.daily: every day atat(HH:MM, 24-hour) in the schedule’s time zone.weekly: every week onweekday(Monday is 1, Sunday 7) atat.monthly: every month onday(1 to 28) or on its last day (last), atat.
AppComments
Ƭ AppComments:Object
A collection’s discussion, presented on its object page’s Comments tab.
Type declaration
AppCommentsPlan
Ƭ AppCommentsPlan:Object
What a checked declaration resolves to.
Type declaration
AppCanonicalMentions
Ƭ AppCanonicalMentions: {text: string ; ids: string[] } | { refusal: string }
The stored form of a comment body, or why it is refused.
AppCursor
Ƭ AppCursor: {kind: "native" ; cursor: string } | { kind: "index" ; cursor: string } | { kind: "walk" ; cursor: string } | { kind: "key" ; key: (Value | undefined)[] } | { kind: "series" ; cursor: string }
An application page’s position. Opaque to clients.
AppPageRestart
Ƭ AppPageRestart:Object
The refusal of a page whose cursor no longer continues its pages: a
region listed whole that has since grown past one read, an ordering or
readable partition set that changed, or an inherited cursor the engine no
longer accepts. It is a BijectionError with this data; paginationError is
the inherited paginated-query signal (usePaginatedQuery starts again
from the first page on it), and a client holding its own cursors does the
same (isAppPageRestart).
Type declaration
DataReleaseDefinition
Ƭ DataReleaseDefinition:Object
The exact positive output contract reviewed by the source’s release authority.
Type declaration
DataReleaseSource
Ƭ DataReleaseSource:Object
A logical source requirement; root relations omit the component.
Type declaration
DataReleaseContainer
Ƭ DataReleaseContainer:DataReleaseSource & { field: string ; key: string }
An explicitly named registered container.
DataReleaseReceipt
Ƭ DataReleaseReceipt:Object
Immutable acceptance identity. A lost response can recover the same epoch
by executing the same request and approval IDs.
Type declaration
ReleaseAccessSimulation
Ƭ ReleaseAccessSimulation:Object
Content-free comparison under the actual current read owner. Removing
selected source requirements here changes no state and approves no output.
The container’s own read policy remains in both comparisons.
Type declaration
ResourceRef
Ƭ ResourceRef: `\{"collection" \| "operation" \| "function" \| "relation" \| "interface"}:{string}` Deployment-relative identity. Copy it from discovery; names are case-sensitive.ResourceKind
Ƭ ResourceKind:"question" | "collection" | "operation" | "function" | "relation" | "interface"
DiscoverySummary
Ƭ DiscoverySummary:Object
Not exported: an exported type refers to it.
Type declaration
DiscoverArgs
Ƭ DiscoverArgs:Object
Type declaration
DiscoveryPage
Ƭ DiscoveryPage:Object
Type declaration
DiscoveredFunction
Ƭ DiscoveredFunction:Object
Not exported: an exported type refers to it.
Type declaration
OperationCompanion
Ƭ OperationCompanion: typeofoperationCompanionNames[number]
ResourceSummary
Ƭ ResourceSummary<K>: Omit<DiscoverySummary, "kind" | "ref"> & { kind: K ; ref: `\{K}:{string}` }
Not exported: an exported type refers to it.
Type parameters
SeriesReader
Ƭ SeriesReader:Object
Not exported: an exported type refers to it.
Type declaration
DiscoveryResource
Ƭ DiscoveryResource:ResourceSummary<"collection"> & { collectionKind: AppCollection["kind"] ; relationContract?: RelationDescriptor ; fileFields: NonNullable<AppCollection["file_fields"]> ; component?: string ; validator_json: string ; identity: { field: "_id" ; table: string } | { field: "event_key" ; occurrence: ["series_id", "source", "event_id"] } | null ; native_series?: SeriesMetadata ; series_properties?: Record<string, AppSeriesProperty & { time: { unit: "microsecond" ; range: "half_open" ; representation: "int64" } ; read?: { function: "function:application:seriesProperty" ; args: { collection: string ; property: string } ; kinds: AppSeriesProperty["reads"] } ; prepare?: { function: "function:application:seriesPropertyPrepare" ; args: { collection: string ; property: string } ; kinds: AppSeriesProperty["preparations"] } ; analysis?: { function: "function:application:seriesPropertyAnalysis" ; args: Record<string, never> } }> ; time?: { unit: "microsecond" ; range: "half_open" ; representation: "int64" } ; correction?: "greatest_order" ; coverage?: "retained_accepted_data" ; titleProperty?: string ; indexes: AppCollection["indexes"] ; searchIndexes: AppCollection["search_indexes"] ; readCost: AppCollection["read_cost"] ; query: Pick<AppPresentation, "sortIndexes" | "search" | "dimensions" | "dateDimensions" | "numericDimensions" | "measures"> ; valueMeaning: Record<string, Pick<NonNullable<AppPresentation["properties"]>[string], "format" | "point" | "cell" | "scale" | "currency">> ; relations: ResourceRef[] ; operations: ResourceRef[] ; reads: { seriesEvents?: SeriesReader & { maxPageSize: number ; defaultPageSize: number } ; seriesSamples?: SeriesReader & { maxPageSize: number ; defaultPageSize: number } ; seriesSummary?: SeriesReader ; seriesWindows?: SeriesReader ; seriesErasure?: SeriesReader ; questions?: { ask: `function:\{string}\` ; `status`: \`function:{string}` ; page: `function:\{string}\` ; `facets`: \`function:{string}` ; close: `function:\{string}\` ; `observe`: \`function:{string}` ; explain: `function:\{string}\` ; `args`: \{ `collection`: `string` \} \} ; `browse?`: \{ `function`: \`function:{string}` ; args: { collection: string } ; maxPageSize: number } ; get?: { function: `function:\{string}\` ; `args`: \{ `collection`: `string` \} \} \} \} \| [`ResourceSummary`](/api/modules/apps#resourcesummary)\<``"operation"``\> & \{ `access`: [`apps`](/api/modules/apps) ; `contract_json`: `string` ; `contract_digest`: `string` ; `pipeline_operation?`: `string` ; `pipeline_keys?`: `string`[] ; `pipeline_observer?`: \{ `kind`: ``"native"`` ; `query`: `string` \} \| \{ `kind`: ``"external"`` ; `query`: `string` ; `publication_query`: `string` ; `wait_query`: `string` ; `cancel_wait`: `string` \} ; `component?`: `string` ; `forwarder?`: `string` ; `calls`: `Record`\<[`OperationCompanion`](/api/modules/apps#operationcompanion), `string`\> ; `argument_queries`: `Record`\<`string`, \{ `function`: \`function:{string}` ; collection: `collection:\{string}\` ; `requires`: `string`[] ; `meaning`: ``"suggestions"`` \}\> ; `datasetSave?`: \{ `datasets`: `string`[] ; `reservation`: `string` ; `preparation`: `string` ; `publication`: `string` \} ; `authorization`: ``"checkedOnEveryCall"`` ; `execution`: \{ `expectedContract`: ``"required"`` ; `requestKey`: ``"reuseAfterUnknownOutcome"`` ; `preview`: ``"doesNotAcceptOrReserve"`` \} \} \| [`ResourceSummary`](/api/modules/apps#resourcesummary)\<``"function"``\> & [`DiscoveredFunction`](/api/modules/apps#discoveredfunction) & \{ `authorization`: ``"checkedOnEveryCall"`` \} \| `Omit`\<[`ResourceSummary`](/api/modules/apps#resourcesummary)\<``"function"``\>, ``"kind"``\> & [`DiscoveredFunction`](/api/modules/apps#discoveredfunction) & \{ `kind`: ``"question"`` ; `question`: `NonNullable`\<[`DiscoveredFunction`](/api/modules/apps#discoveredfunction)[``"question"``]\> ; `authorization`: ``"checkedOnEveryCall"`` \} \| [`ResourceSummary`](/api/modules/apps#resourcesummary)\<``"relation"``\> & \{ `from`: \`collection:{string}` ; to: `collection:\{string}\` ; `cardinality`: \{ `min`: `number` ; `max`: `number` \| ``null`` \} ; `orderBy`: `string`[] ; `read?`: \{ `function`: \`function:{string}` ; args: { collection: string ; relation: string } ; from: { collection: `collection:\{string}\` ; `property`: ``"_id"`` \} \} \} \| [`ResourceSummary`](/api/modules/apps#resourcesummary)\<``"interface"``\> & \{ `contract_json`: `string` ; `implementations`: \`operation:{string}`[] }
A static contract. Dynamic suggestions are ordinary, separately called queries.
DiscoveryDescription
Ƭ DiscoveryDescription: {apiVersion: 1 ; basis: string } & DiscoveryResource
ArgumentChoicesArgs
Ƭ ArgumentChoicesArgs:Object
Not exported: an exported type refers to it.
Type declaration
ArgumentChoicesPage
Ƭ ArgumentChoicesPage:Object
Not exported: an exported type refers to it.
Type declaration
AppObjectFile
Ƭ AppObjectFile:Object
One object’s file as objectFiles answers it: the file as the storage
owner records it, the locator delivery reads it through
(client.files.download(locator)), the collection’s native component
address (absent at the app root; it is not permission), and the name the
object gives it (its declared name property), or null.
Type declaration
AppGeometryType
Ƭ AppGeometryType: typeofAPP_GEOMETRY_TYPES[number]
AppGeometryProfile
Ƭ AppGeometryProfile: typeofAPP_GEOMETRY_PROFILES[number]
AppGeometrySize
Ƭ AppGeometrySize: typeofAPP_GEOMETRY_SIZES[number]
AppGeometryDeclaration
Ƭ AppGeometryDeclaration:Object
A geometry property’s declared profile and size tier: what the engine
admits its values under.
Type declaration
AppSpatialField
Ƭ AppSpatialField:AppGeometryDeclaration & { types: AppGeometryType[] ; is_nullable: boolean ; is_position: boolean }
One spatial field resolved by native schema admission.
AppRegion
Ƭ AppRegion: {kind: "box" ; west: number ; south: number ; east: number ; north: number } | { kind: "distance" ; center: { type: "Point" ; coordinates: number[] } ; radiusMetres: number } | { kind: "polygon" ; area: { type: "Polygon" ; coordinates: number[][][] } | { type: "MultiPolygon" ; coordinates: number[][][][] } } | { kind: "point" ; point: { type: "Point" ; coordinates: number[] } } | { kind: "line" ; line: { type: "LineString" ; coordinates: number[][] } | { type: "MultiLineString" ; coordinates: number[][][] } } | { kind: "object" ; collection: string ; id: string ; field: string }
A region a map draws, as the application query contract carries it. It has
a semantic shape that the native workspace adapter translates into typed
spatial expressions.
box: closed on every side;west > eastcrosses the antimeridian.distance: every point withinradiusMetresgreat-circle metres ofcenteron the geometry profile’s sphere.polygon: a closed WGS84[longitude, latitude]polygon.point: one WGS84 point, as a query geometry of a shape property (the shapes that contain it, say).line: a WGS84 LineString or MultiLineString, as a query geometry of a shape property (the shapes a route crosses, say).object: the stored value offield, a declared geometry property of one object (id) of an exposed collection (collection): referenced, never copied. The backend reads that object with the caller’s ordinary point read (getMany), so the read joins the query’s read set and an edit to the shape reruns the query; a missing object, one the caller may not read, or one without a value refuses the clause (AppRegionRefusal). Its value resolves to apolygon(Polygon or MultiPolygon), apointor aline, as the property holds it, up to the geometry profile’s large tier (which its declaration admitted when it was written); the spatial index’s exact-work bound still applies.
distance, box, polygon and an object
holding an area; a shape property takes box, polygon, point, line
and object.
AppRegionRefusal
Ƭ AppRegionRefusal:Object
The refusal of a spatial clause whose object region cannot be resolved:
absent (no such object), restricted (the caller’s read of it was
refused), empty (the object holds no value of the property) or kind
(its value is not a region this property takes: a point property takes an
area only, and a MultiPoint is no region). It is a BijectionError with this
data (isAppRegionRefusal).
Type declaration
AppSpatialMode
Ƭ AppSpatialMode: typeofAPP_SPATIAL_MODES[number]
AppWithin
Ƭ AppWithin:Object
A region applied to one geometry property by mode (default
intersects).
Type declaration
AppNearest
Ƭ AppNearest:Object
The k objects whose point property lies nearest center, by
great-circle distance on the geometry profile’s sphere, ties by id, among
the objects the view’s other clauses admit; at most maxMetres away when
given. Objects without a located value are never ranked. center is a
[longitude, latitude] pair (its argument validator is an array of two
numbers, checked by appNearestError).
Type declaration
AppCellGrouping
Ƭ AppCellGrouping:Object
Group a point property by the cell of a discrete global grid that holds
each object’s value (AppSummaryArgs.cells).
Type declaration
AppRegionKind
Ƭ AppRegionKind:AppRegion["kind"]
AppSpatialIndexInfo
Ƭ AppSpatialIndexInfo:Object
One declared geometry property whose spatial clauses the application
answers in its queries, through the spatial index the program registers
(defineApplication({ spatialIndexes })): the AppSpatialModes and
region kinds it takes (a shape property takes no distance), whether it
ranks nearest objects, and the grid systems its summary groups it by (a
point property; none for shapes). Reported by the application.
Type declaration
AppMapView
Ƭ AppMapView:Object
What a map view of a collection remembers. Presentation only:
field: the declared geometry property drawn; when absent, the collection’sdefaultMapField, else its first in name order.centerandzoom: the saved viewport; absent fits the loaded objects.aggregate: draw the whole query scope counted per grid cell (a cell summary, AppSummaryArgs.cells) instead of the loaded objects: as count bubbles (clusters), a hexagon grid coloured by count (grid) or a heatmap of cell centres weighted by count (heatmap). Only for a point property with a spatial index.
Type declaration
AppMapAggregate
Ƭ AppMapAggregate:"clusters" | "grid" | "heatmap"
How a map aggregates a point property (aggregate).
AppCellSystem
Ƭ AppCellSystem: keyof typeofAPP_CELL_SYSTEMS
A discrete global grid (APP_CELL_SYSTEMS).
AppPointSource
Ƭ AppPointSource: {kind: "value" } | { kind: "position" } | { kind: "point" ; longitude: string ; latitude: string }
Where a point comes from: the property itself, or two numeric
properties.
AppGeometrySource
Ƭ AppGeometrySource:AppPointSource | { kind: "cell" ; system: AppCellSystem ; of?: string ; parent?: string } | { kind: "line" ; from: string ; to: string ; ends: [AppPointSource, AppPointSource] }
Where a geometry field’s value comes from: the property itself, a point
built from two numeric properties, a stored grid cell id whose boundary
the client derives (render-only, never a spatial index), or a line from
one declared point field to another of the same object (render-only,
never a spatial index: its ends’ own indexes and filters apply). A cell’s
of, when declared, names the geometry field whose cell it stores (a
point’s cell, or a shape’s canonical geohash cell), and its parent the
coarser stored cell of the same field holding it. A line’s ends are the
sources of its from and to point fields.
AppGeometryField
Ƭ AppGeometryField:Object
One declared geometry field of a collection.
Type declaration
GeometryDeclarations
Ƭ GeometryDeclarations:Object
Not exported: an exported type refers to it.
Type declaration
AppGeometry
Ƭ AppGeometry: {type: "Point" ; coordinates: [number, number] } | { type: "MultiPoint" | "LineString" ; coordinates: [number, number][] } | { type: "MultiLineString" | "Polygon" ; coordinates: [number, number][][] } | { type: "MultiPolygon" ; coordinates: [number, number][][][] }
A GeoJSON geometry value as the workspace reads it.
AppBox
Ƭ AppBox:Object
A box of WGS84 degrees, west <= east.
Type declaration
AppGraphPropertyKind
Ƭ AppGraphPropertyKind:"category" | "number" | "time"
How a property can present a node: by its distinct values, along a
numeric range, or on a time axis.
AppGraphTypeStyle
Ƭ AppGraphTypeStyle: [type: number, colour: number, label: number, badges: number[], time: number] One node type’s style in a saved graph:[type, colour, label, badges, time], indexes into AppGraph.types and AppGraph.fields, -1 for none.
type is a node type; the entries are sorted by it, one per type at most,
and an entry sets at least one of the four.
AppGraphNote
Ƭ AppGraphNote: [x: number, y: number, node: number, text: string] One note:[x, y, node, text]. node is the index of the node it is
attached to, or -1 for a free note; text is 1 to
GRAPH_NOTE_CHARS characters, not blank. Positions are integers
within ±100000, like nodes’.
AppGraphGroup
Ƭ AppGraphGroup: [name: string, collapsed: 0 | 1, members: number[]] One named group:[name, collapsed, members]. The name is 1 to
GRAPH_GROUP_NAME characters, not blank; collapsed is 0 or 1;
members are at least two node indexes, strictly increasing, and no node
belongs to two groups.
AppSavedGraphTypeStyle
Ƭ AppSavedGraphTypeStyle:Object
One node type’s part of a saved style, by property name.
Type declaration
AppSavedGraphStyle
Ƭ AppSavedGraphStyle:Object
One of a member’s named graph styles: a style for each of 1 to 16 object
types, by name. Saved in their preferences, so it follows them to any graph
and device. It is checked for shape and size only, never against the
catalog: a type or property that is no longer available is dropped, and
named, when the style is applied.
Type declaration
AppIntent
Ƭ AppIntent:"neutral" | "info" | "success" | "warning" | "danger"
Colour meaning for a displayed value. It is presentation, not authority.
AppInlineEdit
Ƭ AppInlineEdit:Object
An in-place edit of one property, made by invoking a declared operation.
It is presentation: it says which exposed operation changes this property
and which of its arguments receives the new value, so a table cell or a
property row can offer the edit. It grants nothing. An edit is never a
direct property write: the cell previews and invokes operation through
the ordinary operation path, with the same authorization, custody and
recovery as the operation dialog, and a caller who may not invoke it sees a
refused control.
The operation is a root operation this application exposes, associated
with this collection and declaring a target argument, which receives the
edited object’s id. argument accepts every value the property can hold.
The frontend fills other arguments from its current read, using its own
form configuration (for example a revision guard). The operation checks
concurrency and every supplied value. A withheld operation has no control.
batch names an exposed operation that applies the same change to a
selection: it declares selectionArgument and takes
exactly that argument and argument, under the same name.
Type declaration
AppManifest
Ƭ AppManifest:Object
A frontend entry, independent of backend definitions and credentials.
Type declaration
AppPropertyStatus
Ƭ AppPropertyStatus:"experimental" | "deprecated"
An optional advisory label on a collection property.
AppPresentation
Ƭ AppPresentation:Object
Presentation metadata grants no data or operation authority.
Type declaration
AppOperationLayout
Ƭ AppOperationLayout:AppPresentation
Operation presentation without form initialization or dependent-field behavior.
AppViewDependency
Ƭ AppViewDependency:Object
Declared dependencies of a view, restricted to collections this app
exposes. A view may also read tables the app does not expose; that is never
disclosed, not even as a count.
Type declaration
AppSourceDependency
Ƭ AppSourceDependency:Object
Declared binding of a source-owned table: program-authored names only.
Type declaration
AppPublishedDependency
Ƭ AppPublishedDependency:Object
Declared producer and member of a published relation.
Type declaration
AppReadCost
Ƭ AppReadCost: {kind: "free" } | { kind: "per_row" ; subjects: number ; indexes: string[] } | { kind: "per_object" ; subjects: number } | { kind: "unbounded" }
How reading a collection is charged against READ_SUBJECT_LIMIT,
reported by the engine.
free: no per-row charge; the ordinary row bounds apply.per_row:subjectsper row a read’s range VISITS, matching or not, through the default ordering and through each index named inindexes. A read through an index not listed isunbounded: a view index that cannot reuse a source index with the same fields scans its whole source.per_object: a read’s range costs the decisions its rule makes of the range, not its rows, so ordinary row bounds apply;subjectsper object read by identity (objects,labels, a link’s target). The table’s rule is a closed access program.unbounded: no bound in visited rows exists (a view that reads protected rows it does not return, a materialized view over protected inputs, a relation whose rows restore retained obligations, a published relation). Bounded reads of it are reported incomplete, and paged reads refused, rather than failing the engine’s bound part way.
AppAggregate
Ƭ AppAggregate:Object
One aggregate the collection’s table declares, which the engine keeps
exact in the same commit as every write: counts per value of by, and an
exact int64 sum of each sum field. visibility says whether it is served
under a read rule (see TableDefinition.aggregate). Reported by the engine;
a presentation cannot declare it.
Type declaration
AppSearchIndex
Ƭ AppSearchIndex:Object
One full-text index a search of a collection reads, reported by the engine:
a table’s own searchIndex, or one its source declares that a view carries.
A view cannot declare a search index. A computed view carries its source’s
when its rows are the source’s rows one for one (a scan, renamed or
re-projected, never filtered, joined or grouped) and it shows the search
field and every filter field unchanged under the same name. The engine then
runs the source’s search under the caller’s authority, passes each hit
through the view’s plan and read rule, and keeps the relevance order.
Type declaration
AppSearchMode
Ƭ AppSearchMode:"words" | "prefix"
How a collection’s declared search matches: words
through a full-text index (any case, relevance order), prefix through an
ordinary index (exact, case-sensitive, index order).
AppRelation
Ƭ AppRelation:Object
A presented named navigation. Physical joins remain owned by the engine.
Type declaration
AppRelatedEntry
Ƭ AppRelatedEntry:Object
An identity reached by a relation; an unavailable source retains its ID.
Type declaration
AppRelatedWindowPage
Ƭ AppRelatedWindowPage:RelatedWindowPage
A relationship page at one exact, expiring basis.
AppRelatedPage
Ƭ AppRelatedPage:RelatedPage
AppCollection
Ƭ AppCollection:AppPresentation & { resource_id: string ; relationContract?: RelationDescriptor ; name: string ; component?: string ; kind: "table" | "view" | "source" | "published" | "virtual_table" ; snapshot_browse?: boolean ; identity_table: string ; references?: Record<string, { relation: string | null ; inverse: string | null }> ; view: AppViewDependency | null ; source: AppSourceDependency | null ; published: AppPublishedDependency | null ; validator_json: string ; series_properties?: Record<string, AppSeriesProperty> ; file_fields?: FileFieldProjection[] ; spatial_fields?: Record<string, AppSpatialField> ; indexes: { indexDescriptor: string ; fields: string[] ; spatial?: { field: string ; encoding: "wgs84-zorder29-cover-v2" } }[] ; search_indexes: AppSearchIndex[] ; relationships: null | { field: string ; table: string ; min: number ; max: number | null ; navigation?: string | null }[] ; read_cost: AppReadCost ; aggregates: AppAggregate[] ; spatial_indexes: AppSpatialIndexInfo[] ; property_order: string[] ; series_gaps?: Record<string, number | null> }
An active collection explicitly exposed by the product query.
OperationAuthorization
Ƭ OperationAuthorization: {kind: "model" ; bindingDigest: string ; resource: { type: "operation" ; key: string } } | { kind: "custom" }
Exact native operation contract, with current discovery-time permissions.
AppOperation
Ƭ AppOperation:AppPresentation & { name: string ; pipeline_operation?: string ; pipeline_keys?: string[] ; pipeline_selector?: string ; access: OperationAuthorization ; datasetSave?: Extract<DiscoveryDescription, { kind: "operation" }>["datasetSave"] ; contract_json: string ; contract_digest: string ; is_invokable: boolean ; is_previewable: boolean ; component?: string ; forwarder?: string }
AppOperationAdapters
Ƭ AppOperationAdapters: {reference: OperationReference ; contract: OperationContract } & OperationFunctionReferences<"public", any, any>
The five companion references one catalog entry resolves to, whoever
declared the operation.
AppFeature
Ƭ AppFeature:Object
A capability the application exposes beside its collections and operations.
The entry is disclosure metadata: it names a public module and grants nothing.
The feature’s own module enforces authentication and access for every call.
Type declaration
PipelineCatalogEntry
Ƭ PipelineCatalogEntry:Object
Type declaration
AppCallablePresentation
Ƭ AppCallablePresentation:Object
Shared descriptions for generated clients; never execution or authorization.
Type declaration
AppCallable
Ƭ AppCallable: {pipeline_reader?: string ; pipeline_keys?: string[] ; pipeline_control?: string ; feature: string ; name: string ; address: string ; args_json: string ; returns_json: string ; presentation?: AppCallablePresentation } & { kind: "query" | "mutation" | "action" } | { kind: "operation" ; operation: AppOperation }
A deployed callable, resolved from the exposed module’s native analysis.
AppCatalog
Ƭ AppCatalog:Object
The authorized catalog; it contains no policy code or connector configuration.
Type declaration
AppObject
Ƭ AppObject:Record<string, Value> & { _id: string ; _creationTime: number }
One ordinary object returned under the caller’s current read rules.
AppPageEnd
Ƭ AppPageEnd:"complete" | "page" | "budget" | "window"
Why a page ended, and whether continueCursor continues it.
complete: the whole range, or the whole ranking, was read (isDone).page: the page holds the objects requested; the cursor continues.budget: fewer objects than requested and more to read. The query’s own read bound (rows visited, bytes, or the engine’s read-access subjects, see APP_READ_SUBJECT_BUDGET) ended the page first, or a re-run of a pinned page found rows gone from its range. The cursor continues exactly after the last row read, so continuing fills the page; it is never an error and never a count.window: a word search reached the end of the engine’s ranking, its first APP_SEARCH_WINDOW matches by relevance. More may match; no cursor reaches them. Add words to narrow the search.
AppPage
Ƭ AppPage:Object
One page of objects. end says machine-readably why it ended
(AppPageEnd); a page may be short or empty and still continue.
A cursor is a position in the page’s index or ranking, not a snapshot. A
reactive client re-runs every page it holds at the one snapshot its
subscriptions share, and a page keeps its end position after its first
answer (the inherited query journal), so the pages loaded from one start
partition the range: none repeats or skips an object. A one-shot
continuation re-bases on the latest state instead, so an object that moved
between two reads may be seen twice or not at all.
Type declaration
AppDecimalTotal
Ƭ AppDecimalTotal:Object
An exact fixed-scale decimal total. Numeric extrema are unavailable on
the maintained path; string indexes do not order decimals numerically.
Type declaration
AppSummary
Ƭ AppSummary:Object
Type declaration
AppSummaryExtremes
Ƭ AppSummaryExtremes: {kind: "exact" } | { kind: "not_indexed" ; index: string[] } | { kind: "scope" } | { kind: "decimal" } | { kind: "bound" }
Whether a summary’s min/max are exact.
exact: every group’s are. Always so on theboundedpath; on themaintainedpath each group’s extremes are the first and last entry of an index whose fields are the grouped and filtered properties (in any order) followed by the measure: two single-row reads per group, tracked like any read, so they stay exact under inserts, updates and deletes.not_indexed: no enabled index orders the measure under exactly those properties, somin/maxare null;indexlists the fields of one that would (the properties, then the measure). Counts and sums are unaffected.scope: calendar or range totals cannot use two point probes for exact extremes; no index declaration is suggested.bound: the rows those reads fetch would pass the engine’s 4 MiB bound;min/maxare null.
AppTimeAxis
Ƭ AppTimeAxis:Object
Calendar buckets of one date dimension: UTC-aligned (weeks start on
Monday), closed-open, in the property’s own representation, so a bucket
selects exactly as a between [from, to) predicate. The unit is the
requested one or the first wider one whose span fits 60 buckets.
Type declaration
AppTimeTransform
Ƭ AppTimeTransform: {kind: "cumulative" } | { kind: "rolling" ; buckets: number } | { kind: "change" ; against: "previous" | "year" }
Presentation over a complete time axis; no additional read.
AppAggregateRefusal
Ƭ AppAggregateRefusal:"not_declared" | "visibility" | "building" | "groups" | "compacting" | "overflow" | "inexact_measure" | "inexact_dimension" | "pending_value" | "inconsistent"
The closed reasons the engine gives for not serving a maintained total
(1.0/apps/aggregate). not_declared: no declared aggregate covers the
request; visibility: the collection has a read rule and the covering
aggregate is not declared collectionReaders; building: its records are
still being counted; groups: more groups than the answer reads — a
grouping whose groups each occupy one run of the aggregate’s key order (every
property declared before the last grouped one is grouped or filtered by
equality, and no filtered property follows an unfiltered one) is read in
up to 16 pages of at most 256 keys each (a group holds one key per value of
the aggregate’s later properties) and is groups at a group of more than
256 keys, and any other grouping past 256 non-empty keys;
compacting: one page’s keys hold more than 4,096 terms the engine has
not folded yet, so this answer is read from rows until it catches up;
overflow: an int64 sum does not fit int64, or a decimal sum exceeds 38
digits, for this answer only — the aggregate stays maintained and serves
again once the rows’ total fits; inexact_measure, inexact_dimension,
pending_value, inconsistent: the aggregate is unavailable until its
next rebuild.
AppSummaryIncomplete
Ƭ AppSummaryIncomplete: {kind: "bound" ; aggregate: { by: string[] ; sum: string[] ; decimal?: Record<string, number> ; time?: { field: string ; unit: AppTimeUnit } } | null ; refused: AppAggregateRefusal | null } | { kind: "related" } | { kind: "region" } | { kind: "nearest" } | { kind: "time_span" } | { kind: "time_value" } | { kind: "source_result" }
Why a summary returned no count, for a surface to show what would make it
exact.
bound: the read could not finish within its matching-object or visited-row budget (limit; 0 when the collection’s AppReadCost gives this ordering no bound). The limit is not a lower bound on matching objects.aggregateis the declaration,defineTable(...).aggregate(name, { by, sum }), that would answer this scope exactly at any size, or null when no aggregate can cover it (a search, selection, condition group, related clause, predicate other than equality, or more than four grouped and filtered properties).refusedis why a declared covering aggregate did not answer, or null when none was asked.related: a relationship clause admits more candidates than its bound, or a clause tested object by object (AppRelationFilter) met more than 100 objects, an object it could not decide within APP_LINK_PROBE_LINKS links, or the end of the read budget; narrow the filters.region: the region (within) admits more objects than one read may resolve and no maintained total answers it (see AppSummarymaintained), or its spatial index could not read its whole cover within the query’s read budget; draw a smaller one or add filters. A browse pages any region to its end instead.nearest: the nearest objects the view’s filters admit lie beyond the objects one read may rank (nearest); narrow the filters or the distance.time_span: the dates need more than 60 calendar years, or widening would split a stored bucket across requested buckets.time_value: a date value cannot be placed in a bucket exactly (outside the exact millisecond range, or text that is not a normalized UTC instant).source_result: a virtual table’s answer has more groups, or more bytes, than one source answer carries (limitrows); add filters or group by a property with fewer values.
AppVirtualSummary
Ƭ AppVirtualSummary:Object
A summary of a virtual table: one statement its source executed, at the
moment received_at this deployment received the complete answer. It is an
observation, not a subscription: the source does not notify changes, so a
reader asks again to refresh. basis names where the statement ran and
plan how; both are null exactly when no complete answer was received
(an incomplete source_result summary). summary.path is source.
Type declaration
FacetUnavailableReason
Ƭ FacetUnavailableReason: {kind: "unsupported_type" } | { kind: "too_many_values" ; limit: number } | { kind: "unrepresentable_range" } | { kind: "capacity" } | { kind: "source_failure" ; error: AnswerErrorData }
Value counts of a virtual table’s first eight declared dimensions, and its
date and int64 numeric histograms, as a native facet read counts them: each
over the scope less that dimension’s own eq, in and between
conditions. Each dimension has its own population; one with more than 32
values is omitted, not truncated, as natively. The date histogram counts
days (months past one answer’s days) at the source and lies on the native
axis; a numeric histogram reads its exact extremes, then counts by the
native step. A float64 dimension’s histogram is withheld: the source has no
exact float comparison. Like a summary it is an observation received at
received_at, not a subscription.
FacetResult
Ƭ FacetResult<T>: { kind: "ready" ; value: T } | { kind: "not_requested" } | { kind: "unavailable" ; reason: FacetUnavailableReason }
Ready includes exact empty data. Refusal is never represented as zero.
Type parameters
VirtualHistogram
Ƭ VirtualHistogram: {kind: "date" ; histogram: AppFacetHistogram | null } | { kind: "integer" ; histogram: AppFacetNumericHistogram | null }
AppVirtualFacets
Ƭ AppVirtualFacets:Object
Type declaration
AppVirtualRowsView
Ƭ AppVirtualRowsView:Pick<AppView, "collection" | "filters" | "analysisFilters" | "filterMode" | "groups" | "orderBy" | "order" | "columns"> & { asOf?: string }
The rows of a virtual table a workspace table shows: the view’s scope, its
columns, and its sort. Sorted, a read keeps the first 65,536 rows of that
order; unsorted, the source refuses a scope of more rows. A source field is
never missing: is_empty selects its NULLs. A declared date dimension
compares its day’s UTC midnight exactly, and a relative range the days it
selects on asOf, as for a native read. Search, fixed selections,
relationship and spatial filters, text containment and list conditions are
refused, never approximated.
AppVirtualPlan
Ƭ AppVirtualPlan:Object
The statement a view of a virtual table means, as the relational
expression’s JSON. A summary’s layout names which grouped fields and
measures its rows hold; a table’s is null.
Type declaration
AppRequester
Ƭ AppRequester: {kind: "service" ; label: string ; service: string ; is_you: boolean } | { kind: "member" ; label: string ; is_you: boolean } | { kind: "delegate" ; label: string ; client_label: string ; is_you: boolean } | { kind: "system" ; is_you: boolean }
Who made an accepted request, recorded by the engine when it accepted it.
label is a display snapshot of the requester’s sign-in claims (name, else
email, else preferred username, else subject), the same derivation
AppAccessRequestPerson uses. It is never identity and never a
workspace person’s name. A delegate is a person’s delegation to agent,
labelled with that person. is_you compares the reader with the recorded
caller now, not the label.
AppSharedReviewState
Ƭ AppSharedReviewState:Object
What another requester’s row discloses of its review: the kind only, never
an approval, approver, beneficiary or refused external call.
Type declaration
AppActivity
Ƭ AppActivity:Object
One accepted request. Without a target, activity lists the reader’s own
requests. With one, it lists the object’s requests the reader may see:
their own, and other people’s through an operation that declares
activity: "shared" both now and when the request was accepted, to a reader
who may read the object and holds read on the operation.
Type declaration
AppActivityPage
Ƭ AppActivityPage:Object
Type declaration
AppFilter
Ƭ AppFilter:Object
A typed predicate. in/not_in carry an array of 1–32 values;
is_empty/is_not_empty carry null; between carries exactly two bounds
[from, to] of the property’s own type and means the closed-open range
from <= value < to. between is admitted only on a declared
dateDimensions or
numericDimensions property. On a numeric dimension
one bound may be null for an open side ([from, null] is from <= value,
[null, to] is value < to); an object without the property never matches
a range. An inclusive maximum is written as the exclusive bound
appInclusiveUpperBound returns.
contains: a text property (a string, or a union with a string member) holds the value, 1–128 characters, ignoring case; a missing, null or non-text value never contains.has_any/has_none: a list property holds at least one / none of 1–32 exact element values (an int641nis never the float641). A missing list holds none.relative: an AppRelativeRange on a declared date dimension, saved as written and resolved to thebetweenit means on the UTC day a read names (asOf, see appRelativeBounds).
contains, has_any and has_none are evaluated over the rows the native
read returned (the same rows, so the same dependencies), so a page holding
them may end short with budget (AppPageEnd). Search Around hops
and an object’s related records (where) refuse these four operators.
Type declaration
AppRelativeUnit
Ƭ AppRelativeUnit:"day" | "week" | "month"
AppRelativeRange
Ƭ AppRelativeRange:Object
A date range relative to the day it is read on, in whole UTC calendar units:
0 is the unit holding that day (the day itself, its Monday-to-Sunday week,
its month), -1 the one before. from is the first unit in the range and
to the last, inclusive; null leaves that side open, never both. Each
offset is an integer within ±3660, and from <= to.
“Last 7 days” is { unit: "day", from: -6, to: 0 }, “Last month”
{ unit: "month", from: -1, to: -1 }, “Before today”
{ unit: "day", from: null, to: -1 }.
Type declaration
AppFilterGroup
Ƭ AppFilterGroup:Object
Conditions combined by match: its filters and its spatial clauses
(within, each a region over one of spatial_indexes
related by one of its modes, disjoint as the negation of intersects).
A view holds at most APP_SPATIAL_CLAUSES spatial clauses in all,
its own within included. A group’s spatial clause is
tested on each object the view reads with its index’s own predicate; when
the view has no within of its own and no nearest or relationship clause,
an all group’s clause (or the only member of an any group) also reads
the view’s candidates through its index.
Type declaration
AppRelationFilter
Ƭ AppRelationFilter:Object
A relationship clause: keep the objects with at least one (has: "some",
the default) or with no (has: "none") linked object of relation that
matches all of filters (0 to 8 conditions; with none, any linked object
counts) and, with within, relates to a region by a geometry property of
the linked collection with a spatial index (decided by that index). A
view holds at most APP_RELATION_CLAUSES.
A clause whose conditions include an eq on an indexed property of the
linked collection reads its matching linked objects once (at most 128) and
keeps the objects they link to, or all others; so does a clause with
within, reading the linked objects its region holds through the linked
collection’s spatial index (at most APP_LINK_JOIN_CANDIDATES,
further bounded by bytes, linking reads and read-access subjects). Any other clause tests each
object’s own links as the object is read: at most
APP_LINK_PROBE_LINKS links of one object per clause, so an object
with more links none of which match refuses the read by name, and a summary
or facet read tests at most 100 objects (beyond that it is incomplete,
related). A clause without such an equality or region cannot be combined
with a region or nearest objects.
Type declaration
AppSearchHop
Ƭ AppSearchHop:Object
One hop of a Search Around: a declared relation of the previous hop’s
collection (a reference, incident record or opposite endpoint), the filters its targets
must all match and, with within, the region a geometry property of the
targets relates to, decided by the target collection’s spatial index (an
object region is read with the caller’s point read).
Type declaration
AppSearchAround
Ƭ AppSearchAround:Object
One starting object’s Search Around, read at one basis under the caller’s
authority. A denied dependent read refuses the whole answer, including a
relation range; unavailable retained identities remain explicit entries.
Each hop lists the distinct objects of collection that matched its where,
each with the ids of the previous hop’s objects (or the starting object)
that reached it. is_complete is true only when the previous hop was
complete and every range and reference this hop needed was read and tested
within the bounds; otherwise more objects may match. It is never a total
across starting objects.
Type declaration
AppSearchAroundStop
Ƭ AppSearchAroundStop:"budget" | "bound" | "previous"
AppObjectLabel
Ƭ AppObjectLabel:Object
Type declaration
AppSearchGroup
Ƭ AppSearchGroup:Object
One searchable type’s answer to the workspace search query.
objects are the type’s best matches in its search order, at most the
call’s limit. is_complete is false when more objects matched, or when
the read budget stopped the read first: objects.length is then a lower
bound, and an incomplete group with no objects was not counted at all. A
count is never extrapolated.
Type declaration
AppPointRead
Ƭ AppPointRead: {id: string ; kind: "object" ; object: AppObject } | { id: string ; kind: "absent" } | { id: string ; kind: "restricted" }
One identifier’s answer from a restrictable point read: the workspace’s
getMany query, or getMany in a program’s own query.
object: the object, exactly asdb.getreturns it.absent: there is no such object. Only a caller whose authority covers the whole relation is told so, because an absent identifier is a demand on the whole relation.restricted: the engine refused this read for the caller. The object may exist and be unreadable, may never have existed, or may have been erased; nothing says which, and nothing says why.
AppView
Ƭ AppView:Object
Persistable query definition; object selection and paging are separate.
Type declaration
AppFavorite
Ƭ AppFavorite: {kind: "app" ; id: string } | { kind: "object" ; collection: string ; id: string } | { kind: "view" ; id: string } | { kind: "graph" ; id: string } | { kind: "map" ; id: string }
One favorite in a member’s preferences: a private pointer, kept in the
order it was added. It holds no title and grants nothing: every surface
re-reads what it points at under the reader’s current rules, and one that
no longer resolves is shown as unavailable and stays removable.
app: another app of the workspace directory, by its id.object: an object of an exposed collection that is not a connection.view,graph,map: a saved view, graph or map by the id AppWorkspaceState lists it under (a declared map template’sprogram:<id>too).
savePreferences checks an entry when it is added: an app id is 1 to 64
lowercase letters, digits or - starting with a letter, an object’s
collection is exposed to the caller and its id is one of that collection’s,
and a saved item’s id is one of the state table’s.
AppWorkspaceState
Ƭ AppWorkspaceState:Object
Ordinary customer-owned workspace state.
views and graphs hold the caller’s own saved items, then the ones
other members share with every member, then the ones shared with the
caller by name, each once with the caller’s AppSavedAccess (the
stronger role wins). A shared item is listed only while its owner still
passes the application’s authorize callback. A saved view never holds an
object selection (ids): saveView refuses one, and a fixed selection is
kept as a list. shared_is_complete is false when more shared views,
graphs, maps or named grants exist than one read returns, or than one
query checks the owners of; the most recently created or granted are
listed.
Type declaration
AppGraph
Ƭ AppGraph:Object
A saved relationship graph: object identities, integer positions, edge
facts and how the graph presents them — never titles, property values or
row content. Reopening re-reads every node and edge under the reader’s
current permissions.
Its presentation is per-type styles (properties to colour, label and badge
nodes by, and the date their timeline places them by), notes its owner
wrote and named groups; see apps/graph. Notes are the owner’s own words,
shown as written to whoever the graph is shown to.
Collection and field names are stored once, in strictly increasing
code-unit order, and referred to by index, so the encoding is canonical and
removing a node or an edge never lengthens it. Every array is present. There
is no version field: a changed shape is a hard cutover.
Type declaration
AppSavedGraph
Ƭ AppSavedGraph: {id: string ; name: string ; revision: number ; graph: AppGraph } & AppSavedAccess
A saved graph the caller may open: their own, or one shared with them.
AppBrowseArgs
Ƭ AppBrowseArgs:Pick<AppView, "collection" | "filters" | "analysisFilters" | "filterMode" | "groups" | "related" | "linked" | "ids" | "orderBy" | "search" | "order" | "within" | "nearest"> & { fields?: string[] ; asOf?: string ; paginationOpts: { cursor: string | null ; numItems: number ; endCursor?: string | null } }
AppAnalysis
Ƭ AppAnalysis:AppPage & { summary: AppSummary | null ; percentileSummary?: AppSummary ; basis: bigint }
A page and optional grouped summary evaluated in one ordinary query.
basis is that evaluation’s engine revision in nanoseconds, not source
freshness or a capability to read history. Reactive clients keep results
valid at their current snapshot; independent HTTP calls use new bases.
AppAnalysisArgs
Ƭ AppAnalysisArgs:Omit<AppSummaryArgs, "groupBy"> & { groupBy?: string ; paginationOpts: AppBrowseArgs["paginationOpts"] }
AppSummaryArgs
Ƭ AppSummaryArgs:Omit<AppBrowseArgs, "paginationOpts"> & { groupBy?: string ; cells?: AppCellGrouping ; bucket?: AppTimeUnit ; pivotBy?: string ; measure?: string ; sums?: string[] ; percentiles?: number[] ; top?: number }
AppFacetsArgs
Ƭ AppFacetsArgs:Omit<AppBrowseArgs, "paginationOpts"> & { histogram?: string }
Facets describe the same query scope a table or chart shows, not the whole
object type. The caller names an optional date dimension to bucket.
AppFacetHistogram
Ƭ AppFacetHistogram:Object
A bucketed distribution of one declared date dimension over the current
query scope, excluding that property’s own range predicate. Bucket bounds are
UTC-aligned, closed-open, and expressed in the property’s own representation
so selecting a bucket writes exactly one between predicate.
Type declaration
AppFacetNumericHistogram
Ƭ AppFacetNumericHistogram:Object
A bucketed distribution of one declared numeric dimension over the current
query scope, excluding that property’s own between predicate.
Buckets are closed-open, contiguous and at most 60, and every bound is a
multiple of one step of 1, 2 or 5 times a power of ten, in the property’s own
representation: computed on bigint for an int64, never through floating
point, and for a float64 the float64 nearest that exact decimal, each
checked against the values by exact comparison. Selecting a bucket writes
exactly one between predicate that selects the objects it counted. min
and max are the exact smallest and largest values counted. The histogram is
withheld (absent) rather than rounded when no such bucketing exists: a value
of another type, a non-finite float, no present value, or a bound outside the
type’s range.
Type declaration
AppFacets
Ƭ AppFacets:Object
Counts for the current query scope. Each dimension’s count excludes that
dimension’s own facet predicate, so selecting one value does not zero its
siblings. path names what answered, as for AppSummary: maintained
totals when every counted dimension has a covering declared aggregate and
the collection has no date or numeric dimension to bucket, otherwise complete bounded
native reads. When any read is incomplete no counts are returned at all and
the caller falls back to the declared values.
Type declaration
AppLinkRecordsArgs
Ƭ AppLinkRecordsArgs:Object
Type declaration
AppNoticeRoute
Ƭ AppNoticeRoute:Object
Where a page notice opens: the route parameters of that workspace page, the
same ones its own links carry. tab is a kebab-case identifier; every
other value is an opaque non-empty string the page interprets (an item id,
an encoded view), at most APP_NOTICE_ROUTE_MAX characters.
Type declaration
AppNoticeSubject
Ƭ AppNoticeSubject: {kind: "object" ; collection: string ; id: string ; title: string ; tab?: string ; detail?: string } | { kind: "page" ; page: string ; route: AppNoticeRoute ; title: string }
What a delivered notice is about, resolved under the reader’s current reads.
object: an object of an exposed collection, titled by its title property.tabnames the object view tab the notice opens, anddetailthe item on it (the event itself, for a collection-backed category that declares a tab).page: a workspace page, a feature destination or a native page, by its kebab-case id, with the route it opens and a title its category resolved.
AppNotification
Ƭ AppNotification:Object
A delivered notice resolves its content under current object permissions.
event is the occurrence reference its category resolves; a category and an
event identify one occurrence.
Type declaration
AppNotificationPage
Ƭ AppNotificationPage:Object
A page may hold fewer notifications than requested while isDone is false:
resolving each notification’s event and object counts against the query’s
read bound (end: "budget", at most 32 rows per query), and unavailable
targets are omitted. Continue from continueCursor; no notification is
skipped.
Type declaration
AppRequestablePermission
Ƭ AppRequestablePermission:"invoke" | "preview"
The permissions a member may request on an operation they can see.
read is the precondition of asking; reviewer authority (grant) is set
only by a deployment administrator.
AppAccessRequestStatus
Ƭ AppAccessRequestStatus:"pending" | "approved" | "rejected" | "withdrawn"
Where an access request stands; every status but pending is final.
AppAccessRequestPerson
Ƭ AppAccessRequestPerson:Object
A person as an access request names them. label is a display snapshot
of their sign-in claims, never identity.
Type declaration
AppAccessRequest
Ƭ AppAccessRequest:Object
One access request as a caller who may see it reads it: their own, or one
on an operation they currently hold reviewer authority for.
Type declaration
AppAccessRequestPage
Ƭ AppAccessRequestPage:Object
The access requests one caller may see among the app’s exposed operations:
every pending one first, then the newest decided ones, at most 200.
Nothing here is a total beyond what was read.
Type declaration
AppAccessRequestAction
Ƭ AppAccessRequestAction: {action: "resource" ; requests: { component?: string ; table: string } ; update: ResourceAccessRequestUpdate } | { action: "create" ; operation: { component?: string ; operation: string } ; permission: AppRequestablePermission ; reason: string } | { action: "withdraw" ; id: string } | { action: "acknowledge" ; id: string } | { action: "decide" ; id: string ; decision: "approve" | "reject" ; comment: string }
The one write into access requests, sent to the deployment’s native
POST /api/access_requests with the caller’s own token. No function runs
in that path, so no program can file or decide a request on someone’s
behalf; the engine rechecks the request’s state and the caller’s current
authority, and an approval writes exactly the requested grant.
ResourceAccessRequestUpdate
Ƭ ResourceAccessRequestUpdate: {action: "create" ; resource: ResourceAccess ; reason: string } | { action: "decide" ; id: string ; decision: "approve" | "reject" ; comment: string } | { action: "withdraw" ; id: string } | { action: "acknowledge" ; id: string }
Native writes for the access model’s declared resource request table.
beneficiary is the workspace person ID; signing in grants no role.
AppAccessRequestReceipt
Ƭ AppAccessRequestReceipt:Object
What an accepted access request write answers.
Type declaration
ResourceRequestsTable
Ƭ ResourceRequestsTable:Object
The access model’s declared requests table, and its component when a
component’s model declares it.
Type declaration
AppIntegrationFailureReason
Ƭ AppIntegrationFailureReason:"authentication" | "signature" | "insufficient_scope" | "throttled" | "transport" | "capacity" | "source_busy" | "unavailable" | "invalid_response" | "invalid_result" | "work_limit" | "stuck"
A shared-schedule failure class.
AppSourceCause
Ƭ AppSourceCause:"credential_rejected" | "credential_expired" | "access_refused" | "scope_missing" | "signature_rejected" | "credential_invalid" | "connection_required" | "revocation_pending" | "provider_disabled" | "connection_forbidden" | "address_refused" | "throttled" | "provider_unavailable" | "engine_busy" | "unexpected_status" | "response_invalid" | "result_invalid" | "reinstall_required" | "definition_changed" | "migration_required" | "history_lost" | "source_unsupported" | "read_rule_required" | "bound_exceeded" | "source_disabled" | "inspection_only" | "gateway_mismatch" | "work_fenced" | "dataset_erasing" | "refresh_unsettled" | "engine_incompatible" | "engine_error"
The repair class a shared schedule’s interruption recorded: finer than its
failure class, which several repairs share.
AppPostgresBlockReason
Ƭ AppPostgresBlockReason:"stopped" | "repair_requested" | "continuity_lost" | "source_ahead" | "source_identity_changed" | "schema_changed" | "capacity" | "publication_changed" | "invalid_evidence" | "unsupported_source"
Why a shared PostgreSQL stream is blocked.
AppPreparation
Ƭ AppPreparation:Object
One unpublished preparation of a relation: closed words and two engine
revisions. A refusal’s reason is withheld.
Type declaration
AppDependencySource
Ƭ AppDependencySource:Object
One installed source of a source-owned table, as its rows’ readers may see
it. Wall-clock instants are exact epoch milliseconds; published_at is an
engine revision. None of them is business valid time, and none proves the
source has no newer changes.
Type declaration
AppDependencyStatus
Ƭ AppDependencyStatus:Object
Status of one exposed collection’s declared dependencies, read under the
demands of the rows it describes. A caller who may not read those rows
receives the engine’s Read access was refused instead of a result.
Type declaration
AppSyncRun
Ƭ AppSyncRun:Object
One sync of a source: one scheduled occurrence of its acquisition, with
what it ADMITTED (never a diff of the served table). Counts and instants
are exact bigints; started_at, ended_at and observed_to are epoch
milliseconds and published_at is an engine revision.
Type declaration
AppAcquisitionHistory
Ƭ AppAcquisitionHistory:Object
A component-retained acquisition report window; sequences are exact and
missing native observations or product retention never imply completeness.
Type declaration
AppConnectionCheck
Ƭ AppConnectionCheck:Object
A connection’s check as one reader may see it: the last result for the
connection’s current configuration, and when the reader’s OWN pending
request was made. Nobody learns of another person’s request.
Type declaration
AppSourceRuns
Ƭ AppSourceRuns:Object
One installed source of a synced collection with its syncs.
Type declaration
AppSourceRunsPage
Ƭ AppSourceRunsPage:Object
The sync history of one synced collection, read under the same demands as
its AppDependencyStatus: a caller who may not read its rows receives
the engine’s Read access was refused instead of a result.
Type declaration
AppSourceRefreshReceipt
Ƭ AppSourceRefreshReceipt:SourceControlReceipt & { outcome: Extract<SourceControlOutcome, { kind: "requested" | "joined" }> }
The immutable acceptance of an application refresh action.
AppConnectionCheckRequest
Ƭ AppConnectionCheckRequest:Object
A recorded connection check request, bound to the caller. Execute it with
runConnectionCheck.
Type declaration
AppConnectionCheckResult
Ƭ AppConnectionCheckResult:Object
A connection check’s result. checked_at is epoch milliseconds.
Type declaration
AppResourceRef
Ƭ AppResourceRef:Extract<ResourceRef, `collection:\{string}\` \| \`operation:{string}` | `function:\{string}\`\> \| \`producer:{string}` | `capability:${string}`
A deployment-relative address. References never convey read or execution authority.
AppResourceField
Ƭ AppResourceField:Object
Type declaration
AppResourceRow
Ƭ AppResourceRow:Object
Type declaration
AppResourceCell
Ƭ AppResourceCell:AppResourceRow & { field: string }
AppHealthOutcome
Ƭ AppHealthOutcome:"passed" | "failed" | "unknown"
AppHealthDimension
Ƭ AppHealthDimension:"availability" | "freshness" | "completeness" | "quality" | "continuity" | "progress"
AppHealthAssessment
Ƭ AppHealthAssessment:Object
Type declaration
AppHealthEvidence
Ƭ AppHealthEvidence: {kind: "source_status" ; source: string ; checked_at: bigint } | { kind: "health_observation" ; source: string ; sequence: bigint ; generation: bigint ; contract_revision: string } | { kind: "expectation_verdict" ; source: string ; objective_key: string ; definition_digest: string ; revision: string } | { kind: "publication" ; revision: string }
AppSourceHealthObservation
Ƭ AppSourceHealthObservation:Object
A source-owner observation, released only for the requested collection.
Type declaration
AppSourceHealthHistory
Ƭ AppSourceHealthHistory:Object
Type declaration
AppHealthArgs
Ƭ AppHealthArgs:AppInspectionArgs & { source?: string ; after_sequence?: bigint ; through_sequence?: bigint ; generation?: bigint ; contract_revision?: string ; limit?: number }
AppResourceHealth
Ƭ AppResourceHealth:Object
Type declaration
AppResourceMonitorLiveness
Ƭ AppResourceMonitorLiveness:Object
A fresh server-side probe of retained monitor progress, not a source reading.
Type declaration
AppResourceEdge
Ƭ AppResourceEdge:Object
Type declaration
AppResourceUsage
Ƭ AppResourceUsage:Object
Consumer declarations supplement compiler-derived dependencies; they attest no runtime read.
Type declaration
AppInspectionMetadata
Ƭ AppInspectionMetadata:Object
Operational documentation. These roles and links grant no authority.
Type declaration
AppResourceSummary
Ƭ AppResourceSummary:Object
Type declaration
AppInspectionContext
Ƭ AppInspectionContext:Object
Type declaration
AppInspectionArgs
Ƭ AppInspectionArgs:Object
Type declaration
AppPipelineVersionSelection
Ƭ AppPipelineVersionSelection:Object
Type declaration
AppPublicationInputEvidence
Ƭ AppPublicationInputEvidence: {kind: "unknown" ; reason: "not_published" | "not_retained" | "not_certified" } | { kind: "captured_inputs" ; inputs: { resource: AppResourceRef ; read_revision: string ; scope: "collection" | "source" ; observed_from: string | null ; observed_to: string | null }[] ; is_complete: boolean }
Evidence retained by the publication owner with the output commit. Captured
inputs attest neither the producer’s actual reads nor row contributions.
AppRecordedLineage
Ƭ AppRecordedLineage:Object
Type declaration
AppExplainSelection
Ƭ AppExplainSelection: {kind: "publication" } | { kind: "versions" ; cursor?: string } | { kind: "pipeline_version" ; selection: AppPipelineVersionSelection } | { kind: "field" ; field: string } | { kind: "health_observation" ; source: string ; sequence: bigint ; generation: bigint ; contract_revision: string }
AppNativeExplainSelection
Ƭ AppNativeExplainSelection: {kind: "value" ; object: string ; field: string ; revision?: string } | { kind: "view_row" ; object: string ; revision?: string }
Native provenance pins an engine revision independently of definition context.
AppNativeExplanation
Ƭ AppNativeExplanation:Object
Type declaration
AppExplainArgs
Ƭ AppExplainArgs:AppInspectionArgs & { explanation: AppExplainSelection }
AppResourceExplanation
Ƭ AppResourceExplanation: {kind: "versions" ; resource: AppResourceSummary ; context: AppInspectionContext ; items: { selection: AppPipelineVersionSelection ; execution_id: string ; execution_ordinal: number ; definition_digest: string }[] ; next_cursor: string | null } | { kind: "publication" ; resource: AppResourceSummary ; context: AppInspectionContext ; served_revision: string | null ; evidence: AppPublicationInputEvidence ; unproved: string[] } | { kind: "pipeline_version" ; resource: AppResourceSummary ; context: AppInspectionContext ; lineage: AppRecordedLineage } | { kind: "field" ; resource: AppResourceSummary ; context: AppInspectionContext ; trace: AppFieldTrace } | { kind: "health_observation" ; resource: AppResourceSummary ; context: AppInspectionContext ; source: string ; observation: AppSourceHealthObservation }
AppLineageArgs
Ƭ AppLineageArgs:AppInspectionArgs & { direction?: "upstream" | "downstream" | "both" ; field?: string ; limit?: number ; cursor?: string ; mode?: "declared" | "usage" | "recorded" ; selection?: AppPipelineVersionSelection ; to?: AppResourceRef }
AppInspectionCapability
Ƭ AppInspectionCapability: {is_supported: true } | { is_supported: false ; reason: "unsupported_resource" | "evidence_not_recorded" }
AppResourceInspection
Ƭ AppResourceInspection:Object
Type declaration
AppResourceLineage
Ƭ AppResourceLineage:Object
Type declaration
AppFieldTrace
Ƭ AppFieldTrace:Object
Type declaration
AppInspectionSelection
Ƭ AppInspectionSelection:AppExplainSelection | AppNativeExplainSelection | { kind: "lineage" ; mode: "declared" | "usage" | "recorded" ; direction: "upstream" | "downstream" | "both" ; field?: string ; to?: AppResourceRef ; selection?: AppPipelineVersionSelection }
InspectionQuery
Ƭ InspectionQuery: {kind: "inspect" ; args: AppInspectionArgs } | { kind: "lineage" ; args: AppLineageArgs } | { kind: "health" ; args: AppHealthArgs } | { kind: "explain" ; args: AppExplainArgs } | { kind: "explain" ; args: AppInspectionArgs & { explanation: AppNativeExplainSelection } }
Pure descriptions of inspection reads. A selection carries no authority.
InspectionValue
Ƭ InspectionValue<Query>: Query extends { args: { explanation: AppNativeExplainSelection } } ? AppNativeExplanation : { inspect: AppResourceInspection ; lineage: AppResourceLineage ; health: AppResourceHealth ; explain: AppResourceExplanation }[Query["kind"]]
Type parameters
WatchableInspectionQuery
Ƭ WatchableInspectionQuery:Exclude<InspectionQuery, { args: { explanation: AppNativeExplainSelection } }>
Current application evidence can be watched. Native value proofs select an
immutable revision and use an explicit read.
Resource
Ƭ Resource:AppResourceRef | { ref: AppResourceRef ; id?: string }
Not exported: an exported type refers to it.
AppLineageRef
Ƭ AppLineageRef: {kind: "collection" ; name: string } | { kind: "producer" ; name: string } | { kind: "operation" ; operation: string ; component?: string } | { kind: "capability" ; id: string }
A node a capability report names. A collection is named by its exposed
name (a capability naming one of its own inputs by a table name the
application does not expose is not drawn), a producer by its published
producer name, an operation by its
contract’s module:export (and the declaring component, for a component
operation), and a capability by its exposed feature id.
AppLineageNodeState
Ƭ AppLineageNodeState:Object
What a capability reports about one node it owns.
label is the word drawn on the node and title the sentence behind it.
build puts the state in the Build colouring. staleness puts it in the
Staleness colouring: stale only for a declared freshness target the
capability evaluated and found missed, pending for recorded outstanding
work. A report never states that data is current.
Type declaration
AppLineageReport
Ƭ AppLineageReport:Object
One capability’s lineage report. restricted counts the capability’s own
nodes the caller may not read, which are left out rather than drawn empty;
isComplete is false when the capability left anything else out.
Type declaration
AppColumnRef
Ƭ AppColumnRef:Object
A field of an exposed collection a view reads directly.
Type declaration
AppColumnDerivation
Ƭ AppColumnDerivation:"copied" | "computed" | "grouped" | "count" | "sum" | "decimal_sum" | "count_distinct" | "percentile" | "minimum" | "maximum" | "average"
How a view output field is derived: the input field unchanged, a scalar
expression over input fields, a grouping key, or an aggregate.
AppViewColumn
Ƭ AppViewColumn:Object
One output field of a view with an explicit derivation, and the fields of
exposed inputs it reads, sorted (at most 8). A field of an input the
application does not expose is never named; from may then be empty.
Type declaration
AppColumnPassthrough
Ƭ AppColumnPassthrough: {collection: string ; under: string | null } | { collection: null ; under: string }
Every field of an input appears in the view unchanged: at the top level
(under: null) or beneath the named output field. An input this reader
cannot see is never named: one passed through beneath an output field keeps
only that field (collection: null), which the view’s own fields already
show, so its fields are never read as another input’s; one passed through
at the top level is not listed.
AppViewColumns
Ƭ AppViewColumns:Object
A view’s declared column lineage, derived by the engine from the admitted
declaration and restricted to the inputs this reader can see: it never
names an unexposed table or a collection withheld from the reader (by
discovery admission or the application’s readable), and never a filter’s
literal values. It is what the declaration
says, not which input rows contributed to a value. A scan of another view
stops at that view, which is an input collection of its own.
Type declaration
AppLineageMode
Ƭ AppLineageMode:"data" | "workflow"
Which tab of the Dependencies page a lineage shows.
AppLineageColour
Ƭ AppLineageColour:"issues" | "build" | "staleness"
How a lineage colours its nodes.
AppLineage
Ƭ AppLineage:Object
A saved lineage: the Dependencies page as its member left it. subject is
an exposed collection, or null for the whole application; focus is the
selected node’s id (see appLineageNodeId; integrations are
integration:<integration>/<collection>); search is the search text.
Type declaration
AppSavedLineage
Ƭ AppSavedLineage:Object
A saved lineage with current workspace sharing access.
Type declaration
AppRenderBox
Ƭ AppRenderBox:Object
A box in WGS84 degrees. west > east crosses the antimeridian: it is
read as its two halves.
Type declaration
AppMapLayerObjectsArgs
Ƭ AppMapLayerObjectsArgs:Object
Type declaration
AppMapLayerObjects
Ƭ AppMapLayerObjects: {kind: "objects" ; map: { id: string ; name: string ; revision: number } ; layer: AppMapLayer ; collection: AppCatalog["collections"][number] ; objects: AppObject[] } | { kind: "refused" ; code: "unauthenticated" | "forbidden" | "not_found" | "unrenderable" | "too_large" ; message: string }
The layer, its object type as the caller’s catalog lists it, and every
object of its scope the caller may read (each once, in scope order), or
the refusal of a request the render cannot answer: unauthenticated (no
signed-in caller), forbidden (the program’s authorization refuses the
caller), not_found (a saved map the caller may not open, answered as
savedMap answers it whether or not it exists; no such layer; or its
object type is not readable), unrenderable (not an
objects layer, a template’s parameters, a field that is not drawn
geometry, a box beside a scope that cannot take one) or too_large
(more than MAP_RENDER_OBJECTS objects or
MAP_RENDER_BYTES, or past one query’s read budget). Every
refusal is data, so a caller such as an HTTP action reads its reason
whatever the engine withholds of a thrown error.
AppMapTile
Ƭ AppMapTile: {data: ArrayBuffer ; contentType: string } | { refused: string } | null
What the mapTile action answers a member: the tile’s bytes and content
type; null when the provider has no tile there (drawn transparent); or why
this tile cannot be served (the basemap is not one the deployment serves,
there is no such tile, the key is not configured, or the provider failed or
answered something else than one raster image of at most
APP_MAP_TILE_BYTES), never naming the provider’s URL or key.
AppBasemap
Ƭ AppBasemap: {kind: "none" } | { kind: "raster" ; tiles: string ; tileSize: 256 | 512 ; maxZoom: number ; attribution: string ; license: string } | { kind: "style" ; url: string ; attribution: string ; license: string }
A background map. none draws data on a plain background and needs no
network; raster is an XYZ tile template; style a MapLibre style
document URL.
AppBasemapOption
Ƭ AppBasemapOption:Object
One basemap a member may choose.
Type declaration
AppOverlaySource
Ƭ AppOverlaySource: {kind: "geojson" ; data: string } | { kind: "geojsonUrl" ; url: string } | { kind: "vectorTiles" ; tiles: string ; sourceLayer: string ; minzoom: number ; maxzoom: number ; attribution: string } | { kind: "rasterTiles" ; tiles: string ; tileSize: 256 | 512 ; minzoom: number ; maxzoom: number ; opacity: number ; resampling: "linear" | "nearest" ; attribution: string } | { kind: "glStyle" ; style: string } | { kind: "archive" ; archive: string }
What an overlay layer draws.
AppOverlayKind
Ƭ AppOverlayKind:AppOverlaySource["kind"]
AppMapArchiveStatus
Ƭ AppMapArchiveStatus:Object
A declared map archive as the layer editor shows it
(mapArchiveStatus). recorder says who records its versions: the
program’s own tile (program: an administrator tiles the newest
published version, tileMapArchive, and the archive follows the next
publications), or, for an archive that declares no tile, an external
producer holding a producer grant for its dataset (producer). drawn
is the version recorded now (a producer names its own version label) and
newest the dataset’s newest published version. follows, whether the
caller may tile (administers) and the latest run with the reason it was
left unrecorded describe the program’s tiling: false, false and null for
a producer-recorded archive.
Type declaration
AppOverlayLayer
Ƭ AppOverlayLayer:Object
Type declaration
AppSavedOverlay
Ƭ AppSavedOverlay:Object
One saved overlay layer as its reader may open it.
Type declaration
AppOverlayListing
Ƭ AppOverlayListing:Object
One listed overlay layer, without its source.
Type declaration
AppMapSettings
Ƭ AppMapSettings:Object
The deployment’s map settings.
Type declaration
AppBasemapChoice
Ƭ AppBasemapChoice:Object
One basemap a member may choose, as the browser draws it: a proxied
option’s tiles are bijection-tile://<id>/{z}/{x}/{y} (the mapTile
action); available is false while its key variable is unset.
Type declaration
AppMapSettingsView
Ƭ AppMapSettingsView:AppMapSettings & { basemaps: AppBasemapChoice[] ; watermark: string | null ; groups: { id: string ; label: string }[] ; canAdminister: boolean ; revision: number }
The map settings a member reads. watermarks holds the rules for an
administrator only (empty for everyone else).
AppCanonicalGeoJson
Ƭ AppCanonicalGeoJson: {ok: true ; data: string ; features: number ; bytes: number ; heights: number } | { ok: false ; reason: string }
An uploaded GeoJSON overlay in canonical form, or why it is refused.
AppCanonicalGlStyle
Ƭ AppCanonicalGlStyle: {ok: true ; style: string ; sources: number ; layers: number } | { ok: false ; reason: string }
A GL style fragment in canonical form, or why it is refused.
AppMapExportKind
Ƭ AppMapExportKind:"png" | "geojson"
What a map export was: a PNG capture or a GeoJSON download.
AppExportFormat
Ƭ AppExportFormat: typeofAPP_EXPORT_FORMATS[number]
One of APP_EXPORT_FORMATS.
AppFeatureExportFormat
Ƭ AppFeatureExportFormat: typeofAPP_FEATURE_EXPORT_FORMATS[number]
One of APP_FEATURE_EXPORT_FORMATS.
AppExportArgs
Ƭ AppExportArgs: {kind: AppMapExportKind ; map: string | null ; name: string ; layers: { id: string ; title: string ; collection: string | null }[] } | { kind: "objects" ; collection: string ; format: AppExportFormat ; count: number ; scope: "view" | "selection" } | { kind: "feature" ; feature: string ; name: string ; format: AppFeatureExportFormat ; count: number }
Arguments of recordExport. A map export: its kind, the map exported (a
saved map’s id, or null for an unsaved one), its name and the layers
drawn (at most MAP_LAYERS; collection null for an overlay or
annotations). An object export: the collection read, the file’s format,
how many objects it holds and whether they were a view’s (view) or a
selection (selection). A feature export: a file a feature’s page writes
from its own reads (an analysis memo, a result’s rows), named by the
feature’s installation id in the exporter’s catalog, the file’s name, its
format and how many records it holds.
AppExport
Ƭ AppExport:AppExportArgs & { id: string ; at: string ; owner: string ; person: string | null ; watermark: string | null }
One entry of the export audit, as an administrator lists it.
AppMapColor
Ƭ AppMapColor: typeofAPP_MAP_COLORS[number]
AppStyleValue
Ƭ AppStyleValue: {kind: "title" } | { kind: "property" ; property: string } | { kind: "series" ; property: string ; field: string } | { kind: "function" ; name: string } | { kind: "linkedCount" ; relation: string } | { kind: "linkedEvents" ; relation: string ; state: "active" | "all" }
Where a styled value comes from.
AppStyleEntryValue
Ƭ AppStyleEntryValue:string | number | boolean | null
A categorical entry’s value: an exact scalar.
AppColorStyle
Ƭ AppColorStyle: {kind: "fixed" ; color: AppMapColor } | { kind: "categorical" ; value: AppStyleValue ; entries: { value: AppStyleEntryValue ; color: AppMapColor }[] ; other: AppMapColor } | { kind: "gradient" ; value: AppStyleValue ; ramp: "sequential" | "heat" | "diverging" ; domain: [number, number] | null ; steps: number } | { kind: "hex" ; value: AppStyleValue }
AppSizeStyle
Ƭ AppSizeStyle: {kind: "fixed" ; size: number } | { kind: "scaled" ; value: AppStyleValue ; domain: [number, number] | null ; range: [number, number] }
Marker, line or icon size in CSS pixels.
AppChoroplethAggregate
Ƭ AppChoroplethAggregate: {kind: "count" } | { kind: "sum" | "mean" | "min" | "max" ; measure: string } | { kind: "ratio" ; numerator: string ; denominator: string } | { kind: "expression" ; expr: AppAggregateExpr }
What a choropleth region shows: exact counts and int64 sums from the
ordinary summary; a ratio divides two exact sums on the client, and an
expression combines a region’s exact sums, its count and decimal
constants in exact rational arithmetic on the client.
AppAggregateExpr
Ƭ AppAggregateExpr: {sum: string } | { count: true } | { const: string } | { op: "+" | "-" | "*" | "/" ; args: [AppAggregateExpr, AppAggregateExpr] }
An arithmetic expression over one region’s exact figures: the exact sum of
a declared measure, the region’s object count, or a decimal constant,
combined by + - * /. Evaluated in exact rationals; a division by zero
anywhere gives the region no value (drawn as no data), never a rounded or
infinite one. Bounded by APP_AGGREGATE_EXPR.
AppLayerStyle
Ƭ AppLayerStyle:Object
Type declaration
AppLinkedPagesArgs
Ƭ AppLinkedPagesArgs:Object
The first page of relation of each of ids (objects of collection,
at most APP_STYLE_LINKED_OBJECTS and at most what one point read
of the type names), in order of the relation’s index: numItems (1 to
APP_LINKED_PAGE) linked objects each, and of each linked object
its id and fields (at most APP_LINKED_FIELDS admitted
properties of the target). Read by linkedPages, the same authorized
reads as connections, sharing one read budget.
Type declaration
AppLinkedPages
Ƭ AppLinkedPages:Object
Each named object’s linked page: count linked objects read, complete
when that is all of them (else count is a lower bound), unavailable identities, and rows (each
linked object’s _id and asked fields). Denied access refuses the complete read; unread names those the shared read
budget ended before (no page).
Type declaration
AppMediaFile
Ƭ AppMediaFile:Object
One object’s media file as the media route serves it: the route path
(relative to the deployment API origin), the stored file, its
size in bytes and its contentType. Protected files use the native
authenticated fixed-file route, ordinary files the application’s media
route. Never a bearer URL.
Type declaration
AppStyleFunctions
Ƭ AppStyleFunctions: readonly {name: string ; collection: string }[]
Registered map values the check admits: AppCatalog.maps.values.
AppMapUnits
Ƭ AppMapUnits:"metric" | "imperial" | "nautical"
AppMapParameter
Ƭ AppMapParameter: {id: string ; label: string ; kind: "objects" ; collection: string } | { id: string ; label: string ; kind: "string" | "number" | "datetime" ; default?: string | null }
A template parameter: objects of one collection, or one primitive value
whose default is exact text (a number as a decimal, a datetime as int64
epoch milliseconds).
AppMapParameterValue
Ƭ AppMapParameterValue:string | string[] | null
A parameter’s value: object ids for objects, exact text otherwise,
null for none.
AppMapObjectScope
Ƭ AppMapObjectScope:Pick<AppView, "filters" | "filterMode" | "groups" | "related" | "linked" | "within" | "search"> & { ids?: string[] | { parameter: string } ; parameterFilters?: { field: string ; operator?: AppFilter["operator"] ; parameter: string }[] }
The objects one layer draws.
AppMapAnnotation
Ƭ AppMapAnnotation:Object
One item of an annotation layer.
Type declaration
AppMapLayerSource
Ƭ AppMapLayerSource: {kind: "objects" ; collection: string ; field: string ; view: AppMapObjectScope ; time?: string ; loading?: "auto" | "objects" | "tiles" ; track?: AppMapTrackPresentation } | { kind: "links" ; from: string ; hops: AppSearchHop[] ; field: string ; merged: boolean } | { kind: "links" ; from: string ; function: string ; field: string ; merged: boolean } | { kind: "overlay" ; layer: string } | { kind: "annotations" ; items: AppMapAnnotation[] }
What one layer draws.
AppMapLayer
Ƭ AppMapLayer:Object
One layer of a map.
Type declaration
AppMapDocument
Ƭ AppMapDocument:Object
A map as it is saved.
Type declaration
AppMapSharing
Ƭ AppMapSharing:Object
Who opens and who edits a saved map or overlay layer. view: "workspace"
lists and opens it for every member while its owner passes authorize.
edit names who besides the owner saves it, at its current revision:
nobody ("owner"), every member who may open it ("workspace"), or the
named people (distinct ids of the application’s people collection, at
most MAP_EDITORS, only when the application declares people).
Editing needs viewing, so a private record’s edit is "owner". Only
the owner deletes a record or changes its sharing.
Type declaration
AppSavedMap
Ƭ AppSavedMap:Object
One saved map as its reader may open it.
Type declaration
AppSeriesLatestArgs
Ƭ AppSeriesLatestArgs:Object
Type declaration
AppSeriesLatest
Ƭ AppSeriesLatest:Object
The latest point of each readable object’s series, by object id (null:
no report yet, no series id, or no such object); restricted counts the
objects the caller may not read, which are left out. values holds each
asked measure of the latest report by object id (null: no latest report,
or the report did not carry it): a float64, or an int64 as decimal text.
With at, each point is the object at that instant: position is the
estimate under the presentation (null when unknown there, e.g. across a
gap longer than the policy), time the source time of the report in force
at or before the instant (or of the report after it that a next or
nearest estimate used), and speed, heading, height and values those
of the report in force (null when none). null: no report places the
object at the instant.
Type declaration
AppMapTrackPresentation
Ƭ AppMapTrackPresentation:Object
A map layer’s choice of how tracks read (Foundry: Linear or Last known,
Max time gap). max_gap_ms (a positive integer of milliseconds) is at most
the property’s declared gap (AppSeriesField.max_gap_ms: the map document
check and every series read refuse a wider one); absent, the declared gap
applies.
Type declaration
AppMapField
Ƭ AppMapField:Object
One mappable field of a collection.
Type declaration
AppObjectTileArgs
Ƭ AppObjectTileArgs:Object
One z/x/y web-mercator tile of an objects layer (objectTile): the
layer’s scope view (browse’s arguments without paging) with the tile’s
box as a spatial clause, the geometry field field drawn, and columns
(at most MAP_TILE_COLUMNS admitted properties the layer’s style
reads) copied into each feature.
Type declaration
AppObjectTile
Ƭ AppObjectTile:Object
One object tile: its objects’ geometry, simplified to the tile’s pixel
tolerance (a point exactly), with the asked columns, when the tile holds
at most MAP_TILE_OBJECTS objects in at most
MAP_TILE_BYTES; otherwise complete is false, features is
empty, over says which bound ended it (budget: the read budget ended
a page) and count is the objects the tile’s read reached, a lower
bound. Objects the caller may not read are never read.
Type declaration
AppMention
Ƭ AppMention:Object
One mention in a text: the person’s id, the label its token carries, and
where the token starts and ends in the text.
Type declaration
AppMarkdownHrefPart
Ƭ AppMarkdownHrefPart: {text: string } | { property: string }
One part of a link address: literal text, or a template placeholder whose
value is percent-encoded into the address (appMarkdownHref).
AppMarkdownInline
Ƭ AppMarkdownInline: {kind: "text" ; text: string } | { kind: "strong" | "emphasis" ; children: AppMarkdownInline[] } | { kind: "code" ; text: string } | { kind: "link" ; href: AppMarkdownHrefPart[] ; children: AppMarkdownInline[] } | { kind: "property" ; property: string } | { kind: "mention" ; id: string ; label: string }
AppMarkdownBlock
Ƭ AppMarkdownBlock: {kind: "paragraph" ; children: AppMarkdownInline[] } | { kind: "heading" ; level: 1 | 2 | 3 ; children: AppMarkdownInline[] } | { kind: "list" ; ordered: boolean ; items: AppMarkdownInline[][] } | { kind: "code" ; text: string }
AppMarkdown
Ƭ AppMarkdown:Object
Type declaration
AppNumberPresentation
Ƭ AppNumberPresentation:Pick<NonNullable<AppPresentation["properties"]>[string], "format" | "scale" | "decimals" | "currency" | "unit" | "ranges" | "intents">
Property-owned numeric presentation; it grants no mutation authority.
AppNumberShape
Ƭ AppNumberShape:"bigint" | "number"
AppObserveScope
Ƭ AppObserveScope:Pick<AppView, "collection" | "filters" | "filterMode" | "groups" | "related" | "ids" | "within">
The part of a view an observation reads: no search, ordering or nearest
objects.
AppObserveMeasure
Ƭ AppObserveMeasure: {kind: "count" } | { kind: "sum" ; property: string }
What an observation measures: the objects’ count, or the exact int64 sum
of a declared measure (a collection’s measures).
AppObserveRequest
Ƭ AppObserveRequest:Object
One observation request.
mode: "validate"checks the scope, measure and properties against the catalog and reads no row: the answer isvalidwith the scope as it will be read.mode: "observe"reads: withmeasurenull, the scope’s objects (at mostlimit, 1 to APP_OBSERVE_OBJECTS_MAX) with their digests and the values ofproperties(at most APP_OBSERVE_PROPERTIES_MAX admitted properties); with a measure, one exact figure.
asOf is the UTC day (YYYY-MM-DD) the scope is read on; it resolves the
scope’s relative date ranges and is required whether or not it holds one.
Type declaration
AppObservedObject
Ƭ AppObservedObject:Object
One object of an observation. values holds each requested property the
object has; a missing property is absent.
Type declaration
AppObservation
Ƭ AppObservation: {kind: "valid" ; scope: AppObserveScope } | { kind: "objects" ; objects: AppObservedObject[] ; nextBoundary: number | null } | { kind: "measure" ; value: bigint ; exact: "maintained" | "bounded" ; nextBoundary: number | null } | { kind: "incomplete" ; reason: "bound" | "related" | "withheld" ; limit: number ; aggregate: { by: string[] ; sum: string[] } | null }
What an observation answers.
valid: the request checks (validatemode only).objects: every object of the scope, in the scope’s read order.measure: the exact count or int64 sum;maintainedwhen a declared aggregate answered it (exact at any size),boundedwhen one bounded read counted every matching object.incomplete: no answer is exact.bound: the read stopped at a bound before it had every matching object;related: a relationship clause could not be resolved within its bounds;withheld: the collection gives this read no bound in visited rows.limitis the bound, not a count of matching objects: the request’slimitwhen more objects matched it; otherwise the bounded read’s, which for an access-checked collection counts rows visited whether or not they match (0 once the read budget is spent), and which row conditions, relationship clauses and region candidates narrow only after it. The answer does not say which, soboundproves no lower bound on how many objects the scope holds.aggregatenames the declaration that would answer the measure exactly at any size, or null.
nextBoundary is the next UTC midnight after asOf when the scope holds a
relative date range — the first instant its membership can change without
a write — and null otherwise.
AppPlace
Ƭ AppPlace:Object
Map location protocol values; installation belongs to workspace.
Type declaration
AppPlaceSearch
Ƭ AppPlaceSearch: {status: "pending" } | { status: "answered" ; places: AppPlace[] } | { status: "failed" | "unknown" ; message: string }
A durable location search as its reader answers it: still pending,
answered with at most APP_PLACES places, or failed / of unknown
outcome with the provider’s message.
AppPlaceOffering
Ƭ AppPlaceOffering:Object
Type declaration
AppInterpolationMode
Ƭ AppInterpolationMode: typeofAPP_INTERPOLATION_MODES[number]
AppSeriesPoint
Ƭ AppSeriesPoint:Object
One report of a series, as the workspace reads it.
Type declaration
AppSeriesTrack
Ƭ AppSeriesTrack:Object
A bounded window of one series.
Type declaration
AppSeriesObservation
Ƭ AppSeriesObservation:Omit<AppSeriesPoint, "position"> & { position: Position | null ; quality: "fix" | "missing" | "invalid" ; is_late: boolean ; fields: Record<string, Value> }
One retained report as the observation log shows it.
AppSeriesLog
Ƭ AppSeriesLog:Object
The newest reports of a window, newest first.
Type declaration
AppSeriesArea
Ƭ AppSeriesArea: {type: "Polygon" ; coordinates: number[][][] } | { type: "MultiPolygon" ; coordinates: number[][][][] }
The area a track search draws: a closed WGS84 Polygon or MultiPolygon.
AppSeriesEntries
Ƭ AppSeriesEntries:Object
One page of every retained report of a window, oldest first by (time,
sequence).
Type declaration
AppSeriesSearchMatch
Ƭ AppSeriesSearchMatch:Object
One series whose track meets the area, as its reader names it.
Type declaration
AppSeriesSearch
Ƭ AppSeriesSearch:Object
A reader’s track search.
Type declaration
AppSeriesSearchArgs
Ƭ AppSeriesSearchArgs:Object
Arguments of the application’s seriesSearch query.
Type declaration
AppSeriesSearchResult
Ƭ AppSeriesSearchResult:Object
The objects whose track met the area, in the reader’s order; objects
the caller may not read are counted in restricted, not named.
Type declaration
AppSeriesMeasureArgs
Ƭ AppSeriesMeasureArgs:Object
Arguments of the application’s seriesMeasure query.
Type declaration
AppSeriesMeasure
Ƭ AppSeriesMeasure:Object
One measure of a series over a window.
Type declaration
AppSeriesWindowUnit
Ƭ AppSeriesWindowUnit: typeofSERIES_WINDOW_UNITS[number]
AppSeriesSignalInterpolation
Ƭ AppSeriesSignalInterpolation: typeofSERIES_SIGNAL_INTERPOLATIONS[number]
AppSeriesValue
Ƭ AppSeriesValue:number | bigint | string
One measured value: a float64 as a number, an int64 as a bigint, a
decimal as its exact text.
AppSeriesAnswer
Ƭ AppSeriesAnswer: {kind: "empty" } | { kind: "overflow" } | { kind: "int64" ; value: bigint } | { kind: "float64" ; value: number } | { kind: "decimal" ; value: string ; scale: number } | { kind: "rational" ; coefficient: string ; denominator: string ; scale: number }
An exact answer of an analysis, never an integer or decimal through
floating point: empty (no sample carries the measure), overflow (the
exact answer does not fit), or a value; rational is exactly
coefficient / (denominator × 10^scale) (a mean of int64 or decimal
samples).
AppSeriesCoverage
Ƭ AppSeriesCoverage:Object
What an analysis evaluated: the range [from, to) and where its
retained population begins. Before visible_from the range is absent from
the answer (retention), not empty. Instants are exact decimal epoch
milliseconds (appSeriesMillis).
Type declaration
AppSeriesAnalysisArgs
Ƭ AppSeriesAnalysisArgs:Object
Arguments every series analysis takes.
Type declaration
AppSeriesWindowsArgs
Ƭ AppSeriesWindowsArgs:AppSeriesAnalysisArgs & { window: AppSeriesWindowUnit }
Arguments of the application’s seriesWindows query.
AppSeriesChartArgs
Ƭ AppSeriesChartArgs:AppSeriesAnalysisArgs & { max_points: number }
Arguments of the application’s seriesChart query.
AppSeriesSignalArgs
Ƭ AppSeriesSignalArgs:AppSeriesAnalysisArgs & { interpolation: AppSeriesSignalInterpolation ; max_gap_ms?: number }
Arguments of the application’s seriesSignal query.
AppSeriesExpressionArgs
Ƭ AppSeriesExpressionArgs:Object
Arguments of the application’s seriesExpression query: property
names an expression property, or a series property with an ad hoc
expression (a seriesExpr tree’s node).
Type declaration
AppSeriesFleetArgs
Ƭ AppSeriesFleetArgs:Object
Rank a native temporal property or a component-backed track expression.
Native properties use their admitted formula and accept no expression or
alignment override.
Type declaration
AppSeriesFleet
Ƭ AppSeriesFleet:Object
Objects ranked by one aggregate of a series expression.
Type declaration
AppSeriesAnalysis
Ƭ AppSeriesAnalysis<Answer>: { state: "answered" } & Answer | { state: "none" } | { state: "withheld" }
An analysis, or why there is none: none, the object names no series;
withheld, the series type’s markings withhold its series from the
caller (nothing else is answered).
Type parameters
AppSeriesPropertyRead
Ƭ AppSeriesPropertyRead:SeriesRead<AppSeriesChart | AppSeriesWindows | AppSeriesSignal | SeriesExpressionSummary | AppSeriesSignalWindows | AppSeriesExpression> | SeriesPage<SeriesEvent<Record<string, Value | undefined>>> | SeriesPage<SeriesSample<Record<string, Value | undefined>>>
An authorized native property read, with its work and coverage outcome.
Events and samples retain their exact native timestamps.
AppSeriesPropertyAnalysis
Ƭ AppSeriesPropertyAnalysis:null | { state: "pending" } | { state: "failed" ; error: SeriesAnalysisFailure } | { state: "ready" ; kind: "signal_windows" ; answer: AppSeriesSignalWindows } | { state: "ready" ; kind: "summary" ; answer: SeriesExpressionSummary } | { state: "ready" ; kind: "chart" ; answer: AppSeriesChart } | { state: "ready" ; kind: "windows" ; answer: AppSeriesWindows } | { state: "ready" ; kind: "signal" ; answer: AppSeriesSignal } | { state: "ready" ; kind: "signal_summary" ; answer: AppSeriesSignal } | { state: "ready" ; kind: "episodes" | "samples" ; answer: AppSeriesExpression }
A retained property analysis formatted using its original settings.
AppSeriesWindows
Ƭ AppSeriesWindows:Object
One measure summarized per calendar window, exactly.
Type declaration
AppSeriesChart
Ƭ AppSeriesChart:Object
One measure reduced to at most max_points samples for drawing.
Type declaration
AppSeriesSignal
Ƭ AppSeriesSignal:Object
One measure weighted by time between samples. The integral is in the
measure’s unit × seconds.
Type declaration
AppSeriesSignalWindows
Ƭ AppSeriesSignalWindows:Object
Time-weighted answers over UTC windows, with the same signal policy.
Type declaration
AppSeriesArgs
Ƭ AppSeriesArgs:Object
Arguments of the application’s series query.
Type declaration
AppSeriesResult
Ƭ AppSeriesResult:Object
Type declaration
AppPositionEstimate
Ƭ AppPositionEstimate: {state: "known" ; method: "observed" | Exclude<AppInterpolationMode, "none"> ; position: Position ; before: string | null ; after: string | null ; fraction: number | null } | { state: "unknown" ; reason: string }
The derivation of a map position. Observation accuracy is retained only
for an observed value. Identities identify the reports used by the reader.
AppSeriesReader
Ƭ AppSeriesReader:Object
How the program reads one declared series property. Its functions run
inside the application’s series query with the caller’s context, after
the object itself was read through the ordinary authorized get; they must
read only through ordinary Bijection reads so the query stays reactive.
@bijectionhq/datasets/geotemporal builds one (appSeriesReader).
Type declaration
AppSeriesExpressionOutput
Ƭ AppSeriesExpressionOutput: {kind: "samples" } | { kind: "windows" ; window: AppSeriesWindowUnit } | { kind: "chart" ; max_points: number } | { kind: "summary" } | { kind: "episodes" ; min_duration_ms: number }
What an expression analysis answers.
AppSeriesExpressionValue
Ƭ AppSeriesExpressionValue: {kind: "absent" } | { kind: "null" } | { kind: "number" ; value: AppSeriesValue } | { kind: "truth" ; value: boolean | null } | { kind: "string" ; value: string } | { kind: "boolean" ; value: boolean }
One expression value at an output instant.
AppSeriesExpressionAggregate
Ƭ AppSeriesExpressionAggregate:Object
Every aggregate of one population of expression values.
Type declaration
AppSeriesExpression
Ƭ AppSeriesExpression: {coverage: AppSeriesCoverage ; context_from: string ; identity: { definition_digest: string ; question_id: string ; result_digest: string ; kernel: string } } & { output: "samples" ; points: { time: string ; value: AppSeriesExpressionValue }[] ; next: string | null } | { output: "windows" ; windows: { from: string ; to: string ; is_excluded: boolean ; aggregate: AppSeriesExpressionAggregate }[] } | { output: "chart" ; is_reduced: boolean ; buckets: { from: string ; to: string ; is_excluded: boolean ; is_gap_present: boolean ; points: { time: string ; value: AppSeriesValue }[] }[] } | { output: "summary" ; aggregate: AppSeriesExpressionAggregate } | { output: "episodes" ; episodes: { start: string ; end: string | null ; start_cause: "crossing" | "observed" ; end_cause: "false" | "unknown" | "gap" | null ; is_clipped: boolean }[] }
An expression’s answer in exact decimal epoch milliseconds.
context_from is where operator history began. Outputs before
coverage.visible_from read history retention shortened and are not
answered.
AppSeriesPropertyOperation
Ƭ AppSeriesPropertyOperation:"events" | "samples" | "episodes" | "summary" | "windows" | "chart" | "signal" | "signal_summary" | "signal_chart" | "signal_windows"
Native property capabilities, resolved with the view’s schema.
AppSeriesProperty
Ƭ AppSeriesProperty:Object
Native property meaning excludes physical routing and key expressions.
Type declaration
AppSeriesField
Ƭ AppSeriesField:Object
One declared series property of a collection.
Type declaration
SeriesDeclarations
Ƭ SeriesDeclarations:Object
Not exported: an exported type refers to it.
Type declaration
AppExpressionField
Ƭ AppExpressionField:Object
One expression over a component-backed track property.
Type declaration
AppExpressionLeaf
Ƭ AppExpressionLeaf:Object
One leaf of an expression tree: the measure it reads and the series
property (null: the expression’s own) or raw series it names.
Type declaration
AppShareRole
Ƭ AppShareRole:"viewer" | "editor"
What a named grant allows: open (viewer) or also save (editor).
AppSavedRole
Ƭ AppSavedRole:"owner" | AppShareRole
The caller’s role on a saved view or graph: the stronger of what they
hold, owner first.
AppSavedAccess
Ƭ AppSavedAccess:Object
How the caller holds a saved view or graph.
role:owner, or the stronger of a named grant and general access (general access isviewer).is_shared: every member may open it (general access).has_people: it is shared with named people; reported to its owner only, false for everyone else.shared_by: the person who granted it to the caller by name, an id ofAppCatalog.people; null exactly when the caller holds it as its owner or through general access alone (only one of the application’s people names people, so every named grant has a sharer).
Type declaration
AppShareGrant
Ƭ AppShareGrant:Object
One named grant: a person of AppCatalog.people and their role.
Type declaration
AppShares
Ƭ AppShares:Object
Who a saved view or graph is shared with, as its owner reads it
(shares).
Type declaration
AppTimeUnit
Ƭ AppTimeUnit: typeofAPP_TIME_UNITS[number]
QuestionOutputTypes
Ƭ QuestionOutputTypes:Record<string, { kind: "table" | "one" ; row: unknown }>
Not exported: an exported type refers to it.
AnswerPage
Ƭ AnswerPage<Row>: Object
Not exported: an exported type refers to it.
Type parameters
Type declaration
FileFieldProjection
Ƭ FileFieldProjection:Object
Not exported: an exported type refers to it.
Type declaration
Variables
APP_PAGE_ITEMS
•Const APP_PAGE_ITEMS: 50
Objects one browse page lists at most (page_items).
APP_RELATED_CANDIDATES
•Const APP_RELATED_CANDIDATES: 128
Linked objects one relationship clause with an indexed equality reads
(related_candidates).
APP_RELATED_BYTES
•Const APP_RELATED_BYTES: number
Bytes of those linked objects (related_bytes).
APP_REGION_TOTAL_ROWS
•Const APP_REGION_TOTAL_ROWS: 4096
Objects one region summary that no maintained total answers counts one
by one, read page after page through the region’s index
(region_totals): any grouping (dynamic cells, a pivot, several
measures) is exact up to it and refused past it.
APP_REGION_TOTAL_BYTES
•Const APP_REGION_TOTAL_BYTES: number
Bytes of those objects (region_total_bytes): half of the engine’s read
per transaction.
APP_SPATIAL_ORDER_ROWS
•Const APP_SPATIAL_ORDER_ROWS: 500
Rows one ordered merge of a region’s ranges visits for one page, matching
or not, before it must advance (spatial_order_rows).
APP_SPATIAL_ORDER_BYTES
•Const APP_SPATIAL_ORDER_BYTES: number
Bytes of those rows (spatial_order_bytes).
APP_SPATIAL_ORDER_TIES
•Const APP_SPATIAL_ORDER_TIES: 64
Rows sharing one sort value and creation time an ordered merge’s
continuation reads past (spatial_order_ties).
APP_SEARCH_AROUND_ROWS
•Const APP_SEARCH_AROUND_ROWS: 4096
Targets one Search Around hop with a region reads through the target
collection’s spatial index, whatever the links per source
(search_around_rows): the region join’s own bound.
APP_MENTIONS_MAX
•Const APP_MENTIONS_MAX: 16
Distinct people one comment may mention.
APP_CURSOR_CHARS
•Const APP_CURSOR_CHARS: 4096
Characters an encoded application cursor holds at most; a longer one is
refused as malformed.
discoveryApi
•Const discoveryApi: Object
Type declaration
APP_GEOMETRY_TYPES
•Const APP_GEOMETRY_TYPES: readonly ["Point", "MultiPoint", "LineString", "MultiLineString", "Polygon", "MultiPolygon"]
GeoJSON geometry types in canonical order.
APP_GEOMETRY_PROFILES
•Const APP_GEOMETRY_PROFILES: readonly ["wgs84-2d-linear-sphere-v1", "wgs84-3d-hae-linear-sphere-v1"]
The geometry profiles: WGS84 [longitude, latitude], and the same with a
height in metres above the WGS84 ellipsoid.
APP_GEOMETRY_SIZES
•Const APP_GEOMETRY_SIZES: readonly ["standard", "large"]
The size tiers of the 2D profile; the 3D profile has the standard tier
only.
APP_REGION_VERTICES
•Const APP_REGION_VERTICES: 8192
Positions one drawn region’s polygon or line may carry: the geometry
profile’s large-tier ring bound, so a province-sized boundary is a region.
The native spatial execution account refuses a query whose predicates cost
more. An object region carries the stored value’s own large-tier bound.
APP_REGION_VERTEX_REFUSAL
•Const APP_REGION_VERTEX_REFUSAL: string
Why a drawn region past APP_REGION_VERTICES is refused: the
engine’s array bound, which no tier of the geometry profile passes. A
query refuses it as a typed bound_exceeded (bound: "region_vertices",
limit APP_REGION_VERTICES).
APP_REGION_MAX_METRES
•Const APP_REGION_MAX_METRES: number
The largest radius a distance region takes: half the circumference of
the geometry profile’s sphere.
APP_SPATIAL_MODES
•Const APP_SPATIAL_MODES: readonly ["intersects", "disjoint", "within", "contains"]
How a geometry property relates to a region (Foundry’s geoshape filter
modes), boundary inclusive:
intersects: the value and the region share a point. For a point property this is “the point lies in the region”.disjoint: they share none; the complement ofintersectsamong objects with a value. An object without a value matches neither.within: every point of the value lies in the region.contains: every point of the region lies in the value (a polygon).
intersects and disjoint; a shape property takes
all four. A point whose accuracy envelope straddles the region’s boundary
may intersect it, so it is in intersects and never in disjoint.
APP_SPATIAL_CLAUSES
•Const APP_SPATIAL_CLAUSES: 4
Spatial clauses one view holds in all: its within and those of its
filter groups.
APP_NEAREST_LIMIT
•Const APP_NEAREST_LIMIT: 100
The most objects one nearest clause ranks.
APP_CELL_SYSTEMS
•Const APP_CELL_SYSTEMS: Object
The grid systems a cell summary groups by, with their resolutions:
geohash precision 1–9, H3 resolution 0–15.
Type declaration
APP_SPATIAL_OBJECTS
•Const APP_SPATIAL_OBJECTS: 500
The most objects one spatial clause resolves: the rows one exploration
reads (a summary’s bounded read too). A region or disjoint scope holding
more is refused whole (exceeded: "region"), never cut or paged; under
per-row access checks the read-subject budget bounds it lower. Counting
more located objects per cell, at any size, is a stored cell dimension’s
maintained total.
APP_SPATIAL_PARTITIONS
•Const APP_SPATIAL_PARTITIONS: 16
Admitted partitions one ordered region read merges: a collection whose
spatial index partitions it for the caller lists a region in the view’s
order by merging each admitted partition’s ordered range, one lookahead
row per range. More are refused (bound_exceeded, spatial_partitions).
APP_CANONICAL_PRECISION
•Const APP_CANONICAL_PRECISION: 9
The finest precision of a canonical geohash cell.
GRAPH_BADGES
•Const GRAPH_BADGES: 2
Badges one node type shows.
GRAPH_NOTES
•Const GRAPH_NOTES: 12
Notes one graph holds.
GRAPH_NOTE_CHARS
•Const GRAPH_NOTE_CHARS: 280
Characters one note holds.
GRAPH_GROUPS
•Const GRAPH_GROUPS: 10
Groups one graph holds.
GRAPH_GROUP_NAME
•Const GRAPH_GROUP_NAME: 40
Characters one group name holds.
SAVED_GRAPH_STYLES
•Const SAVED_GRAPH_STYLES: 8
Named graph styles one member keeps.
SAVED_GRAPH_STYLE_TYPES
•Const SAVED_GRAPH_STYLE_TYPES: 16
Object types one saved style covers.
SAVED_GRAPH_STYLES_CHARS
•Const SAVED_GRAPH_STYLES_CHARS: 6144
The most characters all of a member’s saved styles encode to together:
their share of the one preferences record.
WORKSPACE_API_VERSION
•Const WORKSPACE_API_VERSION: "operator-workspace-40"
The one protocol name of the operator workspace API: the catalog reports it
as api_version, and a workspace refuses a catalog that reports another.
READ_SUBJECT_LIMIT
•Const READ_SUBJECT_LIMIT: 1024
The engine admits at most this many read-access subjects in one query
(MAX_READ_ACCESS_SUBJECTS in crates/database/src/reads.rs) and refuses the
WHOLE query with “Business read scope is too large” beyond it.
RESERVED_READ_SUBJECTS
•Const RESERVED_READ_SUBJECTS: 32
Subjects every application query leaves to authentication, authorize,
the catalog and point reads it makes outside its bounded reads.
APP_READ_SUBJECT_BUDGET
•Const APP_READ_SUBJECT_BUDGET: number
Subjects one application query may spend on its bounded reads.
appIdentifierPattern
•Const appIdentifierPattern: RegExp
Kebab-case identifier shared by lucide icon names and exposed feature kinds.
MAX_INLINE_EDITS
•Const MAX_INLINE_EDITS: 16
At most this many properties of one collection declare an inline edit.
APP_SEARCH_WINDOW
•Const APP_SEARCH_WINDOW: 1024
The engine ranks at most this many matches per search
(MAX_CANDIDATE_REVISIONS in crates/search/src/constants.rs); a word search
continues through them and ends at them with end: "window".
APP_RELATION_CLAUSES
•Const APP_RELATION_CLAUSES: 4
Relationship clauses one view holds.
APP_LINK_PROBE_LINKS
•Const APP_LINK_PROBE_LINKS: 25
Links of one object a relationship clause without an indexed equality
tests.
APP_LINK_JOIN_CANDIDATES
•Const APP_LINK_JOIN_CANDIDATES: 4096
Linked objects one relationship clause’s region join reads, and the
objects of the view’s collection it may drive the scope with.
SEARCH_AROUND_HOPS
•Const SEARCH_AROUND_HOPS: 3
Declared relations one Search Around follows.
SEARCH_AROUND_FILTERS
•Const SEARCH_AROUND_FILTERS: 8
Filters one hop’s where holds, all of which must match.
SEARCH_AROUND_FANOUT
•Const SEARCH_AROUND_FANOUT: 25
Matching targets one hop reads from each object the previous hop reached.
SEARCH_AROUND_OBJECTS
•Const SEARCH_AROUND_OBJECTS: 50
Distinct objects one hop keeps; the rest are “more available”.
APP_SEARCH_LIMIT
•Const APP_SEARCH_LIMIT: 50
Titles one type’s search group lists at most (its limit; 5 when
omitted).
APP_FAVORITES
•Const APP_FAVORITES: 64
Items one member may keep as favorites.
GRAPH_SAVE_LIMIT
•Const GRAPH_SAVE_LIMIT: 16384
The most characters one encoded saved graph may reach.
GRAPH_NODES
•Const GRAPH_NODES: 50
Nodes one graph holds; the object tab uses GRAPH_EMBEDDED_NODES.
GRAPH_EDGES
•Const GRAPH_EDGES: 49
Association records plus named relation memberships one graph holds.
GRAPH_EMBEDDED_NODES
•Const GRAPH_EMBEDDED_NODES: 25
Node limit of the graph embedded in an object view.
GRAPH_EMBEDDED_EDGES
•Const GRAPH_EMBEDDED_EDGES: 24
Edge limit of the graph embedded in an object view.
GRAPH_TYPES
•Const GRAPH_TYPES: 32
Distinct collections one graph names.
SAVED_GRAPHS
•Const SAVED_GRAPHS: 20
Saved graphs one member owns.
GRAPH_POSITION_LIMIT
•Const GRAPH_POSITION_LIMIT: 100000
Largest absolute node coordinate.
APP_SUMMARY_TOP
•Const APP_SUMMARY_TOP: 256
The most groups a ranked summary lists (AppSummaryArgs.top): one
maintained answer page, the engine’s MAX_AGGREGATE_GROUPS.
APP_NOTICE_MESSAGE_MAX
•Const APP_NOTICE_MESSAGE_MAX: 2000
A notice’s message is cut to this many characters.
APP_NOTICE_REFERENCE_MAX
•Const APP_NOTICE_REFERENCE_MAX: 128
The longest event reference a delivered notice carries (the occurrence
reference its category resolves), and the longest recipient: a person id.
APP_NOTICE_ROUTE_MAX
•Const APP_NOTICE_ROUTE_MAX: 2048
The longest value of one AppNoticeRoute parameter.
ACCESS_REQUEST_TEXT_MAX
•Const ACCESS_REQUEST_TEXT_MAX: 1000
Characters in a reason or a decision comment.
MAX_STATUS_SOURCES
•Const MAX_STATUS_SOURCES: 32
Installed sources one status call discloses. The engine admits at most 128
read-access subjects per query (MAX_READ_ACCESS_SUBJECTS in
crates/database/src/reads.rs); a source status presents one per source, plus
the whole relation, the object row and the authorize callback’s own.
LINEAGE_REPORT_STATES
•Const LINEAGE_REPORT_STATES: 64
States the host keeps from one report.
LINEAGE_REPORT_EDGES
•Const LINEAGE_REPORT_EDGES: 64
Edges the host keeps from one report.
SAVED_LINEAGES
•Const SAVED_LINEAGES: 20
Saved lineages one member may keep.
LINEAGE_FOCUS_CHARS
•Const LINEAGE_FOCUS_CHARS: 200
The longest focus id a saved lineage keeps.
LINEAGE_SEARCH_CHARS
•Const LINEAGE_SEARCH_CHARS: 80
The longest search a saved lineage keeps.
MAP_RENDER_OBJECTS
•Const MAP_RENDER_OBJECTS: 1000
Objects one mapLayerObjects answer carries; more is refused.
MAP_RENDER_BYTES
•Const MAP_RENDER_BYTES: number
Encoded bytes of the objects one answer carries; more is refused.
MAP_RENDER_READ_BYTES
•Const MAP_RENDER_READ_BYTES: number
Bytes of rows one answer’s region reads may visit in all, matching or
not (8 MiB, half of one transaction’s reads): a filtered layer reads page
after page until its objects are found or these are spent, then is
refused.
APP_OVERLAY_BYTES
•Const APP_OVERLAY_BYTES: number
UTF-8 bytes of one uploaded GeoJSON overlay’s canonical text.
APP_OVERLAY_FEATURES
•Const APP_OVERLAY_FEATURES: 10000
Features one uploaded GeoJSON overlay (or one GeoJSON URL response)
holds.
APP_OVERLAY_STYLE_BYTES
•Const APP_OVERLAY_STYLE_BYTES: number
UTF-8 bytes of one GL style fragment’s canonical text.
APP_OVERLAY_PROPERTIES
•Const APP_OVERLAY_PROPERTIES: 32
Properties one overlay feature carries.
APP_OVERLAY_TEXT
•Const APP_OVERLAY_TEXT: 256
Characters of one overlay feature’s string property.
APP_OVERLAY_GL
•Const APP_OVERLAY_GL: Object
Sources and layers one GL style fragment declares.
Type declaration
SAVED_OVERLAYS
•Const SAVED_OVERLAYS: 50
Overlay layers one member owns.
MAX_SHARED_OVERLAYS_PER_OWNER
•Const MAX_SHARED_OVERLAYS_PER_OWNER: 20
Overlay layers one member shares.
MAX_LISTED_SHARED_OVERLAYS
•Const MAX_LISTED_SHARED_OVERLAYS: 50
Shared overlay layers one listing reads, newest first.
APP_BASEMAP_OPTIONS
•Const APP_BASEMAP_OPTIONS: 8
Basemap options the program declares, and custom basemaps the
deployment settings hold.
APP_MAP_TEXT
•Const APP_MAP_TEXT: Object
Characters of a URL, and of an attribution.
Type declaration
APP_MAP_WATERMARK
•Const APP_MAP_WATERMARK: 80
Characters of a watermark.
APP_MAP_WATERMARKS
•Const APP_MAP_WATERMARKS: 16
Watermark rules the deployment settings hold, and groups a program
declares for them.
APP_MAP_GROUPS
•Const APP_MAP_GROUPS: 32
MAP_EXPORTS_PAGE
•Const MAP_EXPORTS_PAGE: 50
Export audit entries one exports page lists.
APP_MAP_TILE_BYTES
•Const APP_MAP_TILE_BYTES: number
Bytes of one tile the mapTile action returns.
APP_MAP_TILE_TYPES
•Const APP_MAP_TILE_TYPES: readonly string[]
Content types a tile the mapTile action returns may have: raster
images only (a proxied basemap is a raster one).
APP_MAP_SETTINGS
•Const APP_MAP_SETTINGS: Object
The deployment settings’ bounds and defaults.
Type declaration
APP_OVERLAY_KINDS
•Const APP_OVERLAY_KINDS: readonly AppOverlayKind[]
APP_MAP_ARCHIVE_KEY
•Const APP_MAP_ARCHIVE_KEY: RegExp
A map archive’s key (defineApplication({ maps: { archives } })), and
a declared map template’s id.
APP_MAP_DECLARED
•Const APP_MAP_DECLARED: 32
The most map archives, and map templates, a program declares.
APP_MAP_TEMPLATE_PREFIX
•Const APP_MAP_TEMPLATE_PREFIX: "program:"
A declared map template opens as the saved map program:<id>
(savedMap), read-only: a member saves a copy.
APP_ARCHIVE_SOURCE_LAYER
•Const APP_ARCHIVE_SOURCE_LAYER: "features"
The tile layer an archive overlay draws from a vector (MVT) archive: a
producer names its layer so (tippecanoe -l features).
APP_MAP_GROUP
•Const APP_MAP_GROUP: RegExp
A group id a program declares for watermark rules.
APP_EXPORT_FORMATS
•Const APP_EXPORT_FORMATS: readonly ["csv", "xlsx", "json", "geojson"]
The files an object export writes.
APP_EXPORT_ROWS
•Const APP_EXPORT_ROWS: 10000
Objects one export writes at most: the workspace’s export reads stop
there, and recordExport refuses a record of more (bound_exceeded,
export_rows).
APP_FEATURE_EXPORT_FORMATS
•Const APP_FEATURE_EXPORT_FORMATS: readonly ["html", "print", "csv"]
The files a feature’s own export writes: a document (html), the same
document sent to the browser’s print dialog (print, which may save it as
PDF), or rows (csv).
APP_MAP_COLORS
•Const APP_MAP_COLORS: readonly ["ink", "area", "track", "muted", "cat1", "cat2", "cat3", "cat4", "cat5", "cat6", "cat7", "cat8"]
Map theme colour tokens: --map-<token> (cat1 is --map-cat-1).
APP_AGGREGATE_EXPR
•Const APP_AGGREGATE_EXPR: Object
The bounds of an AppAggregateExpr: nesting depth (a leaf is depth
1), node count, and a constant’s decimal digits.
Type declaration
APP_STYLE_ENTRIES
•Const APP_STYLE_ENTRIES: 24
Categorical and mapped-icon entries per style.
APP_STYLE_STEPS
•Const APP_STYLE_STEPS: Object
Gradient classes.
Type declaration
APP_STYLE_LINKED_OBJECTS
•Const APP_STYLE_LINKED_OBJECTS: 100
Objects one batched style value read names (map values, series fields,
media URLs, linked pages): a layer reads them for every object it loads,
in batches of this size, one reactive query per batch.
APP_LINKED_PAGE
•Const APP_LINKED_PAGE: 50
Linked objects linkedPages reads per object, at most.
APP_LINKED_FIELDS
•Const APP_LINKED_FIELDS: 4
Properties of each linked object linkedPages copies, at most.
APP_LINKED_BYTES
•Const APP_LINKED_BYTES: 8388608
Encoded bytes linkedPages reads in all (8 MiB), shared evenly by the
objects it names: a page past its share ends early and is not complete.
APP_STYLE_RADIUS_METRES
•Const APP_STYLE_RADIUS_METRES: 100000
Largest circle a radius style draws, in metres (100 km).
APP_STYLE_MAX_SIZE
•Const APP_STYLE_MAX_SIZE: 64
Largest marker, line or icon size in CSS pixels.
APP_STYLE_MAX_TIME_MS
•Const APP_STYLE_MAX_TIME_MS: 604800000
Longest time buffer or fade: the series window bound, 7 days.
APP_MEDIA_ICON_BYTES
•Const APP_MEDIA_ICON_BYTES: 262144
Largest image file a map draws as an icon, in bytes (256 KiB).
APP_MEDIA_ICON_TYPES
•Const APP_MEDIA_ICON_TYPES: readonly ["image/png", "image/jpeg", "image/webp"]
The image types a map draws as icons.
APP_MEDIA_IDS
•Const APP_MEDIA_IDS: 100
Objects one mediaFiles call reads.
APP_MEDIA_ROUTE
•Const APP_MEDIA_ROUTE: "/app/media"
The application’s media route (appMediaHttp, mounted under the
deployment’s HTTP actions): GET /app/media?collection=&id=&property=
with the reader’s token as a Bearer authorization, re-reading the object
under the reader’s rules on every request.
APP_MEDIA_RANGE_BYTES
•Const APP_MEDIA_RANGE_BYTES: 1048576
Bytes one media response serves: a whole file or one Range past it is
refused bound_exceeded (media_range), never truncated. Above the
largest tile and directory a map reads by range, and every icon.
APP_MEDIA_LAYER_IMAGES
•Const APP_MEDIA_LAYER_IMAGES: 64
Distinct images one map layer draws; the rest draw without their image
and the layer says how many.
APP_MEDIA_IMAGERY_BYTES
•Const APP_MEDIA_IMAGERY_BYTES: 33554432
Bytes of one imagery archive the media route serves.
APP_MEDIA_VECTOR_BYTES
•Const APP_MEDIA_VECTOR_BYTES: 33554432
Bytes of one map archive the media route serves (a dataset’s geometry
as vector or raster tiles, media: { kind: "vector" }).
APP_MEDIA_LAYER_IMAGERY
•Const APP_MEDIA_LAYER_IMAGERY: 16
Rasters one map layer draws; the rest draw as footprints and are counted.
APP_MEDIA_IMAGERY_TYPE
•Const APP_MEDIA_IMAGERY_TYPE: "application/vnd.pmtiles"
The media type of an imagery archive (PMTiles); like an icon’s, a
parameter may tag the upload.
MAP_LAYERS
•Const MAP_LAYERS: 16
Layers one map holds.
MAP_ANNOTATIONS
•Const MAP_ANNOTATIONS: 64
Items one annotation layer holds.
MAP_ANNOTATION_POSITIONS
•Const MAP_ANNOTATION_POSITIONS: 512
Positions one annotation’s geometry holds.
MAP_ANNOTATION_TEXT
•Const MAP_ANNOTATION_TEXT: 200
Characters of one annotation’s text.
MAP_PARAMETERS
•Const MAP_PARAMETERS: 8
Parameters one template declares.
MAP_PARAMETER_OBJECTS
•Const MAP_PARAMETER_OBJECTS: 100
Objects one objects parameter, or one fixed object set, names.
MAP_PARAMETER_FILTERS
•Const MAP_PARAMETER_FILTERS: 8
Filters bound to parameters in one layer scope.
SAVED_MAPS
•Const SAVED_MAPS: 50
Saved maps (templates included) one member owns.
MAX_SHARED_MAPS_PER_OWNER
•Const MAX_SHARED_MAPS_PER_OWNER: 20
Saved maps one member shares.
MAX_LISTED_SHARED_MAPS
•Const MAX_LISTED_SHARED_MAPS: 50
Shared maps one workspace-state read lists, newest first.
MAP_SAVE_BYTES
•Const MAP_SAVE_BYTES: 16384
Encoded bytes of one saved map.
MAP_SERIES_PINS
•Const MAP_SERIES_PINS: 8
Series one map pins to its series panel.
MAP_SERIES_BUCKETS
•Const MAP_SERIES_BUCKETS: 200
Buckets a series chart of the map draws at most, and by default
(settings.seriesBuckets, 1 to this): the chart asks for
seriesMeasurePoints(buckets) points.
SERIES_LATEST_IDS
•Const SERIES_LATEST_IDS: 100
Ids one seriesLatest request reads.
APP_MAP_UNITS
•Const APP_MAP_UNITS: readonly AppMapUnits[]
MAP_EDITORS
•Const MAP_EDITORS: 20
People one saved map or overlay layer names as its editors.
APP_TRACK_INTERPOLATIONS
•Const APP_TRACK_INTERPOLATIONS: readonly ["linear", "previous"]
The interpolations a layer’s track presentation offers.
MAP_TILE_OBJECTS
•Const MAP_TILE_OBJECTS: 1000
Features one object tile draws; a tile holding more draws its count.
MAP_TILE_BYTES
•Const MAP_TILE_BYTES: 1048576
Encoded bytes of one object tile’s features (1 MiB).
MAP_TILE_READ_BYTES
•Const MAP_TILE_READ_BYTES: 4194304
Bytes of objects one object tile’s index reads may return before it
stops reading (4 MiB): with the index’s own byte bound per read, the tile
stays within one query’s read limit.
MAP_TILE_COLUMNS
•Const MAP_TILE_COLUMNS: 8
Properties one object tile copies into its features.
MAP_TILE_MAX_ZOOM
•Const MAP_TILE_MAX_ZOOM: 22
Deepest zoom an object tile is read at.
APP_MARKDOWN_LENGTH
•Const APP_MARKDOWN_LENGTH: 16000
Characters one Markdown text may hold; longer text is not parsed.
APP_INTENTS
•Const APP_INTENTS: readonly ["neutral", "info", "success", "warning", "danger"]
The existing closed intent vocabulary, shared by declarations and values.
APP_OBSERVE_OBJECTS_MAX
•Const APP_OBSERVE_OBJECTS_MAX: 256
Objects one observation lists.
APP_OBSERVE_PROPERTIES_MAX
•Const APP_OBSERVE_PROPERTIES_MAX: 10
Properties whose values one observation returns per object.
POINT_READ_OBJECTS
•Const POINT_READ_OBJECTS: 100
The most objects one labels or objects call resolves, whatever their
cost.
SERIES_MAX_POINTS
•Const SERIES_MAX_POINTS: 2000
Largest max_points a track request may ask for.
SERIES_DEFAULT_POINTS
•Const SERIES_DEFAULT_POINTS: 500
Points a track carries when the request names none.
SERIES_MAX_WINDOW_MS
•Const SERIES_MAX_WINDOW_MS: 604800000
Widest closed track window, in milliseconds (seven days).
SERIES_MAX_LOG
•Const SERIES_MAX_LOG: 50
Most reports one observation log carries.
SERIES_FIELDS_BYTES
•Const SERIES_FIELDS_BYTES: 16384
Most bytes of one report’s disclosed fields (their Bijection JSON).
SERIES_SEARCH_WINDOW_MS
•Const SERIES_SEARCH_WINDOW_MS: 86400000
Widest track search window, in milliseconds (one day).
SERIES_SEARCH_LIMIT
•Const SERIES_SEARCH_LIMIT: 100
Most objects one track search names.
SERIES_ENTRIES_PAGE
•Const SERIES_ENTRIES_PAGE: 500
Most reports one page of a series’ entries carries.
SERIES_ENTRIES_WINDOW_MS
•Const SERIES_ENTRIES_WINDOW_MS: 2678400000
Widest window a series’ entries are paged over, in milliseconds (31
days).
SERIES_MEASURES
•Const SERIES_MEASURES: 8
Most measures one series property declares, beside the built-ins.
SERIES_LATEST_MEASURES
•Const SERIES_LATEST_MEASURES: 4
Most measures one seriesLatest call reads per object.
SERIES_BUILTIN_MEASURES
•Const SERIES_BUILTIN_MEASURES: readonly [{ name: "speedMps" = “speedMps”; label: "Speed" = “Speed”; unit: "m/s" = “m/s” }, { name: "headingDegrees" = “headingDegrees”; label: "Heading" = “Heading”; unit: "°" = ”°” }, { name: "altitudeMetres" = “altitudeMetres”; label: "Altitude" = “Altitude”; unit: "m" = “m” }]
The measures every report carries, with their labels and units.
APP_INTERPOLATION_MODES
•Const APP_INTERPOLATION_MODES: readonly ["linear", "nearest", "previous", "next", "none"]
How a position or measure between two reports is estimated (the modes
of @bijectionhq/geometry/movement).
SERIES_ANALYSIS_WINDOW_MS
•Const SERIES_ANALYSIS_WINDOW_MS: 864000000
Widest range one series analysis (seriesWindows, seriesChart,
seriesSignal) reads, in milliseconds (ten days). The native read under
it is bounded by stored hour blocks (SERIES_READ_HEADERS; a block
never spans a UTC hour, so continuous data reaches the bound after about
10.7 days) and, for a chart or a signal, by decoded samples
(SERIES_READ_EVENTS). A range within ten days can still pass
either bound (uncompacted hours hold several blocks, a dense series more
samples): it is then refused, bound_exceeded, and never answered in
part.
SERIES_READ_HEADERS
•Const SERIES_READ_HEADERS: 256
Stored blocks one native series read considers
(series_read_headers).
SERIES_READ_EVENTS
•Const SERIES_READ_EVENTS: 16384
Samples one native series read decodes (series_read_events; also at
most 8 MiB decoded).
SERIES_MAX_WINDOWS
•Const SERIES_MAX_WINDOWS: 2000
Most windows one seriesWindows answers (series_windows).
SERIES_CHART_MIN_POINTS
•Const SERIES_CHART_MIN_POINTS: 4
Fewest points a seriesChart asks for: each bucket keeps up to four
(its first, last, lowest and highest samples), so a chart of max_points
has floor(max_points / 4) buckets. The most is
SERIES_MAX_POINTS.
SERIES_WINDOW_UNITS
•Const SERIES_WINDOW_UNITS: readonly ["second", "minute", "hour", "day", "week", "month", "quarter", "year"]
The calendar units of seriesWindows, in UTC.
SERIES_SIGNAL_INTERPOLATIONS
•Const SERIES_SIGNAL_INTERPOLATIONS: readonly ["previous", "linear", "interval"]
How seriesSignal weighs time between two samples: the earlier value
held, or a straight line between them.
SERIES_FLEET_IDS
•Const SERIES_FLEET_IDS: 32
At most this many objects one fleet ranking reads.
APP_SERIES_STYLE_DISPLAYS
•Const APP_SERIES_STYLE_DISPLAYS: readonly ["points", "icons", "track", "breadcrumbs"]
Displays a series type’s default style may declare.
MAX_SHARE_PEOPLE
•Const MAX_SHARE_PEOPLE: 25
People one saved view or graph is shared with by name.
MAX_SHARED_VIEWS_PER_OWNER
•Const MAX_SHARED_VIEWS_PER_OWNER: 10
Views one member shares with every member. Sharing is metered per owner,
so no member uses up general access for the others.
MAX_SHARED_GRAPHS_PER_OWNER
•Const MAX_SHARED_GRAPHS_PER_OWNER: 10
Graphs one member shares with every member, metered apart from views.
MAX_LISTED_PERSON_SHARES
•Const MAX_LISTED_PERSON_SHARES: 100
Items shared with the caller by name that one workspace-state read
lists, most recently granted first; beyond them the listing says it is
incomplete.
MAX_LISTED_SHARED_GRAPHS
•Const MAX_LISTED_SHARED_GRAPHS: 50
Graphs other members share with every member that one workspace-state
read lists, most recently created first.
APP_TIME_UNITS
•Const APP_TIME_UNITS: readonly ["second", "minute", "hour", "day", "week", "month", "quarter", "year"]
UTC bucket units in increasing width. Weeks do not refine calendar months.
Quarter and year are read-time folds, never additional maintained totals.
Functions
isArgumentReference
▸ isArgumentReference(value): boolean
Parameters
Returns
boolean
argumentValueIssues
▸ argumentValueIssues(value, validator): ArgumentValueIssue[]
Check exact decoded values against an admitted schema. The backend still checks table identity,
authorization and business rules. Work is bounded to 4096 nodes, 32 levels and 128 issues.
Parameters
Returns
ArgumentValueIssue[]
operationArgumentIssues
▸ operationArgumentIssues(error): ArgumentValueIssue[]
Read structured native operation validation data, without interpreting error wording.
Parameters
Returns
ArgumentValueIssue[]
appBoardFields
▸ appBoardFields(collection): AppBoardField[]
Parameters
Returns
AppBoardField[]
appBoardField
▸ appBoardField(collection, name?): AppBoardField | undefined
The explicit field, else the declared queue’s status, else the first
schema category. An unavailable explicit field is refused, not replaced.
Parameters
Returns
AppBoardField | undefined
appBoundExceeded
▸ appBoundExceeded(bound, limit, message): BijectionError<AppBoundRefusal>
The one constructor of an AppBoundRefusal: a BijectionError
carrying it as data. Callers throw it.
Parameters
Returns
BijectionError<AppBoundRefusal>
isAppBoundRefusal
▸ isAppBoundRefusal(error, bound?): boolean
Whether error is an AppBoundRefusal (of bound, when given),
read from its data only, never its message.
Parameters
Returns
boolean
appInvalidRequest
▸ appInvalidRequest(message): BijectionError<AppInvalidRequest>
The one constructor of an AppInvalidRequest: a BijectionError
carrying it as data. Callers throw it.
Parameters
Returns
BijectionError<AppInvalidRequest>
isAppInvalidRequest
▸ isAppInvalidRequest(error): boolean
Whether error is an AppInvalidRequest, read from its data
only, never its message.
Parameters
Returns
boolean
appValidateCadence
▸ appValidateCadence(cadence, allowed): asserts cadence is AppCadence
Refuse, by name, a cadence that is malformed or that this owner does not
offer: kinds lists the kinds it accepts, and minMinutes/maxMinutes
bound an every interval (minMinutes defaults to 1).
Parameters
Returns
asserts cadence is AppCadenceappNextOccurrence
▸ appNextOccurrence(cadence, timeZone, afterMs): number
The first boundary of cadence strictly after afterMs, in exact epoch
milliseconds. every ignores timeZone; the calendar kinds read the wall
clock of timeZone (UTC or an IANA zone, see appIsTimeZone).
Parameters
Returns
number
appCommentsPlan
▸ appCommentsPlan(types, collection, operations, people): AppCommentsPlan | null
Check a collection’s comments declaration against the collections and
operations served to this caller, and say what it resolves to; null
when the collection declares none. Throws, naming the declaration, when:
the relation is not incoming to the comment collection; the body, author
or date property is missing or of the wrong type; replies do not form a
relation of the comment collection to itself, the reply count is not a
number, or the post operation’s parent argument is not an optional
reference to a comment; the author is not one of the people; or the edit
operation does not target the comment collection, or its text argument or
the edited property is missing.
What discovery withholds from this caller is not checked: an operation
they are not served (absent from their catalog, the workspace offers no
form for it), and with mentions the author’s reference when people,
the people collection served to them, is undefined. The application
builder serves no discussion whose comment collection the caller is not
served, and refuses mentions without people for every caller.
Parameters
Returns
AppCommentsPlan | null
appMentionLabel
▸ appMentionLabel(name): string
A label a token can carry: no brackets or line breaks, spaces collapsed,
at most 80 characters; a name with nothing left is “person”.
Parameters
Returns
string
appMentionToken
▸ appMentionToken(label, id): string
The token that mentions person id, labelled with label.
Parameters
Returns
string
appMentionText
▸ appMentionText(text): string
text with each mention (appMentions) shown as @label: a
notice, a preview or any other plain rendering. A token that is no mention
stays as written, as the comment shows it.
Parameters
Returns
string
appCanonicalMentions
▸ appCanonicalMentions(text, resolve): Promise<AppCanonicalMentions>
The body as a program stores it: every mention’s label rewritten to the
name resolve reads for its person, in the same transaction, and the
distinct people mentioned, in order. Refuses a mention whose person
resolve does not answer (null), more than APP_MENTIONS_MAX
distinct people, a stored body longer than APP_MARKDOWN_LENGTH,
and a name that would change which tokens the stored body mentions (a
backtick in it closing a code span, say): the stored body mentions exactly
the people returned, each under the name read.
Parameters
Returns
Promise<AppCanonicalMentions>
encodeAppCursor
▸ encodeAppCursor(cursor): string
The text of cursor: ${tag}:${payload}.
Parameters
Returns
string
decodeAppCursor
▸ decodeAppCursor(text): AppCursor | null
The cursor text encodes; null for null or "" (the first page). A
malformed or over-long cursor is refused with invalid_request, never a
restart.
Parameters
Returns
AppCursor | null
decodeAppCursorOf
▸ decodeAppCursorOf<K>(text, ...kinds): Extract<AppCursor, { kind: K }> | null
The cursor text encodes when it is of kind, else a malformed request
(a cursor of another reader’s pages).
Type parameters
Parameters
Returns
Extract<AppCursor, { kind: K }> | null
appPageRestart
▸ appPageRestart(message): BijectionError<AppPageRestart>
The one constructor of an AppPageRestart.
Parameters
Returns
BijectionError<AppPageRestart>
isAppPageRestart
▸ isAppPageRestart(error): boolean
Whether a failed page read asks its reader to start again from the first
page (AppPageRestart), read from data.code only.
Parameters
Returns
boolean
readAppNativePage
▸ readAppNativePage<T>(query, opts, kind?): Promise<PaginationResult<T>>
One native page read through the application cursor codec: opts’
cursors are application cursors of kind (native, or walk for a
region walked in a view’s order), decoded to the inherited cursor the
engine pages with, and the page’s continueCursor is encoded again. A cursor of another kind is invalid_request; an
inherited InvalidCursor the engine raises becomes the typed
appPageRestart. Every application page over a native range is
read here.
Type parameters
Parameters
Returns
Promise<PaginationResult<T>>
defineDataRelease
▸ defineDataRelease(options): DataReleaseDefinition
Defines a reviewed derivation. Queries return {key, value} rows; the
engine inserts only allowlisted rows and fields into the ordinary root
destination. It binds installed code itself, including helpers and nested
components. Changing any part requires a new review.
Parameters
Returns
DataReleaseDefinition
approveDataRelease
▸ approveDataRelease(deployment, token, options): Promise<{ id: string ; code: string }>
Review one epoch, or a standing program when explicitly declared, as the person holding approve on the
source’s data_release permission resource. Read and administration do
not confer this authority; delegated identities cannot review.
Parameters
Returns
Promise<{ id: string ; code: string }>
revokeDataRelease
▸ revokeDataRelease(deployment, token, id): Promise<{ id: string ; is_revoked: boolean }>
Revoke an unused review as its original approver. Accepted copies persist.
Parameters
Returns
Promise<{ id: string ; is_revoked: boolean }>
executeDataRelease
▸ executeDataRelease(deployment, token, options): Promise<DataReleaseReceipt>
Produce a new epoch with current reads and approval authority. Single-use
reviews are consumed atomically. Standing reviews stay revocable and recheck
current authority on every execution; their projection keeps row identity.
A request identifies this exact acceptance; do not reuse it for different
definitions or approval IDs.
Parameters
Returns
Promise<DataReleaseReceipt>
inspectDataRelease
▸ inspectDataRelease(deployment, token, id): Promise<{ epoch: string ; approvals: string[] ; actor: string ; request: string ; definition: DataReleaseDefinition ; code: string ; output_ids: string[] }>
Inspect your accepted release under current source access. The audit
response includes released IDs and the reviewed contract, never private read
demands or source values.
Parameters
Returns
Promise<{ epoch: string ; approvals: string[] ; actor: string ; request: string ; definition: DataReleaseDefinition ; code: string ; output_ids: string[] }>
simulateReleaseAccess
▸ simulateReleaseAccess(deployment, token, options): Promise<ReleaseAccessSimulation>
Explain named clean-born containers and compare readers under current
source policies with selected requirements removed hypothetically. Requires
release authority for every label, supplies no content, and changes no state.
Protected births and missing names have the same refusal. This comparison
does not assert that a reviewed query can currently produce a release.
Parameters
Returns
Promise<ReleaseAccessSimulation>
appDecimalCoefficient
▸ appDecimalCoefficient(text, scale): bigint
Parse a decimal without binary floating point or rounding.
Parameters
Returns
bigint
appDecimalText
▸ appDecimalText(coefficient, scale): string
Canonical decimal text from an exact coefficient.
Parameters
Returns
string
appDecimalScale
▸ appDecimalScale(collection, field?): number | undefined
The field’s one admitted decimal scale, shared by every aggregate.
Parameters
Returns
number | undefined
appSummaryMeasure
▸ appSummaryMeasure(group): bigint | string | null
An exact display value: int64 or canonical decimal text.
Parameters
Returns
bigint | string | null
appGeometryValidator
▸ appGeometryValidator(types, declared?): VObject<any, any> | VUnion<any, any>
The one constructor of a geometry validator: an object
{ type: v.literal(t), coordinates } per declared type (a union when
several), each carrying declaration in its validator JSON
(geometry: { profile, size }). The engine admits every value of such a
validator under that profile and tier wherever it checks a value:
function arguments and returns, and every schema-enforced table write.
@bijectionhq/datasets/geometry geoShape/geoPoint are its public
spelling.
Parameters
Returns
VObject<any, any> | VUnion<any, any>
appGeometryDeclaration
▸ appGeometryDeclaration(json): AppGeometryDeclaration | null
The declaration every member of a geometry validator JSON carries, or
null when a member carries none or the members disagree (then it is not
a geometry validator).
Parameters
Returns
AppGeometryDeclaration | null
appGeometryTypes
▸ appGeometryTypes(json): AppGeometryType[] | null
The geometry types a validator declares, in canonical order, or null for
any other shape. A geometry validator is one { type, coordinates } object,
or a union of them, built by appGeometryValidator: type is a
GeoJSON type literal (each at most once), coordinates nests arrays of
numbers exactly as that type does, and every member carries the same
geometry declaration. Extra fields, optional members, other members and a
structurally identical object without the declaration are not geometry.
Parameters
Returns
AppGeometryType[] | null
appGeometryProperty
▸ appGeometryProperty(json): { types: AppGeometryType[] ; nullable: boolean ; is_position?: boolean } & AppGeometryDeclaration | null
A property validator as a geometry property: its declared types, whether
it admits null, and its declared profile and size tier, or null when it
is not a geometry validator. v.null() may be one member of the union
(v.union(geoPoint(), v.null())), nested unions are flattened, and
nothing else is admitted.
Parameters
Returns
{types: AppGeometryType[] ; nullable: boolean ; is_position?: boolean } & AppGeometryDeclaration | null
appValueAtPath
▸ appValueAtPath(object, path): unknown
The value at a dot-separated field path of a document, or undefined
where the path is absent.
Parameters
Returns
unknown
appGeometryAtPath
▸ appGeometryAtPath(json, path): NonNullable<ReturnType<typeof appGeometryProperty>>
The geometry property at a dot-separated field path of a document
validator, as a spatial index over that path reads it: the path is walked
through object validators and through each member of a union (a series
resolution’s event, empty or conflict, say). A member without the path,
an optional field on it, or a null-only leaf makes the property nullable.
Every non-null member holding the path must be one geometry or Position
meaning (appGeometryProperty) and all must agree; otherwise this
throws.
Parameters
Returns
NonNullable<ReturnType<typeof appGeometryProperty>>
isAppRegionRefusal
▸ isAppRegionRefusal(error): boolean
Whether a failed read refused an object region (AppRegionRefusal).
Parameters
Returns
boolean
appWithinError
▸ appWithinError(within): string | null
Why within is not an admissible AppWithin, or null.
Parameters
Returns
string | null
appNearestError
▸ appNearestError(nearest): string | null
Why nearest is not an admissible AppNearest, or null.
Parameters
Returns
string | null
appCellGroupingError
▸ appCellGroupingError(cells): string | null
Why cells is not an admissible AppCellGrouping, or null.
Parameters
Returns
string | null
appRegionError
▸ appRegionError(region): string | null
Why region is not an admissible AppRegion, or null when it is.
This checks shape and bounds only (finite WGS84 numbers, closed rings of at
least four positions, at most APP_REGION_VERTICES positions); the
program’s spatial index applies the full geometry profile.
Parameters
Returns
string | null
appMapViewError
▸ appMapViewError(map): string | null
Why map is not an admissible AppMapView, or null.
Parameters
Returns
string | null
appGeometryFields
▸ appGeometryFields(collection): AppGeometryField[]
The geometry fields of a collection, in property name order: native geometry
meaning from the served catalog (or the validator when no catalog is supplied),
plus declared derived geometry, H3 and geohash fields. Presentation properties
can label native geometry but cannot change its meaning. Name order is the one order
the served catalog carries, since properties crosses the wire as a Bijection
object, whose keys are sorted; the application’s own checks see the same
order. A program states which field a map draws by default with
defaultMapField. Throws when a declaration does not match the admitted
validator, which the application refuses when it builds its catalog.
- Without
point,nameis an admitted property whose validator is a geometry (appGeometryProperty). - A native spatial index over a nested path (
current.event.values.position) adds that full path as a geometry field, its meaning resolved through the validator (appGeometryAtPath); appGeometryValue reads it at that path. - With
point,nameis a derived point that is NOT an admitted property, built from two admitted numeric properties (float64 or int64, optional or nullable allowed). - With
line: { from, to },nameis a derived LineString that is NOT an admitted property, drawn from the value offromto the value ofto: two distinct declared Point geometry fields of the same collection (admitted or derived points). It is null when either end is. - With
format: "h3"or"geohash",nameis an admitted string property (optional or nullable allowed) holding one cell id of that grid. Its geometry is the cell’s boundary, derived by the client (@bijectionhq/geometry/cells), so appGeometryValue is null for it; it may be a dimension and is never a spatial index.cell: { of }states that it stores the cell ofof, a declared Point geometry field of the same collection (the program writes it; it is not checked per object): a map layer drawingofmay count its objects per this stored cell. Without it the cell describes no other geometry.
Parameters
Returns
AppGeometryField[]
appGeometryValue
▸ appGeometryValue(field, object): AppGeometry | null
Parameters
Returns
AppGeometry | null
appGeohashBox
▸ appGeohashBox(cell): AppBox | null
The bounds of one geohash cell (1 to 12 base32 characters), or null for
a value that is not one.
Parameters
Returns
AppBox | null
appCanonicalReach
▸ appCanonicalReach(cell): AppBox | null
The reach of a shape’s canonical geohash cell (appCanonicalGeohash):
the cell’s box grown east by one cell width and north by one cell height,
within the world; the world for "". Every shape whose canonical cell is
cell, or any cell starting with it, lies in this box. Null for a value
that is not a geohash cell.
Parameters
Returns
AppBox | null
appGeometryBox
▸ appGeometryBox(shape): AppBox | null
The bounding box of a geometry’s positions, or null for no position.
Parameters
Returns
AppBox | null
appCanonicalGeohash
▸ appCanonicalGeohash(shape, precision?): string | null
The canonical geohash cell of a stored shape, as a program writes it in a
stored cell property declared cell: { of: <the shape property> }: the
cell holding the south-west corner of the shape’s bounding box at the
finest precision, at most precision, whose reach
(appCanonicalReach: the cell grown by one cell east and north)
holds that box. Each shape is counted once, by one cell, and lies in its
cell’s reach wherever it is, so a shape crossing a cell edge stays in a
cell of its own size: a shape is in the world’s cell, "", only when no
precision-1 cell’s reach holds it (it is more than 45 degrees wide or
tall). A cell’s shorter prefix is a coarser canonical cell of the same
shape. Null for no shape.
Parameters
Returns
string | null
appBoxHolds
▸ appBoxHolds(outer, inner): boolean
Whether outer holds inner, boundary inclusive.
Parameters
Returns
boolean
appGraphStyleProperties
▸ appGraphStyleProperties(collection): { name: string ; kind: AppGraphPropertyKind }[]
The properties of collection a graph may style its nodes by, in the
order its admitted validator declares them.
Only an admitted top-level property its presentation does not hide
qualifies, and only when its stored value is one comparable scalar: a date
or datetime is time, an int64 or float64 number, and a string, boolean
or union of string and boolean literals (each optionally nullable)
category. Geometry, JSON and grid cells, stored files, references to
other objects (v.id) and derived entries (a point, line, cell or series)
never qualify.
Parameters
Returns
{name: string ; kind: AppGraphPropertyKind }[]
appRowSubjects
▸ appRowSubjects(collection, index?): number | null
Subjects one visited row of collection costs through index (the
default ordering when omitted): 0 when free or when its ranges fold, null
when unbounded.
Parameters
Returns
number | null
appObjectSubjects
▸ appObjectSubjects(collection): number | null
Subjects one object of collection read by identity costs: 0 when free,
null when unbounded.
Parameters
Returns
number | null
appPointReadLimit
▸ appPointReadLimit(collection): number
Objects of collection one objects or labels call may resolve.
A point read of a checked collection records two subjects per checked row,
its demand and the row it found, within APP_READ_SUBJECT_BUDGET and
at most 100 per call. An unbounded collection is
given the view figure, which bounds the rows themselves but not obligations
they restore. A caller with more objects splits them into calls of this size.
Parameters
Returns
number
appSearchMode
▸ appSearchMode(collection): AppSearchMode | undefined
The collection’s search mode, or undefined when it declares no search.
Parameters
Returns
AppSearchMode | undefined
applicationOperation
▸ applicationOperation(operation): AppOperationAdapters
Resolve the ordinary operation adapters from an admitted public contract.
Invocation still verifies the expected digest and current permissions.
Parameters
Returns
AppOperationAdapters
appExactQuotient
▸ appExactQuotient(numerator, denominator, digits?): Object
numerator / denominator as a decimal string with at most digits
fraction digits, computed on exact integers only (never through floating
point). exact is true when the quotient terminates within digits;
otherwise the text is rounded half to even and exact is false, so a
surface can mark it approximate. Used for averages: sum / count.
Parameters
Returns
Object
appRelativeRangeError
▸ appRelativeRangeError(value): string | null
Why value is not an AppRelativeRange, or null.
Parameters
Returns
string | null
appIsUtcDay
▸ appIsUtcDay(day): day is string
Whether day is a calendar day YYYY-MM-DD, the form of asOf.
Parameters
Returns
day is stringappUtcDay
▸ appUtcDay(ms): string
The UTC calendar day YYYY-MM-DD holding the instant ms: the asOf a
reader passes for “today” is appUtcDay(Date.now()).
Parameters
Returns
string
appRelativeBounds
▸ appRelativeBounds(range, asOf): Object
The closed-open instants [from, to) a relative range selects when read on
the UTC day asOf (YYYY-MM-DD), each a UTC midnight in exact epoch
milliseconds, null for an open side. Weeks start on Monday and months on
their first day: the calendar of AppTimeAxis, so a relative range,
a histogram bucket and a custom day range select the same objects.
Parameters
Returns
Object
appViewIsRelative
▸ appViewIsRelative(view): boolean
Whether any filter of view — its filters, chart selections, condition
groups or relationship clauses — is a relative date range, so every read of
it names the day it is read on (asOf).
Parameters
Returns
boolean
appInclusiveUpperBound
▸ appInclusiveUpperBound(max): bigint | number | null
The exclusive upper bound of a between range equivalent to the inclusive
maximum max: max + 1n for an int64, and the next float64 above max for
a float64, found on its bits rather than by arithmetic, so
[from, appInclusiveUpperBound(max)] selects exactly from <= value <= max.
Null (an open upper side) when no larger value of the type exists.
Parameters
Returns
bigint | number | null
appFavoriteKey
▸ appFavoriteKey(item): string
A favorite’s identity: two entries with one key are one favorite.
Parameters
Returns
string
graphSaveBound
▸ graphSaveBound(graph): number
The encoded length graph can reach by dragging, hiding, collapsing and
detaching alone: every node and note coordinate replaced by -100000,
hidden by every node type and every note’s node by -1, then
JSON.stringify(bijectionToJson(...)).length.
Moving a node or a note, hiding a type and detaching a note are the only
edits that lengthen an encoding without being checked (the tables are
sorted, so removal never does, and collapsing a group swaps 0 for 1), so
this is never below the actual encoded length of a valid graph and never
below any length the graph reaches by those edits. saveGraph refuses
above GRAPH_SAVE_LIMIT on this measure, and a workspace admits
objects, styles, notes and groups under the same function, so a canvas it
holds always saves.
Parameters
Returns
number
appQueryScope
▸ appQueryScope(view, asOf?): Omit<AppBrowseArgs, "paginationOpts">
The canonical query scope shared by tables, charts, and exports. asOf
is carried only for a view that holds a relative date range, so an absolute
view’s scope (and every cache key built from it) does not change with the
day.
Parameters
Returns
Omit<AppBrowseArgs, "paginationOpts">
sendAccessRequestAction
▸ sendAccessRequestAction(deployment, token, action): Promise<AppAccessRequestReceipt>
Sends one access request write with the caller’s own bearer token.
deployment is the deployment URL the Bijection client uses. Throws the
engine’s refusal message when the write is refused.
Parameters
Returns
Promise<AppAccessRequestReceipt>
requestResourceAccess
▸ requestResourceAccess(deployment, token, requests, request): Promise<AppAccessRequestReceipt>
Request role on one object for beneficiary (the caller’s workspace
person, unless they request for someone else they may), with the reason a
reviewer will read. The request grants nothing until a reviewer approves
it; approval then writes exactly this grant.
Parameters
Returns
Promise<AppAccessRequestReceipt>
decideResourceAccessRequest
▸ decideResourceAccessRequest(deployment, token, requests, decision): Promise<AppAccessRequestReceipt>
Approve or reject one pending resource request. The engine rechecks that
it is pending, that the caller now holds the role’s grant permission and
did not make it.
Parameters
Returns
Promise<AppAccessRequestReceipt>
withdrawResourceAccessRequest
▸ withdrawResourceAccessRequest(deployment, token, requests, id): Promise<AppAccessRequestReceipt>
Withdraw the caller’s own pending resource request.
Parameters
Returns
Promise<AppAccessRequestReceipt>
requestOperationAccess
▸ requestOperationAccess(deployment, token, request): Promise<AppAccessRequestReceipt>
Request one workspace operation role for the caller’s stable person.
Approval remains a separate native resource-request decision.
Parameters
Returns
Promise<AppAccessRequestReceipt>
runConnectionCheck
▸ runConnectionCheck(deployment, token, check): Promise<AppConnectionCheckResult>
Executes the caller’s own recorded connection check request
(requestConnectionCheck) with their own bearer token. deployment is the
deployment URL the client uses. Running the same request again after a lost
response finishes it or returns its recorded result. Throws the engine’s
refusal message when the check is refused.
Parameters
Returns
Promise<AppConnectionCheckResult>
applicationApi
▸ applicationApi(module?): Object
References use the same public query transport as any customer application.
Parameters
Returns
Object
featureApi
▸ featureApi<Contract>(feature, names): Contract
Public function references for one exposed feature, built exactly like
applicationApi. The caller declares the feature module’s contract;
this resolves module:name and grants no authority of its own.
Type parameters
Parameters
Returns
Contract
parseInspectionSelection
▸ parseInspectionSelection(encoded?): AppInspectionSelection | null
One bounded wire vocabulary for links from evidence, alerts and graph views.
A parsed selection grants no authority; the ordinary reader checks access.
Parameters
Returns
AppInspectionSelection | null
inspectionLink
▸ inspectionLink(ref, selection?, context?): string
Parameters
Returns
string
inspect
▸ inspect(resource, options?): Extract<InspectionQuery, { kind: "inspect" }>
Parameters
Returns
Extract<InspectionQuery, { kind: "inspect" }>
lineage
▸ lineage(target, options?): Extract<InspectionQuery, { kind: "lineage" }>
Parameters
Returns
Extract<InspectionQuery, { kind: "lineage" }>
health
▸ health(resource, options?): Extract<InspectionQuery, { kind: "health" }>
Parameters
Returns
Extract<InspectionQuery, { kind: "health" }>
explain
▸ explain(target): Object
Parameters
Returns
Object
▸ explain(
target): Object
Parameters
Returns
Object
▸ explain(
target, selection): Object
Parameters
Returns
Object
▸ explain(
target, selection): Object
Parameters
Returns
Object
appLineageNodeId
▸ appLineageNodeId(ref): string
The stable key of a reported node, as the host’s graph names it:
collection:<name>, producer:<name>, operation:<component>/<operation>
(an empty component for the root program) or capability:<id>.
Parameters
Returns
string
validateLineage
▸ validateLineage(value, collections): AppLineage
Admit a saved lineage against the caller’s authorized collections, or
refuse it with one Invalid lineage: ... message. A subject, or a focused
collection, the caller cannot see is refused like a malformed one, so a
saved lineage never names a collection it could not show.
Parameters
Returns
AppLineage
appRenderBoxError
▸ appRenderBoxError(box): string | null
The sentence refusing a box, or null.
Parameters
Returns
string | null
appRenderClauses
▸ appRenderClauses(field, box): AppWithin[]
The spatial clauses of a box on one field: one, or the two halves of a
box crossing the antimeridian.
Parameters
Returns
AppWithin[]
appDefaultMapSettings
▸ appDefaultMapSettings():AppMapSettings
The settings a deployment starts from.
Returns
AppMapSettings
appProxiedTiles
▸ appProxiedTiles(id): string
The tile URL a proxied basemap option is drawn from.
Parameters
Returns
string
appMapUrlError
▸ appMapUrlError(value, what, template): string | null
Why value is not an admissible map URL, or null: 1 to 512 characters,
HTTPS (HTTP only for a loopback server), no user information, query string
or fragment. A template holds {z}, {x} and {y}; any other URL holds
none of them.
Parameters
Returns
string | null
appBasemapError
▸ appBasemapError(value): string | null
Why value is not an admissible basemap, or null.
Parameters
Returns
string | null
appBasemapOptionError
▸ appBasemapOptionError(value, keyed): string | null
Why value is not an admissible basemap option, or null. keyed: whether
it may name a key variable (a program’s option; a custom basemap an
administrator adds never does).
Parameters
Returns
string | null
appBasemapOptionsError
▸ appBasemapOptionsError(options, keyed): string | null
Why options is not an admissible list of basemap options, or null:
at most APP_BASEMAP_OPTIONS, ids unique.
Parameters
Returns
string | null
appCanonicalGeoJson
▸ appCanonicalGeoJson(text): AppCanonicalGeoJson
text as the canonical GeoJSON of an overlay, or why it is refused.
Admitted: one FeatureCollection (RFC 7946, WGS84 longitude and latitude; a
crs member only when it names CRS84) of at most
APP_OVERLAY_FEATURES features, each with a Point, MultiPoint,
LineString, MultiLineString, Polygon or MultiPolygon geometry (lines of at
least 2 positions, closed rings of at least 4), and properties that are
strings of at most APP_OVERLAY_TEXT characters, finite numbers,
booleans or null (at most APP_OVERLAY_PROPERTIES). Canonical form:
only type and features; each feature’s type, id (when a string or
number), geometry and properties with keys in code-point order;
positions as [longitude, latitude] (a height is dropped and counted);
bbox and other foreign members dropped. The text is at most
APP_OVERLAY_BYTES bytes.
Parameters
Returns
AppCanonicalGeoJson
appCanonicalGlStyle
▸ appCanonicalGlStyle(text): AppCanonicalGlStyle
text as the canonical GL style fragment of an overlay, or why it is
refused: a JSON object of exactly sources and layers (a MapLibre or
Mapbox GL style’s members of those names), at most
APP_OVERLAY_STYLE_BYTES bytes.
sources: 1 to 8 by id,vectororraster, naming theirtiles(1 to 4 URL templates, each by appMapUrlError; a TileJSONurlis refused, since the tiles it names could not be checked) with optionalminzoom,maxzoom,tileSize(raster 256 or 512),scheme,boundsandattribution. Ageojsonsource is refused: the map would fetch it whole, past the overlay bounds; a GeoJSON URL is its own overlay (geojsonUrl), fetched and admitted within APP_OVERLAY_BYTES and APP_OVERLAY_FEATURES.layers: 1 to 32, eachfill,line,circle,heatmap,rasterorfill-extrusionof a declared source (source-layerfor a vector one), with optionalminzoom,maxzoom,filter,layoutandpaint. Symbol and background layers are refused: the fragment declares no glyphs or sprites, and a background would hide every other layer.
Parameters
Returns
AppCanonicalGlStyle
appOverlayLayerError
▸ appOverlayLayerError(value): string | null
Why value is not an admissible overlay layer, or null: one source (see
AppOverlaySource; uploaded GeoJSON and GL styles in canonical
form, every URL by appMapUrlError) and an optional style checked as
a layer without objects (appLayerStyleError(style, null)). A style
applies to GeoJSON and vector tile overlays; a raster or GL style overlay
takes none.
Parameters
Returns
string | null
appMapSettingsError
▸ appMapSettingsError(value): string | null
Why value is not admissible deployment map settings, or null. Bounds:
APP_MAP_SETTINGS; a default viewport’s centre is a WGS84
[longitude, latitude] and its zoom 0 to 24; custom basemaps are keyless
options (appBasemapOptionError), at most
APP_BASEMAP_OPTIONS. Whether the default basemap names an option is
checked by the application, which knows the program’s options.
Parameters
Returns
string | null
appEffectiveWatermark
▸ appEffectiveWatermark(rules, declared, memberOf, fallback): string | null
The watermark a member sees: the text of the first rule whose group the
member is in, else the program’s watermark for them, else null. A rule
naming a group the program no longer declares never matches.
Parameters
Returns
string | null
appExportError
▸ appExportError(value): string | null
Why value is not admissible recordExport arguments, or null. The
object count’s bound is recordExport’s own refusal (export_rows).
Parameters
Returns
string | null
appAggregateExprSums
▸ appAggregateExprSums(expr): string[]
The measures an expression sums, each once, in first-use order.
Parameters
Returns
string[]
appAggregateExprError
▸ appAggregateExprError(x, measures): string | null
Why x is not an admissible AppAggregateExpr over measures, or
null. Checks shape, operators, declared measures, decimal constants and the
APP_AGGREGATE_EXPR bounds before anything is walked further.
Parameters
Returns
string | null
appMediaIconType
▸ appMediaIconType(contentType): boolean
Whether a stored file’s content type is one a map draws as an icon: its
media type, before any parameter and without regard to case, is one of
APP_MEDIA_ICON_TYPES. A parameter is how an application tags an
upload with the flow that issued it (image/png; trailer=T7).
Parameters
Returns
boolean
appMediaPath
▸ appMediaPath(ref): string
The route path of one object’s media property (APP_MEDIA_ROUTE).
Parameters
Returns
string
appMediaImageryType
▸ appMediaImageryType(contentType): boolean
Whether a stored file’s content type is an imagery archive’s: its media
type, before any parameter and without regard to case, is
APP_MEDIA_IMAGERY_TYPE.
Parameters
Returns
boolean
appImageryFootprint
▸ appImageryFootprint(style, collection): string | null
The footprint property an imagery style draws over: the declared
footprint of its imagery property, or null for another style or an
undeclared property.
Parameters
Returns
string | null
appLayerStyleValues
▸ appLayerStyleValues(style): AppStyleValue[]
Every value a style reads, in a fixed order (colour, size, icon, label,
rotation’s property, radius’s property), duplicates included. A media
icon’s image is read through the media route, not as a value.
Parameters
Returns
AppStyleValue[]
appEventCollections
▸ appEventCollections(collections): string[]
The catalog’s event collections (those declaring event), which linked
events values may reach.
Parameters
Returns
string[]
appLayerStyleError
▸ appLayerStyleError(style, collection, functions?, events?): string | null
Why style is not an admissible layer style for a layer of collection
(null for a layer without objects: an overlay’s features), or null. A
function value must be among functions, the registered map values
(AppCatalog.maps.values); none are admitted when it is omitted. A
linked events value’s relation must reach one of events, the catalog’s
event collections (appEventCollections); none do when omitted.
Parameters
Returns
string | null
appMapSharingError
▸ appMapSharingError(value, people): string | null
Why value is not admissible AppMapSharing, or null. people:
whether the application declares people (an editor list needs them).
Whether each named id is a person the caller may read is the
application’s check.
Parameters
Returns
string | null
appMapSharingEqual
▸ appMapSharingEqual(a, b): boolean
Whether two admitted sharings are the same (editor order aside).
Parameters
Returns
boolean
appTrackPresentationError
▸ appTrackPresentationError(value): string | null
Why a track presentation is not one, or null.
Parameters
Returns
string | null
appMapFields
▸ appMapFields(collection): AppMapField[]
The fields a map can draw a collection by: declared geometry fields, then
declared series properties, each in name order. Empty when the collection
is not mappable. A declaration the catalog refuses is not listed.
Parameters
Returns
AppMapField[]
appDefaultMapField
▸ appDefaultMapField(collection): string | null
The field a new objects layer of collection draws: its declared default
map field, else its first mappable field; null when it has none.
Parameters
Returns
string | null
emptyMapDocument
▸ emptyMapDocument():AppMapDocument
An empty map: no layers, the deployment defaults.
Returns
AppMapDocument
appMapParameterValueError
▸ appMapParameterValueError(parameter, value): string | null
Why value is not an admissible value of parameter, or null.
Parameters
Returns
string | null
appMapParametersError
▸ appMapParametersError(parameters, values): string | null
Why values are not admissible values of parameters (an unknown
parameter, a malformed value), or null.
Parameters
Returns
string | null
appMapDocumentError
▸ appMapDocumentError(doc, catalog): string | null
Why doc is not an admissible map of catalog (a malformed document, an
unknown collection or field, a duplicate layer id, a links layer that does
not follow an earlier objects layer through declared relations, an
annotation over its bounds, a reference to an undeclared parameter, an
inadmissible style), or null.
Parameters
Returns
string | null
appObjectTileScope
▸ appObjectTileScope(view, clause): AppObjectTileArgs["view"] | string
The layer’s scope view narrowed to one tile: clause (the tile’s box)
becomes the view’s within when it has none, else a filter group of its
own, which must be a conjunct of the view’s filters. The view’s root
joins its filters and groups by filterMode, so under any with more
than one member the root’s filters are folded into one any group and
the root matches all; a root matching any of several groups cannot be
folded (groups do not nest) and is refused by name, as is a view whose
groups or spatial clauses have no room for the tile’s. A searched view
keeps its ranking’s own pages and has no tiles. Returns the narrowed
scope, or the sentence saying why the scope has no tiles.
Parameters
Returns
AppObjectTileArgs["view"] | string
appMentionAt
▸ appMentionAt(text, index): AppMention | null
The mention token starting exactly at index of text, or null: the one
token grammar. Whether a token is a mention depends on where it stands in
the Markdown (appMentions).
Parameters
Returns
AppMention | null
appMentions
▸ appMentions(text): AppMention[]
Every mention in text, in order, with where its token stands in text:
exactly the tokens appMarkdown with mentions reads as mentions. A
token the Markdown keeps as text mentions no one: in code, on a fenced
block’s opening line, escaped, or in a link’s address. Text longer than
APP_MARKDOWN_LENGTH is not parsed, and a reader sees it
unformatted, so it mentions no one either. What a program checks and
notifies is therefore exactly what its readers see as mentions.
Parameters
Returns
AppMention[]
appMarkdown
▸ appMarkdown(source, options?): AppMarkdown
Parse source into the closed subset. template makes {name} a
placeholder. Throws when source is longer than
APP_MARKDOWN_LENGTH characters.
Parameters
Returns
AppMarkdown
appMarkdownHref
▸ appMarkdownHref(parts, value): string | null
A link’s address with each placeholder’s value percent-encoded
(encodeURIComponent), or null when any placeholder’s value is null: such
a link is shown as its text alone.
Parameters
Returns
string | null
appHasNumberFormat
▸ appHasNumberFormat(p): boolean
Whether this property declares a scaled or rounded numeric display.
Parameters
Returns
boolean
appNumberShape
▸ appNumberShape(type): AppNumberShape | null
One numeric representation, possibly nullable, never a mixed numeric union.
Parameters
Returns
AppNumberShape | null
validateAppNumberPresentation
▸ validateAppNumberPresentation(p): void
Build-time shape checking, before an admitted property validator is known.
Parameters
Returns
void
validateAppNumberProperty
▸ validateAppNumberProperty(p, type, decimalText?): void
Check presentation against the admitted field’s representation.
decimalText admits a virtual table’s text property: a source DECIMAL
arrives as exact decimal text, and decimals states its exact fraction
digits, the scale its sums keep.
Parameters
Returns
void
appDeclaredNumberText
▸ appDeclaredNumberText(value, p?): string
Exact declared value of an int64, before the percent display multiplier.
Parameters
Returns
string
appNumberInputText
▸ appNumberInputText(value, p?): string
Exact, ungrouped editor text in displayed units. Never rounds a float to
its display precision or an integer through binary floating point.
Parameters
Returns
string
appStoredNumber
▸ appStoredNumber(text, shape, p?): bigint | number
Parse an ungrouped displayed number into its stored representation.
Parameters
Returns
bigint | number
appIntentRange
▸ appIntentRange(value, p): NonNullable<AppNumberPresentation["ranges"]>[number] | undefined
The first matching declared range, independent of display rounding.
Parameters
Returns
NonNullable<AppNumberPresentation["ranges"]>[number] | undefined
appObjectDigest
▸ appObjectDigest(row): Promise<string>
The content digest of one object as read: the SHA-256 of its canonical
Bijection JSON (every property, _id and _creationTime included, object
keys in code-unit order), as 64 lower-case hex digits. Equal objects have
equal digests; any change of any property changes it, an int64 1n and a
float64 1 included. It identifies content, not a revision: an object
changed and changed back has its first digest again.
Parameters
Returns
Promise<string>
appReferenceCollection
▸ appReferenceCollection<T>(collections, validator, lookup?): T | undefined
Type parameters
Parameters
Returns
T | undefined
appIsRegionalFormat
▸ appIsRegionalFormat(tag): boolean
Whether tag is a regional format a member may save in
preferences.locale: en, or en- followed by an upper-case ISO 3166
region (en-GB) or a three-digit UN M.49 area (en-150).
Interface copy is English, so the format’s language is English too: dates
and numbers never mix another language’s month names into the interface.
Parameters
Returns
boolean
appIsTimeZone
▸ appIsTimeZone(zone): boolean
Whether zone is a time zone a member may save in preferences.timeZone:
UTC, or an IANA name such as Europe/Paris,
America/Argentina/Buenos_Aires or Etc/GMT+5, at most 64 characters.
The zone applies to recorded instants only. Calendar dates, UTC day buckets,
relative date filters and chart axes are not shifted by it.
Parameters
Returns
boolean
objectChunks
▸ objectChunks(collection, ids): string[][]
ids in calls of at most appPointReadLimit(collection), order kept.
Parameters
Returns
string[][]
labelCost
▸ labelCost(collection): number
Subjects one object of collection costs in a labels call.
Parameters
Returns
number
labelChunks
▸ labelChunks<T>(objects, collections): T[][]
objects in labels calls whose summed cost stays within the budget and
whose length stays within POINT_READ_OBJECTS, order kept. collections
gives each collection’s read cost; a collection it does not list is charged
as unbounded.
Type parameters
Parameters
Returns
T[][]
relationIdentity
▸ relationIdentity(types, sourceCollection, sourceId, relationName, targetId): string
Canonical identity of a presented relation membership. Inverses agree only
when both select the same pair of collections; projection aliases that
change the presented set retain distinct identities.
Parameters
Returns
string
resourceInventory
▸ resourceInventory(catalog): Map<AppResourceRef, AppResourceSummary>
Parameters
Returns
Map<AppResourceRef, AppResourceSummary>
expectationOutcome
▸ expectationOutcome(observation, key): AppHealthOutcome
Native verdict projection shared by assessments and temporal condition owners.
Parameters
Returns
AppHealthOutcome
seriesMeasurePoints
▸ seriesMeasurePoints(buckets): number
The max_points of a seriesMeasure request that the server splits into
exactly buckets equal time buckets when it downsamples: it makes
floor((max_points - 1) / 3) buckets, each keeping its minimum, its
maximum and its first report without the measure, plus the window’s
newest report.
Parameters
Returns
number
appSeriesMillis
▸ appSeriesMillis(micros): string
Exact decimal epoch milliseconds of a signed microsecond instant or
duration: whole milliseconds as an integer, otherwise with the fraction’s
significant digits ("1700000000000.25").
Parameters
Returns
string
appExpressionLeaves
▸ appExpressionLeaves(node): AppExpressionLeaf[]
The leaves of an expression tree, or why it is not one. At most 32
nodes and depth 8, as the native evaluator bounds them.
Parameters
Returns
AppExpressionLeaf[]
appExpressionMeasures
▸ appExpressionMeasures(node): string[]
The distinct measures an expression tree reads.
Parameters
Returns
string[]
appExpressionFields
▸ appExpressionFields(collection): AppExpressionField[]
Component-backed track expression properties, in name order. Native temporal
properties are schema-owned definitions built with defineView(…).derive.
Throws
when a declaration is not one: the name is not an admitted property and
declares no series or format, of names a series property of the same
collection whose declared measures include every measure the tree reads,
and max_gap_ms is a positive whole number of milliseconds. The native
evaluator checks the tree itself when it first runs.
Parameters
Returns
AppExpressionField[]
appSeriesFields
▸ appSeriesFields(collection): AppSeriesField[]
The declared series properties of a collection, in property name order.
Throws when a declaration does not match the admitted validator: the
derived name must not be an admitted property, it declares no format,
and series.id names an admitted string property. The application refuses
such a declaration when it builds its catalog.
Parameters
Returns
AppSeriesField[]
appSeriesTime
▸ appSeriesTime(value): bigint | null
A decimal int64 epoch-millisecond string as a bigint, or null when it is
not one (no sign, no exponent, at most 2^63 - 1).
Parameters
Returns
bigint | null
appStrongerRole
▸ appStrongerRole(a, b): AppSavedRole
The stronger of two roles.
Parameters
Returns
AppSavedRole
appShareGrantsError
▸ appShareGrantsError(people, self): string | null
Why people is not an admissible grant list for a caller whose own person
is self, or null: at most MAX_SHARE_PEOPLE grants, each a
non-empty person id named once, never the caller’s own person, each a
viewer or an editor. Whether each id is a person the caller may read is
the application’s check. The workspace runs this before it calls share,
which runs it again.
Parameters
Returns
string | null
appTimeBucketStart
▸ appTimeBucketStart(ms, unit): number
Start of a UTC bucket in exact milliseconds, flooring before the epoch too.
Parameters
Returns
number
appTimeBucketEnd
▸ appTimeBucketEnd(start, unit): number
Exclusive end of the UTC bucket starting at start.
Parameters
Returns
number
appTimeRefines
▸ appTimeRefines(stored, requested): boolean
Whether each stored bucket fits wholly inside one requested bucket.
Parameters
Returns
boolean
appFilterMatches
▸ appFilterMatches(row, filters): boolean
Whether one already-read object matches filters, all of them.
This is for a point read, where no bounded index range can carry the
predicate to the native reader: a Search Around hop that follows a reference
to one object of a view. The predicate is appFilterGroup’s own
expression tree — the same operator meanings, ranges and presence tests the
native reader evaluates — and this supplies only its primitive comparisons,
in the inherited Bijection value order (compareValues): the order the
native reader compares by, with a missing property below null, int64 below
float64, -0 below 0 and strings by their UTF-8 bytes. The object must
have been read in full by the same query, so the read set already holds
every value the predicate depends on.
Parameters
Returns
boolean