```ts
export function postingLists(documents: string[]): Record<string, number[]> {
  if (!Array.isArray(documents)) {
    throw new Error("Input must be an array of strings");
  }

  const index: Record<string, number[]> = {};

  documents.forEach((document, docIndex) => {
    if (typeof document !== "string") {
      throw new Error("Each document must be a string");
    }

    const terms = document.toLowerCase().match(/\b[a-z0-9]+\b/g);
    if (terms) {
      const uniqueTerms = Array.from(new Set(terms));
      uniqueTerms.forEach(term => {
        if (term.length > 1 && !/^\d+$/.test(term)) {
          if (!index[term]) {
            index[term] = [];
          }
          index[term].push(docIndex);
        }
      });
    }
  });

  return index;
}
```