import { PropertyAccessor } from '@cratis/fundamentals'; import { ICompositeKeyBuilder } from './ICompositeKeyBuilder.js'; import { ICompositeKeySetBuilder } from './ICompositeKeySetBuilder.js'; /** * Concrete implementation of {@link ICompositeKeyBuilder} that builds a `$composite(...)` key * expression from event properties, event context, source identifiers and constants. * @template TKeyType - The composite key type. * @template TEvent - The event type. */ export declare class CompositeKeyBuilder implements ICompositeKeyBuilder { private readonly _parts; /** @inheritdoc */ set(targetPropertyAccessor: (key: TKeyType) => TProperty): ICompositeKeySetBuilder; /** @inheritdoc */ set(targetPropertyAccessor: PropertyAccessor, sourcePropertyAccessor: PropertyAccessor): ICompositeKeyBuilder; /** @inheritdoc */ build(): string; } //# sourceMappingURL=CompositeKeyBuilder.d.ts.map