import { Organization, OrganizationFilter } from '../API';
import { CRUDService } from '../core';
export declare class OrganizationService extends CRUDService<Organization> {
    validate: (filter: OrganizationFilter) => Promise<boolean>;
    get update(): (input: Partial<Record<"children" | "plans" | "accounts" | "users" | "admins" | "integrations", import("../../..").ModelWithId[]> & Record<"parent", import("../../..").ModelWithId>> & Omit<import("../API").UpdateOrganization, "children" | "parent" | "plans" | "accounts" | "users" | "admins" | "integrations"> & {
        id: string;
    }, options?: import("../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").UpdateOneOrganizationMutation, import("../API").Exact<{
        input: import("../API").UpdateOneOrganizationInput;
    }>>>) => Promise<{
        __typename?: "Organization";
        id: string;
        initials: string;
        isCustomPortalEnabled?: boolean;
        defaultCSATCooldown?: number;
        defaultNPSCooldown?: number;
        propertyCategoryOrder?: import("../API").PropertyCategoryOrder;
        name: string;
        authCode?: string;
        plans: {
            __typename?: "OrganizationPlan";
            id: string;
            name: import("../API").Plan;
        }[];
        teamProfile?: {
            __typename?: "TeamProfile";
            name?: string;
            image?: string;
            id: string;
            description?: string;
            alwaysUse?: boolean;
            created_at: any;
            updated_at: any;
        };
    }>;
    get useUpdate(): (mainOptions?: import("../core").CacheUpdateOptions<import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").UpdateOneOrganizationMutation, import("../API").Exact<{
        input: import("../API").UpdateOneOrganizationInput;
    }>>>>) => [({ id, ...input }: Partial<Record<"children" | "plans" | "accounts" | "users" | "admins" | "integrations", import("../../..").ModelWithId[]> & Record<"parent", import("../../..").ModelWithId>> & import("../API").UpdateOrganization & {
        id: string;
    }, options?: import("../core").CacheUpdateOptions<import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").UpdateOneOrganizationMutation, import("../API").Exact<{
        input: import("../API").UpdateOneOrganizationInput;
    }>>>>) => Promise<Record<string, unknown>>, import("@apollo/client").MutationResult<{
        updateOne: Record<string, unknown>;
    }>];
    get get(): (id: string, options?: Omit<import("@apollo/client").QueryOptions<import("../API").Exact<{
        id: string;
    }>, import("../API").OrganizationGetQuery>, "query">) => Promise<{
        __typename?: "Organization";
        id: string;
        created_at: any;
        updated_at: any;
        initials: string;
        isCustomPortalEnabled?: boolean;
        name: string;
        authCode?: string;
        defaultCSATCooldown?: number;
        defaultNPSCooldown?: number;
        propertyCategoryOrder?: import("../API").PropertyCategoryOrder;
        plans: {
            __typename?: "OrganizationPlan";
            id: string;
            name: import("../API").Plan;
        }[];
        teamProfile?: {
            __typename?: "TeamProfile";
            name?: string;
            image?: string;
            id: string;
            description?: string;
            alwaysUse?: boolean;
            created_at: any;
            updated_at: any;
        };
    }>;
    get useGet(): (options: import("../core").ServiceQueryHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").OrganizationGetQuery, import("../API").Exact<{
        id: string;
    }>>>) => {
        isLoading: boolean;
        isRefetching: boolean;
        hasMore: any;
        refetching: boolean;
        client: import("@apollo/client").ApolloClient<any>;
        observable: import("@apollo/client").ObservableQuery<import("../API").OrganizationGetQuery, import("../API").Exact<{
            id: string;
        }>>;
        data: import("../API").OrganizationGetQuery;
        previousData?: import("../API").OrganizationGetQuery;
        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 = import("../API").OrganizationGetQuery, TSubscriptionVariables extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            id: string;
        }>>(options: import("@apollo/client").SubscribeToMoreOptions<import("../API").OrganizationGetQuery, TSubscriptionVariables, TSubscriptionData>) => () => void;
        updateQuery: <TVars extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            id: string;
        }>>(mapFn: (previousQueryResult: import("../API").OrganizationGetQuery, options: Pick<import("@apollo/client").WatchQueryOptions<TVars, import("../API").OrganizationGetQuery>, "variables">) => import("../API").OrganizationGetQuery) => void;
        refetch: (variables?: Partial<import("../API").Exact<{
            id: string;
        }>>) => Promise<import("@apollo/client").ApolloQueryResult<import("../API").OrganizationGetQuery>>;
        reobserve: (newOptions?: Partial<import("@apollo/client").WatchQueryOptions<import("../API").Exact<{
            id: string;
        }>, import("../API").OrganizationGetQuery>>, newNetworkStatus?: import("@apollo/client").NetworkStatus) => Promise<import("@apollo/client").ApolloQueryResult<import("../API").OrganizationGetQuery>>;
        variables: import("../API").Exact<{
            id: string;
        }>;
        fetchMore: <TFetchData = import("../API").OrganizationGetQuery, TFetchVars extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            id: string;
        }>>(fetchMoreOptions: import("@apollo/client").FetchMoreQueryOptions<TFetchVars, TFetchData> & {
            updateQuery?: (previousQueryResult: import("../API").OrganizationGetQuery, options: {
                fetchMoreResult: TFetchData;
                variables: TFetchVars;
            }) => import("../API").OrganizationGetQuery;
        }) => Promise<import("@apollo/client").ApolloQueryResult<TFetchData>>;
    };
    get useList(): (options: import("../core").CacheUpdateOptions<import("../core").ServiceQueryHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").OrganizationListQuery, import("../API").Exact<{
        filter: OrganizationFilter;
        paging?: import("../API").CursorPaging;
        sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
    }>>>>) => {
        isLoading: boolean;
        isRefetching: boolean;
        hasMore: any;
        refetching: boolean;
        client: import("@apollo/client").ApolloClient<any>;
        observable: import("@apollo/client").ObservableQuery<import("../API").OrganizationListQuery, import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>>;
        data: import("../API").OrganizationListQuery;
        previousData?: import("../API").OrganizationListQuery;
        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 = import("../API").OrganizationListQuery, TSubscriptionVariables extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>>(options: import("@apollo/client").SubscribeToMoreOptions<import("../API").OrganizationListQuery, TSubscriptionVariables, TSubscriptionData>) => () => void;
        updateQuery: <TVars extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>>(mapFn: (previousQueryResult: import("../API").OrganizationListQuery, options: Pick<import("@apollo/client").WatchQueryOptions<TVars, import("../API").OrganizationListQuery>, "variables">) => import("../API").OrganizationListQuery) => void;
        refetch: (variables?: Partial<import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>>) => Promise<import("@apollo/client").ApolloQueryResult<import("../API").OrganizationListQuery>>;
        reobserve: (newOptions?: Partial<import("@apollo/client").WatchQueryOptions<import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>, import("../API").OrganizationListQuery>>, newNetworkStatus?: import("@apollo/client").NetworkStatus) => Promise<import("@apollo/client").ApolloQueryResult<import("../API").OrganizationListQuery>>;
        variables: import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>;
        fetchMore: <TFetchData = import("../API").OrganizationListQuery, TFetchVars extends import("@apollo/client").OperationVariables = import("../API").Exact<{
            filter: OrganizationFilter;
            paging?: import("../API").CursorPaging;
            sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
        }>>(fetchMoreOptions: import("@apollo/client").FetchMoreQueryOptions<TFetchVars, TFetchData> & {
            updateQuery?: (previousQueryResult: import("../API").OrganizationListQuery, options: {
                fetchMoreResult: TFetchData;
                variables: TFetchVars;
            }) => import("../API").OrganizationListQuery;
        }) => Promise<import("@apollo/client").ApolloQueryResult<TFetchData>>;
    };
    get useLazyList(): (options?: import("../core").CacheUpdateOptions<import("../core").ServiceLazyQueryHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").OrganizationListQuery, import("../API").Exact<{
        filter: OrganizationFilter;
        paging?: import("../API").CursorPaging;
        sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
    }>>>>) => import("@apollo/client").LazyQueryResultTuple<import("../API").OrganizationListQuery, import("../API").Exact<{
        filter: OrganizationFilter;
        paging?: import("../API").CursorPaging;
        sorting?: import("../API").OrganizationSort | import("../API").OrganizationSort[];
    }>>;
}
