import type { ApiSchemaListItem, CreateSchemaRequest } from '@/types/api';
export declare function useGetSchemas(params?: {
    page?: number;
    limit?: number;
    search?: string;
}): {
    schemas: ApiSchemaListItem[];
    isLoading: boolean;
    error: any;
    refresh: import("swr").KeyedMutator<ApiSchemaListItem[]>;
};
export declare function useGetSchemaById(id: string | null): {
    schema: import("@/types/api").ApiSchema | undefined;
    isLoading: boolean;
    error: any;
    refresh: import("swr").KeyedMutator<import("@/types/api").ApiSchema>;
};
export declare function useCreateSchema(): {
    createSchema: (schemaData: CreateSchemaRequest) => Promise<import("@/types/api").ApiSchema>;
};
export declare function useUpdateSchema(): {
    updateSchema: (id: string, schemaData: CreateSchemaRequest) => Promise<import("@/types/api").ApiSchema>;
};
export declare function useDeleteSchema(): {
    deleteSchema: (id: string, dropDatabase?: boolean) => Promise<import("@/types/api").DeleteSchemaResponse>;
};
export declare function useValidateSchema(): {
    validateSchema: (schemaData: CreateSchemaRequest) => Promise<any>;
};
export declare function useExportSchemaSQL(): {
    exportSchemaSQL: (id: string) => Promise<{
        sql: string;
        generatedAt: string;
    }>;
};
export declare function useRenameSchema(): {
    renameSchema: (id: string, newName: string) => Promise<import("@/types/api").ApiSchema>;
};
//# sourceMappingURL=useSchemas.d.ts.map