import { QueryHookOptions } from '@apollo/client';
import { Artifact, GetTopicRelatedFeedbackQueryVariables, Post, TopicRelatedFeedbackResultPayload } from '../../API';
import { Need } from '../../common';
import { ApolloClientService } from '../../core';
export declare class TopicRelatedFeedbackService {
    protected client: ApolloClientService;
    constructor(client: ApolloClientService);
    useGetRelatedFeedback: (options?: QueryHookOptions<{
        list: TopicRelatedFeedbackResultPayload;
    }, GetTopicRelatedFeedbackQueryVariables>) => {
        client: import("@apollo/client").ApolloClient<any>;
        observable: import("@apollo/client").ObservableQuery<{
            list: TopicRelatedFeedbackResultPayload;
        }, import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>>;
        previousData?: {
            list: TopicRelatedFeedbackResultPayload;
        };
        error?: import("@apollo/client").ApolloError;
        errors?: readonly import("graphql").GraphQLFormattedError[];
        loading: boolean;
        networkStatus: import("@apollo/client").NetworkStatus;
        called: boolean;
        startPolling: (pollInterval: number) => void;
        stopPolling: () => void;
        subscribeToMore: <TSubscriptionData = {
            list: TopicRelatedFeedbackResultPayload;
        }, TSubscriptionVariables extends import("@apollo/client").OperationVariables = import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>>(options: import("@apollo/client").SubscribeToMoreOptions<{
            list: TopicRelatedFeedbackResultPayload;
        }, TSubscriptionVariables, TSubscriptionData>) => () => void;
        updateQuery: <TVars extends import("@apollo/client").OperationVariables = import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>>(mapFn: (previousQueryResult: {
            list: TopicRelatedFeedbackResultPayload;
        }, options: Pick<import("@apollo/client").WatchQueryOptions<TVars, {
            list: TopicRelatedFeedbackResultPayload;
        }>, "variables">) => {
            list: TopicRelatedFeedbackResultPayload;
        }) => void;
        refetch: (variables?: Partial<import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>>) => Promise<import("@apollo/client").ApolloQueryResult<{
            list: TopicRelatedFeedbackResultPayload;
        }>>;
        reobserve: (newOptions?: Partial<import("@apollo/client").WatchQueryOptions<import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>, {
            list: TopicRelatedFeedbackResultPayload;
        }>>, newNetworkStatus?: import("@apollo/client").NetworkStatus) => Promise<import("@apollo/client").ApolloQueryResult<{
            list: TopicRelatedFeedbackResultPayload;
        }>>;
        variables: import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>;
        fetchMore: <TFetchData = {
            list: TopicRelatedFeedbackResultPayload;
        }, TFetchVars extends import("@apollo/client").OperationVariables = import("../../API").Exact<{
            organizationId: string;
            searchTerm: string;
            skip: number;
            take: number;
            topicId: string;
        }>>(fetchMoreOptions: import("@apollo/client").FetchMoreQueryOptions<TFetchVars, TFetchData> & {
            updateQuery?: (previousQueryResult: {
                list: TopicRelatedFeedbackResultPayload;
            }, options: {
                fetchMoreResult: TFetchData;
                variables: TFetchVars;
            }) => {
                list: TopicRelatedFeedbackResultPayload;
            };
        }) => Promise<import("@apollo/client").ApolloQueryResult<TFetchData>>;
        data: {
            feedData: (Artifact | Need | Post)[];
        };
    };
    replaceAliasedKeys(item: Artifact | Post, aliasKey: string): {
        [k: string]: any;
    };
}
