import { BasePaginatedRepository } from './base.repository';
import { GraphQLClientService } from '../core/graphql/graphql-client.service';
import { Product } from '../models/product.model';
/**
 * Repository for product operations
 */
export declare class ProductRepository extends BasePaginatedRepository<Product, string> {
    constructor(graphqlClient: GraphQLClientService);
    /**
     * Get the GraphQL query for finding by ID
     */
    protected getFindByIdQuery(): string;
    /**
     * Get the GraphQL query for finding all
     */
    protected getFindAllQuery(): string;
    /**
     * Get the GraphQL mutation for creating
     */
    protected getCreateMutation(): string;
    /**
     * Get the GraphQL mutation for updating
     */
    protected getUpdateMutation(): string;
    /**
     * Get the GraphQL mutation for deleting
     */
    protected getDeleteMutation(): string;
    /**
     * Get the GraphQL query for pagination
     */
    protected getFindWithPaginationQuery(): string;
    /**
     * Get the result path for finding by ID
     */
    protected getFindByIdResultPath(): string;
    /**
     * Get the result path for finding all
     */
    protected getFindAllResultPath(): string;
    /**
     * Get the result path for creating
     */
    protected getCreateResultPath(): string;
    /**
     * Get the result path for updating
     */
    protected getUpdateResultPath(): string;
    /**
     * Get the result path for deleting
     */
    protected getDeleteResultPath(): string;
    /**
     * Get the result path for pagination
     */
    protected getFindWithPaginationResultPath(): string;
}
