You can use an intersection of two interfaces:
interface Api<T> {
[key: string]: T[];
}
type ApiType<T> = Api<T> & {
meta: Meta;
}
declare let x: ApiType<string>;
let a = x.meta // type of `a` is `Meta`
let b = x["meta"]; // type of `b` is `Meta`
let p = x["someotherindex"] // type of `p` is `string[]`
let q = x.someotherindex // type of `q` is `string[]`