import { z } from 'zod';
import { type APIClient } from '../api.ts';
export declare const TableColumnSchema: z.ZodObject<{
    name: z.ZodString;
    data_type: z.ZodString;
    is_nullable: z.ZodBoolean;
    default_value: z.ZodOptional<z.ZodString>;
    is_primary_key: z.ZodBoolean;
}, z.core.$strip>;
export declare const TableSchemaSchema: z.ZodObject<{
    table_name: z.ZodString;
    columns: z.ZodArray<z.ZodObject<{
        name: z.ZodString;
        data_type: z.ZodString;
        is_nullable: z.ZodBoolean;
        default_value: z.ZodOptional<z.ZodString>;
        is_primary_key: z.ZodBoolean;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const TablesResponseSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    success: z.ZodLiteral<false>;
    message: z.ZodString;
    code: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
    success: z.ZodLiteral<true>;
    data: z.ZodObject<{
        tables: z.ZodArray<z.ZodObject<{
            table_name: z.ZodString;
            columns: z.ZodArray<z.ZodObject<{
                name: z.ZodString;
                data_type: z.ZodString;
                is_nullable: z.ZodBoolean;
                default_value: z.ZodOptional<z.ZodString>;
                is_primary_key: z.ZodBoolean;
            }, z.core.$strip>>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>], "success">;
export type TableColumn = z.infer<typeof TableColumnSchema>;
export type TableSchema = z.infer<typeof TableSchemaSchema>;
declare const DbTablesRequestSchema: z.ZodObject<{
    database: z.ZodString;
    orgId: z.ZodString;
    region: z.ZodString;
}, z.core.$strip>;
type DbTablesRequest = z.infer<typeof DbTablesRequestSchema>;
export declare function dbTables(client: APIClient, request: DbTablesRequest): Promise<TableSchema[]>;
export declare function generateCreateTableSQL(table: TableSchema): string;
export {};
//# sourceMappingURL=tables.d.ts.map