import { UpdateResponse } from '@dvn/core/api';
import { GetListResponse } from '@dvn/core/api/dto/list';
import { Product } from '../models/product';
import { Workspace } from '../models/workspace';
import { WorkspaceOwnership } from '../models/workspace-ownership';
import { ProductSettingsTaban } from "../models/product-settings-taban";
import { ProductSettingsKimlik } from "../models/product-settings-kimlik";
export declare class DevingenApi {
  private api;
  constructor(endpoint: string, defaultHeaders?: object);
  createProduct: (body: Partial<Product>) => Promise<Workspace>;
  getProducts: (query?: {}) => Promise<GetListResponse<Product>>;
  getProduct: (id: string) => Promise<Product>;
  updateProduct: (id: string, body: Partial<Product>) => Promise<UpdateResponse>;
  deleteProduct: (id: string) => Promise<unknown>;
  createWorkspace: (name: string) => Promise<Workspace>;
  updateWorkspace: (id: string, body: Partial<Workspace>) => Promise<UpdateResponse>;
  deleteWorkspace: (id: string) => Promise<unknown>;
  getWorkspaceOwnerships: () => Promise<GetListResponse<WorkspaceOwnership>>;
  createProductSettingsKimlik: (productId: string, databaseProductId: string, webhookAddress: string, headers: {
    [key: string]: string;
  }) => Promise<ProductSettingsKimlik>;
  findProductSettingsKimlik: (productId: string) => Promise<ProductSettingsKimlik>;
  createProductSettingsTaban: (productId: string) => Promise<ProductSettingsTaban>;
  findProductSettingsTaban: (productId: string) => Promise<ProductSettingsTaban>;
}
