use api::rest::AppResponseData; use utoipa::OpenApi; #[derive(OpenApi)] #[openapi( paths( crate::handlers::space_admin::get_space, crate::handlers::get_group::get_group, crate::handlers::get_space_image::get_space_image, crate::handlers::get_space_image_file::get_space_image_file, crate::handlers::space_admin::create_space, crate::handlers::space_admin::list_spaces, crate::handlers::space_admin::update_space, crate::handlers::space_admin::delete_space, crate::handlers::space_admin::restore_space, crate::handlers::upload_space_image::upload_space_image, crate::handlers::delete_space_image::delete_space_image, crate::handlers::explore_spaces::explore_spaces, crate::handlers::explore_spaces::list_join_requests, crate::handlers::explore_spaces::approve_join_request, crate::handlers::explore_spaces::reject_join_request, crate::handlers::join_requests::create_join_request, crate::handlers::join_requests::withdraw_join_request, crate::handlers::space_admin::add_member, crate::handlers::space_admin::get_member, crate::handlers::space_admin::update_member, crate::handlers::space_admin::update_self_member, crate::handlers::space_admin::remove_member, crate::handlers::create_group::create_group, crate::handlers::list_groups::list_groups, crate::handlers::update_group::update_group, crate::handlers::delete_group::delete_group, crate::handlers::assign_group::assign_group, crate::handlers::unassign_group::unassign_group, crate::handlers::join_group_self::join_group_self, crate::handlers::leave_group_self::leave_group_self, crate::handlers::create_join_rule::create_join_rule, crate::handlers::list_join_rules::list_join_rules, crate::handlers::update_join_rule::update_join_rule, crate::handlers::delete_join_rule::delete_join_rule, crate::handlers::space_admin::create_invite, crate::handlers::space_admin::list_invites, crate::handlers::space_admin::revoke_invite, crate::handlers::space_admin::list_bans, crate::handlers::space_admin::get_ban, crate::handlers::space_admin::update_ban, crate::handlers::space_admin::archive_space, crate::handlers::space_admin::transfer_ownership, crate::handlers::space_admin::list_members, crate::handlers::space_admin::leave_organization, crate::handlers::space_admin::set_member_role, crate::handlers::space_admin::ban_member, crate::handlers::space_admin::unban_member, crate::handlers::space_admin::unban_by_user, crate::handlers::space_admin::set_member_permissions, crate::handlers::space_admin::list_roles, crate::handlers::space_admin::get_role, crate::handlers::space_admin::create_role, crate::handlers::space_admin::update_role, crate::handlers::space_admin::delete_role, crate::handlers::space_admin::set_role_permissions, crate::handlers::space_admin::assign_role, crate::handlers::space_admin::unassign_role, crate::handlers::space_admin::join_role, crate::handlers::space_admin::leave_role, crate::handlers::space_admin::check_permission, crate::handlers::space_admin::redeem_invite, ), components( schemas( api::pagination::SortOrder, crate::services::join_requests::ExploreSort, AppResponseData, AppResponseData>, AppResponseData, AppResponseData>, AppResponseData, AppResponseData>, AppResponseData, AppResponseData, AppResponseData>, crate::services::dto::SpaceDto, crate::services::join_requests::ExploreSpaceDto, crate::services::join_requests::ExploreViewerDto, crate::services::join_requests::ExploreViewerRequestDto, crate::services::join_requests::JoinRequestDto, crate::services::join_requests::CreateJoinRequestCmd, models::space::SpaceJoinRequestState, api::pagination::Page, crate::services::dto::UserDto, crate::services::groups::GroupDto, crate::services::groups::CreateGroupCmd, crate::services::groups::UpdateGroupCmd, crate::services::groups::AssignGroupCmd, crate::services::dto::MemberDto, crate::services::images::AvatarFormat, crate::services::images::SpaceImageDto, crate::services::images::SpaceImageUploadQuery, imaging::layout::ImageVariant, crate::services::images::SpaceImageKind, models::space::AllowJoinLevel, models::space::MemberStatus, models::space::MessageNotifications, crate::services::types::OrganizationSummary, crate::services::types::MemberSummary, crate::services::types::RoleSummary, crate::services::types::InviteSummary, api::pagination::Page, api::pagination::Page, api::pagination::Page, crate::services::types::PermissionGrant, crate::services::types::PermissionCheck, crate::services::types::CreateOrganizationBody, crate::services::types::UpdateOrganizationBody, crate::services::types::AddMemberBody, crate::services::types::SetMemberRoleBody, crate::services::types::BanMemberBody, crate::services::types::CheckPermissionBody, crate::services::types::CreateRoleBody, crate::services::types::SetRolePermissionsBody, crate::handlers::space_admin::SpaceMemberPath, crate::handlers::space_admin::SpaceRolePath, crate::handlers::space_admin::SpaceInvitePath, crate::handlers::space_admin::OrgListQuery, crate::handlers::space_admin::MemberListQuery, crate::handlers::space_admin::InviteListQuery, crate::handlers::space_admin::UpdateRoleBody, crate::handlers::space_admin::TransferBody, crate::handlers::space_admin::ReasonBody, crate::handlers::space_admin::DeleteOrgQuery, crate::handlers::space_admin::CreateInviteBody, crate::handlers::space_admin::RedeemInviteBody, crate::handlers::space_admin::CreateInviteResponse, crate::handlers::space_admin::RedeemInviteResponse, crate::handlers::space_admin::AssignRoleBody, ) ), tags( (name = "space", description = "Space management endpoints") ) )] pub struct SpaceApiDoc;