import { lineplot, workspace } from '@synnaxlabs/client';
import { Flux } from '../flux';
import { Ontology } from '../ontology';
export declare const FLUX_STORE_CONFIG: Flux.UnaryStoreConfig<FluxSubStore, lineplot.Key, lineplot.LinePlot>;
export declare const FLUX_STORE_KEY = "lineplots";
export interface FluxStore extends Flux.UnaryStore<lineplot.Key, lineplot.LinePlot> {
}
export type UseDeleteArgs = lineplot.Params;
interface FluxSubStore extends Flux.Store {
    [FLUX_STORE_KEY]: FluxStore;
    [Ontology.RELATIONSHIPS_FLUX_STORE_KEY]: Ontology.RelationshipFluxStore;
    [Ontology.RESOURCES_FLUX_STORE_KEY]: Ontology.ResourceFluxStore;
}
export type RetrieveQuery = lineplot.RetrieveSingleParams;
export declare const retrieveSingle: ({ store, client, query: { key }, }: Flux.RetrieveParams<RetrieveQuery, FluxSubStore>) => Promise<lineplot.LinePlot>;
export declare const useRetrieve: Flux.UseRetrieve<{
    key: string;
}, lineplot.LinePlot>, useRetrieveObservable: Flux.UseRetrieveObservable<{
    key: string;
}, lineplot.LinePlot>;
export declare const useDelete: Flux.UseUpdate<lineplot.Params, lineplot.Params, import('zod').ZodNever>;
export interface CreateParams extends lineplot.New {
    workspace: workspace.Key;
}
export interface CreateOutput extends lineplot.LinePlot {
    workspace: workspace.Key;
}
export declare const useCreate: Flux.UseUpdate<CreateParams, CreateOutput, import('zod').ZodNever>;
export interface RenameParams extends Pick<lineplot.LinePlot, "key" | "name"> {
}
export declare const useRename: Flux.UseUpdate<RenameParams, RenameParams, import('zod').ZodNever>;
export {};
//# sourceMappingURL=queries.d.ts.map