import type { SkillDefinition, SkillFramework, SkillModule, Role, SkillVisibility, SkillResolveReq, SkillResolveResp } from '@teachagenthub/contracts';
export declare class RegistryService {
    private readonly logger;
    private readonly defaultPolicy;
    private readonly skills;
    private readonly localProvider;
    private readonly cloudProvider;
    private readonly cacheByTenant;
    listSkills(filters?: {
        framework?: SkillFramework;
        module?: SkillModule;
        tenantId?: string;
        userId?: string;
        userRole?: Role;
        visibility?: SkillVisibility;
    }): Promise<SkillDefinition[]>;
    getSkill(skillId: string, tenantId?: string, userId?: string, userRole?: Role): Promise<SkillDefinition | undefined>;
    resolveSkills(req: SkillResolveReq): Promise<SkillResolveResp>;
    private loadCatalogByMode;
    private loadCloudThenCache;
    private loadValidCachedCatalog;
    private normalizeCatalog;
    private canAccessSkill;
    private resolveTenantId;
    private getCatalogMode;
    private getCloudBaseUrl;
    private getCloudTimeoutMs;
    private getCacheTtlMs;
    private getRefreshIntervalMs;
    private buildDag;
    private getDefaultFramework;
}
