import { generate_interfaces } from '@plastichub/osr-commons'
import { 
    FileListingOptionsSchema, 
    FileRemovalOptionsSchema,
    GitCommitSchema,
    GitRevertSchema,
    GitSwitchVersionSchema,
    InvokeToolSchema,
    ToolListingOptionsSchema,
    TerminalCommandSchema,
    ListCommandSchema,
    NpmRunSchema
} from '../zod_schemas'

export const types = async () => {
    return generate_interfaces([
        FileListingOptionsSchema,
        FileRemovalOptionsSchema,
        GitCommitSchema,
        GitRevertSchema,
        GitSwitchVersionSchema,
        InvokeToolSchema,
        ToolListingOptionsSchema,
        TerminalCommandSchema,
        ListCommandSchema,
        NpmRunSchema
    ], 'src/zod_types.ts')
}