parse(contentUri) {
		let rootUri,
			docId = "";

		const DOC_PROVIDER =
			/^content:\/\/com\.((?![:<>"\/\\\|\?\*]).)*\.documents\//;
		const TREE_URI =
			/^content:\/\/com\.((?![:<>"\/\\\|\?\*]).)*\.documents\/tree\//;
		const SINGLE_URI =
			/^content:\/\/com\.(((?![:<>"\/\\\|\?\*]).)*)\.documents\/document/;

		if (DOC_PROVIDER.test(contentUri)) {
			if (TREE_URI.test(contentUri)) {
				if (/::/.test(contentUri)) {
					[rootUri, docId] = contentUri.split("::");
				} else {
					rootUri = contentUri;
					docId = decodeURIComponent(contentUri.split("/").slice(-1)[0]);
				}
			} else if (SINGLE_URI.test(contentUri)) {
				const [provider, providerId] = SINGLE_URI.exec(contentUri);
				docId = decodeURIComponent(contentUri); //DecodeUri
				docId = docId.replace(provider, ""); //replace single to tree
				docId = path.normalize(docId); //normalize docid

				if (docId.startsWith("/")) docId = docId.slice(1); // remove leading '/'

				rootUri =
					`content://com.${providerId}.documents/tree/` +
					docId.split(":")[0] +
					"%3A";
			}

			return {
				rootUri,
				docId,
				isFileUri: /^file:\/\/\//.test(rootUri),
			};
		} else {
			throw new Error("Invalid uri format.");
		}
	}
Parse content uri to rootUri and docID

eg.
```js
parse("content://.../AA98-181D%3A::.../index.html")
```
`returns` {rootUri: "content://.../AA98-181D%3A", docId: "...index.html"}

@param {string} contentUri
@returns {{rootUri: string, docId: string, isFileUri: boolean}}