import { PerspectiveHandle } from "../perspectives/PerspectiveHandle";
import { PerspectiveExpression, PerspectiveInput, PerspectiveUnsignedInput } from "../perspectives/Perspective";
import { DID } from "../DID";
import { OnlineAgent } from "../language/Language";
/**
 * Resolver classes are used here to define the GraphQL schema
 * (through the type-graphql annotations)
 * and are spawned in the client tests in Ad4mClient.test.ts.
 * For the latter, they return test fixtures.
 */
export default class NeighbourhoodResolver {
    neighbourhoodPublishFromPerspective(perspectiveUUID: string, linkLanguage: string, meta: PerspectiveInput): string;
    neighbourhoodJoinFromUrl(url: string, pubSub: any): PerspectiveHandle;
    neighbourhoodOtherAgents(perspectiveUUID: string): DID[];
    neighbourhoodHasTelepresenceAdapter(perspectiveUUID: string): boolean;
    neighbourhoodOnlineAgents(perspectiveUUID: string): OnlineAgent[];
    neighbourhoodSetOnlineStatus(perspectiveUUID: string, status: PerspectiveInput): boolean;
    neighbourhoodSetOnlineStatusU(perspectiveUUID: string, status: PerspectiveUnsignedInput): boolean;
    neighbourhoodSendSignal(perspectiveUUID: string, recipient: DID, signal: PerspectiveInput): boolean;
    neighbourhoodSendSignalU(perspectiveUUID: string, recipient: DID, signal: PerspectiveUnsignedInput): boolean;
    neighbourhoodSendBroadcast(perspectiveUUID: string, signal: PerspectiveInput): boolean;
    neighbourhoodSendBroadcastU(perspectiveUUID: string, signal: PerspectiveUnsignedInput): boolean;
    neighbourhoodSignal(pID: string): PerspectiveExpression;
}
