import type { ToolOperations } from './types.js';
import { createLocalToolOperations } from './local.js';

let defaultInstance: ToolOperations | null = null;

export function getDefaultOperations(): ToolOperations {
  if (!defaultInstance) {
    defaultInstance = createLocalToolOperations();
  }
  return defaultInstance;
}

export type { ToolOperations, FileOperations, ProcessOperations, SearchOperations } from './types.js';
export type { DirEntry, ProcessExecOptions, ProcessExecResult, SearchExecResult } from './types.js';
export { createLocalToolOperations } from './local.js';
