import { ModelWithId } from '@parlor/components';
import { Property, SourceOfData } from '../../API';
import { CRUDService, ICrudService } from '../../core';
export declare class PropertyService extends CRUDService<Property> {
    protected hasOneModels: ICrudService<Property>['hasOneModels'];
    protected serializePayload<Response extends Record<string, any>>(input: any): {
        input: Response;
        setHasManyRelations: (modelId: string) => Promise<Awaited<unknown>[]>;
    };
    get create(): (input: Partial<Record<never, ModelWithId[]> & Record<import("../../core").HasOneRelationsOf<Property>, ModelWithId>> & Omit<import("../../API").PropertyInput, import("../../core").HasOneRelationsOf<Property>>, options?: import("../../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyCreateOneMutation, import("../../API").Exact<{
        input: import("../../API").PropertyInput;
    }>>>) => Promise<{
        __typename?: "Property";
        id: string;
        dataType: import("../../API").DataType;
        organizationID: string;
        userID?: string;
        accountID?: string;
        opportunityID?: string;
        ticketID?: string;
        parlorKey: string;
        objectSource?: SourceOfData;
        type: import("../../API").PropertyType;
        name: string;
        TextValue?: string;
        NumberValue?: number;
        DateValue?: any;
        BooleanValue?: boolean;
        isArchived?: boolean;
        isDisplayed: boolean;
        created_at: any;
        updated_at: any;
    }>;
    get useCreate(): (options?: import("../../core").CacheUpdateOptions<import("../../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyCreateOneMutation, import("../../API").Exact<{
        input: import("../../API").PropertyInput;
    }>>>>) => [(payload: import("../../core").InputAndRelations<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyCreateOneMutation, import("../../API").Exact<{
        input: import("../../API").PropertyInput;
    }>>, Property>) => Promise<{
        __typename?: "Property";
        id: string;
        dataType: import("../../API").DataType;
        organizationID: string;
        userID?: string;
        accountID?: string;
        opportunityID?: string;
        ticketID?: string;
        parlorKey: string;
        objectSource?: SourceOfData;
        type: import("../../API").PropertyType;
        name: string;
        TextValue?: string;
        NumberValue?: number;
        DateValue?: any;
        BooleanValue?: boolean;
        isArchived?: boolean;
        isDisplayed: boolean;
        created_at: any;
        updated_at: any;
    }>, import("@apollo/client").MutationResult<any>];
    get update(): (input: ModelWithId<Partial<Partial<Record<never, ModelWithId[]> & Record<import("../../core").HasOneRelationsOf<Property>, ModelWithId>> & Omit<import("../../API").PropertyPartialInput, import("../../core").HasOneRelationsOf<Property>> & {
        id: string;
    }>>, options?: import("../../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyUpdateOneMutation, import("../../API").Exact<{
        input: import("../../API").UpdateOnePropertyInput;
    }>>>) => Promise<{
        __typename?: "Property";
        id: string;
        dataType: import("../../API").DataType;
        organizationID: string;
        userID?: string;
        accountID?: string;
        opportunityID?: string;
        ticketID?: string;
        parlorKey: string;
        objectSource?: SourceOfData;
        type: import("../../API").PropertyType;
        name: string;
        TextValue?: string;
        NumberValue?: number;
        DateValue?: any;
        BooleanValue?: boolean;
        isArchived?: boolean;
        isDisplayed: 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").PropertyUpdateOneMutation, import("../../API").Exact<{
        input: import("../../API").UpdateOnePropertyInput;
    }>>>>) => [({ id, ...input }: Partial<Record<never, ModelWithId[]> & Record<import("../../core").HasOneRelationsOf<Property>, ModelWithId>> & import("../../API").PropertyPartialInput & {
        id: string;
    }, options?: import("../../core").CacheUpdateOptions<import("../../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyUpdateOneMutation, import("../../API").Exact<{
        input: import("../../API").UpdateOnePropertyInput;
    }>>>>) => Promise<any>, import("@apollo/client").MutationResult<any>];
    get list(): (input: import("../../API").Exact<{
        filter?: import("../../API").PropertyFilter;
        paging?: import("../../API").CursorPaging;
        sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
    }>, options?: import("../../core").ServiceQueryOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyListQuery, import("../../API").Exact<{
        filter?: import("../../API").PropertyFilter;
        paging?: import("../../API").CursorPaging;
        sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
    }>>>) => Promise<{
        __typename?: "PropertyConnection";
        totalCount: number;
        edges: {
            __typename?: "PropertyEdge";
            cursor: any;
            node: {
                __typename?: "Property";
                id: string;
                name: string;
                dataType: import("../../API").DataType;
                TextValue?: string;
                NumberValue?: number;
                BooleanValue?: boolean;
                DateValue?: any;
                isDisplayed: boolean;
                isArchived?: boolean;
                parlorKey: string;
                type: import("../../API").PropertyType;
                objectSource?: SourceOfData;
            };
        }[];
        pageInfo: {
            __typename?: "PageInfo";
            hasNextPage?: boolean;
            startCursor?: any;
            endCursor?: any;
            hasPreviousPage?: boolean;
        };
    }>;
    get useList(): (options: import("../../core").CacheUpdateOptions<import("../../core").ServiceQueryHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyListQuery, import("../../API").Exact<{
        filter?: import("../../API").PropertyFilter;
        paging?: import("../../API").CursorPaging;
        sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
    }>>>>) => {
        isLoading: boolean;
        isRefetching: boolean;
        hasMore: any;
        refetching: boolean;
        client: import("@apollo/client").ApolloClient<any>;
        observable: import("@apollo/client").ObservableQuery<import("../../API").PropertyListQuery, import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>;
        data: import("../../API").PropertyListQuery;
        previousData?: import("../../API").PropertyListQuery;
        error?: import("@apollo/client").ApolloError;
        loading: boolean;
        networkStatus: import("@apollo/client").NetworkStatus;
        called: boolean;
        variables: import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>;
        startPolling: (pollInterval: number) => void;
        stopPolling: () => void;
        subscribeToMore: <TSubscriptionData = import("../../API").PropertyListQuery, TSubscriptionVariables = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(options: import("@apollo/client").SubscribeToMoreOptions<import("../../API").PropertyListQuery, TSubscriptionVariables, TSubscriptionData>) => () => void;
        updateQuery: <TVars = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(mapFn: (previousQueryResult: import("../../API").PropertyListQuery, options: Pick<import("@apollo/client").WatchQueryOptions<TVars, import("../../API").PropertyListQuery>, "variables">) => import("../../API").PropertyListQuery) => void;
        refetch: (variables?: Partial<import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>) => Promise<import("@apollo/client").ApolloQueryResult<import("../../API").PropertyListQuery>>;
        reobserve: (newOptions?: Partial<import("@apollo/client").WatchQueryOptions<import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>, import("../../API").PropertyListQuery>>, newNetworkStatus?: import("@apollo/client").NetworkStatus) => Promise<import("@apollo/client").ApolloQueryResult<import("../../API").PropertyListQuery>>;
        fetchMore: <TFetchData = import("../../API").PropertyListQuery, TFetchVars = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(fetchMoreOptions: import("@apollo/client").FetchMoreQueryOptions<TFetchVars, TFetchData> & {
            updateQuery?: (previousQueryResult: import("../../API").PropertyListQuery, options: {
                fetchMoreResult: TFetchData;
                variables: TFetchVars;
            }) => import("../../API").PropertyListQuery;
        }) => Promise<import("@apollo/client").ApolloQueryResult<TFetchData>>;
    };
    get useLazyList(): (options?: import("../../core").CacheUpdateOptions<import("../../core").ServiceLazyQueryHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyListQuery, import("../../API").Exact<{
        filter?: import("../../API").PropertyFilter;
        paging?: import("../../API").CursorPaging;
        sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
    }>>>>) => import("@apollo/client").LazyQueryResultTuple<import("../../API").PropertyListQuery, import("../../API").Exact<{
        filter?: import("../../API").PropertyFilter;
        paging?: import("../../API").CursorPaging;
        sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
    }>>;
    get delete(): (id: string, options?: import("../../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../../API").PropertyDeleteOneMutation, import("../../API").Exact<{
        input: import("../../API").DeleteOnePropertyInput;
    }>>>) => Promise<{
        __typename?: "PropertyDeleteResponse";
        id?: string;
    }>;
    useListAccountLogo(accountID: string): {
        isLoading: boolean;
        isRefetching: boolean;
        hasMore: any;
        refetching: boolean;
        client: import("@apollo/client").ApolloClient<any>;
        observable: import("@apollo/client").ObservableQuery<import("../../API").PropertyListQuery, import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>;
        data: import("../../API").PropertyListQuery;
        previousData?: import("../../API").PropertyListQuery;
        error?: import("@apollo/client").ApolloError;
        loading: boolean;
        networkStatus: import("@apollo/client").NetworkStatus;
        called: boolean;
        variables: import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>;
        startPolling: (pollInterval: number) => void;
        stopPolling: () => void;
        subscribeToMore: <TSubscriptionData = import("../../API").PropertyListQuery, TSubscriptionVariables = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(options: import("@apollo/client").SubscribeToMoreOptions<import("../../API").PropertyListQuery, TSubscriptionVariables, TSubscriptionData>) => () => void;
        updateQuery: <TVars = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(mapFn: (previousQueryResult: import("../../API").PropertyListQuery, options: Pick<import("@apollo/client").WatchQueryOptions<TVars, import("../../API").PropertyListQuery>, "variables">) => import("../../API").PropertyListQuery) => void;
        refetch: (variables?: Partial<import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>) => Promise<import("@apollo/client").ApolloQueryResult<import("../../API").PropertyListQuery>>;
        reobserve: (newOptions?: Partial<import("@apollo/client").WatchQueryOptions<import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>, import("../../API").PropertyListQuery>>, newNetworkStatus?: import("@apollo/client").NetworkStatus) => Promise<import("@apollo/client").ApolloQueryResult<import("../../API").PropertyListQuery>>;
        fetchMore: <TFetchData = import("../../API").PropertyListQuery, TFetchVars = import("../../API").Exact<{
            filter?: import("../../API").PropertyFilter;
            paging?: import("../../API").CursorPaging;
            sorting?: import("../../API").PropertySort | import("../../API").PropertySort[];
        }>>(fetchMoreOptions: import("@apollo/client").FetchMoreQueryOptions<TFetchVars, TFetchData> & {
            updateQuery?: (previousQueryResult: import("../../API").PropertyListQuery, options: {
                fetchMoreResult: TFetchData;
                variables: TFetchVars;
            }) => import("../../API").PropertyListQuery;
        }) => Promise<import("@apollo/client").ApolloQueryResult<TFetchData>>;
    };
    listAccountLogoIfHasLogos(accountID: any): Promise<{
        __typename?: "Property";
        id: string;
        name: string;
        dataType: import("../../API").DataType;
        TextValue?: string;
        NumberValue?: number;
        BooleanValue?: boolean;
        DateValue?: any;
        isDisplayed: boolean;
        isArchived?: boolean;
        parlorKey: string;
        type: import("../../API").PropertyType;
        objectSource?: SourceOfData;
    }>;
    listAccountLogo(accountID: any): Promise<{
        __typename?: "Property";
        id: string;
        name: string;
        dataType: import("../../API").DataType;
        TextValue?: string;
        NumberValue?: number;
        BooleanValue?: boolean;
        DateValue?: any;
        isDisplayed: boolean;
        isArchived?: boolean;
        parlorKey: string;
        type: import("../../API").PropertyType;
        objectSource?: SourceOfData;
    }>;
}
