import type { ResolvedRole, ResolvedFunction } from "../types.ts"; /** * Options for bootstrapping roles. */ export interface BootstrapRolesOptions { /** Path to the rolebox directory containing role.yaml files. */ roleboxDir: string; /** Path to the global skills directory. */ globalSkillsDir: string; /** OpenCode config directory (parent of rolebox/ and skills/). */ configDir: string; /** Path to the built-in functions directory (rolebox package's functions/). */ builtinDir: string; /** Map to populate with roleId/subagentId → resolved functions. */ roleFunctionsMap: Map; } /** * Result of bootstrapping roles. */ export interface BootstrapRolesResult { /** Number of roles discovered on disk. */ discovered: number; /** Number of roles successfully resolved. */ resolved: number; /** Number of roles that failed resolution. */ skipped: number; /** The resolved roles array. */ resolvedRoles: ResolvedRole[]; } /** * Discover and resolve all roles from the given directories. * * This is the shared entry point for both OpenCode and Pi platforms. * It populates the provided Maps in-place (same behavior as the original * inline code in index.ts and pi-extension.ts). */ export declare function bootstrapRoles(opts: BootstrapRolesOptions): Promise; //# sourceMappingURL=bootstrap.d.ts.map