import { log, workspace } from '@synnaxlabs/client';
import { Flux } from '../flux';
import { Ontology } from '../ontology';
export declare const FLUX_STORE_CONFIG: Flux.UnaryStoreConfig<FluxSubStore, log.Key, log.Log>;
export declare const FLUX_STORE_KEY = "logs";
export interface FluxStore extends Flux.UnaryStore<log.Key, log.Log> {
}
export type UseDeleteArgs = log.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 = log.RetrieveSingleParams;
export declare const retrieveSingle: ({ store, client, query: { key }, }: Flux.RetrieveParams<RetrieveQuery, FluxSubStore>) => Promise<log.Log>;
export declare const useRetrieve: Flux.UseRetrieve<{
    key: string;
}, log.Log>, useRetrieveObservable: Flux.UseRetrieveObservable<{
    key: string;
}, log.Log>;
export declare const useDelete: Flux.UseUpdate<log.Params, log.Params, import('zod').ZodNever>;
export interface CreateParams extends log.New {
    workspace: workspace.Key;
}
export interface CreateOutput extends log.Log {
    workspace: workspace.Key;
}
export declare const useCreate: Flux.UseUpdate<CreateParams, CreateOutput, import('zod').ZodNever>;
export interface RenameParams extends Pick<log.Log, "key" | "name"> {
}
export declare const useRename: Flux.UseUpdate<RenameParams, RenameParams, import('zod').ZodNever>;
export {};
//# sourceMappingURL=queries.d.ts.map