import { GraphQLClient } from '../../client/graphql'; import { TransactionCategory, CategoryGroup, TransactionTag, CreateCategoryInput, UpdateCategoryInput, CreateTagInput, BulkDeleteResult } from '../../types'; export interface CategoriesAPI { getCategories(): Promise; getCategoryById(categoryId: string): Promise; createCategory(data: CreateCategoryInput): Promise; updateCategory(categoryId: string, data: UpdateCategoryInput): Promise; deleteCategory(categoryId: string): Promise; deleteCategories(categoryIds: string[]): Promise; getCategoryGroups(): Promise; getCategoryGroupById(groupId: string): Promise; getTags(): Promise; getTagById(tagId: string): Promise; createTag(data: CreateTagInput): Promise; updateTag(tagId: string, data: Partial): Promise; deleteTag(tagId: string): Promise; setTransactionTags(transactionId: string, tagIds: string[]): Promise; addTagToTransaction(transactionId: string, tagId: string): Promise; removeTagFromTransaction(transactionId: string, tagId: string): Promise; } export declare class CategoriesAPIImpl implements CategoriesAPI { private graphql; constructor(graphql: GraphQLClient); getCategories(): Promise; getCategoryById(categoryId: string): Promise; createCategory(data: CreateCategoryInput): Promise; updateCategory(categoryId: string, data: UpdateCategoryInput): Promise; deleteCategory(categoryId: string): Promise; deleteCategories(categoryIds: string[]): Promise; getCategoryGroups(): Promise; getCategoryGroupById(groupId: string): Promise; getTags(): Promise; getTagById(tagId: string): Promise; createTag(data: CreateTagInput): Promise; updateTag(tagId: string, data: Partial): Promise; deleteTag(tagId: string): Promise; setTransactionTags(transactionId: string, tagIds: string[]): Promise; addTagToTransaction(transactionId: string, tagId: string): Promise; removeTagFromTransaction(transactionId: string, tagId: string): Promise; } //# sourceMappingURL=CategoriesAPI.d.ts.map