@honua/sdk-js
    Preparing search index...

    Interface CapabilityAwareSource<T>

    Runtime Source returned by Dataset.source() and connect().source().

    A v2 profile, when attached, is the authoritative truth. Legacy sources without a profile continue to answer built-in checks from their existing ReadonlySet and return false for extension identifiers.

    interface CapabilityAwareSource<T = Record<string, unknown>> {
        attachments: AttachmentApi;
        capabilities: Capabilities;
        capabilityProfile?: CapabilityProfile;
        descriptor: SourceDescriptor;
        adapter<K extends AdapterKind>(kind: K): AdapterFor<K> | undefined;
        applyEdits(envelope: EditEnvelope<T>): Promise<EditResult>;
        protocol<K extends AdapterKind>(kind: K): AdapterFor<K> | undefined;
        query(request?: Query<T>): Promise<Result<T>>;
        queryAggregate(
            request: Query<T> & { aggregation: AggregationSpec },
        ): Promise<Result<T>>;
        queryAll(request?: Query<T>): Promise<Result<T>>;
        queryExtent(
            request?: Query<T>,
        ): Promise<{ count?: number; extent: HonuaExtent | null }>;
        queryObjectIds(request?: Query<T>): Promise<readonly FeatureId[]>;
        queryRelated<R = Record<string, unknown>>(
            request: RelatedQuery,
        ): Promise<RelatedResult<R>>;
        stream(request?: Query<T>): AsyncGenerator<Result<T>, void, undefined>;
        supports<const C extends CapabilityId>(
            capability: C,
        ): this is CapabilityAwareSource<T> & SupportedSourceCapability<C>;
    }

    Type Parameters

    • T = Record<string, unknown>

    Hierarchy (View Summary)

    Index

    Properties

    attachments: AttachmentApi

    Attachment operations namespace; methods throw if attachments is missing.

    capabilities: Capabilities
    capabilityProfile?: CapabilityProfile
    descriptor: SourceDescriptor

    Methods