import type { BaseParams, Promisable } from '@ariestools/sdk'; import { Base } from '@ariestools/sdk'; import type { XyoAddress } from '@xyo-network/sdk-protocol'; import type { ModuleFilterOptions, ModuleIdentifier, ModuleInstance, ModuleResolverInstance, ObjectFilterOptions } from '../module-model/index.js'; import { ObjectResolverPriority } from '../module-model/index.js'; export interface ModuleResolverParams extends BaseParams { priority?: ObjectResolverPriority; root: ModuleInstance; } export declare abstract class AbstractModuleResolver extends Base implements ModuleResolverInstance { get priority(): ObjectResolverPriority; set priority(value: ObjectResolverPriority); get root(): ModuleInstance; resolve(): Promise; resolve(all: '*', options?: ModuleFilterOptions): Promise; resolve(id: ModuleIdentifier, options?: ModuleFilterOptions): Promise; resolvePrivate(all: '*', options?: ObjectFilterOptions): Promise; resolvePrivate(id: ModuleIdentifier, options?: ObjectFilterOptions): Promise; abstract addResolver(resolver: ModuleResolverInstance): this; abstract removeResolver(resolver: ModuleResolverInstance): this; abstract resolveHandler(id: ModuleIdentifier, options?: ModuleFilterOptions): Promisable; abstract resolveIdentifier(id: ModuleIdentifier, options?: ObjectFilterOptions): Promisable; } //# sourceMappingURL=AbstractModuleResolver.d.ts.map