import { Button } from '../API';
import { CRUDService, ICrudService } from '../core';
export declare class ButtonService extends CRUDService<Button> {
    protected hasOneModels: ICrudService<Button>['hasOneModels'];
    get create(): (input: Partial<Record<never, import("../../..").ModelWithId[]> & Record<import("../core").HasOneRelationsOf<Button>, import("../../..").ModelWithId>> & Omit<import("../API").CreateButton, import("../core").HasOneRelationsOf<Button>>, options?: import("../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonCreateOneMutation, import("../API").Exact<{
        input: import("../API").CreateButton;
    }>>>) => Promise<{
        __typename?: "Button";
        id: string;
        organizationID: string;
        postID?: string;
        colorTheme: import("../API").ThemeColorOption;
        cta: string;
        link: string;
        created_at: any;
        updated_at: any;
    }>;
    get useCreate(): (options?: import("../core").CacheUpdateOptions<import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonCreateOneMutation, import("../API").Exact<{
        input: import("../API").CreateButton;
    }>>>>) => [(payload: import("../core").InputAndRelations<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonCreateOneMutation, import("../API").Exact<{
        input: import("../API").CreateButton;
    }>>, Button>) => Promise<{
        __typename?: "Button";
        id: string;
        organizationID: string;
        postID?: string;
        colorTheme: import("../API").ThemeColorOption;
        cta: string;
        link: string;
        created_at: any;
        updated_at: any;
    }>, import("@apollo/client").MutationResult<{
        createOne: import("../../..").ModelWithId;
    }>];
    get update(): (input: Partial<Record<never, import("../../..").ModelWithId[]> & Record<import("../core").HasOneRelationsOf<Button>, import("../../..").ModelWithId>> & Omit<import("../API").UpdateButton, import("../core").HasOneRelationsOf<Button>> & {
        id: string;
    }, options?: import("../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonUpdateOneMutation, import("../API").Exact<{
        input: import("../API").UpdateOneButtonInput;
    }>>>) => Promise<{
        __typename?: "Button";
        id: string;
        organizationID: string;
        postID?: string;
        colorTheme: import("../API").ThemeColorOption;
        cta: string;
        link: string;
        created_at: any;
        updated_at: any;
    }>;
    get useUpdate(): (mainOptions?: import("../core").CacheUpdateOptions<import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonUpdateOneMutation, import("../API").Exact<{
        input: import("../API").UpdateOneButtonInput;
    }>>>>) => [({ id, ...input }: Partial<Record<never, import("../../..").ModelWithId[]> & Record<import("../core").HasOneRelationsOf<Button>, import("../../..").ModelWithId>> & import("../API").UpdateButton & {
        id: string;
    }, options?: import("../core").CacheUpdateOptions<import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonUpdateOneMutation, import("../API").Exact<{
        input: import("../API").UpdateOneButtonInput;
    }>>>>) => Promise<Record<string, unknown>>, import("@apollo/client").MutationResult<{
        updateOne: Record<string, unknown>;
    }>];
    get delete(): (id: string, options?: import("../core").MutationOptionsWithoutMutation<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonDeleteOneMutation, import("../API").Exact<{
        input: import("../API").DeleteOneButtonInput;
    }>>>) => Promise<{
        __typename?: "ButtonDeleteResponse";
        id?: string;
        postID?: string;
    }>;
    get useDelete(): (options?: import("../core").ServiceMutationHookOptions<import("@graphql-typed-document-node/core").TypedDocumentNode<import("../API").ButtonDeleteOneMutation, import("../API").Exact<{
        input: import("../API").DeleteOneButtonInput;
    }>>>) => [(id?: string) => Promise<{
        __typename?: "ButtonDeleteResponse";
        id?: string;
        postID?: string;
    }>, import("@apollo/client").MutationResult<import("../API").ButtonDeleteOneMutation>];
}
