import { AggregateSuccess } from "./results/success/SuccessResult.cjs"; import { IgnoredInvalidUpdateSuccess, UpdateDefaultGraphSuccess } from "./results/success/UpdateSuccess.cjs"; import { AggregateError } from "./results/error/ErrorResult.cjs"; import { GetResourceReturnType, IConnectedLdoDataset } from "./types/IConnectedLdoDataset.cjs"; import { ConnectedContext } from "./types/ConnectedContext.cjs"; import { ConnectedPlugin } from "./types/ConnectedPlugin.cjs"; import { ConnectedLdoBuilder } from "./ConnectedLdoBuilder.cjs"; import { LdoBase, LdoTransactionDataset, ShapeType } from "@ldo/ldo"; import { ITransactionDatasetFactory } from "@ldo/subscribable-dataset"; import { DatasetFactory, Quad } from "@rdfjs/types"; //#region src/ConnectedLdoTransactionDataset.d.ts /** * A ConnectedLdoTransactionDataset has all the functionality of a * ConnectedLdoDataset and represents a transaction to the parent * ConnectedLdoDataset. * * It is recommended to use the `startTransaction` method on a SolidLdoDataset * to initialize this class * * @example * ```typescript * import { createConnectedLdoDataset } from "@ldo/connected"; * import { ProfileShapeType } from "./_ldo/profile.shapeTypes.ts" * import { solidConnectedPlugin } from "connected-solid"; * * // ... * * const connectedLdoDataset = createConnectedLdoDataset([ * solidConnectedPlugin * ]); * * const profileDocument = connectedLdoDataset * .getResource("https://example.com/profile"); * await profileDocument.read(); * * const transaction = connectedLdoDataset.startTransaction(); * * const profile = transaction * .using(ProfileShapeType) * .fromSubject("https://example.com/profile#me"); * profile.name = "Some Name"; * const result = await transaction.commitToRemote(); * if (result.isError) { * // handle error * } * ``` */ declare class ConnectedLdoTransactionDataset extends LdoTransactionDataset implements IConnectedLdoDataset { instanceId: number; static nextId: number; /** * @internal */ context: ConnectedContext; /** * @internal * Serves no purpose */ protected resourceMap: Map; /** * @param context - SolidLdoDatasetContext * @param datasetFactory - An optional dataset factory * @param transactionDatasetFactory - A factory for creating transaction datasets * @param initialDataset - A set of triples to initialize this dataset */ constructor(parentDataset: IConnectedLdoDataset, context: ConnectedContext, datasetFactory: DatasetFactory, transactionDatasetFactory: ITransactionDatasetFactory); getResource, UriType extends string>(uri: UriType, pluginName?: Name): GetResourceReturnType; getResources(): Plugins[number]["types"]["resource"][]; getFetchedResources(): Plugins[number]["types"]["resource"][]; createResource>(name: Name): Promise>; setContext>(name: Name, context: Plugin["types"]["context"]): void; forgetResource(uri: string): boolean; forgetAllResources(): void; startTransaction(): ConnectedLdoTransactionDataset; /** * Commits all changes made in this transaction to the remote connected * platforms as well as the parent dataset. * * @returns A success or failure * * @example * ```typescript * import { createConnectedLdoDataset } from "@ldo/connected"; * import { ProfileShapeType } from "./_ldo/profile.shapeTypes.ts" * import { solidConnectedPlugin } from "connected-solid"; * * // ... * * const connectedLdoDataset = createConnectedLdoDataset([solidConnectedPlugin]); * * const profileDocument = connectedLdoDataset * .getResource("https://example.com/profile"); * await profileDocument.read(); * * const transaction = connectedLdoDataset.startTransaction(); * * const profile = transaction * .using(ProfileShapeType) * .fromSubject("https://example.com/profile#me"); * profile.name = "Some Name"; * const result = await transaction.commitToRemote(); * if (result.isError) { * // handle error * } * ``` */ commitToRemote(): Promise>, { isError: false; }> | UpdateDefaultGraphSuccess | IgnoredInvalidUpdateSuccess> | AggregateError>, { isError: true; }>>>; usingType(shapeType: ShapeType): ConnectedLdoBuilder; } //#endregion export { ConnectedLdoTransactionDataset }; //# sourceMappingURL=ConnectedLdoTransactionDataset.d.cts.map