/**
 * Compatibility shim for legacy extensions importing the package root of
 * `@pk-nerdsaver-ai/pi-coding-agent` (or one of its aliased scopes like
 * `@earendil-works/pi-coding-agent` or `@mariozechner/pi-coding-agent`).
 *
 * The coding-agent package's own barrel (`./src/index.ts`) cannot be listed
 * as a `bun --compile` extra entrypoint alongside the CLI entry without
 * silently breaking the main binary's startup (see issue #1474 follow-up).
 * Routing legacy plugin imports through this sibling shim sidesteps that
 * conflict: bun bundles a distinct entry whose path differs from the CLI
 * entry, while still re-exporting the canonical surface so plugins observe
 * the same module identity as a direct `@pk-nerdsaver-ai/pi-coding-agent` import.
 */
import type { TSchema } from "@pk-nerdsaver-ai/pi-ai";
import { Settings } from "../config/settings";
import type { ToolDefinition } from "./extensions/types";
import { Type } from "./typebox";
export interface ParsedFrontmatter<T extends Record<string, unknown> = Record<string, unknown>> {
    frontmatter: T;
    body: string;
}
export declare function parseFrontmatter<T extends Record<string, unknown> = Record<string, unknown>>(content: string): ParsedFrontmatter<T>;
export declare function stripFrontmatter(content: string): string;
export declare function defineTool<TParams extends TSchema = TSchema, TDetails = unknown>(tool: ToolDefinition<TParams, TDetails>): ToolDefinition<TParams, TDetails>;
export declare function createCodingTools(cwd: string): ToolDefinition[];
export declare const SettingsManager: {
    readonly create: (cwd: string, agentDir?: string) => Promise<Settings>;
    readonly inMemory: () => Settings;
};
export * from "../index";
export { Type };
