/** * @license * Copyright 2022-2026 Matter.js Authors * SPDX-License-Identifier: Apache-2.0 */ import type { ClientNode } from "#node/ClientNode.js"; import type { ServerNode } from "#node/ServerNode.js"; import { NodeSession } from "@matter/protocol"; import { Discovery } from "./Discovery.js"; import { ParallelPaseDiscovery } from "./ParallelPaseDiscovery.js"; /** * Discovers commissionable devices and establishes a PASE session with the first one that responds. * * All discovered candidates attempt PASE in parallel; the first to succeed wins. Discovery stops at PASE * time and the abort signal fires to cancel remaining in-flight PASE attempts. Any candidate that * establishes PASE after the winner cleans up its session cleanly. {@link onComplete} returns the winning * {@link NodeSession}. * * This is the discovery counterpart to {@link CommissioningDiscovery}: whereas that class performs a full * commissioning flow, this class stops at PASE and returns the raw session for callers that manage their own * commissioning (e.g. split-commissioning scenarios or raw PASE channel establishment for chip-testing). * * Default discovery timeout is 60 seconds when not specified by the caller. */ export declare class PaseDiscovery extends ParallelPaseDiscovery { #private; constructor(owner: ServerNode, options: PaseDiscovery.Options); protected get cleanupLabel(): string; protected get failureMessage(): string; protected onDiscovered(node: ClientNode): void; } export declare namespace PaseDiscovery { type Options = Discovery.InstanceOptions & { /** PASE passcode for the device. */ passcode: number; }; } //# sourceMappingURL=PaseDiscovery.d.ts.map