/**
 * Declarative Infrastructure API - Isomorphic Types
 *
 * This module exports all type definitions for the declarative infrastructure API.
 * These types are isomorphic and can be used in both Lambda and browser contexts.
 *
 * @module declarative-api
 */
export type { ResourceType, LifecycleStateType, ResourceMetadata, Stage, } from './core.types';
export { RESOURCE_TYPES, LIFECYCLE_STATES, STATE_TRANSITIONS, STAGES, isValidResourceType, isValidLifecycleState, isValidStage, } from './core.types';
export type { IResourceEntity, ILifecycleState, IResourceVisitor, } from './resource.types';
export { ResourceValueObject } from './resource.types';
export { isTableResource, isQueueResource, isTopicResource, isBucketResource, isCognitoResource, isEventBusResource, isCompositeResource, isResourceType, isResourceEntity, } from './type-guards';
export type { ValidationError, ValidationSeverity, ISpecification, IAsyncSpecification, } from './specification.types';
export type { IBaseEvent, ResourceCreatedEvent, ResourceModifiedEvent, ResourceDeletedEvent, ResourceStateChangedEvent, ResourceEvent, ResourceEventType, PropertyChange, } from './event.types';
export { RESOURCE_EVENT_TYPES, isResourceEventType, isResourceCreatedEvent, isResourceModifiedEvent, isResourceDeletedEvent, isResourceStateChangedEvent, isResourceEvent, createResourceCreatedEvent, createResourceModifiedEvent, createResourceDeletedEvent, createResourceStateChangedEvent, } from './event.types';
export type { EventHandler, RequestHandler, Subscription, EventLogEntry, IEventBusMediator, } from './mediator.types';
export type { IResourceRepository, ITypedResourceRepository, IResourceRepositoryFactory, } from './repository.types';
export type { ObserverPriority, ObserverType, IResourceObserver, IObserverRegistry, ObserverNotificationResult, BatchNotificationResult, IObserverNotifier, } from './observer.types';
export { OBSERVER_PRIORITIES, OBSERVER_TYPES, isObserverType, } from './observer.types';
export type { IntegrationStrategyType, GrantOptions, InjectOptions, GrantResult, InjectResult, IIntegrationStrategy, IIntegrationStrategyFactory, } from './strategy.types';
export { INTEGRATION_STRATEGY_TYPES, isValidIntegrationStrategyType, } from './strategy.types';
export type { PermissionLevel, PermissionRequest, AuditLogEntry, PermissionResult, IPermissionHandler, IPermissionChain, IPermissionHandlerFactory, } from './permission-chain.types';
export { PERMISSION_LEVELS, isValidPermissionLevel, } from './permission-chain.types';
export type { DecoratorType, DecoratorPriority, DecoratorResult, IResourceDecorator, IConditionalDecorator, IDecoratorRegistry, DecoratorCompositionResult, IDecoratorComposer, } from './decorator.types';
export { DECORATOR_TYPES, DECORATOR_PRIORITIES, isDecoratorType, } from './decorator.types';
export type { CompositeGroupType, AddChildOptions, CompositeOperationResult, IResourceComposite, ILazyChildrenProvider, ResourceCompositeOptions, IResourceVisitorExtended, } from './composite.types';
export { COMPOSITE_GROUP_TYPES, isValidCompositeGroupType, isExtendedVisitor, } from './composite.types';
export type { CommandStatus, CommandAuditEntry, IResourceCommand, IMacroCommand, ICommandExecutor, CommandOptions, CommandExecutionResult, BatchExecutionResult, } from './command.types';
export { COMMAND_STATUSES, isValidCommandStatus } from './command.types';
export type { ResourceFamily, FactoryOptions, FactoryCreationResult, IResourceFactory, IResourceBuilder, InjectionConfig, BuilderValidationResult, BuilderValidationError, IResourceFactoryRegistry, DynamoDbFactoryOptions, IDynamoDbResourceFactory, MessagingFactoryOptions, IMessagingResourceFactory, AuthFactoryOptions, IAuthResourceFactory, StorageFactoryOptions, IStorageResourceFactory, EventsFactoryOptions, IEventsResourceFactory, } from './factory.types';
export { RESOURCE_FAMILIES, isValidResourceFamily } from './factory.types';
export type { UnitOfWorkStatus, UnitOfWorkOperationType, UnitOfWorkOperation, UnitOfWorkCommitResult, UnitOfWorkRollbackResult, IUnitOfWork, IRuntimeInfraStackReference, InfrastructureContextOptions, ResourceCreationResult, IInfrastructureContext, InfrastructureContextFactory, } from './infrastructure-context.types';
export { UNIT_OF_WORK_STATUSES, isValidUnitOfWorkStatus, } from './infrastructure-context.types';
export type { StageDefaults, ITableResourceEntity, IQueueResourceEntity, ITopicResourceEntity, IBucketResourceEntity, ICognitoResourceEntity, IEventBusResourceEntity, StandardTableOptions, StandardQueueOptions, StandardTopicOptions, StandardBucketOptions, StandardUserPoolOptions, StandardEventBusOptions, IResourceFacade, } from './facade.types';
export { STAGE_DEFAULTS, getStageDefaults, } from './facade.types';
export type { AdapterType, AdapterOptions, AdaptationResult, IResourceAdapter, IResourceAdapterRegistry, IResourceAdapterFactory, } from './adapter.types';
export { ADAPTER_TYPES, isValidAdapterType, } from './adapter.types';
export type { DIScope, BindingId, DIBinding, DIBindingOverride, DIResolutionResult, InfrastructureDIBindings, InfrastructureBindingKey, IInfrastructureDIContainer, InfrastructureDIContainerOptions, InfrastructureDIContainerFactory, IDisposable, } from './di-container.types';
export { DI_SCOPES, isValidDIScope, INFRASTRUCTURE_BINDING_KEYS, isDisposable, } from './di-container.types';
export type { RuntimeInfraIntegrationOptions, RuntimeWebIntegrationOptions, CrossStackReference, CrossStackResourceType, OutputOptions, OutputResult, ResourceNamingOptions, IStackIntegration, StackIntegrationFactory, } from './integration.types';
export { CROSS_STACK_RESOURCE_TYPES, isValidCrossStackResourceType, } from './integration.types';
