For supported MIME types refer https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/assets/file-format-support.html?lang=en If it is not listed here , will recommend to raise a support ticket to adobe. Thanks
Using clientlib at component level depends upon the requirement .There is no as such fixed rule for this. For more details on clientlibs refer : experienceleague.adobe.com/docs/experience-manager-65/developing/introduction/clientlibs.html?lang=en
in addition to @arunpatidar @DEBAL_DAS refer https://experienceleague.adobe.com/docs/experience-manager-65/developing/platform/query-builder/querybuilder-predicate-reference.html?lang=enfor query builder predicate reference.
You can set the permissions in repoInit file and push the changes with in build .Refer: sling.apache.org/documentation/bundles/repository-initialization.html
Check the supported format in AEM DAM . Refer : https://experienceleague.adobe.com/docs/experience-manager-cloud-service/content/assets/file-format-support.html?lang=en#support-3d-formats