import { IInstalledActivity } from './add.js';
import { IUnInstalledActivity } from './remove.js';
import { IInstalledUpgradeActivity } from './upgrade.js';
import '../activity.js';
import '../../models/channel-id.js';
import '../../models/account.js';
import '../../models/agentic-identity.js';
import '../../models/conversation-type.js';
import '../../models/membership-source.js';
import '../../models/membership-source-types.js';
import '../../models/membership-types.js';
import '../../models/role.js';
import '../../models/conversation/conversation-reference.js';
import '../../models/entity/index.js';
import '../../models/entity/ai-message-entity.js';
import '../../models/entity/message-entity.js';
import '../../models/entity/citation-entity.js';
import '../../models/entity/sensitivity-usage-info.js';
import '../../models/entity/client-info-entity.js';
import '../../models/entity/mention-entity.js';
import '../../models/entity/product-info-entity.js';
import '../../models/entity/quoted-reply-entity.js';
import '../../models/entity/sensitive-usage-entity.js';
import '../../models/entity/stream-info-entity.js';
import '../../models/entity/targeted-message-info-entity.js';
import '../../models/channel-data/index.js';
import '../../models/meeting/meeting-info.js';
import '../../models/meeting/meeting-details.js';
import '../../models/channel-data/app-info.js';
import '../../models/channel-data/channel-info.js';
import '../../models/channel-data/chat-info.js';
import '../../models/channel-data/feedback-loop.js';
import '../../models/channel-data/notification-info.js';
import '../../models/channel-data/on-behalf-of.js';
import '../../models/channel-data/reply-chain-info.js';
import '../../models/channel-data/settings.js';
import '../../models/channel-data/source-info.js';
import '../../models/channel-data/team-info.js';
import '../../models/channel-data/tenant-info.js';

/**
 * An activity sent when an app installation is added, removed, or upgraded.
 */
type InstallUpdateActivity = IInstalledActivity | IUnInstalledActivity | IInstalledUpgradeActivity;

export { IInstalledActivity, IInstalledUpgradeActivity, IUnInstalledActivity, type InstallUpdateActivity };
