Please see ars technica article for a description about the principles of UTIs.
For a list of known UTIs please see here
import { UTIController } from "uti";
const uc = new UTIController();
const doesConformTo = uc.conformsTo("public.image", "public.data");
console.log("doesConformTo: " + doesConformTo);
console.log(uc.getUTIsForFileName("a.txt")[0]);
Output
doesConformTo: true
public.plain-text
Object representing a UTI.
Type: string
Check for conformity.
Returns boolean true if other conforms to the receiver
name of the UTI.
Returns string
Deliver JSON representation of the UTI. Sample result
{
"name": "myUTI",
"conformsTo": [ "uti1", "uti2"]
}
Returns {name: string, conforms: Array<string>} json representation of the UTI
Registry of UTIs.
Type: Map<string, Array<string>>
Type: Map<string, Array<string>>
Registers additional types.
Lookup a given UTI.
name
string UTI
Returns (UTI | undefined) UTI for the given name or undefined if UTI is not present.
Lookup a UTIs for a mime type.
mimeType
string mime type to get UTIs for
Returns Array<string> UTIs for the given mime type
Lookup a UTI for a file name. First the file name extension is extracted. Then a lookup in the registered UTIs for file name extension is executed.
fileName
string file to detect UTI for
Returns Array<string> UTIs for the given fileName
Check whenever two UTI are conformant. If a conforms to b and b conforms to c then a also conforms to c.
Returns boolean true if UTI a conforms to UTI b.
Lookup a UTI for a file name and check conformance.
Returns boolean true if utils for file name are conformant
Assign mime types to a UTI
Assign mime types to a UTI
With npm do:
npm install uti
BSD-2-Clause